@holmes-lab/holmes-kit 0.1.13 → 0.1.14

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
@@ -4,6 +4,25 @@ All notable changes to this project will be documented in this file.
4
4
 
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+ <!-- @implements A-SPEC-209 -->
8
+ ## [0.1.14] - 2026-08-23
9
+
10
+ A defect found by installing 0.1.13 from the registry and driving the shipped HITL cycle:
11
+ `holmes-kit approve --help` printed the whole-CLI usage instead of its own. The approve
12
+ subcommand — the human decision surface — had its help swallowed at its first touch.
13
+
14
+ ### Fixed
15
+ - **`approve --help` reaches APPROVE_USAGE (A-SPEC-171)**: the global `--help` handler fired
16
+ before approve's dispatch (which carries its own usage) could run, so it printed the top-level
17
+ usage over it — approve dispatches last only because it was added last. A declarative
18
+ `SELF_HELP_COMMANDS` set now exempts any subcommand that renders its own usage, so the fix does
19
+ not depend on dispatch order. Two reproducing tests (RED before, GREEN after).
20
+ - **Repo hygiene: a stray `C:/proj/.ax` was tracked (A-SPEC-237/§25a)**: the Windows path tests
21
+ pass `projectRoot: 'C:/proj'`, which on POSIX resolves as a relative path into the repo. A
22
+ pre-§25a residue directory had been committed in 0.1.13 and kept growing on every suite run;
23
+ removed, with a `.gitignore` guard against drive-letter directories. Verified the §25a
24
+ enqueue-only-under-existing-.ax guard now prevents recreation — the suite no longer plants it.
25
+
7
26
  <!-- @implements A-SPEC-209 -->
8
27
  ## [0.1.13] - 2026-08-23
9
28
 
package/dist/.build-id CHANGED
@@ -1 +1 @@
1
- 0c506c6-mt5buls8
1
+ 2500532-mt5cs4a5
@@ -76,6 +76,12 @@ const KNOWN_FLAGS = {
76
76
  serve: ['help', 'target', 'port'],
77
77
  approve: ['help', 'target', 'list', 'grant', 'deny', 'ask', 'reason', 'question', 'ttl', 'rationale'],
78
78
  };
79
+ // @implements A-SPEC-171 — subcommands that render their OWN usage on `--help`. A-SPEC-171 governs
80
+ // "help before any side effect"; a command whose usage lives past this handler (approve, whose
81
+ // APPROVE_USAGE is emitted in its own dispatch) must be exempted here or the global handler prints
82
+ // the whole-CLI usage over it. This set is that exemption, kept declarative so a future self-help
83
+ // command is one edit, not a dispatch-order gamble.
84
+ const SELF_HELP_COMMANDS = new Set(['approve']);
79
85
  const APPROVE_USAGE = `holmes-kit approve — 승인 대기 요청의 결재 (HITL)
80
86
 
81
87
  대화형(TTY): 항목마다 [a]승인 [d]거부 [q]질문 [s]건너뛰기
@@ -237,8 +243,10 @@ async function main(argv) {
237
243
  }
238
244
  // @implements A-SPEC-171
239
245
  // BEFORE any side effect. The measured defect was not that help was missing but that the writing
240
- // happened first, so the order here is the fix.
241
- if (knownFlagsFor(cmd) && flags.help) {
246
+ // happened first, so the order here is the fix. Measured again on 0.1.13: `approve --help` printed
247
+ // the whole-CLI usage because this handler fired before approve's dispatch (which carries its own
248
+ // APPROVE_USAGE) could run — so a command in SELF_HELP_COMMANDS is deferred to, not printed over.
249
+ if (knownFlagsFor(cmd) && flags.help && !SELF_HELP_COMMANDS.has(cmd)) {
242
250
  process.stdout.write(USAGE);
243
251
  return 0;
244
252
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "//": "@implements A-SPEC-209",
3
3
  "name": "@holmes-lab/holmes-kit",
4
- "version": "0.1.13",
4
+ "version": "0.1.14",
5
5
  "description": "Holmes-Kit — deterministic Agentic Software Engineering (ASE) harness with causal traceability (spec chain + D-CPG + RTM + phase guardrail)",
6
6
  "main": "dist/holmes/mcp/server.js",
7
7
  "types": "dist/holmes/mcp/server.d.ts",