Skip to content

fix(orchestrate): resolve open issues #168 #169 #170 - #176

Merged
choiyounggi merged 3 commits into
mainfrom
fix/issues-168-169-170
Sep 2, 2026
Merged

fix(orchestrate): resolve open issues #168 #169 #170#176
choiyounggi merged 3 commits into
mainfrom
fix/issues-168-169-170

Conversation

@choiyounggi

Copy link
Copy Markdown
Owner

Fixes #168, fixes #169, fixes #170 — the three open orchestrate-skill defects, built via a dev-loop orchestration run (3 parallel worker sessions, per-task plan/review/audit, integration review green).

#168 — exit-5 escalation recovery is now a pre-approvable named script

  • New skills/orchestrate/scripts/resolve-escalation.sh: clears the escalation record(s) for a task by .taskId and optionally delivers the coordinator's verdict via the sibling send-prompt.sh in the same pre-approved call. stdout cleared=<n> delivered=<0|1>, exits 0/2/3/6/127, clear-then-deliver ordering.
  • install-permission-rules.sh now installs/checks four path rules + an autoMode sentence naming the script; old 3-rule installs upgrade in place (old sentence left untouched).
  • SKILL.md wired at all four spots: Preflight step 2, the pasteable snippet, the exit-5 watch playbook, and the Orca O4 escalation-clear bullet.
  • New tests/resolve-escalation.bats (11 cases incl. delivery stub + source-text wiring); tests/install-permission-rules.bats extended (24 total green).

#169 — test-floor.sh can no longer pass vacuously on an empty range

  • Empty diff enumeration now exits 2 (unknown, stderr empty-range:<range>) instead of a green pass that measured nothing.
  • A single-ref range arg (no ..) now means working-tree mode: tracked diff vs the ref plus untracked files counted as added — matching review time, when workers have not committed yet. A...B/A..B range behavior is byte-identical to before.
  • SKILL.md Phase 4 floor invocation switched from '<integ>...HEAD' to '<integ>' with the rationale inline.
  • tests/test-floor.bats +6 cases (21 green), including the issue's A-vs-B inversion repro.

#170 — teardown no longer archives gitignored dependency trees

  • archive_scratch() enumerates with ls-files --others --exclude-standard, so node_modules/ etc. (the measured 512MB/12,519-file hang) never enter the archive.
  • Intentionally info/exclude'd scratch is collected via an explicit whitelist (.claude), dir-level cp -Rp, guarded by git check-ignore to prevent double-archiving; copy-before-delete invariant and dry-run output format preserved.
  • tests/safe-cleanup.bats +5 cases (55 green).

Verification

  • Full suite on this branch after rebase onto v1.17.0 main: 990/990 bats green.
  • Independent integration review (fresh-context reviewer agent): approve, zero findings; per-task test-quality audits passed.

🤖 Generated with Claude Code

https://claude.ai/code/session_019E2mpaSu6jP8FgdscnsWn7

choiyounggi and others added 3 commits September 2, 2026 18:20
…recovery

Adds a new named script so an auto-mode coordinator can clear a guardrails
escalation record and deliver the verdict to the waiting worker in one
pre-approved call, without any bare `rm`. Registers it as a 4th rule in
install-permission-rules.sh and wires it into SKILL.md's Preflight,
pasteable JSON snippet, exit-5 playbook, and O4 escalation-clear bullet.

Fixes #168.
…#170)

archive_scratch() enumerated untracked files with `ls-files --others`
(no --exclude-standard), which swept gitignored dependency trees like
node_modules/ into the teardown archive — issue #170's measured
512MB/12,519-file hang. Switch enumeration to --exclude-standard and
collect the intentionally-excluded scratch (.claude/, info/exclude'd by
worker-guardrails.sh) via an explicit SCRATCH_WHITELIST, dir-level
cp -Rp, guarded by `git check-ignore` so it isn't double-archived when
not actually ignored. Dry-run output format is unchanged.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GCxnCrbK53T38YHZXduXXy
Empty diff enumeration now exits 2 (unknown, stderr empty-range:<range>)
instead of exiting 0 pass. A single-ref arg (no "..") switches test-floor.sh
to working-tree mode, diffing the ref against the working tree and counting
untracked files as newly-added, so review-time measurement (before the
worker commits) actually sees the work. SKILL.md's Phase 4 floor invocation
is switched from the range form to the single-ref form accordingly.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HJx7SqJdXYJyAZoMcdRHgh
@choiyounggi
choiyounggi merged commit 59540bf into main Sep 2, 2026
2 checks passed
@choiyounggi
choiyounggi deleted the fix/issues-168-169-170 branch September 2, 2026 09:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment