Repository navigation
ITEM 2: construction → DeclarationRef carrier + graph-property witness - #5960
Merged
Merged
Conversation
The keystone of the reference-grounding migration (#5952). WallNow's free-text `construction: String` becomes `WallNow { mechanism: ConstructionMechanism, authority: DeclarationRef }`, so "this lens chains to a real construction" stops being prose and becomes a WALKABLE graph property. Carrier (no mint, no widen): - ConstructionMechanism reused (std.disposition) — the 3 live sites map 1:1 onto its 3 variants, real §2 evidence the HOW-axis is right, not a guess: - intent_linearity → SingleAuthority + v2.lens.module_graph.import_closure_live - application_serializer → RealizationDispatch + v2.compiler.translate.target_serialize_source_from_model - cost → SubstrateMandatoryTag + v2.std.node.NodeKind (the closed Connective×Behavior kernel that MANDATES total cost — NOT SymbolicCost, which is the codomain and carries an UnknownCost escape; the totality prose dissolves into the tag + a ref) - authority is std.decl_ref.DeclarationRef VERBATIM — the one authority the disposition/determinism scaffold markers (#5954) bind through, byte-identical idiom. Witness (jolly-cat gates by execution): - wall_now_authority_graph_is_total: every WallNow authority resolves to a real top-level decl in the corpus → green over the 3 sites; perturb-to-RED by planting a dangling decl_name. - Resolution keys on identity (module_path + decl_name) kind-agnostically via the reused extract_top_level_decls (made pub — no second decl scanner forked). NOT a fn-index ∪ type-index union. - SCAFFOLD (DESIGN §6): host-side resolution stands in for a not-yet-exposed unified kind-agnostic .dag decl-resolution primitive (item (ii), coordinator-tracked resolver lane); marked to dissolve onto it. Discriminating control + parse-unit tests included. Plan doc: construction-justification-rule vacuity-residual now CLOSED (no free string survives in ConstructionClass); regenerated md. Drift gate green. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
briansrls
pushed a commit
that referenced
this pull request
Jun 29, 2026
briansrls
added a commit
that referenced
this pull request
Jun 29, 2026
…#5943 carrier shape (#5964) #5933 (model-grounding lens) merged carrying the PRE-#5943 ConstructionJustification shape — `RatchetForever { undecidable_because: ... }` + `rationale: ...` — because its CI was green against an older merge-base. Against current main (where #5943 removed both fields and #5960 reshaped WallNow) grounding.dag fails to typecheck: `field 'rationale' not found in type 'ConstructionJustification'`, reddening the lens, its witness, and the floor. Classic merge-skew (CI-green-on-stale-base). Fix = the #5943 migration applied to the one site #5933 re-introduced: drop the unread free-text payloads, `class: RatchetForever` (nullary). Same treatment every other RatchetForever site already carries; the judgment lives in the typed variant. Verified in-tree on current main: grounding_lens_witnesses green; candidates() runs; construction_justification_hygiene_tests 6/6 (incl. wall_now_authority_graph_is_total). (The dropped undecidable_because prose — the cursor~Cursor / necessary-not-sufficient reasoning — is real and belongs in the EXTRACT/grounding DESIGN doc, not the carrier; flagged to neat-fox-279.) Co-authored-by: Brian Searls <briansrls@gunb.ai> Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Keystone of the reference-grounding migration (#5952).
WallNow { construction: String }→WallNow { mechanism: ConstructionMechanism, authority: DeclarationRef }— 'this lens chains to a real construction' becomes a walkable graph property.Carrier (no mint, no widen)
ConstructionMechanismreused (std.disposition); the 3 live sites map 1:1 onto its 3 variants (§2 evidence the HOW-axis is right):SingleAuthority+v2.lens.module_graph.import_closure_liveRealizationDispatch+v2.compiler.translate.target_serialize_source_from_modelSubstrateMandatoryTag+v2.std.node.NodeKind(the closed Connective×Behavior kernel that mandates total cost — notSymbolicCost, which is the codomain with anUnknownCostescape)authorityisstd.decl_ref.DeclarationRefverbatim — the one authority the disposition/determinism markers (Determinism §3 fast-follow: §6 activation/dissolution markers on core axis and refinements #5954) bind through.Witness (gate by execution)
wall_now_authority_graph_is_total: every WallNow authority resolves to a real top-level decl → green over the 3 sites; perturb-to-RED by planting a danglingdecl_name.extract_top_level_decls(made pub — no second decl scanner forked). NOT a fn∪type index union..dagdecl-resolution primitive (item (ii), resolver lane); marked to dissolve onto it. Discriminating control + parse-unit tests included.Plan-doc vacuity residual now CLOSED (no free string survives in
ConstructionClass); md regenerated; drift gate green. Verified in-tree: 6/6 construction hygiene tests pass incl. the witness; clippy clean.@jolly-cat-29 gates the witness by execution.
🤖 Generated with Claude Code