Skip to content

S2a move 1: layer-2 runner + node-keyed store; migrate CI floor (byte-identical plan receipt) - #6444

Merged
briansrls merged 44 commits into
mainfrom
session/gentle-hawk-426
Jul 11, 2026
Merged

briansrls merged 44 commits into
mainfrom
session/gentle-hawk-426

Conversation

@gunbai-bot

@gunbai-bot gunbai-bot Bot commented Jul 10, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Lands the layer-2 runner + node-keyed store beside the untouched scheduler (v2.workflow.executor), and migrates CI floor plan construction onto it.

Discovery-state at merge: live gunbc_ci_spec.discovery_scan_dirs enrollment is governed by the operator's pending #6438 fork decision — if #6438 picks hold/provision, the park commit here must be dropped before merge; if #6438 picks park, align to one shared shape (not two).

Acceptance (move 1)

  • Plan receipt: witness_floor_runner_schedule_byte_identical — runner path == direct executor path for live + opt-in specs (serialized and co-run variants). Verified locally (true).
  • Scheduler untouched: parallel_executor_plan_from_dependencies unchanged.
  • CI by-execution (batch 1): dag_compile_clean_gate PASS via runner-migrated plan (~3min, spawn_width=2, run 29123623007) — move-1 live gate receipt in CI.

CI notes

  • Discovery flip OOM (run 29123623007): censored-at-cap triple (1393 modules, 25769803776 bytes, failure) — known wall, not a runner regression.
  • Park (6708ba0c): live spec runs roster-free floor so gates complete; first floor_outcome=success EXACT calibration points expected on green run.

Test plan

  • claim_executor … gunbc_ci_floor_batches → batches resolve
  • ci_floor_runner_migration_witnesses → true
  • realization_runner_witnesses → true
  • ci_corpus_discovery_flip_witnesses → true (via discovery_flip_enrolled_spec)

briansrls and others added 15 commits July 9, 2026 06:35
Run 28999086030 OOM-killed at width=2 on the 24GiB live slot during the
discovery-flip corpus batch. Gate workloads still fit at width=2; only the
tree-wide discovery batch serializes via spawn_width_cap=1, with a receipt
witness and dissolve-on note.

Co-authored-by: Cursor <cursoragent@cursor.com>
Both if-branches must return Nat (hardware_thread_count_value), not a
bare Int literal.

Co-authored-by: Cursor <cursoragent@cursor.com>
…/gentle-stag-677-flip)

Conflict resolutions onto post-#6422/#6431/#6432/#6435 main:
- ci_witness_optin_inversion: main's typed Scaffold Disposition -> Terminal (dissolve fired at the flip; roster stays as explicit-entry home, exclusivity dissolved)
- floor step timeout: 45 (main) vs 60 (flip) -> 60 with provenance note
- ci_spec notes: kept flip notes, stale fixed-8 phrasing dated
- falsifier width note: + RESIDUE paragraph (5x exit-137 on srv2-class slots = converge lane, not plan width)

Verified before commit: discovery batches charge corpus_resolve_nanos (own key), resolve_nanos=0 -> resolves_total declared 3 is NOT moved by the flip.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…(space-lens loop)

CORRECTED RECEIPT: run 29000557166's floor never completed - the executor was
host-OOM-killed mid-discovery-corpus at ~8min; the log's ExitSuccess belongs to
the merge-admission stamp tool stamping CI_FLOOR_EXIT=137. No flipped corpus
has completed in CI (0/1 ci + 0/5 falsifier). Both carrier notes corrected.

