Skip to content

Enforce coordinated target-cell ownership - #8

Merged
SaiFlyBy merged 11 commits into
mainfrom
flyby/cell-enforcement-pro-20261105
Nov 6, 2026
Merged

SaiFlyBy merged 11 commits into
mainfrom
flyby/cell-enforcement-pro-20261105

Conversation

@SaiFlyBy

@SaiFlyBy SaiFlyBy commented Nov 6, 2026 •

Copy link
Copy Markdown
Owner

When target cells declare overlapping paths, newly initialized Mission Control runtimes using --cell-coordination now 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, tree d5f6cd3f0e5da116425217c666594aced301a3ad, accepted main/base 379e579307a490ce0e1e7ae7fceefccee85116e0.

Verification Result Evidence
Locked exact-head binary + complete canonical proof PASS: all four required layers, 21 commands, 227 top-level unittest cases Dedicated run 42160439946, runner 21, job 127704565824
Current-source bridge and ordinary/changed-base lifecycle PASS on Linux and Windows Bridge run 42160390459
Repository pre-merge recipe PASS through repository CI's split pre-commit / insta / lockfile-doctest-doc hooks CI run 42160390503
Linux full all-feature insta/nextest PASS: 5476 tests run: 5476 passed, 1 skipped Includes unreferenced-snapshot rejection
Windows full all-feature insta/nextest PASS: 4767 tests run: 4767 passed, 40 skipped Same candidate source tree
Feature matrix and CI route policy PASS Project feature-check; nine dedicated route-policy tests
Native Windows coordination / golden lifecycle PASS: 22 coordination tests with two explicit POSIX skips; both golden modes CLOSED Source hashes checked against final inputs; full hosted Windows bridge separately passes

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 fe60aae1229eff0b4310f70a7e7508a49f49fb80 reported 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.

@SaiFlyBy
SaiFlyBy marked this pull request as ready for review November 6, 2026 14:20
@SaiFlyBy
SaiFlyBy merged commit f308446 into main Nov 6, 2026
33 checks passed
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