Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,12 @@ data a_live_authority_name_carries_a_superseded_claim: RecurringFailureMode = Re

"**WHY NO EXISTING WALL SEES IT, stated as a boundary rather than a gap to be closed by the neighbour.** gunbc's namespace-wave admission (`gunbc.namespace_wave_admission`) enumerates AUTHORED NAME OCCURRENCES resolved per module and adjudicates every changed binding -- on this same PR it correctly demanded 255 `TargetChanged` rows. It does not inspect prose, and it is not supposed to: DESIGN section 4c makes annotations invisible to every semantic pass, and a `.md` plan is further out still. So a fully green namespace wave is positive evidence about the executable binding surface and NO evidence about whether the prose describing that authority remains true. The two are complementary walls, not a strong and a weak version of one wall. ",

"**RECEIPT (warm-ant-80, 2026-09-05, source 06a30d90376d5fb1fef91d6963604e3b053b9df1).** The annotation on `gunbc.instruments.opaque_realization_census.read_emitted_tree` says `shell.Find.FilesByNameSorted` reports sort's success even when find fails, and says a partial walk cannot be detected until that transport changes. The named operation already captures find's exit status, sorts only after find succeeds, and returns the captured failure; its adjacent `find_pipe_shell_emit_dissolution_trigger` describes that repair. The pointer still resolves, but the proposition it accompanies has been superseded. While investigating an artifact-digest difference, a manager relied on the annotation and directed this lane to file the repaired transport defect as newly live. Reading the operation stopped that false filing; no new transport defect was established. The source comparison and the withdrawn instruction are the evidence here, not an execution of a broken listing. ",

"**SECOND RECEIPT (warm-ant-80, 2026-09-05, same source revision).** The header of `tools.emission_entry_instrument` says a scoped compile fits on the runner that killed a whole-corpus compile, citing `gunbc.whole_corpus_compile_admission`. That authority's scope note explicitly withdraws the fit claim, citing clever-tern-899's 2026-08-28 scoped control produced by `gunbc compile` with entry `src/v2/std/node.dag`: the observed demand exceeded that runner's reported budget. A manager relied on the surviving header to redirect this lane to a route as though its fit were established, then withdrew the instruction after reading the cited authority. The grain claim survives: one entry's closure differs from the whole-corpus population. The runner-specific fit claim does not. The instrument restated a proposition rather than deriving it, so the authority's withdrawal did not reach its restatement. ",

"**THE SAME FAILURE WITHOUT A NAME-REFRESH HUNK.** A repair or a withdrawn measurement can invalidate a sibling's prose while leaving every cited name unchanged. The repair's own dissolution trigger does not enumerate or adjudicate those descriptions. Here the surviving citations lent authority to claims that caused wrong instructions. This extends the specimen boundary beyond rename sweeps: a resolving pointer is no attestation that its surrounding proposition was rechecked after the referenced behavior changed. ",

"**RUNG: MITIGATABLE.** External review caught this instance; nothing in the tree can. The ceiling is not structural impossibility: the truth of an arbitrary proposition about a mechanism is not decidable from the Node tree, so the honest ceiling is MECHANICALLY PREVENTABLE. **NEXT-RUNG TRIGGER: a claim census** -- an instrument that takes the prose citations a rename or authority replacement TOUCHED and surfaces, for adjudication, the proposition each one sits inside, refusing the change until each is dispositioned. That is a real instrument and it does not exist; naming it here is the trigger, not a claim of coverage. ",

"**RECOGNITION RULE: any diff that updates a name inside prose it did not otherwise read.** The tell is a citation-only hunk -- one identifier changed, the surrounding sentence untouched. The obligation is that a sweep which refreshes a name has adopted the claim: re-read the proposition, and either confirm it against the current mechanism or mark it superseded. Updating the name alone is not the cheap half of the job, it is the half that manufactures the false attestation.",
Expand Down
6 changes: 6 additions & 0 deletions dag/gunbc/recurring_failure_mode/state_space_conflation.dag
Original file line number Diff line number Diff line change
Expand Up @@ -184,6 +184,12 @@ data state_space_conflation: RecurringFailureMode = RecurringFailureMode {
"WHAT MAKES IT A DISTINCT FORM RATHER THAN ANOTHER EXAMPLE: the earlier forms are collapses that were AUTHORED. This one was INTRODUCED BY A CORRECT REPAIR of a different class, in the same motion, and it was invisible for the usual reason plus one more -- no production site constructed the bad value, so no run could exhibit it. The residue removal was right, the projection was right, and the sentinel was the only wrong part; a reviewer checking that the predicates were gone would find them gone. RECOGNITION RULE: when a repair replaces a decision with a PROJECTION, ask what the projection's empty or default value means, and whether the decision now rests on it. A refusal must be driven by the verdict, never by the presence of its prose. ",

"AND IT SHARPENS THE AUTHORABILITY RULE THIS ROW ALREADY CARRIES. Not reachable on the corpus is not a defence: DESIGN section 4b asks whether the RED is AUTHORABLE, not whether it fires today, and a fixture constructed the empty-reason refusal in one line. THE FIRST REPAIR WAS ITSELF INSUFFICIENT AND THAT IS PART OF THE RECEIPT: driving the refusal off the canonical verdict projection only traded a reason-text sentinel for a VERDICT-LABEL sentinel, because that projection is also the renderer's word source, so a relabelled or newly added refusing state falls through a String inequality to false. The exhaustive match protected label PRODUCTION while refusal CLASSIFICATION sat on an implicit catch-all over the String domain, in the accepting path. The typed-coproduct fix is a trap -- it returns the classifier to matching variants onto true/false, the very residue whose removal started this -- so the landed shape folds to a LIST of refusing observations by a total, VALUE-RETURNING match, with nonemptiness as the condition. Exhaustiveness then sits over the DECISION rather than only the projection, and no rendered spelling decides success. The discriminating red -- a refusal with no reason must still refuse -- stays enrolled under section 4b(4) and flips alone when the text-driven form is restored, while the stale-citation red and the observed-verdict control both hold. A hole that only stays shut because nobody happens to author the bad input is not a wall, and a sentinel that moved from the prose to the label was still a sentinel.",

"A REPRESENTATION TAG IS PRESENT AND THE READER DISCARDS IT. v1.compiler.infer_types algebra_child_or_placeholder reads a Node child position as a generic argument without requiring the nominal application shape. A NoConnective application uses those positions for arguments; an expanded Disj uses them for variant members. instantiate_algebra_type therefore supplies the Empty variant as ReceiverElement for an expanded FreeMonoid, although Cons.head still carries the actual element type. The wrong type is returned with no diagnostics by that constructor; the later pattern/field consumer produces the cascade. This is not evidence that every surrounding diagnostic census omits the error. ",

"The producer that re-derives the specimen is cli_run::resolve_entry_graph on test.claim.emission_provenance_test, selecting emission_module_loss_is_separate_from_declaration_loss and serializing its actual resolved Node, rather than the DAG export's untyped occurrence projection. BuildBuddy invocation 5d99008a-cf50-4994-952f-b6e3e707a188 binds source 55422b847050633e9ae1dc1284200c1d4306319e; retained resolved-control content SHA256 fa463474498b90092ff5a4a70d25d29ea599bc07188f2d8ecb75ffa053e2bbe2. The call-site census names field instantiation and declared method-argument instantiation as independent callers, and apply_type_substitution as an adjacent positional reader requiring its own assessment. Static production reachability is established; a dynamic census of affected nonfixture expressions is not. ",

"The existing resolve_node_bounded generic-use producer already keeps actual arguments in a nominal wrapper and structural expansion in inferred. The repair obligation is to preserve or explicitly recover the application evidence at the consumer boundary, refusing when unavailable. Reading a variant as an argument, or special-casing the failing assertion to avoid the callback contract, would conceal the conflation rather than discharge it. The unchanged module-loss control remains the discriminating execution; no repair has yet been claimed. ",
],

evidence: [],
Expand Down
Loading
Loading