Repository navigation
docs: post-#2777 ledger + cut-over-trigger cleanup (2 operator findings) - #2803
Conversation
Per Verification Mgr deep-badger-38 (msg_b9efcbd3) + Director clever-ant-97 (msg_e7c8caa7) 2026-05-12 post-merge ledger re-read: the skeleton row's footnote still referenced "once PR #2777 + #2775 merge" as the flip-precondition, but both have landed. Refreshed to name the actual remaining precondition: Wave-1 worker landing dsl/ctrl/pr_digests.dag. Non-blocking cleanup. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Operator BLOCKING (inline on PR #2777 worker brief :47 2026-05-12 T22:53Z): cut-over trigger said "deleting the 5 .mjs files" even though CI/conflict digests are deferred — would flip authority for unmodeled functions under INVARIANTS P1/P2. Resolution: cut-over deletes ONLY .mjs files whose functions are fully modeled in this brief's narrowed scope: - pr_attached_urls.mjs (fully covered by extract_attached_urls) - pr_rest_fallback.mjs (fully covered by classify_rest_fallback) - portions of pr_merge_ready_digest.mjs that derive from existing PullRequest/PullReview fields only Files / function-bodies depending on CI, conflict, or mergeability source facts stay TS-authoritative until follow-up Phase 1.5 PR models render_ci_digest / render_conflict_digest. Explicit MUST NOT clause forbids cut-over deletion of .mjs functions lacking a .dag substrate replacement. Rolling into the already-open fix/ledger-stale-footnote PR (#2803) since both are adjacent post-2777 ledger/brief cleanups. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
Rolled in a 2nd operator BLOCKING finding from PR #2777 worker brief :47 (received post-#2777-merge): cut-over trigger said "delete the 5 .mjs files" but with the narrowed scope (CI/conflict digests deferred), that would flip authority for unmodeled functions under INVARIANTS P1/P2. Fix in f868285: cut-over now deletes ONLY .mjs files whose functions are fully modeled — PR title + body updated to reflect the bundled scope. Both edits are surgical docs-only. — sent from merry-newt-448 |
Operator BLOCKING on PR #2777 worker brief :89 2026-05-12T22:53Z: extract_attached_urls signature requires List<IssueComment> but dsl/extdeps/github/pulls.dag has no list-operation producing PR issue-level comments (CreateComment writes one; ListComments returns List<ReviewComment>, not IssueComment). Source fact ungrounded under INVARIANTS P1/P2. Resolution (narrower per smaller-first-path): - extract_attached_urls signature trimmed to (pr: PullRequest, reviews: List<PullReview>) — drops the IssueComment input - AttachedUrlContainer reduced to PrBody | PullReviewBody — one-to-one with imported source-fact set - Source-import list explicitly notes IssueComment excluded with reason + Emission Mgr routing path for follow-up - IssueCommentBody (PR conversation comments) + ReviewCommentBody (line-level inline) both deferred to follow-up Phase 1.5 PRs that add the corresponding list-operations (ListIssueComments / ListReviewComments) to extdep imports Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
3rd post-#2777 operator BLOCKING (inline at worker brief :89) rolled into this PR — 7d40f08:
Resolution: narrowed per smaller-first-path discipline.
— sent from merry-newt-448 |
briansrls
left a comment
There was a problem hiding this comment.
Review metadata
- Provider / model:
codex/unknown - Commit:
7d40f088· Trigger:schedule - Thinking:
137s wall
BLOCKING (1)
Root Cause
docs/briefs/r4-ctrl-migration-pr-digests-worker.mdnarrowed worker scope crosses a file/function boundary → splitpr_merge_ready_digestinto a deferred follow-up or state that no authority flip for that file/function occurs until the whole TS authority can be deleted.
| // ctrl PR cut-over deleting ONLY the .mjs files whose functions are | ||
| // fully modeled in this brief's narrowed scope — i.e. pr_attached_urls.mjs | ||
| // and pr_rest_fallback.mjs (fully covered), and the portions of | ||
| // pr_merge_ready_digest.mjs that derive from existing PullRequest/ |
There was a problem hiding this comment.
BLOCKING: The trigger makes portions of pr_merge_ready_digest.mjs cut-over-eligible, but the ctrl authority gate is deletion of corresponding TS file(s); partial function-body authority would leave TS and .dag as co-authorities under INVARIANTS P2/P5.
Operator BLOCKING on PR #2803 worker brief :50 2026-05-12T23:12Z: my previous narrowing said "deleting...portions of pr_merge_ready _digest.mjs". Partial-file cut-over (keep .mjs, delete some functions) leaves TS + .dag as co-authorities, violating INVARIANTS P2/P5 single-authority discipline. The unit of authority under the deletion-receipt gate is the .mjs FILE, not a function body. Resolution: cut-over deletes ONLY WHOLE .mjs files whose ENTIRE function set is modeled. With narrowed scope, only 2 files qualify: - pr_attached_urls.mjs (extract_attached_urls fully covers) - pr_rest_fallback.mjs (classify_rest_fallback fully covers) The remaining 3 (pr_ci_digest, pr_conflict_digest, pr_merge_ready_ digest) stay TS-authoritative as WHOLE FILES because at least one function in each is unmodeled (CI/conflict/mergeability branches). They become cut-over-eligible only when a follow-up Phase 1.5 PR models the remaining functions and a dedicated ctrl-side cut-over PR fires for those files. Net-additive gunbc-side functions (render_pr_summary_line, merge_readiness_verdict) explicitly noted as .dag-only authority with no 1-to-1 .mjs replacement; their existence does NOT mark any .mjs as cut-over-eligible. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
Operator BLOCKING at worker brief :50 addressed in 7f7f610: Previous narrowing kept "...portions of pr_merge_ready_digest.mjs" cut-over-eligible — partial-file cut-over (keep .mjs, delete some functions) leaves TS + .dag as co-authorities, violating INVARIANTS P2/P5. The unit of authority under the deletion-receipt gate is the .mjs FILE. Resolution: cut-over deletes ONLY WHOLE .mjs files whose ENTIRE function set is modeled. With narrowed scope, exactly TWO files qualify:
The remaining 3 ( Net-additive gunbc-side functions ( — sent from merry-newt-448 |
Summary
Post-#2777-merge cleanup PR consolidating 2 follow-up operator findings:
Verification Mgr
deep-badger-38(msg_b9efcbd3) + Directorclever-ant-97(msg_e7c8caa7) — stale ledger footnote (commit 2cf62b8): the receipt-trail skeleton row still referenced "once PR docs(briefs): R4 ctrl-migration Subsystem-Modeling Mgr standing brief #2777 + docs: ctrl/ migration + C compiler + LLVM .dag — 3 parallel program plans #2775 merge" as the flip-precondition after both had merged. Refreshed to name the actual remaining precondition: Wave-1 worker landingdsl/ctrl/pr_digests.dag.Operator inline BLOCKING on PR docs(briefs): R4 ctrl-migration Subsystem-Modeling Mgr standing brief #2777 worker brief :47 2026-05-12T22:53Z (commit f868285): cut-over trigger said "deleting the 5 .mjs files" even though CI/conflict digests were deferred from the narrowed scope. That would flip authority for unmodeled functions under INVARIANTS P1/P2. Narrowed to: cut-over deletes ONLY .mjs files whose functions are fully modeled (
pr_attached_urls.mjs+pr_rest_fallback.mjs+ the PullRequest/PullReview-only portions ofpr_merge_ready_digest.mjs). Files / function-bodies depending on CI/conflict/mergeability source facts stay TS-authoritative until follow-up Phase 1.5 PR. Explicit MUST NOT clause forbids cut-over deletion of .mjs functions lacking a .dag substrate replacement.Both are surgical doc edits; no substrate, no Rust, no test surface.
Test plan
#2777/#2775"before merge" references in the ledger🤖 Generated with Claude Code