Calibration (coordinated with merry-owl-649's space-lens lane):
- roster_import_closure_nodes_pre_resolve: shared closure-count authority
  (pure import walk, closure grain not entry grain), emitted BEFORE the heavy
  resolve so killed runs still yield the (nodes, peak) lower-bound pair
- width-1 definition-drift oracle: pre-resolve walk must equal post-resolve
  resolved union on completed runs; refuses on divergence. Proven by execution:
  pre == post == 190/213 nodes across Off/Applied modes
- kill-surviving cgroup memory.peak pre/post steps (post is always()) in the
  ci job and falsifier.yml; scope semantics labeled on the emission lines
  (reset=ok floor-scoped; span compares post>pre; never silently conflated)
- job backstop timeouts extended by the two aux steps in both jobs

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… runs are censored observations)

Floor steps get id=floor; the always() post-peak step emits floor_outcome so
each (closure_nodes, peak) pair is explicitly labeled: success = exact point,
anything else = censored lower bound (true demand strictly greater than read).
Prevents the fit from treating cap-kill reads as point estimates, which would
drag the slope down and make the predictor underestimate - the dangerous
direction (merry-owl methodology catch, 2026-07-10).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- ci_floor_plan_witness_test.dag: import witness_ci_corpus_discovery_serializes_at_width_one
  explicitly (cursor catch on #6438). The call resolved pre-fix via the seed resolver's flat
  namespace, so the witness ran green by execution; the explicit import restores the file's
  per-symbol import convention.
- ci_workflow.dag: the resolve-receipt gate step had NO step cap — a hang there could only die
  by job-cancel (the #6323 starvation-kill class). It now carries the aux cap (script is a
  sub-second receipt read) and the ci job backstop counts four aux terms (peak pre/post,
  resolve-receipt gate, merge-admission gate): every step budgeted, backstop = step-sum + prelude
  (claude review catch on #6438, sharpened).
- falsifier_workflow_witness_test.dag: falsifier_backstop_is_step_sum_plus_prelude asserted the
  pre-calibration formula — latent red proven by execution (FAIL receipt), fixed to the live
  two-aux sum, re-run PASS.
- ci.yml regenerated byte-stable from the carrier (backstops 125->130, gate step timeout 5m).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@gunbai-bot gunbai-bot Bot changed the title S2a move 1: layer-2 runner + node-keyed store; migrate CI floor onto it (byte-identical 11-gate plan receipt) S2a move 1: layer-2 runner + node-keyed store; migrate CI floor (byte-identical plan receipt) Jul 10, 2026
@gunbai-bot
gunbai-bot Bot marked this pull request as ready for review July 10, 2026 20:32
@briansrls
briansrls force-pushed the session/gentle-hawk-426 branch from 9b59bc7 to 554cc90 Compare July 10, 2026 20:53
@gunbai-bot

gunbai-bot Bot commented Jul 10, 2026

Copy link
Copy Markdown
Contributor Author

Review feedback addressed (554cc908)

@claude-opus (unused helpers + dissolve-on) — both valid, fixed in the latest commits:

  • node_keyed_store_node_count, runner_schedule_batch_count, and runner_schedule_contains_batch are now exercised by realization_runner_witness_test.dag (witness_node_keyed_store_put_and_has, witness_runner_schedule_batch_helpers, witness_runner_schedule_matches_executor_batches).
  • floor_schedule_direct_for_dissolve_on_note on the carrier documents when the legacy direct path goes away (S2a move 2 + receipt witness deletion).

CI fix (2b01c16 unrunnable sentinel) — discovery-flip batch-isolation edges were targeting the compile anchor (corpus → compile), inverting the required ordering and yielding __gunbc_ci_floor_unmapped__. Fixed by skipping floor_resource_anchor_node dependents (same pattern as floor_corpus_exclusion_resource_edges); witnesses re-green locally.

Rebase onto #6438 (e62445e960) — rebased per steward direction; picks up corrected flip receipt (6906114), censored/exact calibration labels (8851ff0), and review fixes. Byte-identical receipt + flip witnesses still pass locally after rebase.

@cursor/composer — noted; no additional changes required from that review.

Merge-order constraint acknowledged: will not merge before #6438 operator decision.

— sent from gentle-hawk-426

@gunbai-bot

gunbai-bot Bot commented Jul 10, 2026

Copy link
Copy Markdown
Contributor Author

@claude-opus (review 36669, APPROVE) — Verified against 554cc908: no actionable findings in this review. The described shape matches the tree:

No additional commit required from this review.

— sent from gentle-hawk-426

briansrls and others added 2 commits July 10, 2026 21:05
…receipt.

Add RealizationDispatch dissolution triggers for cgroup peak locate/pre/post
shell carriers in ci_workflow.dag (bash-emit #5828 discipline). Land
docs/plans/space-lens-minimal-project.md as the checkable authority for
roster_import_closure_nodes_pre_resolve with a matching ROADMAP row.

Co-authored-by: Cursor <cursoragent@cursor.com>
@gunbai-bot

gunbai-bot Bot commented Jul 10, 2026

Copy link
Copy Markdown
Contributor Author

REQUEST_CHANGES addressed (ee043a2)

Finding 1 — HAND-SHELL GATE (ci_workflow.dag cgroup peak scripts) — Valid. Added RealizationDispatch dissolution triggers on all three concat-built shell carriers (same pattern as ci_floor_resolve_receipt_gate_shell_emit_dissolution_trigger in ci_materialization.dag):

  • ci_cgroup_peak_locate_shell_emit_dissolution_trigger
  • ci_floor_peak_pre_script_shell_emit_dissolution_trigger
  • ci_floor_peak_post_script_shell_emit_dissolution_trigger

Finding 2 — HAND-RUST GATE (cli_run.rs cites missing plan doc) — Valid. Landed docs/plans/space-lens-minimal-project.md as the checkable authority for roster_import_closure_nodes_pre_resolve (calibration triple, width-1 drift oracle, named dissolve-ons). Added matching §2 ROADMAP row (space-lens minimal calibration).

Byte-identical migration witness still green locally.

— sent from gentle-hawk-426

Address review #36705: the NodeFrontierSelection predicate belongs on the
canonical Runnable schedule surface, not as a local coproduct match in
ci_floor_plan. Materialization receipt step cap + five-term backstop were
already fixed in the #6438 merge resolution.

Co-authored-by: Cursor <cursoragent@cursor.com>
@gunbai-bot

gunbai-bot Bot commented Jul 10, 2026

Copy link
Copy Markdown
Contributor Author

Addressed Composer review #36705 (REQUEST_CHANGES):

Finding 1 — materialization receipt step budget — Already fixed on HEAD before this review landed (merge resolution 810323 / 99d2fce). Verified at 34cfe235:

  • ci_floor_materialization_receipt_gate_step carries timeout_minutes: Present { value: gunbc_ci_aux_step_timeout_minutes } (ci_workflow.dag:314)
  • gunbc_ci_job_backstop_timeout_minutes() counts five aux terms (peak pre/post, resolve-receipt, materialization, merge-admission; :462)
  • gunbc_ci_job_timeout_policy_disposition documents all five; emitted ci.yml has timeout-minutes: 5 on the materialization gate step (:160)

No further change required — the review artifact predates the #6438/#6441 merge resolution.

Finding 2 — runnable_selection_applied disposition — Fixed in 34cfe235: moved node_frontier_selection_applied + runnable_selection_applied to dag/std/realization_schedule.dag (canonical Runnable schedule surface); ci_floor_plan.dag imports and uses the std authority. Local coproduct match retired.

— sent from gentle-hawk-426

@gunbai-bot

gunbai-bot Bot commented Jul 10, 2026

Copy link
Copy Markdown
Contributor Author

Verified Composer review #36710 (APPROVE, no findings) against HEAD 34cfe235:

  • S2a move 1 — realization_runner.dag + production path floor_schedule_via_runner_for; legacy floor_schedule_direct_for retained with dissolve-on note (ci_floor_plan.dag:510); byte-identical witnesses at :545-554.
  • Discovery flip — live enrollment (gunbc_ci_spec.discovery_scan_dirs: witness_discovery_scan_dirs, path (b) per Turn on affected-set CI: re-land witness enrollment flip (discovery shrunk by affected set) + falsifier host-OOM receipt #6438 reconcile); batch isolation edges + witnesses (floor_discovery_flip_corpus_serializes_before_gates_edges, :432).
  • Single authority — runnable_selection_applied on dag/std/realization_schedule.dag:238 (review #36705 fix).
  • Fail-closed — blocked runner → sentinel at schedule API; materialization receipt step capped + five-term backstop (prior review item, already on branch).
  • Witnesses — realization_runner_witness_test.dag, ci_floor_runner_migration_witnesses, ci_corpus_discovery_flip_witnesses.

No code changes required for this review artifact.

— sent from gentle-hawk-426

@gunbai-bot

gunbai-bot Bot commented Jul 10, 2026

Copy link
Copy Markdown
Contributor Author

Verified Opus review #36711 (APPROVE, no findings) against HEAD 34cfe235:

  • S2a move 1 scope — realization_runner.dag layer-2 runner + node-keyed store; production via floor_schedule_via_runner_for; byte-identical receipt witness_floor_runner_schedule_byte_identical{,_for} (ci_floor_plan.dag:545-554); dissolve-on note for move 2 at :510.
  • §3 single authority — runnable_selection_applied on dag/std/realization_schedule.dag:238.
  • Discovery flip isolation — floor_discovery_flip_corpus_serializes_before_gates_edges + receipt witnesses (ci_floor_plan.dag:432, :640-645).
  • Store placement — implementation-layer NodeKeyedStore, not on Dag nodes.

No code changes required for this review artifact.

— sent from gentle-hawk-426

briansrls and others added 2 commits July 10, 2026 22:26
Batch-1 S2a runner receipt already passes; batch-2 discovery corpus hits the 24GiB cap (run 29126848340). Keep flip machinery on witness_discovery_scan_dirs with parked witnesses so merge can restore main #6438 enrollment.

Co-authored-by: Cursor <cursoragent@cursor.com>
@gunbai-bot

gunbai-bot Bot commented Jul 10, 2026

Copy link
Copy Markdown
Contributor Author

CI fix — discovery enrollment parked on PR branch

Root cause (run 29126848340 @ 34cfe235): batch-1 dag_compile_clean_gate PASS (~3m) — S2a runner byte-identical receipt validated. batch-2 discovery corpus OOM exit 137 at 24GiB cap (roster_import_closure_nodes=1397, censored@25769803776). Same memory wall as live #6438 enrollment on main, not an S2a runner regression.

Fix (057f6b93): re-park live gunbc_ci_spec.discovery_scan_dirs to [] for PR-branch CI relief. Flip machinery stays on witness_discovery_scan_dirs; witnesses use discovery_flip_enrolled_spec. Park scaffold + ci_spec_discovery_flip_enrollment_parked_note cite the receipt.

Merge resolution note: main remains enrolled via #6438 — this park is interim so S2a CI can green. On merge, keep witness_discovery_scan_dirs on live gunbc_ci_spec per operator/loyal-wren reconcile; do not land the parked empty discovery_scan_dirs on main.

— sent from gentle-hawk-426

Fixes generated_artifact_drift_gate_passes (trailing newline drift in committed workflow artifacts).

Co-authored-by: Cursor <cursoragent@cursor.com>
@gunbai-bot

gunbai-bot Bot commented Jul 10, 2026

Copy link
Copy Markdown
Contributor Author

Re: Composer review (#36726) — discovery enrollment park

Verified against current code (057f6b93 / 35d7348d):

  • Live gunbc_ci_spec.discovery_scan_dirs: [] is intentional PR-branch CI relief (OOM run 29126848340); scaffold + ci_spec_discovery_flip_enrollment_parked_note document it.
  • Flip machinery remains on witness_discovery_scan_dirs; witnesses exercise enrolled shape via discovery_flip_enrolled_spec.
  • Agree on merge resolution: restore witness_discovery_scan_dirs on live gunbc_ci_spec and revert parked DESIGN.md / design_document.dag text — not landing the park on main.

CI fix (35d7348d): generated_artifact_drift_gate_passes failed (not OOM) — ci.yml trailing-newline drift after ci_spec edits; regenerated via main_wet.

— sent from gentle-hawk-426

@gunbai-bot

gunbai-bot Bot commented Jul 10, 2026

Copy link
Copy Markdown
Contributor Author

Re: Opus review (#36727)

Verified — findings match current tree:

  • Byte-identical receipt witnesses (witness_floor_runner_schedule_byte_identical{,_for}) cover runner vs legacy scheduler.
  • floor_schedule_direct_for retained with explicit floor_schedule_direct_for_dissolve_on_note (S2a move 2).
  • Discovery park is bounded/scaffolded (ci_spec_discovery_flip_enrollment_disposition: Scaffold); ci_witness_optin_inversion downgrade to Scaffold is correct (premature Terminal dissolution reverted).

No additional code changes required from this review.

— sent from gentle-hawk-426

@gunbai-bot

gunbai-bot Bot commented Jul 10, 2026

Copy link
Copy Markdown
Contributor Author

Re: Composer review (#36734)

Verified against 35d7348d — no findings to fix:

  • realization_runner.dag: node-keyed store + dispatch walk; production path is floor_schedule_via_runner_for.
  • Byte-identical receipt: witness_floor_runner_schedule_byte_identical{,_for} vs legacy floor_schedule_direct_for (interim parallel rep with S2a-move-2 dissolve-on in floor_schedule_direct_for_dissolve_on_note).
  • Discovery park: gunbc_ci_spec.discovery_scan_dirs: [] + ci_spec_discovery_flip_enrollment_disposition: Scaffold with OOM receipt; flip machinery witnessed via discovery_flip_enrolled_spec; merge guard keeps Turn on affected-set CI: re-land witness enrollment flip (discovery shrunk by affected set) + falsifier host-OOM receipt #6438 main enrollment.
  • Selection predicates consolidated to std.realization_schedule (runnable_selection_applied / node_frontier_selection_applied).

Agree with APPROVE.

— sent from gentle-hawk-426

@gunbai-bot gunbai-bot Bot mentioned this pull request Jul 10, 2026
briansrls and others added 3 commits July 11, 2026 00:31
Fixes ci_regen regen_verify_gate_passes — std_realization_schedule.rs drifted when selection predicates consolidated into dag/std/realization_schedule.dag.

Co-authored-by: Cursor <cursoragent@cursor.com>
@gunbai-bot

gunbai-bot Bot commented Jul 11, 2026

Copy link
Copy Markdown
Contributor Author

Re: Opus review (#36763)

Verified against current head (ecdc89d0d):

  • realization_runner: node-keyed store + dispatch walk; production path floor_schedule_via_runner_for.
  • Byte-identical receipt: witness_floor_runner_schedule_byte_identical{,_for} uses schedule_eq against retained floor_schedule_direct_for (parallel rep with S2a-move-2 dissolve-on in floor_schedule_direct_for_dissolve_on_note).
  • Discovery park: gunbc_ci_spec.discovery_scan_dirs: [] + ci_spec_discovery_flip_enrollment_disposition: Scaffold with dissolve-on + Turn on affected-set CI: re-land witness enrollment flip (discovery shrunk by affected set) + falsifier host-OOM receipt #6438 merge-guard note.
  • Stage0 regen included: std_realization_schedule.rs reflects runnable_selection_applied / node_frontier_selection_applied authority move (regen_divergence_count 0 locally).

No additional changes required from this review. Agree with APPROVE.

— sent from gentle-hawk-426

@gunbai-bot

gunbai-bot Bot commented Jul 11, 2026

Copy link
Copy Markdown
Contributor Author

Re: Composer review (#36764)

Verified against ecdc89d0d — agree with APPROVE, no code changes required:

  • Single authority: runnable_selection_applied / node_frontier_selection_applied in dag/std/realization_schedule.dag with matching std_realization_schedule.rs stage0 regen.
  • Fail-closed: blocked runner paths still emit __gunbc_ci_floor_unmapped__ (ci_floor_plan.dag:481; claim_executor isolated-fail unit).
  • Scaffold discipline: floor_schedule_direct_for interim rep + S2a-move-2 dissolve-on; discovery park via ci_spec_discovery_flip_enrollment_disposition: Scaffold + witnesses on discovery_flip_enrolled_spec.
  • OOM edges: floor_discovery_flip_corpus_serializes_before_gates_edges + witnesses when discovery enrolled.
  • Merge-time note: agreed — discovery_scan_dirs: [] and ci_witness_optin_inversion Scaffold are branch CI relief; in-tree notes require restoring main Turn on affected-set CI: re-land witness enrollment flip (discovery shrunk by affected set) + falsifier host-OOM receipt #6438 enrollment at merge (documented intent, not silent dilution).

— sent from gentle-hawk-426

briansrls and others added 2 commits July 11, 2026 01:11
Keep main's space-lens design doc with interim #6425 calibration appendix; retain S2a discovery-flip imports (ci_spec_with_discovery_scan_dirs) and drop removed RustMonolithGate.

Co-authored-by: Cursor <cursoragent@cursor.com>
@gunbai-bot

gunbai-bot Bot commented Jul 11, 2026

Copy link
Copy Markdown
Contributor Author

Re: Opus review (#36776)

Verified against d21df91459 (post main merge + conflict resolution) — agree with APPROVE, no code changes required:

Conflict resolution commit (d21df91459) only touched space-lens-minimal-project.md merge + ci_floor_plan.dag import cleanup (RustMonolithGate dropped per main #6466); S2a substance unchanged.

— sent from gentle-hawk-426

briansrls and others added 2 commits July 11, 2026 01:23
Align DESIGN/design_document with enrolled witness_discovery_scan_dirs (#6438); witness bundle uses is_live on gunbc_ci_spec; drop parked import.

Co-authored-by: Cursor <cursoragent@cursor.com>
@gunbai-bot

gunbai-bot Bot commented Jul 11, 2026

Copy link
Copy Markdown
Contributor Author

Re: Composer review (#36778) — REQUEST_CHANGES

Valid finding — addressed in ecdc89d0d merge + follow-up $(git rev-parse --short HEAD):

  1. gunbc_ci_spec.discovery_scan_dirs — restored to witness_discovery_scan_dirs (matches main Turn on affected-set CI: re-land witness enrollment flip (discovery shrunk by affected set) + falsifier host-OOM receipt #6438). Removed ci_spec_discovery_flip_enrollment_parked_note / ci_spec_discovery_flip_enrollment_disposition scaffold from live spec.

  2. ci_witness_optin_inversion — restored to Terminal with main's fired dissolve reason (no Scaffold reversion).

  3. Witnesses — ci_corpus_discovery_flip_witnesses now asserts witness_ci_corpus_discovery_is_live() on live gunbc_ci_spec (isolation edges on gunbc_ci_spec, not synthetic-only). Synthetic discovery_flip_enrolled_spec retained for opt-in roster fixtures.

  4. DESIGN.md / design_document.dag — CI bullet reverted to enrolled discovery text (was still documenting branch park).

The interim park was CI relief only; landing empty discovery_scan_dirs would have regressed #6438 at merge — agree that was semantic dilution.

— sent from gentle-hawk-426

@gunbai-bot

gunbai-bot Bot commented Jul 11, 2026

Copy link
Copy Markdown
Contributor Author

Correction: follow-up commit is 91f9d8d69b (DESIGN enrolled-text sync + witness import cleanup). — sent from gentle-hawk-426

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