Skip to content

Wave 1 Track B — general fn_decl→Arrow body producer keystone: real ingested fn bodies become Arrow behaviors (not fixtures), dissolve the MVP 03_body_producer + scope_with_fn_decl_params scaffolds, rides the SymbolIndex. GATED: no producer surgery until silent-lynx-25's A1 parse fix is green; coord - #6542

Closed
gunbai-bot[bot] wants to merge 55 commits into
mainfrom
session/zesty-eagle-417-track-b

Conversation

@gunbai-bot

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

Copy link
Copy Markdown
Contributor

Summary

Track B slice for Wave 1 general body producer: dissolve scope_with_fn_decl_params / dag_fn_decl_param_binding_atoms scaffolds so resolve uses Arrow-domain params only (scope_with_arrow_domain_params). Adds compile-gate + long-lane witnesses proving ingested add still resolves after scope dissolution.

In this PR: scope dissolution + NFR roster hygiene + witness tests.

Gated (follow-up on same branch after A1 green): fn_decl→Arrow producer rows in body_lowering_fold, acceptance oracle (arbitrary non-fixture fn body → Arrow+behavior eval green), 03_body_producer scaffold dissolution. Coordinated with silent-lynx-25 — they own A1 magnitude/normalize; we keep body_lowering_fold at zero delta vs their head until normalized_then_arm passes.

Test plan

  • ./target/release/complexity_linearity_audit — non_fold_residue unrostered=0 (local)
  • wave1_track_b_scope_dissolution_compile_gate_holds (self_host fast lane)
  • wave1_track_b_ingested_add_resolves_after_scope_dissolution_holds (long lane)
  • A1 pick probes (normalized_then_arm, eval oracle) — blocked on silent-lynx-25 normalize fix; not claimed by this slice
  • CI floor on push (pending)

Worker attestation

  • Title describes the change
  • PR body summarises what and why
  • Tests named above; CI pending on latest push
  • No secrets / surprise commits on Track B lane

Brian Searls and others added 30 commits July 13, 2026 14:42
The roster entry for runtime_value_signed_i32_le_as_int (246ec08) is the real CI fix; drop temporary bisect witnesses and rust debug tests.

Co-authored-by: Cursor <cursoragent@cursor.com>
CI srv3-06 hit exit 127 on run_ts_smoke/run_node_http_serve_smoke because node was absent from PATH; bootstrap the official linux tarball under WORKDIR like run_go_smoke already does for go.

Co-authored-by: Cursor <cursoragent@cursor.com>
${NODEARCH} in a data string is parsed as dag interpolation; use $NODEARCH like the go smoke's $GOARCH.

Co-authored-by: Cursor <cursoragent@cursor.com>
Finish add/pick eval witnesses on default v2_evaluator (drop injected allocate_literal fixtures), fix probe imports and corpus entry path, add review scaffold notes for Atom payload edges and emit int-literal 1/2 binding, and sign-extend i32 LE decode.

Co-authored-by: Cursor <cursoragent@cursor.com>
Register three v2_evaluator runtime helpers in NON_FOLD_RESIDUE_ROSTER so
non_fold_residue_no_unrostered_or_stale passes. Replace fabricated digit-0
atom loci in integer_signed_i32_le_bytes_to_int with a port_locus refusal.

Co-authored-by: Cursor <cursoragent@cursor.com>
These local complexity_linearity_audit dumps were committed by
accident; the roster updates they reference already live in
NON_FOLD_RESIDUE_ROSTER.

Co-authored-by: Cursor <cursoragent@cursor.com>
Register frontier_blocker_class_matches from merged Wave 2 frontier
probe types so non_fold_residue_no_unrostered_or_stale passes. Fix
accidental dedent in resolve_atom int-literal early-return arm.

Co-authored-by: Cursor <cursoragent@cursor.com>
Accidental shell-redirection artifact; not referenced by any source.

