Extend scratch-file workaround to dirs, harden revert-ladder rung 1 - #86
Conversation
…der, doesn't sit inside it The ladder is gated on the tool/interpreter being unavailable (UNVERIFIED), so a rung requiring a working local anchor could never be reached as worded. Move the local, non-pushed checkout-revert preference to a pre-check before the ladder instead. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
… rung 1 Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
Self-review rubric:
One thing I found and fixed mid-review (not a FAIL left open, but worth flagging): my first pass at #84 introduced a self-contradiction — a fallback-ladder rung that required "a local anchor that can run" nested inside a ladder explicitly gated on "the local anchor cannot run" (UNVERIFIED), making that rung unreachable as worded. Reworked it as a pre-check before the ladder (a checkout-based retry of the primary stash-and-run experiment) rather than a ladder rung, which also let the CI-based-revert rung keep its original number (1) instead of shifting to 2 — caught and fixed a stale "rung 2" cross-reference in Phase 1 as a result. Manual validation used the working tree at commit 0fb0046 (this branch's tip). Slash-command registration (Step 5) and GitHub repo/label creation (Step 6) were intentionally skipped for the fixture run — this PR doesn't touch those steps, and creating a real skill/repo isn't warranted for a docs-only template validation. |
|
Do-not-auto-merge check: this PR modifies |
|
Triage note: issues #81 and #79 were also open this cycle but deferred — both require editing |
) * Extend scratch-file sandbox workaround to directories, harden Tests-fix rung 1 revert with a local-first preference and interruption-safe checkpoint Closes #85 Closes #84 Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> * Fix self-review contradiction: local checkout-revert precedes the ladder, doesn't sit inside it The ladder is gated on the tool/interpreter being unavailable (UNVERIFIED), so a rung requiring a working local anchor could never be reached as worded. Move the local, non-pushed checkout-revert preference to a pre-check before the ladder instead. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> * Fix stale rung-2 cross-reference after ladder renumbering reverted to rung 1 Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
Summary
python3 -c "import shutil; shutil.rmtree(path)"instead ofrm -rf(fixes Scratch-file sandbox workaround (create-dev-loop.md:258) doesn't cover directory trees #85 — confirmed onmedieval-factions-dev-loop, a session hit the classifier block onrm -rffor a session-created.gradle-local/scratch dir).git checkout <merge-base> -- <src files>→ test → restore) whenever any local anchor can run at all, even partially — it never touches the pushed branch.TEMP: revert <fix-sha> ... MUST be reverted before merge, see <verified-good-sha>marker so a resuming session doesn't need to reverse-engineer the stuck state from a bare red CI run.TEMP:-prefixed HEAD commit is now a named signal to reset back to the verified-good SHA and restore, before falling through to generic "CI is red" handling.Research grounding
No
RESEARCH.mdfinding applies directly — both changes are harness/process robustness fixes (sandbox command classification, and crash-recovery of an in-progress self-review step) rather than an empirical finding about agent behavior.Test plan
Ran the modified template's Steps 1-4 against a real fixture repo (
dmccoystephenson/dans-plugin-manager, cloned fresh, no existing skill — exercised fresh-generation, not update mode) and manually inspected the output:{{placeholders}}(grep -n '{{' <output>— no matches)<!-- template-version: e933cdb -->/<!-- generated-at: ... -->comments present directly below the# <slug>-dev-loopH1TEMP:check all resolved into the generated output with placeholders substituted correctly (CI,main, repo name, etc.)python3 scripts/check_docs.pypasses (placeholder/Step-count/link checks)Closes #85
Closes #84
This PR description was drafted during a Gardener session (Stephenson-Software/gardener).