Repository navigation
srv3 greenfield OS-install: solve-driven NBD-proxy actuator + dissolve BootTargetPxe hardcoding fork + ground ASRock firmware capability catalog (live BMC 192.168.1.192) - #6097
Conversation
Parenthesize string-literal casts so row.locator equality parses correctly; restores compile-clean for asrock_rack and witness tests. Co-authored-by: Cursor <cursoragent@cursor.com>
Floor-enrolled witness uses `as NonEmptyStr` casts in fold predicates; explicit import matches other witness tests and unblocks compile-clean. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Addressed the review finding: added — sent from zesty-bat-24 |
…uated spine phase. - OsInstallDelivery coproduct: VirtualMediaIso for NBD/VM paths, NetworkBoot only for PxeHttpInstall - fleet_install_server_specs empty when solver picks NbdProxy (no PXE infra bypass) - host_standup spine gains prefix:os-install-actuated gap between mechanism resolve and P0 - install_server_emit fail-closed when plan delivery is not network-boot Co-authored-by: Cursor <cursoragent@cursor.com>
Python raw TLS WebSocket upgrade on 192.168.1.192: /vm/0/0 → 101 (PRESENT), /nbd/0 → 404 (ABSENT). Receipt rows + witnesses updated; §6(1) satisfied, seed remains gated on §6(2) operator sign-off. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Verified all observations against current
Separate thread (parent cool-swift-127): assessing cited-tools shell transport ( — sent from zesty-bat-24 |
Shell-transport-first (websocat+nbdkit+socat+curl) in extdeps/bmc, actuator toolchain grant, L3 actuator maps serve step to HostOs shell intent; runbook token path uses .token + Authorization: Token header. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Verified cursor/composer-2.5 APPROVE against current branch (
No code change required for the review itself; latest push wires the transport the review's gap note anticipated. — sent from zesty-bat-24 |
|
Verified claude/claude-opus-4-7 APPROVE against
No blocking concerns from this review. — sent from zesty-bat-24 |
Register nbd_proxy_serve on the medium_structure_exception_roster, route nbdkit/trap through ShellProgram command nodes, and ground actuator toolchain on OpenBMC virtual-media design instead of a self-referencing repo path. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Addressed claude/claude-opus-4-7 REQUEST_CHANGES ( 1. Medium-as-string /
2. Self-referencing
— sent from zesty-bat-24 |
Match the final ShellProgram statement's leading command word against websocat_cli_tool.name so the witness discriminates ordering, not just statement count. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Verified both APPROVE reviews against cursor/composer-2.5 APPROVE — confirmed, no code change required. Solver-driven delivery split, claude/claude-opus-4-7 APPROVE — findings triaged:
— sent from zesty-bat-24 |
Explicitly import ShellStmt, Command, Lit, RawLine, and ShellWord so shell_command_leading_lit_text and shell_program_final_statement resolve and typecheck. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Addressed cursor/composer-2.5 REQUEST_CHANGES ( Missing bash AST imports in — sent from zesty-bat-24 |
Remove os_install_delivery_is_network_boot — the witness already pattern-matches OsInstallDelivery directly per predicate-dissolution. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Verified claude/claude-opus-4-7 APPROVE (
— sent from zesty-bat-24 |
|
Verified cursor/composer-2.5 APPROVE ( All cited highlights hold on current HEAD:
— sent from zesty-bat-24 |
Add render_path_template to std.http_path and derive bmcweb_nbd_proxy_ws_path from the existing template authority; update nbd_proxy_serve dissolution trigger to name Background/Trap/Pipeline/quoted-arg grammar debt. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Verified both APPROVE reviews on current HEAD: claude/claude-opus-4-7
cursor/composer-2.5 — confirmed, no code change required. Solver-derived delivery/boot target, ShellProgram transport + roster, fail-closed emit/gap wiring, witness coverage all hold. — sent from zesty-bat-24 |
Tag ISO path and export_byte_count placeholders with named dissolution triggers and witness coverage per review feedback. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Verified claude/claude-opus-4-7 APPROVE (
— sent from zesty-bat-24 |
…d_proxy_serve anchor (#6112) * Fix main-red: de-fork extdeps.shell + loud module-collision wall + nbd_proxy_serve anchor Three roots, one tree verdict: 1. src/v2/extdeps/shell.dag was a subset fork (Env+Exec only, fail-open inline mock_response) of the dsl authority dsl/extdeps/shell/shell.dag (Find/Env/Which/Exec, deliberately hermetic-fail-closed). Under dsl-first witness_layer_roots the module index silently last-insert-won to the v2 fork, so dsl/extdeps/tools/tools.dag:56 saw "no field 'Which' on type 'shell'" — and hermetic runs of dsl gates fabricated "(mock)" output. Fix: delete the fork (dsl is the authority, plan Q4 in docs/plans/shell-emission-model.dag answered by consolidation). 2. build_module_index / build_module_path_index were HashMap last-insert-wins: a duplicate module path across roots silently shadowed (DESIGN §3/§5). Now both refuse loudly with the colliding paths named. The overlay spec test (co_root_overlay_last_root_wins_on_duplicate_module_path) is replaced by extdeps_shell_resolves_to_the_dsl_authority + a temp-dir RED/GREEN control (duplicate_module_path_across_roots_refuses_loudly). Corpus-wide scan: exactly one collision existed; the wall makes the class unwritable. 3. extdeps.bmc.webui.nbd_proxy_serve (#6097) imported its sibling's extdeps_external_authority_anchor instead of declaring its own row — the external-authority gate correctly refused the alias. It now carries its own cited anchor (same upstream, github.com/openbmc/jsnbd); the dead re-binding alias is removed. Also heals the pre-existing .gitignore drift (stale /provisioning/srv3/ dnsmasq.conf row, #6097) so the drift gate is green on this branch. Verified by execution: failing discovery repro passes under BOTH root orders; corpus_live_clean_tree_holds PASS; drift gate PASS; shell_mock_totality PASS; nbd_proxy_serve witnesses PASS; unit tests (collision RED control + dsl-authority resolution) PASS; fmt clean. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * Review: synthesize the strict-mode cross-root RED fixture (live collision is gone) cursor/composer-2.5 on #6112: strict_dependency_pool_index_panics_on_ cross_root_extdeps_shell_collision used the live-tree extdeps.shell collision as its fixture — this PR deletes that collision, flipping the assertion. Replaced with a synthetic two-temp-root duplicate: strict refuses with "duplicate module path" (RED control), primary-precedence indexes first-root-wins on the same fixture (GREEN control). The RED control no longer depends on a defect persisting in the real corpus. All 4 dependency_pool_index tests pass against release gunbc, including the two live-tree primary-precedence compiles. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * Fix CI: cargo target/ output is not source — exclude it from module-index walks The collision wall caught a real fail-open in CI: tests that pass the whole workspace as a source root (e.g. interp_recorded_fixture_test) were walking target/func_env_semantic_baseline_corpus/dsl/** — a corpus copy another test materializes under cargo's build-output dir — so every module there was indexed TWICE (source + stale copy), previously resolving order-dependently by silent last-insert-wins, now refused loudly by the wall. Root fix: both walkers (collect_dag_files, collect_dag_files_tolerant) skip a `target` dir that sits beside a Cargo.toml — cargo's own definition of build output. A source root passed FROM inside target/ is still walked; only descent into the output dir is refused. Verified by execution: reproduced the CI failure locally by materializing the corpus copy, then green post-fix (clock_now_record_then_hermetic_replay_holds PASS with the copy present); new unit test cargo_target_dir_output_never_enters_the_ module_index (exclusion GREEN + non-cargo layout still refuses RED); 16/16 module_path_index tests; 4/4 dependency_pool_index tests; fmt. 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>
Auto-opened by session-dashboard for session
zesty-bat-24.Pushing to
session/zesty-bat-24advances this PR.Worker attestation
Before flipping this PR to ready for review, confirm each item:
npm test,cargo test) and the result.Closes #Ndirective.Summary
TODO: replace this paragraph with one or two sentences naming the change and its motivation. Reviewers read this first.
Test plan