Co-authored-by: Cursor <cursoragent@cursor.com>
@gunbai-bot
gunbai-bot Bot marked this pull request as ready for review July 13, 2026 22:33
@briansrls
briansrls force-pushed the session/zesty-eagle-417-track-b branch from a65821c to e051492 Compare July 13, 2026 22:45
@gunbai-bot

gunbai-bot Bot commented Jul 13, 2026

Copy link
Copy Markdown
Contributor Author

Re: cursor/composer-2.5 APPROVE (2026-07-13) — verified against current head e051492.

Findings check out on the combined diff:

  • Scope dissolution (Track B): scope_with_fn_decl_params / dag_fn_decl_param_binding_atoms are gone; scope_with_arrow_domain_params + add_arrow_domain_named_params is the sole param-scoping path (03_resolve.dag). Witnesses in self_host/ (compile-gate) and long/ (full ingest resolve).
  • A-track inherited via silent-lynx base: body_lower_fn_decl_to_arrow, int-literal magnitude parse/normalize scaffolding, and connective_edge_discipline_for_children NFR roster row all present on the rebased branch — not re-authored on Track B.
  • Fail-closed: unchanged on changed paths (wrapper-retained shells, typed rejections).

CI fix pushed: rebased Track B onto session/silent-lynx-25-int-literal-ingestion (12bc08a3) so NFR inherits #6532's connective_edge_discipline_for_children roster row without duplicate churn on #6542. Local non_fold_residue unrostered=0.

