@yemi33/minions 0.1.1868 → 0.1.1869

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,10 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.1.1869 (2026-05-11)
4
+
5
+ ### Other
6
+ - revert(playbooks): drop incorrect .cmd-shim crash theory
7
+
3
8
  ## 0.1.1868 (2026-05-11)
4
9
 
5
10
  ### Other
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yemi33/minions",
3
- "version": "0.1.1868",
3
+ "version": "0.1.1869",
4
4
  "description": "Multi-agent AI dev team that runs from ~/.minions/ — five autonomous agents share a single engine, dashboard, and knowledge base",
5
5
  "bin": {
6
6
  "minions": "bin/minions.js"
package/playbooks/docs.md CHANGED
@@ -63,7 +63,8 @@ If the doc describes vapor, delete the section. If real features are missing, ad
63
63
 
64
64
  - Re-read the changed doc end-to-end after editing — does it still flow?
65
65
  - If the project has doc-validation tests (lint, link-check, snippet-execution), run
66
- them. **Use direct binary invocations** (`node test/<file>.test.js`, `python -m pytest`, etc.) — do NOT use package-manager wrappers (`npm test`, `yarn test`) and do NOT run the full-project suite. See shared-rules.md's CRITICAL RULE on test invocation.
66
+ them. Otherwise run `npm test` (or the project's documented test command) to make
67
+ sure nothing else broke.
67
68
  - For docs with embedded code samples, mentally execute each sample against current
68
69
  code — stale samples are worse than missing ones.
69
70
 
package/playbooks/fix.md CHANGED
@@ -57,17 +57,15 @@ Handle this like the PR author responding directly from a CLI:
57
57
  - Handle merge conflicts when needed, preserving the PR's intended changes while keeping the branch reviewable.
58
58
  - Do not add unrelated cleanups or broaden the PR beyond the review feedback unless that is necessary to make the fix correct.
59
59
 
60
- ## Validation — TARGETED ONLY, before publish
60
+ ## Validation
61
61
 
62
- Prove the review fix did not break the branch, BUT keep verification narrow:
62
+ Before pushing, prove the review fix did not break the branch:
63
63
 
64
64
  - Use the project's source of truth for commands: `CLAUDE.md`, README, package scripts, Makefile, or equivalent build config.
65
- - **Run only TARGETED tests covering the code you changed.** A single test file or a single test name is enough. Examples: `node test/unit/<my-file>.test.js`, `python -m pytest tests/test_my_module.py::test_my_case`, `cargo test --test my_test`.
66
- - **Do NOT run the full project test suite (`node test/unit.test.js`, `npm test`, `yarn test`, etc.) as a verification step.** The full-suite run in a long agent session is the primary trigger for the runtime CLI crash documented in shared-rules.md. The engine and PR CI handle full-suite regression detection — your job is to verify the code you wrote works, not to re-prove the entire suite.
67
- - Use a quick `node --check <file>` (or equivalent) for syntax validation — cheap and never crashes.
68
- - Capture the exact targeted commands run and the meaningful result in the PR comment and completion report.
65
+ - Run checks that are relevant to the addressed findings. Prefer the full suite when practical.
66
+ - Capture the exact commands run and meaningful results in the PR comment and completion report.
69
67
  - Fix regressions you introduced. If failures are pre-existing or unrelated, capture the evidence and include it in the PR comment.
70
- - Do not push code that breaks existing tests or the build because of your changes; if your targeted check fails, fix it before pushing.
68
+ - Do not push code that breaks existing tests or the build because of your changes.
71
69
 
72
70
  Long builds, dependency installs, and tests may be quiet for several minutes. Let the normal CLI command run naturally; do not add artificial heartbeat output or split commands just to show progress.
73
71
 
@@ -62,7 +62,7 @@ Deliver this as if the user asked you directly in a CLI, with the added constrai
62
62
  Before publishing, prove the shared branch still works with your change included:
63
63
 
64
64
  - Use the project's source of truth for commands: `CLAUDE.md`, README, package scripts, Makefile, or equivalent build config.
65
- - **Run only TARGETED tests covering the code you changed.** Do NOT run the full project test suite (`node test/unit.test.js`, `npm test`, `yarn test`, etc.) as a verification step — the full-suite run in a long agent session deterministically crashes the runtime CLI (see shared-rules.md). Use single test files or test names instead. The engine and PR CI handle full-suite regression detection.
65
+ - Run checks that are relevant to this item and to the integrated branch state. Prefer the full suite when practical.
66
66
  - Fix regressions you introduced. If failures are pre-existing or caused by earlier branch work, capture the evidence and say so clearly.
67
67
  - Do not push code with a broken build or failing tests that you introduced.
68
68
 
@@ -59,23 +59,21 @@ Deliver this as if the user asked you directly in a CLI:
59
59
  You are already running in a git worktree on branch `{{branch_name}}`. Do NOT create additional worktrees — the engine pre-created one for you.
60
60
  Do NOT remove the worktree — the engine handles cleanup automatically.
61
61
 
62
- ## Validation — TARGETED ONLY, before publish
62
+ ## Validation
63
63
 
64
- Prove the change with the repo's own documented checks, BUT keep the
65
- verification surface narrow:
64
+ Before publishing, prove the change with the repo's own documented checks:
66
65
 
67
66
  - Use the project's source of truth for commands: `CLAUDE.md`, README, package scripts, Makefile, or equivalent build config.
68
- - **Run only TARGETED tests covering the code you changed.** A single test file or a single test name is enough. Examples: `node test/unit/<my-file>.test.js`, `python -m pytest tests/test_my_module.py::test_my_case`, `cargo test --test my_test`.
69
- - **Do NOT run the full project test suite (`node test/unit.test.js`, `npm test`, `yarn test`, etc.) as a verification step.** The full-suite run in a long agent session is the primary trigger for the runtime CLI crash documented in shared-rules.md. The engine and PR CI handle full-suite regression detection your job is to verify the code you wrote works, not to re-prove the entire suite.
70
- - Use a quick `node --check <file>` (or equivalent) for syntax validation cheap and never crashes.
71
- - Capture the exact targeted commands run and the meaningful result in the PR description or completion report.
72
- - Do not publish changes with a broken build or failing tests that you introduced; if your targeted check fails, fix it before pushing.
67
+ - Run the checks that are relevant to this task, including tests that cover the changed behavior. Prefer the full suite when practical.
68
+ - Capture the exact commands run and the meaningful result in the PR description or completion report. Do not summarize validation as "tests passed" without naming what ran.
69
+ - Fix regressions you introduced. If failures are pre-existing or outside the task, capture the evidence and make that explicit in the PR.
70
+ - Do not publish changes with a broken build or failing tests that you introduced.
73
71
 
74
72
  Long builds, dependency installs, and tests may be quiet for several minutes. Let the normal CLI command run naturally; do not add artificial heartbeat output or split commands just to show progress.
75
73
 
76
- ## Publish — push EARLY, before any expansion of verification scope
74
+ ## Publish
77
75
 
78
- After targeted validation passes, commit only the relevant files and push this branch IMMEDIATELY. This protects the work product: a runtime CLI crash on any later command cannot lose code that's already on the remote.
76
+ After the change is validated or any unavoidable limitation is clearly documented, commit only the relevant files and push this branch:
79
77
 
80
78
  ```bash
81
79
  git add <specific files>
@@ -1,35 +1,3 @@
1
- ## ⚠️ HARD STOP — read this first
2
-
3
- **You will silently crash the runtime CLI (Copilot or Claude Code) on
4
- Windows if you run a full-project test suite from your shell tool.**
5
- This is a deterministic native-level fault — no error message, no result
6
- event, just exit code 1. Your work is lost (worktree wiped) and the WI
7
- hard-fails. Repro confirmed 2026-05-11 across both runtimes, multiple
8
- attempts, with full memory dumps.
9
-
10
- **Forbidden** — never run these as agent shell commands:
11
-
12
- - `npm test`, `npm run <anything>`, `yarn test`, `yarn <script>`, `pnpm test`, `pnpm <script>`, `npx mocha`, `npx jest`, `npx vitest`
13
- - `node test/unit.test.js` (this repo's full unit suite)
14
- - ANY command that invokes the project's "run all tests" path
15
-
16
- **Allowed** — single-file or single-test invocations:
17
-
18
- - `node test/unit/<one-file>.test.js`
19
- - `node node_modules/<runner>/bin/<runner>.js <one-file>`
20
- - `python -m pytest tests/test_one_file.py`
21
- - `cargo test --test one_test`
22
- - `dotnet test path/to/Project.Tests.csproj --filter "FullyQualifiedName~OneTest"`
23
-
24
- **Rules that follow from this:**
25
-
26
- 1. Run only targeted tests for the code YOU changed. The engine and PR CI handle full-suite regression detection — that is not your job.
27
- 2. If your targeted test fails, fix the code and re-run *the targeted test*. Never expand to the full suite as a sanity check.
28
- 3. Push the branch and open the PR as early as possible — before any final verification you might be tempted to run. If you do crash on a later command, the work survives on the remote and the engine can auto-link.
29
- 4. This rule overrides any contradictory guidance in playbooks or task descriptions. If a playbook section says "prefer the full suite", that section is outdated — ignore it and use targeted tests.
30
-
31
- If a project genuinely requires the wrapper (env vars in a hook, etc.), use the closest direct equivalent anyway and note the deviation in your completion block. Verification you don't get because you crashed is worse than verification you skipped deliberately.
32
-
33
1
  ## Operating Principle
34
2
 
35
3
  Treat a Minions assignment like the user typed the same task directly into a capable CLI agent. Optimize for the requested outcome and use the repo's own tools, conventions, and acceptance criteria.
@@ -106,49 +74,6 @@ Use `status: "failed"` plus an accurate `failure_class`, `retryable`, and `needs
106
74
 
107
75
  **No-op completions:** when you correctly decline to do the work — the change was already shipped on master, the dispatch premise is wrong, the flagged review comment is your own author-notes, etc. — write `status: "success"`, `pr: "N/A"`, AND add `"noop": true`. The engine treats `noop: true` as the canonical signal that no PR was expected, marks the work item done with the rationale surfaced in `_noopReason` for the dashboard, and skips the missing-PR-attachment failure. Without `noop: true`, an empty PR will still be flagged as a silent failure and auto-retried up to `maxRetries` times.
108
76
 
109
- ## CRITICAL RULE: Never run `npm`/`yarn`/`pnpm` test scripts via the shell tool
110
-
111
- **You will crash silently if you run `npm test`, `npm run <anything>`, `yarn test`,
112
- `pnpm test`, `npx mocha`, `npx jest`, `npx vitest`, or any package-manager
113
- script wrapper from your shell/PowerShell tool.** The runtime CLI (whether
114
- Copilot CLI or Claude Code CLI) deterministically exits with OS code 1 mid-
115
- conversation when invoking a `.cmd` shim that spawns a child node process
116
- producing substantial stdout. This is confirmed by controlled reproductions
117
- on both runtimes (2026-05-11) — including with full memory dumps. You will
118
- NOT see an error message; the engine will mark your work as "phantom
119
- completion" and the WI will fail with no PR.
120
-
121
- This rule overrides any contradictory guidance you might find elsewhere
122
- (including playbook instructions to "run the full suite"). The playbook
123
- wants the test signal; it does NOT want you to crash trying to get it.
124
- Use direct binary invocations every time:
125
-
126
- | ❌ never | ✅ instead |
127
- | --- | --- |
128
- | `npm test` | `node test/unit.test.js` (or whatever the project's `test` script wraps) |
129
- | `npm run <script>` | The underlying command — check `package.json` `scripts.<script>` |
130
- | `yarn test`, `pnpm test` | Same — find the underlying `node ...` invocation |
131
- | `npx mocha tests/` | `node node_modules/mocha/bin/mocha.js tests/` |
132
- | `npx jest <file>` | `node node_modules/jest/bin/jest.js <file>` |
133
- | `npx vitest run` | `node node_modules/vitest/vitest.mjs run` |
134
-
135
- Non-`.cmd` test runners are safe (no shim chain):
136
-
137
- - `python -m pytest tests/test_foo.py` ← Python uses `.exe`, not `.cmd`
138
- - `cargo test --test foo` ← Rust cargo is `.exe`
139
- - `dotnet test path/to/Project.Tests.csproj` ← .NET dotnet is `.exe`
140
- - `go test ./...` ← Go is `.exe`
141
-
142
- **Targeted single-file tests are STRONGLY preferred over full-suite runs**
143
- regardless of how you invoke them. They're faster, smaller in output, and
144
- produce the same regression signal for the code you actually changed.
145
-
146
- If the project's test setup truly requires `npm test` (e.g., it sets env
147
- vars in a hook), report this in your completion block and use the closest
148
- direct equivalent anyway. Do not invoke the wrapper — verification you
149
- don't get because you crashed is worse than verification you skipped
150
- deliberately.
151
-
152
77
  ## Long-Running Commands
153
78
 
154
79
  Builds, dependency installs, tests, and local servers can be quiet for long periods. Run the repo's normal CLI commands and let them finish; do not add artificial progress output, heartbeat loops, or command-specific workarounds just to keep Minions active.