ci(release): stop auto-overwriting repo-adapted deepworkplan dogfood [skip release] - #34
Conversation
…[skip release] Keep a temp-dir install smoke test for the published tag, and continue auto-refreshing only the dailybot and ai-diff-reviewer addon dogfoods. Refresh `.agents/skills/deepworkplan/` via scripts/refresh-dogfood-skill.sh. Co-authored-by: Cursor <cursoragent@cursor.com>
3721410 to
0ed4817
Compare
This comment has been minimized.
This comment has been minimized.
AI review for
|
There was a problem hiding this comment.
Solid CI/policy change — preserves consumer install smoke while stopping blind overwrite of the repo-adapted deepworkplan dogfood. One warning on skills-lock drift; otherwise ready.
Methodology integrity (CI/docs-only PR — M5–M6 skim)
| # | Check | Result |
|---|---|---|
| M1 | Long-horizon loop intact | N/A (core create/execute/resume untouched) |
| M2 | .dwp/ durability |
N/A |
| M3 | Atomic task contract | N/A |
| M4 | Gate discipline | N/A |
| M5 | Mandatory finals | Pass — no new/reordered final tasks; addon dogfood unchanged |
| M6 | Zero-addon baseline | Pass — release smoke is temp-dir only; core still has no addon requirement |
| M7 | Interruptibility | N/A |
| M8 | Spec ↔ guide ↔ create/execute | N/A |
Findings table
| # | Severity | File | Summary |
|---|---|---|---|
| 1 | scripts/refresh-dogfood-skill.sh:8 |
Refresh path does not update skills-lock.json for deepworkplan |
Notes (not inlined)
- Verified the new temp-dir smoke path:
npx skills add … --force -yinto a baremktempproject installs at.agents/skills/deepworkplan/SKILL.mdand version assertion would work. - Both
--yesand-yare preserved on smoke + addon dogfood steps (hang contract intact). - Docs in
AGENTS.md,CONTRIBUTING.md,.github/docs/WORKFLOWS.md, and.review/extension.mdare aligned with the new policy. - Outside the diff (please follow up):
.agents/README.md(lines ~15–22, ~30) still says deepworkplan is fetched vianpx skills addand refreshed by auto-release / "never hand-edit" / "bot-managed". Contributors reading the kit README will get the old contract. Same class of drift as the warning below. - Stale comment in
auto-release.ymldailybot step still says "same rationale as the deepworkplan dogfood step" — rename to "smoke step" when convenient (nit).
Recommendation: comment-only
| # This is the ONLY supported way to refresh the in-repo deepworkplan | ||
| # dogfood copy. auto-release.yml deliberately does NOT overwrite | ||
| # `.agents/skills/deepworkplan/` via `npx skills add` — that copy is | ||
| # repo-adapted for contributors (Dailybot + AI Diff Reviewer addon | ||
| # wiring). Addon skills (`dailybot`, `ai-diff-reviewer`) ARE | ||
| # auto-refreshed on release; deepworkplan is not. | ||
| # | ||
| # Run after any intentional change under skills/deepworkplan/ that | ||
| # should also land in the contributor dogfood copy. Review the diff |
There was a problem hiding this comment.
The old self-dogfood step also refreshed skills-lock.json so restore/update flows stayed accurate. This script is now the only supported refresh path, but it only cp -Rs skills/deepworkplan → .agents/skills/deepworkplan and never updates the deepworkplan entry in skills-lock.json.
Failure mode: after a release (or a manual refresh), the lock hash/source pin for deepworkplan goes stale. A later npx skills update / restore-from-lock can overwrite the repo-adapted dogfood — reintroducing the exact clobber this PR is trying to prevent. AGENTS.md still says all three skills are pinned via skills-lock.json.
Either have this script recompute/update the deepworkplan lock entry after sync, or document that the deepworkplan lock row is advisory and must not be used for restore/update (and stop implying lock-pin parity for all three).
Summary
auto-release.ymlfrom runningnpx skills addinto.agents/skills/deepworkplan/— that copy is repo-adapted for contributors (Dailybot + AI Diff Reviewer wiring) and must not be blindly overwritten on every release.dailybotandai-diff-reviewer.AGENTS.md,CONTRIBUTING.md,.github/docs/WORKFLOWS.md,.review/extension.md, andscripts/refresh-dogfood-skill.sh(the supported way to sync the deepworkplan dogfood fromskills/deepworkplan/).Test plan
auto-release.yml: deepworkplan step is temp-dir smoke only; dailybot + ai-diff-reviewer dogfood steps unchangedbash scripts/refresh-dogfood-skill.shstill syncsskills/deepworkplan→.agents/skills/deepworkplanchore(release): dogfood vendored deepworkplancommit; addon dogfood commits still appear when upstream movesMade with Cursor