Skip to content

feat(sync): add daemon-trusted stable-root routing (TIN-2853)#551

Draft
Jesssullivan wants to merge 4 commits into
mainfrom
codex/stable-root-routing-20260714
Draft

feat(sync): add daemon-trusted stable-root routing (TIN-2853)#551
Jesssullivan wants to merge 4 commits into
mainfrom
codex/stable-root-routing-20260714

Conversation

@Jesssullivan

@Jesssullivan Jesssullivan commented Jul 14, 2026

Copy link
Copy Markdown
Owner

Summary

Adds the narrow daemon-trusted root identity seam required to inspect and resolve an isolated repo conflict cache without accepting client-supplied state paths or storage prefixes.

Changes

  • Enrolls stable root IDs to trusted local-root, remote-prefix, state-cache, and inspect/resolve policy records.
  • Adds daemon-selected conflict inspection and a dedicated registered-root keep-both RPC, so mixed-version fallback cannot mutate the primary cache.
  • Fences legacy rootless paths, path/prefix overlap, cache and manifest keys, state ownership/inodes/hardlinks, Git topology, and concurrent state writers.
  • Neutralizes repo-controlled Git hooks, fsmonitor, reflog routing, and ambient Git routing variables before attended resolution.
  • Adds CLI route evidence, source-bounded protocol documentation, changelog coverage, and an ADR for the live ceremony that remains outstanding.
  • Registered roots inherit the one global storage endpoint, CA, credentials, and TLS policy.

Test plan

  • Rust formatting and clean-diff checks
  • Scoped all-target check and strict scoped Clippy
  • 45 focused core, sync, daemon, CLI, MCP, TLS, and FileProvider tests
  • Independent exact-head adversarial review: no P0/P1 findings
  • Signed commit and clean worktree verified

Checklist

  • Docs updated
  • CHANGELOG.md updated
  • No secrets or credentials in diff
  • Source-only claim boundary recorded

Claim boundary

This PR does not enroll or deploy a live root, verify an authentication session, execute a live dry-run or mutation, restart reconciliation, or prove multi-cycle fleet convergence. The active incident freeze remains in force.

Linear: TIN-2853

Packaging/runtime Git availability remains a separate blocker under TIN-2688; this source seam does not claim installed-service readiness.

@Jesssullivan
Jesssullivan force-pushed the codex/stable-root-routing-20260714 branch from b822f6c to a5521d5 Compare July 14, 2026 14:36
@Jesssullivan
Jesssullivan force-pushed the codex/stable-root-routing-20260714 branch from d376381 to 69dfe07 Compare July 14, 2026 15:15
@Jesssullivan

Copy link
Copy Markdown
Owner Author

Independent Linux Nix repair proof:

  • nix build .#packages.x86_64-linux.tcfsd --no-link --refresh --option eval-cache false completed successfully on the configured x86_64 Linux builder.
  • The build exercised the real-Git registered-root safety tests with nativeCheckInputs = [ pkgs.git ].
  • That invocation captured pre-rebase source head d376381d385a01cc8b5d6e8dbaeeb24875440b10; the two-commit patch was then signature-preserving rebased without conflict onto cleanup merge f4cb680897f3f42da4c93a7b9b7b74f08118d571.
  • Current exact head 69dfe079670eebd9cd7e3c24aa92a529f11ebd27 is still gated on its fresh GitHub CI.

No fleet, auth, deployment, or live root state changed.

@Jesssullivan
Jesssullivan marked this pull request as draft July 14, 2026 20:04
@Jesssullivan

Copy link
Copy Markdown
Owner Author

Exact-head adversarial review found blocking root-identity and compatibility/claim gaps in the local hardening follow-up. Returning this PR to draft while those findings are fixed and revalidated; the incident freeze and source-only boundary remain unchanged.

Close auth, namespace, exact hydration, Git, tombstone retention, and FileProvider fail-closed gaps found during PR #551 recovery.

Regenerate iOS bindings and expand regression and CI coverage.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant