Repository navigation
Enforce coordinated target-cell ownership - #8
Merged
Merged
Conversation
added 11 commits
November 5, 2026 19:58
SaiFlyBy
marked this pull request as ready for review
November 6, 2026 14:20
This was referenced Nov 6, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
When target cells declare overlapping paths, newly initialized Mission Control runtimes using
--cell-coordinationnow admit eligible conflicts in durable FIFO order and inspect actual Git changes at settlement and publication. Independent cells keep separate worktrees and can proceed together. The capability seals execution-state v19, its validator and ownership helper into each new runtime; existing frozen missions and locks remain unchanged.Acceptance and writer liveness are separate. Results do not release claims. Recorded launch intent is idempotent, unknown writers retain ownership, and safe release after launch requires an independent trusted operator's exact executor/generation fence evidence. Dispatch does not launch a provider. This enforces managed admission and promotion; arbitrary external writers and OS write prevention remain outside its boundary.
The readiness review reproduced and fixed a mixed-cell bypass: after a target became ACCEPTED but remained LAUNCH_UNCERTAIN, an audit could dispatch through the older control path despite a shared resource, conflict class or dependency. Control dispatch now consults retained target ownership in the same transaction, and doctor rejects invalid mixed records. Two regressions prove both directions, all retained writer phases and successful dispatch after explicit release.
Path and custody checks cover declared directory/file boundaries, aliases, platform case contracts, unusual Git names, both rename sides, dirty state and immutable candidate/base/scope/generation bindings. Changed-main handoff distinguishes verified inherited base changes. POSIX literal backslashes retain their filename meaning. Native Windows tests exercise real NTFS junctions. Required Windows CI also exposed inherited tamper/restore fixture bugs: tests now restore exact original bytes instead of converting sealed LF evidence to CRLF. Hash checks and negative proofs remain enforced. The required typo hook's single test-name correction is included.
Validated head
fe60aae1229eff0b4310f70a7e7508a49f49fb80, treed5f6cd3f0e5da116425217c666594aced301a3ad, accepted main/base379e579307a490ce0e1e7ae7fceefccee85116e0.Public exact-candidate receipts contain checkout/base/workflow/actor/runner identities, outcomes, timing and log hashes. Private raw proof survived job exit, was exported locally and every command log hash was verified. Only then were task-owned runner proof copies removed. Original source fixtures were recovered from verified history, not synthesized. Private source archives and credentials are excluded from the repository and public artifact.
The three-cell regression admits M000 (
src/a/) with M001 (src/ab/), queues M002 (src/a/child.py) through restart and result settlement, and admits the saved request only after fence confirmation, release and recovery. Shared-contract claims and dependencies independently block disjoint paths. Authoritative Git checks reject out-of-scope changes and stale publication while preserving the workspace, claim and denial evidence.PR #6's exact settlement-reconciliation increment is reused and extended; PR #7 is deferred. Other owners' dirty reservation and runner-CI proposals remain preserved; source dispositions retain their custody. General workflow and runner/security policy were not changed during acceptance fixes. macOS is excluded from the requested acceptance scope. The redundant dedicated fallback and conditional MSRV/docs jobs retain their configured skipped states and are not counted as passes.
The separate affected workflow has now completed successfully on Linux, Windows and macOS. Its existing advisory policy is unchanged.
Independent focused review of
fe60aae1229eff0b4310f70a7e7508a49f49fb80reported no remaining material issue, including the audit ownership guard and its Linux/Windows regressions. The unchanged candidate, passing gate receipts and review report are reconciled. Automatic approval review rejected the ready-for-review transition because it treated the earlier draft-only instruction as still binding and did not accept the instruction to finish as an explicit override. The PR therefore remains draft and unmerged, awaiting explicit authorization to mark it ready and merge this exact reviewed head. No merge was attempted, and no tests or repository rules were waived.