Skip to content

chore(ci): separate native hosted runtime proof - #2163

Merged
schlessera merged 2 commits into
mainfrom
chore/2128-runtime-phase-scheduling-p02128
Oct 16, 2026
Merged

schlessera merged 2 commits into
mainfrom
chore/2128-runtime-phase-scheduling-p02128

Conversation

@schlessera

@schlessera schlessera commented Oct 16, 2026 •

Copy link
Copy Markdown
Owner

Refs #2128

What changed

Native hosted admission now runs as its own selected runtime_host job. The existing runtime job retains the three offline Claude probes and the shared-process Chrome/child-cleanup command. Both selections derive from the same runtime requirement; the aggregate rejects a missing, skipped, failed or cancelled selected job. Local check:pr --full / --all still execute all five original commands.

Why this shape

The two long phases share the same exclusive workspace-output lease when launched in one checkout. The native container binds that same lease; Chrome fixtures rebuild while holding it. Real host/container contention and nested-build controls pass without relaxing ownership. Separate runners preserve the existing phase assertions, cell order, loop1790 ownership, namespace/capability setup, quota invariants, deadlines and artifacts. The exact Chrome pair still runs in one process with --shard=1/1.

The declared primary sequencing condition is met: prerequisite implementations #2121/#2144 (f375261f), #2122/#2143 (3031e31a) and #1836/#2062 are merged. The first two issues remain open for their measurement criteria. This does not claim qualified unit parallelism, completed prerequisite criteria or a runtime critical-path improvement.

Proof

Production source: e7fea8b1ecb4a9f89f8651eca37e0bca797c20ad, based on 72cc84f3f793ad52e25198e046461f81927aac7a.

  • Focused planner/workflow/aggregate suites pass 92 tests / 1,048 assertions. Real workspace lease controls pass 3 / 18, including the actual pinned container sharing the host lock and rejection of a nested read-only build.
  • Red first: the new selected-host assertion received undefined before implementation. Removing the host job from PROOF_JOBS then made the emitted skipped-job aggregate return zero instead of the expected failure; restored tests pass.
  • A separate mutation of exact category matching allowed runtime_host to masquerade as the runtime command. The workflow test failed its intended refusal assertion, then passed restored. The diff/file was searched for other category inventories and updated consistently.
  • The feedback-selection fixture was corrected to include runtime_host: false. A moved workflow-install citation was corrected; all 44 citation tests / 113 assertions pass. Strict typecheck passes.
  • Final bun run check:pr --base origin/main passes: 916 fast tests / 6,131 assertions plus 130 import-graph feedback tests / 1,222 assertions, lint/leakage and contribution gates. Current hosted measurements remain pending. No cancelled, queued or failed run is counted as passing proof.

Historical successful main 38903809808, actual source 626a03af, recorded serial runtime 702.725 seconds: probes 13.522 / 9.719 / 4.571 seconds, hosted admission 424.345 seconds and shared-process cleanup 250.566 seconds. Its resource artifact reports four CPUs, 2.540 GB sampled VM usage of 16.766 GB and 884.56 active CPU-seconds. This different-source observation is historical, not a controlled current-source speedup.

No changeset: repository CI/tooling and decision documentation only; no shipped package, dependency or public machine contract changes.

Checklist

  • Required preflight and current hosted measurement receipts are complete.
  • All implementation scope is retained; remaining measurement criteria are explicitly open.
  • PR and advanced issue retain verified release milestone 0.44.0; live registry is 0.43.1.
  • No consumer-visible package change requiring a changeset.
  • Leakage checks pass; no personal data in the diff.
  • No integration contract change.
  • Decision and moved citation documentation are updated.

Anything left open

Approved runtime-only experiment 38920698136 is dispatched from workflow commit fb50569d8941b9dc4e9ca1eb26c2b4f2396e200c; both jobs pin the full production source SHA above. Native-host job 117039562506 and runtime job 117039562734 are queued, so no executed checkout or passing measurement exists yet. The temporary experiment branch is outside this PR.

The runtime-only two-job experiment must reconcile both actual source checkouts, all five phase results, resource receipts and full job/setup wall time against the longest single phase plus 90 seconds. One confirmation and one actual-main run must show every original phase. This implementation uses Refs #2128 while those measurement and delivery criteria remain open. Retained focused passing proof and scoped conflict checks follow the maintainer's explicit instruction to avoid a full refresh solely for base advancement; no full current-candidate hosted pass is claimed.

Current-base assessment: prospective merge onto inspected main cf70a33f2e9d4edee54180c95f8328907ee988c0 is conflict-free (tree 5f75530d5f191f6615f78736a7c67577b0cdbf84). Incoming changes do not modify this PR’s CI, planner, guard or test files. Its shared Claude decision document has disjoint SDK/lockfile citation updates, preserved by the merge. Historical local receipts remain attributed to their actual production source; this source inspection is not a new combined-tree test execution.

Actual merge reconciliation

Merged as 80e028d84b7686d6cf864d8166029b1142de8756, parent cf70a33f2e9d4edee54180c95f8328907ee988c0, tree 5f75530d5f191f6615f78736a7c67577b0cdbf84, matching the inspected prospective merge and verified as an ancestor of main. Actual-squash focused checks pass 139 tests / 1,184 assertions; strict types pass. Automatic main CI and the preserved two-job experiment remain queued. Only redundant queued premerge CI 38920939566 was cancelled after saving its metadata. Issue #2128 remains open with its measurement/event-phase criteria; both PR and issue retain release milestone 0.44.0.

Keep all five runtime phases, deadlines and offline prerequisites. Preserve the shared-process Chrome pair and require both selected jobs in the executable aggregate. Real shared-lease controls reject unsafe same-checkout concurrency.

Red first: new host selection assertion received undefined. Removing runtime_host from aggregate inventory made emitted skipped-job test return 0 instead of 1. Restored passes. Prefix-command mutation allowed runtime_host to impersonate runtime; exact-category workflow assertion failed and passes restored.
@schlessera schlessera added this to the 0.44.0 milestone Oct 16, 2026
@schlessera schlessera added type: chore Tooling, CI, release plumbing, dependencies. area: ci CI workflows, the gates they run, release scripts, packaging. labels Oct 16, 2026
@schlessera
schlessera marked this pull request as ready for review October 16, 2026 15:04
@schlessera
schlessera merged commit 80e028d into main Oct 16, 2026
0 of 15 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area: ci CI workflows, the gates they run, release scripts, packaging. type: chore Tooling, CI, release plumbing, dependencies.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant