Repository navigation
Enforce the two decidable sub-cases of stale_claim_survives_its_own_correct_edit (declared-symbol citations; lifecycle-bounded referents modeled, not stringly) - #10595
Conversation
…on one The second decidable sub-case of gunbc.recurring_failure_mode.stale_claim_survives_its_own_correct_edit: a citation naming a DECLARED SYMBOL is already decided at ingestion by v1_compiler.cli_run.declaration_index inside the required-CI parse phase, while a citation naming a LIFECYCLE-BOUNDED REFERENT is decidable the same way only if such referents are modeled rather than spelled into a String. gunbc.guarantee_stall carried both halves of a next-rung trigger in one String, so "node://adhoc-a3b0e05f-374 lands: the wall materializes the operation" read as a trigger whose satisfaction condition was a work item reaching DONE. The roster's own dated reading records three such lanes reaching done with their conditions unmet, and had to state in a paragraph the split no field expressed. NextRungTrigger now carries the operative half as `capability` and the asked lanes as modeled DashboardWorkItemReferent rows in `awaiting`, reusing gunbc.roadmap_model RoadmapNodeId rather than minting a second identity. stall_trigger_admission refuses a capability that spells the declared dashboard-node URI scheme, and every_stall_trigger_is_admitted folds it over the live roster. Four rows were migrated by that wall -- the roster paragraph counted three, which the migration falsified and the paragraph now records. Evidence: test.claim.guarantee_stall_witness_test gains a discriminating red per admission arm asserted BY CAUSE, a positive control differing in exactly one property (referent inside the capability vs beside it), the roster-wide fold in both directions, and a rendering assertion in both directions so the provenance half is not lost by the migration. The residual is declared rather than implied: gunbc.guarantee_stall.trigger_capability_referent_free_by_construction_stall records rung 2 with ceiling 3 and a capability-grain trigger. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011ZiUUrreNAiyLhhDBuJDaX
|
Closing without flipping to ready: this PR would revert main, not add to it. The work this session owed landed as #10582, squash-merged at 86be37f, which is an ancestor of main. Verified content-wise rather than by the merge label: What this PR's diff actually is: No further commits are coming from this session; the node is discharged. — sent from tidy-heron-873 |
Auto-opened by session-dashboard for session
tidy-heron-873.Pushing to
session/tidy-heron-873advances 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