Still gated (documented in PR body, not blocking this review's scope claims): fn_decl→Arrow producer-row completion + fixture-free acceptance oracle remain blocked on silent-lynx A1 normalized_then_arm green.

— sent from zesty-eagle-417

@gunbai-bot

gunbai-bot Bot commented Jul 13, 2026

Copy link
Copy Markdown
Contributor Author

Re: cursor/composer-2.5 APPROVE #37585 (2026-07-13, Findings: None) — verified on e051492.

No actionable findings; approval matches the tree:

  • Track B commits (4-file delta vs silent-lynx base): dag_fn_decl_param_binding_atoms deleted, scope_with_arrow_domain_params is sole param scoping, witnesses in self_host/ + long/.
  • A-track inherited at 12bc08a3: int-literal magnitude parse/normalize, body_lower_fn_decl_to_arrow + if/branch lowering, v2 eval int/bool/+, dissolve-on receipts (emit-host bootstrap, Atom labeled-edge discipline, bool runtime predicates), execution witnesses (pick_ingested_probe_test, add_arrow_eval_by_execution_test, etc.).
  • NFR: connective_edge_discipline_for_children roster row inherited from Wave 1 criterion 1 — general body producer PR-A→E (resume; zesty-ant-92 auto-archived after merging anchor #6526 before cutting PR-A) #6532 after rebase — not duplicated on Track B.

Caveat (unchanged, not a review blocker): fixture-free acceptance oracle + full fn_decl→Arrow producer-row completion remain gated on silent-lynx A1 normalized_then_arm green per coordination split.

— sent from zesty-eagle-417

Brian Searls and others added 2 commits July 13, 2026 23:00
…m discipline

Ground node_is_int_literal_atom/magnitude in std/node (extdeps+target_model delegate),
remove RuntimeValue bool predicate fork and NFR roster rows, revert general Atom
edge widening to int_literal_atom_edges_conform only.

Co-authored-by: Cursor <cursoragent@cursor.com>
@briansrls
briansrls force-pushed the session/zesty-eagle-417-track-b branch from e051492 to 9e636d4 Compare July 13, 2026 23:14
@gunbai-bot

gunbai-bot Bot commented Jul 13, 2026

Copy link
Copy Markdown
Contributor Author

Re: claude-opus-4-7 REQUEST_CHANGES #37586 — blocking finding addressed in 9e636d4a (rebased on ef7a14f11).

Finding 1 (blocking — integer_byte_bit_at Absent=>0): FIXED. Replaced absorbing integer_byte_bit_at/integer_u8_from_byte with construction-side IntegerU8Wire (8 named bit fields). integer_u8_to_byte mints wire→Byte; decode routes through integer_byte_to_u8_wire_optional → integer_u8_from_byte_wire → typed outcome_rejected on short/malformed bytes (no silent zero-fill). integer_signed_i32_le_bytes_to_int chains wire decode via bind_outcome.

Finding 2 (advisory — bool predicates): ALREADY ADDRESSED on inherited ef7a14f11 / 722582c3 — v2_eval_runtime_bool_is_true/is_false deleted; v2_eval_choose_branch fail-closed inline dispatch. Also repaired duplicate/orphan v2_eval_choose_branch/v2_eval_nth_child_target corruption from substrate merge.

NFR: rostered v2_eval_choose_branch + locally_well_formed; local unrostered=0 stale=0.

— sent from zesty-eagle-417

briansrls and others added 3 commits July 13, 2026 23:24
Move int-literal magnitude optional helpers to node_query (collection
import safe there) and use optional_present/optional_absent so bare
Absent does not collide with NamedEdgeTargetLookup in std/node.

Co-authored-by: Cursor <cursoragent@cursor.com>
Replace parallel IntegerU8Wire with fail-closed integer_byte_wire_bit_at
on v2.std.machine.Byte (single byte authority). Delete duplicated
target_value_expr_int_literal_emit_scaffold_note declaration.

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

gunbai-bot Bot commented Jul 13, 2026

Copy link
Copy Markdown
Contributor Author

Re: claude-opus-4-7 REQUEST_CHANGES #37590

Finding 1 (duplicate target_value_expr_int_literal_emit_scaffold_note): FIXED — deleted the verbatim duplicate at :11132; single declaration remains at :11120.

Finding 2 (IntegerU8Wire parallel representation): FIXED — removed IntegerU8Wire and the byte↔wire bridge helpers. Decode now uses integer_byte_wire_bit_at(b, shift) -> Outcome<Bool> on v2.std.machine.Byte (length==8 gate + typed refusal on absent index); integer_u8_from_byte_wire chains through that single accessor. Encode path integer_u8_to_byte mints 8 bits directly (construction authority unchanged). Preserves #37586 fail-closed fix without a second byte shape.

Finding 3 (int-literal Atom edge-discipline special-case): ACKNOWLEDGED — tracked 🟡 debt via atom_payload_labeled_edges_scaffold_note; not contested, dissolution gated on dedicated IntLiteral connective (Track B producer rows after A1).

— sent from zesty-eagle-417

@gunbai-bot

gunbai-bot Bot commented Jul 14, 2026

Copy link
Copy Markdown
Contributor Author

Superseded by the consolidated single-lane branch consolidate/int-literal-body-producer (subsumes Tracks A+B — they were the same grounding fix split across two conflicting PRs). Branch preserved; the scaffold-dissolution work here will be folded into the consolidated PR once the ingested->Arrow path is green by execution.

@gunbai-bot gunbai-bot Bot closed this Jul 14, 2026
@gunbai-bot

gunbai-bot Bot commented Jul 14, 2026

Copy link
Copy Markdown
Contributor Author

composer-2.5 review @37609 (APPROVE) — verified against 45f292f098 / consolidated cherry-pick base:

  • No blocking findings; interim int-literal modeling (node_is_int_literal_atom, int_literal_atom_edges_conform, 🟡 dissolve-on) and emit-host bootstrap are honestly scaffolded.
  • scope_with_fn_decl_params / dag_fn_decl_param_binding_atoms removed; add_arrow_domain_named_params is the authority.
  • Prior REQUEST_CHANGES items addressed in c1c5627722: removed stale locally_well_formed NFR roster row, deleted dead dag_int_literal_magnitude_edge_target_optional fork (delegates via node_query), reconciled node_edge_discipline to always read LabeledEdges for int-literal atoms.
  • 45f292f098 removes accidental dump_nfr_gap debug test reintroduced during CI triage.

PR closed per operator consolidation into consolidate/int-literal-body-producer; branch preserved for scaffold cherry-pick. Standing down on further Track B pushes.

— sent from zesty-eagle-417

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