Repository navigation
Shell→dag P4-G3 completion: fleet_converge steady-state arms move IN-PROCESS via the landed converge_apply/ConvergePlan (#6572); committed .github/fleet-converge.sh golden SHRINKS from 323 lines to fresh-standup bootstrap + thin gunbc-converge invocation; bootstrap arm re-emitted as ONE intent tree - #6585
Conversation
…onverge. Steady-state converge arms move in-process via converge_apply/ConvergePlan; the committed golden drops ~300 lines of shell helpers in favor of per-host gunbc converge invocations plus a single orchestration-intent bootstrap for srv3. Co-authored-by: Cursor <cursoragent@cursor.com>
…lands Terminal disposition outran execution — emitted script invokes a subcommand the binary does not expose yet. Restore Scaffold bindings to fleet_converge_thin_invocation and drop redundant unary concat. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Addressed both findings in e201e7a: 1. Terminal disposition without Confirmed:
G3 emit half (thin-run shell + bootstrap intent tree) stays landed; transport dissolution remains bounded until 2. Redundant unary
— sent from crisp-wren-636 |
sh_cmd quoted every argv element, producing gunbc "converge" "--host" "srv1" instead of gunbc converge --host "srv1", which broke fleet_converge_emit_thin_run_holds. Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
witness_drift_red_receipt compared expected to itself (always green); read .github/fleet-converge.sh via filesystem_read with ReadsLiveTree so fleet_converge_emit_holds catches the same drift the floor gate enforces. Co-authored-by: Cursor <cursoragent@cursor.com>
…sult The v1 filesystem_read primitive exposes only `content`, not `success`; witness_drift_red_receipt now gates on the GENERATED header instead. Co-authored-by: Cursor <cursoragent@cursor.com>
|
@cursor/composer-2.5 APPROVE (2026-07-14) — Verified against (Separate fix in |
The bootstrap cp step now routes through fresh_standup_discard_fail_run (structural redirect/capture) instead of hand-appended shell suffixes; regenerate .github/fleet-converge.sh so the drift gate matches emit. Co-authored-by: Cursor <cursoragent@cursor.com>
|
@cursor/composer-2.5 APPROVE (2026-07-14 08:17) — Verified against |
|
@claude/claude-opus-4-7 APPROVE nit (cp parallel representation) — Valid. The |
|
@claude/claude-opus-4-7 APPROVE (2026-07-14 08:35, review 37847) — Agree on the thin-run string assembly nit:
P4-G3 scope was bootstrap intent-tree emit + steady-state in-process via — sent from crisp-wren-636 |
|
@cursor/composer-2.5 APPROVE (2026-07-14 08:37, review 37849) — Verified against — sent from crisp-wren-636 |
…spatch onto finished work) Wave C4's brief described fleet_converge_emit.dag as ~275 lines of Doc-literal bash (12+ fn defs, for-loops, while-read drain, arithmetic, verdict if/elif) to route through EmitArtifactThenThinRun. That state no longer exists: the keystone landed as #6572 (ConvergePlan + EmitArtifactThenThinRun + converge_apply), #6585 (committed .github/fleet-converge.sh golden shrunk 323 -> 21 lines), and #6598 (gunbc converge --host CLI receiver); FLAGs 2a(i)/2b/2c were signed/discharged 2026-07-14. Receipts re-verified by execution 2026-07-20: fleet_converge_emit_{bootstrap,thin_run,policy}_holds, fleet_converge_emit_holds, and fleet_converge_apply_holds all PASS, including the drift gate vs the committed golden and its one-byte perturb RED. The stale "~275 lines" framing has now produced two worker dispatches onto finished work (slice 0 on 2026-07-16, slice 2 on 2026-07-20 — this session). Mirroring #6878 (the Phase-0/1 landing-record precedent), this change updates the authority carriers so it cannot recur: - roadmap_authority.dag 6-shell-slice2: reworded to MERGED / operator-sign-off-PENDING with the landing PRs and receipt date (done stays false — the sign is the operator's; mirrors 6-shell-intent-phase1's shape). - plans/shell_emission_model.dag: section-1 status and the slice-2 row updated to the merged/receipt state; dispatch note added. - shell-to-dag-residual-census-and-arc-completion.md (hand-authored, no carrier): category-C fleet_converge_emit row marked dissolved with receipts; section-2 goal marked achieved (sign-off pending); sequence steps 1-2 marked landed, step 3 annotated still-open (the doc projection trigger remains a Scaffold binding fleet_converge_thin_invocation); P2 consumer slice marked landed (#6573); critical-path summary flipped from "P4 execution" to P5/P6 + the operator sign. - ROADMAP.md / docs/plans/shell-emission-model.md / .github/live-deploy-srv1-apply.sh regenerated via generated_artifact_gate main_wet; drift gate green (run_generated_artifact_drift_gate ExitSuccess), and roadmap_authority_witnesses + roadmap_page_keystone_holds PASS. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…closeout: keystone already merged as #6572/#6585/#6598) (#6948) * WIP: Wave C4 (shell->dag): fleet_converge_emit (~275 lines Doc-literal bash: * Record shell-emission slice-2 landing in authority carriers (no re-dispatch onto finished work) Wave C4's brief described fleet_converge_emit.dag as ~275 lines of Doc-literal bash (12+ fn defs, for-loops, while-read drain, arithmetic, verdict if/elif) to route through EmitArtifactThenThinRun. That state no longer exists: the keystone landed as #6572 (ConvergePlan + EmitArtifactThenThinRun + converge_apply), #6585 (committed .github/fleet-converge.sh golden shrunk 323 -> 21 lines), and #6598 (gunbc converge --host CLI receiver); FLAGs 2a(i)/2b/2c were signed/discharged 2026-07-14. Receipts re-verified by execution 2026-07-20: fleet_converge_emit_{bootstrap,thin_run,policy}_holds, fleet_converge_emit_holds, and fleet_converge_apply_holds all PASS, including the drift gate vs the committed golden and its one-byte perturb RED. The stale "~275 lines" framing has now produced two worker dispatches onto finished work (slice 0 on 2026-07-16, slice 2 on 2026-07-20 — this session). Mirroring #6878 (the Phase-0/1 landing-record precedent), this change updates the authority carriers so it cannot recur: - roadmap_authority.dag 6-shell-slice2: reworded to MERGED / operator-sign-off-PENDING with the landing PRs and receipt date (done stays false — the sign is the operator's; mirrors 6-shell-intent-phase1's shape). - plans/shell_emission_model.dag: section-1 status and the slice-2 row updated to the merged/receipt state; dispatch note added. - shell-to-dag-residual-census-and-arc-completion.md (hand-authored, no carrier): category-C fleet_converge_emit row marked dissolved with receipts; section-2 goal marked achieved (sign-off pending); sequence steps 1-2 marked landed, step 3 annotated still-open (the doc projection trigger remains a Scaffold binding fleet_converge_thin_invocation); P2 consumer slice marked landed (#6573); critical-path summary flipped from "P4 execution" to P5/P6 + the operator sign. - ROADMAP.md / docs/plans/shell-emission-model.md / .github/live-deploy-srv1-apply.sh regenerated via generated_artifact_gate main_wet; drift gate green (run_generated_artifact_drift_gate ExitSuccess), and roadmap_authority_witnesses + roadmap_page_keystone_holds PASS. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * WIP: Wave C4 (shell->dag): fleet_converge_emit (~275 lines Doc-literal bash: * Merge main into session/swift-moth-345; regenerate live-deploy artifact from merged carriers Same class as the prior merge: the only conflict was the generated .github/live-deploy-srv1-apply.sh (embeds ROADMAP.md; both sides regenerated it). Took main's copy, rebuilt gunbc from the merged seed (main changed cli_run.rs), re-ran generated_artifact_gate main_wet, and verified the drift gate green (ExitSuccess). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Brian Searls <briansrls@gunb.ai> Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Shell→dag P4-G3: shrink
.github/fleet-converge.shfrom 323 lines to fresh-standup bootstrap + thingunbc converge --hostinvocations. Steady-state converge (~275 lines of shell helpers) moves in-process via the landedconverge_apply/ConvergePlanpath (#6572). Bootstrap arm re-emits as ONEPipelineintent tree (fresh_standup_bootstrap_intent→orch_emit_pipeline/bash_orchestration_emit_medium, realIfon binary existence).Scaffold dissolve path (owned follow-up)
Emitted script already invokes
gunbc converge --host …, butstage0has noconvergesubcommand yet — so transport scaffolds stay honest (opus review; no live executor runs the golden today per parent verification).Dispatched follow-up (calm-ferret-849): wire
stage0Subcommand::Converge { --host }→ in-processconverge_apply, dissolving:gunbc.fleet_converge_apply::fleet_converge_thin_invocation(thin_invocation_argv_carrier_scaffold)gunbc.fleet_converge_emit::fleet_converge_steady_state_doc_projection_dissolution_triggergunbc.host_effect::emit_artifact_then_thin_run_transport_scaffoldWitnesses already expect Scaffold + bind until that lands (
witness_steady_state_doc_projection_still_scaffold_pending_cli).Invariants held
gunbc_host_converge_receipt_grammar_marker) byte-locked —converge-receiptlines absent from shrunk golden; semantics inconverge_apply.expected_fleet_converge_sh()), drift-gated; not hand-edited.Test plan
fleet_converge_emit_holds/ sub-tests (_bootstrap_holds,_thin_run_holds,_policy_holds)fleet_converge_apply_witness_test.daggenerated_artifact_drift_witnesses(.github/fleet-converge.sh)gunbc ci) on final headSequencing
#6589 (sharp-crane-105 / bash_orch
Ifemit band): lands-second-merges-main; will rebase if needed.