feat: add fenced managed lease admission - #2308
Conversation
Size Report
Startup median (7 runs, lower is better):
|
|
Sentinel review at 6ec6471, independently reviewed. No additional code finding in this neutral prerequisite: it reuses allocator contracts, exact-attempt reconciliation, deadline/teardown owners and immutable lease identity checks; the cancellation, coalescing and late-fence tests exercise the service contract. It intentionally has no production admission caller yet, so this is not live managed-device acceptance. Merge remains blocked by dependency #2307 (new parent head needs validation), exact-head Coverage and Android smoke failures. Coverage inherits the eager-closure regression from the timing prerequisite; Android fails the automation-alert-result selector and is not proven related to this unconnected service. Fix/sync the parent and investigate the failing lane, then obtain green exact-head checks. Size: 0 B unpacked growth, 243 net production lines. No readiness label applied. |
6ec6471 to
f543128
Compare
|
Sentinel delta review at f543128: independently confirmed code clean. The parent timeout resolver is now dynamically imported, fixing the eager-closure gate without changing admission behavior. This remains a neutral lease-admission prerequisite, not enabled runtime integration; canonical budgets and existing allocator/fence owners are reused. All completed exact-head checks pass; iOS is pending. Merge order remains #2307 first, whose Android/iOS smoke checks currently fail. Holding readiness labeling until that prerequisite is cleared; no new source finding. |
|
Resolved the actionable requests in the Sentinel review at
All 18 reported checks have completed: 17 successful, one cache-build matrix skipped. No additional code finding required a neutral-layer change. Dependency #2307 remains explicit; managed readiness is still disabled, and this is not live allocator acceptance. |
|
Sentinel reconciliation at f543128: same reviewed code; all runnable checks green, but GitHub now reports CONFLICTING. The declared #2307 prerequisite has also advanced beyond the recorded 327c2e8 head. Next merge blocker: synchronize the dependent branch with the approved prerequisite and resolve conflicts, then rerun exact-head gates. Prior integration/evidence boundaries remain unchanged: this neutral lease-authority slice does not claim live allocator/publication acceptance. No new code finding and no readiness label; no branch changes made. |
f543128 to
761a716
Compare
|
Resolved the synchronization request in the latest Sentinel review at published head
Replacement-head Coverage and Integration and native checks are running. #2307's current iOS job remains failed before device smoke, as recorded in its review. The verified prerequisite SHA has been handed downstream without waiting for CI; no merge-readiness or live allocator acceptance claim is made. |
761a716 to
1df42d5
Compare
|
Latest-main synchronization is complete at published head All three neutral-layer commits are unchanged by range-diff and had no conflicts. The canonical horizon and separate task-taking contract correction are preserved. Independent adversarial review is READY. Fresh exact-head Replacement-head CI, iOS, and Android are running. Prior-head green results are not current evidence. The exact published SHA has been handed to #2311/#2312 for sequential restacking without a CI wait. This remains neutral infrastructure with no production admission activation or live allocator acceptance claim. |
|
Updated the description to disclose removal of the unused Current-head Coverage and Integration, Android, Linux, and macOS pass. The iOS retry fails in fixture smoke: a regular depth-1 snapshot contains healthy XCTest tree quality metadata after All reported checks are complete: 16 succeed, the cache matrix is skipped, and iOS fails. The neutral layer still has no production admission activation. No merge-readiness claim. |
|
Sentinel: no actionable code findings after coordinator + independent Terra/high review at 1df42d5. Task-taking admission, renewal reconciliation, immutable identity validation, cancellation/deadline handling and late-result fencing are coherent; production activation remains deferred to the consuming layers. NOT merge-ready: exact-head iOS smoke fails in live-snapshot-depth-frontier when Simulator AX falls back and healthy XCTest tree quality metadata appears where the fixture expects none. The diff does not establish the cause, and this is not classified as a proven flake. Diagnose/rerun the exact-head iOS lane and obtain green proof. No readiness label; no fixes or merge performed. |
Summary
Adds neutral admission for one managed lease incarnation. It verifies returned TTL, reconciles ambiguous renewal against the exact durable request attempt, coalesces renewal work, and preserves each caller's deadline and cancellation. Fencing permanently rejects further execution, including after late renewal completion.
Command horizons use the canonical core timeout policy and reserve the existing 5-second teardown plus 11-second recording cleanup budgets. Ordinary teardown still requires a real session.
A separate contract correction replaces provisional readiness with task-taking
managedDevice.admit, allowing downstream dispatch inside confirmation.runremains transport/cleanup-only. It also removes the unusedResolvedNativeAssetandNativeAssetResolvertypes. #2312 owns the reviewed consumer adaptation; this PR has no runtime activation. ADR 0021 documents that boundary and distinguishes fencing from teardown quiescence. Skills are unchanged.Validation
Head
1df42d51f50e7dfb3162f113f74a76829c9b8272is based on published #230797f4e7057f3c4d6dead9df39a6a7645063c877e4, rooted in requested main snapshot80997b6bf1dda30ca57d74dc42036f6b447e16ad. All three commits are unchanged by range-diff; no conflicts.pnpm check:affected --runpassed: 3,258 tests / 431 files. The focused suite passed 462 tests, including all 418 exact-parent eager-closure cases, under the host-wide gate lock.Coverage and Integration pass. The iOS retry fails at a depth-1 snapshot after AX target resolution falls back to XCTest. This is not live managed-device acceptance.