Skip to content

chore(orchestrator): closure-sweep — C3 n/a-done.md fix + 18 verified umbrella closures (28 false-opens cleared) - #561

Merged
artyhoo merged 2 commits into
stagingfrom
chore/umbrella-closure-sweep-2026-06-16
Jun 16, 2026
Merged

chore(orchestrator): closure-sweep — C3 n/a-done.md fix + 18 verified umbrella closures (28 false-opens cleared)#561
artyhoo merged 2 commits into
stagingfrom
chore/umbrella-closure-sweep-2026-06-16

Conversation

@artyhoo

@artyhoo artyhoo commented Jun 16, 2026

Copy link
Copy Markdown
Owner

Summary

Closure-sweep that fixes the source of the /pipeline no-arg noise (per the operator's directive), in two parts:

  1. Detector fix (root cause): priority-score.sh's completion-detector C3 only tagged an umbrella DONE when it parsed a numeric - Final PR: #<num>. Stale/superseded closures from the 2026-06-05 sweep carry - Final PR: n/a, so ~10 already-closed umbrellas stayed false-open. done.md existence alone proves closure (ADAPT Cline docs(research): cross-worktree gitignored coord-doc sync — verdict ADAPT #77) → now tagged DONE (done_pr=n/a).
  2. Verified data backfill: wrote done.md for 18 historical umbrellas whose closing PR was branch/title-confirmed (the hash-suffixed branches like guard-liveness-gate-42aced are exactly why C1's exact-match missed them).

Net: 28 false-opens cleared (18 backfilled + 10 unblocked by the C3 fix). 51 residue left open (no completion evidence — a deliberate per-umbrella deep-pass, not mass-closed, to avoid false-closure).

What changed

  • .claude/skills/pipeline/helpers/priority-score.sh (C3 block ~L222): done.md existence ⇒ DONE; done_pr=n/a when no numeric PR.
  • packages/core/hooks/done-md-completion-filter.test.ts: new Case 3b regression — n/a done.md ⇒ status=DONE done_pr=n/a basis=done-md.
  • 18 done.md under .claude/orchestrator-prompts/*/, each citing its verified closing PR + merge date.

Verification

Scope / capability-commit

Not a capability commit — a ~6-line detector fix + a test for an existing capability + data (done.md). No new dependency, no new ≥50/80-LOC module under packages/. No Prior-art: trailer required.

§1.7 Forward-check applied

Checked the disciplines this change interacts with before shipping:

  • no-paid-llm-in-ci.md — C3 stays deterministic file-presence (zero gh/LLM cost); the n/a branch adds no network call. Verdict: complies. Evidence: .claude/skills/pipeline/helpers/priority-score.sh:222.
  • dual-implementation-discipline.mdpriority-score.sh carries @cc-only-rationale (in-session !shell helper, no portable equivalent fires at the same moment); unchanged by this edit. Evidence: .claude/skills/pipeline/helpers/priority-score.sh:64.
  • build-first-reuse-default.md — REUSE: the C3 layer is an existing ADAPT of Cline docs(research): cross-worktree gitignored coord-doc sync — verdict ADAPT #77 committed-markdown; this corrects its parse, builds nothing new. Evidence: .claude/skills/pipeline/helpers/priority-score.sh:219.

§1.7 Backward-check applied

Swept existing artefacts under the changed detector + the done.md convention:

  • packages/core/hooks/done-md-completion-filter.test.ts — the paired-negative contract (Case 3 numeric / Case 4 no-done.md) still holds; Case 3b extends it for the n/a path rather than superseding. Evidence: packages/core/hooks/done-md-completion-filter.test.ts:273.
  • CLAUDE.md «Umbrella closure convention» — the 18 done.md follow the binding schema verbatim (# <u> — DONE / - Final PR: / - Closed: / - Summary:). Evidence: .claude/orchestrator-prompts/goal-drift-audit/done.md:1.
  • The 2026-06-05 sweep's n/a done.md (e.g. c1-chain-review, strategic-clarity-dialogue) are now correctly detected by the fixed C3 — no rewrite of those files needed. Evidence: .claude/orchestrator-prompts/strategic-clarity-dialogue/done.md:2.

Follow-up (not in this PR)

51 umbrellas remain false-open with no completion evidence (a mix of genuinely-open + historical-without-a-traceable-PR). Closing them needs a per-umbrella deep-pass (read each state.md/kickoff/git history) — larger effort, deliberately deferred to avoid false-closure.

artyhoo added 2 commits June 16, 2026 15:42
…R: n/a'

priority-score.sh completion-detector C3 only tagged DONE when it parsed a numeric
'- Final PR: #<num>'. Stale/superseded closures from the 2026-06-05 sweep carry
'- Final PR: n/a', so ~10 already-closed umbrellas stayed false-open. done.md existence
alone proves closure (ADAPT Cline #77); tag done_pr=n/a so the filter drops them.
Regression test: done-md-completion-filter Case 3b (n/a done.md -> status=DONE).
… backfill (closure-sweep 2026-06-16)

Each done.md cites its verified closing PR (branch/title-confirmed, false matches dropped):
guard-liveness cluster (#458/#460/#463/#475/#476/#489), dispatcher-skill #403, dispatcher-ux #407,
goal-drift-audit #433, narrow-b-benchmark #210, defer-reflex-detection #232, memory-coverage-audit #126,
meta-orchestrator-bundle-autonomous #247, mutation-discipline-stage-c-meta-launch #378,
aif-handoff-as-runtime-bridge #283, aif-skills-delivery-rphase #396, channel-earliness-audit #181,
ai-doc-audit-version-reconcile #423. Clears 18 false-opens; +10 via the C3 fix = 28 total. 51 residue left open (no evidence).
@artyhoo
artyhoo enabled auto-merge (squash) June 16, 2026 12:43
@artyhoo
artyhoo merged commit 79d4ded into staging Jun 16, 2026
43 checks passed
artyhoo added a commit that referenced this pull request Jun 16, 2026
…sures (deliverable-exists) + tail-verify kickoff (#565)

* chore(orchestrator): closure-sweep round 2 — close 46 verified historical umbrellas (done.md backfill)

Deep-pass on the 51 residue the round-1 sweep (#561) left (no done.md, no clean PR-match):
- 14 meta-launch dispatch records closed by parent/umbrella DONE or own state.md
- 32 closed by DELIVERABLE-EXISTS evidence (research-patch / shipped rule / hook / principle file cited per done.md), corroborated by closing PR where found
- left 5 genuinely OPEN (no deliverable): h10-verdict-gate-research, meta-orch-channel-discipline, phase-10-foundations-audit, shipped-skill-sync, worktree-env-skills-test-flakiness
Method: deliverable-exists, NOT noisy name/text-match (gh full-text gave ~16% false positives). Spot-verified cited deliverables exist; planner-completeness silent-drop caught + closed.

* docs(orchestrator): kickoff for consumer-findings tail-verify (F6/F7/F8/F10)

Handoff for a fresh session: verify the 4 timeliner findings the closure-sweep could not map to a dedicated issue, re-check they still reproduce, file only genuinely-untracked ones. Carries §5 AI-traps enumeration (principle 12).
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