Skip to content

Dedup dag.dag mvp1 fn families into parameterized cores - #6317

Merged
briansrls merged 9 commits into
mainfrom
session/deep-dove-239
Jul 6, 2026
Merged

briansrls merged 9 commits into
mainfrom
session/deep-dove-239

Conversation

@gunbai-bot

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

Copy link
Copy Markdown
Contributor

Summary

Mechanical dedup of five repeated mvp1 fn-family stamping clusters in src/v2/extdeps/languages/dag.dag into parameterized cores. Per-family public names are preserved as thin wrappers; control-fixture wrongness (wrong_value / swapped_operands / swapped_arms) stays as explicit body arguments at instance sites.

Line count: 6268 → 5559 (−709 net); raw diff +453 / −1162.

Cluster Core Thin wrappers kept
(1) arrow-with-body nodes (~26L × 12) dag_mvp1_arrow_with_body_node(domain, return_type_binding, body) add/pick/bind/loop/match/rec/field_access + wrong_value/swapped variants
(2) target-model bundles (~40L × 6) DagMvp1BodiedFnFamilySpec + dag_mvp1_bodied_fn_target_model_bundle_node / _target_model pick/bind/loop/match/rec/field_access target models
(3) grammar token sequences (~27L × 7) dag_grammar_sequence_from_concrete_tokens(tokens, terminal_for_token) base/pick/bind/loop/match/rec/field_access
(4) grammar-relation rows (~25L × 6) DagGrammarRelationRow + dag_grammar_relation_row_node per-family *_grammar_relation_row_node
(5) statement prefix tokens (~13L × 4) dag_mvp1_nullary_fn_statement_prefix_tokens(fn_name, return_type) pick/bind/loop/rec (field_access unchanged — unary param shape)

Also shared: dag_mvp1_family_serialize_source_node, dag_mvp1_bodied_fn_declared_inhabitants_root, dag_mvp1_bodied_fn_translation_rules_node.

Scope: dag.dag only. Zero .rs changes.

Verification

Compile-clean (resolve): claim_batch --source-root dag --source-root src/v2 --entry src/v2/extdeps/languages/dag.dag --function dag_mvp1_target_model → resolve 2506ms, 29 modules / 1749 items (module loads clean; fn returns TargetModel, not a Bool witness).

Roster: grep confirmed all importer-facing dag_mvp1_* / dag_grammar_sequence_* public names still present (no fn dropped from discovery surface).

Executed witnesses (sample PASS lines):

PASS bind_emit_keystone_holds
PASS loop_emit_keystone_holds
PASS dag_add_emit_matches_serialize_holds
PASS serialize_applied_diff_loop_body_holds

(full emit-host + round-trip matrix run locally: bind/loop/branch/match/field_access/record_construct emit smokes + bind/loop/branch/match round-trips + swap-operands control — all PASS)

Test plan

  • claim_batch emit-host MVP smokes (all mvp1 families)
  • claim_batch execution round-trips (add/bind/loop/branch/match)
  • serialize_applied_diff_swap_operands_test (control fixtures still discriminate)
  • Public fn roster unchanged
  • CI floor (operator merge)

briansrls and others added 4 commits July 6, 2026 04:40
Collapse five repeated stamping clusters (arrow-with-body nodes, target-model bundles, grammar token sequences, grammar-relation rows, statement prefix tokens) into shared parameterized cores with thin per-family wrappers, preserving explicit control-fixture operands at instance sites.

Co-authored-by: Cursor <cursoragent@cursor.com>
@gunbai-bot gunbai-bot Bot changed the title dedup dag.dag mvp1 fn families into parameterized cores Dedup dag.dag mvp1 fn families into parameterized cores Jul 6, 2026
@gunbai-bot
gunbai-bot Bot marked this pull request as ready for review July 6, 2026 05:12
briansrls and others added 5 commits July 6, 2026 07:27
Pick up #6311 (source_root_ingest gate fix) so CI floor runs on a green base.
…ges (byte-identical, width=1) (#6306)

* WIP: ci timeout investigation

* trace_mark: stage-boundary gantt marks through the v1 compile pipeline

One new registry intrinsic trace_mark(label) -> Unit (the
record_source_chars_index_lookup precedent: registry row in 04_method.dag,
realization in runtime_rust.dag -> v1_rt, interpreter arm for totality).
Nine marks at the known segment boundaries of the compile pipeline
(frontend/normalize/reconcile/analyses/emit begin+done, dag collect/serialize),
so every run log carries a natural Gantt:

  [gantt] compile.reconcile.done t_ms=... rss_mib=...

Consecutive marks define the segments; rss_mib rides along for the memory
curve. Motivation: the whole-tree compile runs >60 min single-threaded with
zero output after "resolved N sources" — CI runs die inside it blind
(operator request 2026-07-05: checkpoints + a general logging system).

Marked bridge, interim by design: dissolves into the v2 per-RealizedStep
CostAccount (std.realization_measurement) when the realization-measurement
carrier is inhabited. Authority edits (.dag) land with hand-synced generated
seed (.rs) per the #5867 precedent — regen is currently blocked on main
(#6291); re-verify at the next regen window.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* WIP: ci timeout investigation

* WIP: ci timeout investigation

* WIP: ci timeout investigation

* WIP: ci timeout investigation

* WIP: ci timeout investigation

* WIP: ci timeout investigation

---------

Co-authored-by: Brian Searls <briansrls@gunb.ai>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
…6324)

This sole test in mod floor_disposition_kernel_alignment (cli_run.rs) ran the
floor-disposition analysis, which typechecks the gunbc module closure live — and
that hits the #6239 compile-wall: per-module typecheck attribution measured
gunbc.ci_deploy_access at 416s (7 min) for a single module, with the test spending
>9 min and never finishing. It was the sole reason `cargo test --workspace` appeared
to hang (deterministic, single-threaded reproducible), compounded by its
std::env::set_current_dir cwd-mutation racing under parallel execution (#5971 class).

No value and slated for deletion (operator, 2026-07-06). Floor-disposition coverage
is exercised in the floor; the real fix is the compile-wall itself (owned elsewhere).

Co-authored-by: Brian Searls <briansrls@gunb.ai>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@briansrls
briansrls merged commit a3a620b into main Jul 6, 2026
2 of 3 checks passed
@briansrls
briansrls deleted the session/deep-dove-239 branch July 6, 2026 20:19
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