spec-manager 0.1.1 → 0.2.1
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/README.md +58 -7
- package/dist/cli/change.d.ts.map +1 -1
- package/dist/cli/change.js +93 -4
- package/dist/cli/change.js.map +1 -1
- package/dist/cli/index.js +4 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/project.d.ts.map +1 -1
- package/dist/cli/project.js +50 -0
- package/dist/cli/project.js.map +1 -1
- package/dist/cli/task.d.ts.map +1 -1
- package/dist/cli/task.js +146 -41
- package/dist/cli/task.js.map +1 -1
- package/dist/core/agents.d.ts +17 -0
- package/dist/core/agents.d.ts.map +1 -1
- package/dist/core/agents.js +43 -1
- package/dist/core/agents.js.map +1 -1
- package/dist/core/archive.d.ts.map +1 -1
- package/dist/core/archive.js +74 -2
- package/dist/core/archive.js.map +1 -1
- package/dist/core/audit.d.ts +1 -0
- package/dist/core/audit.d.ts.map +1 -1
- package/dist/core/audit.js +60 -40
- package/dist/core/audit.js.map +1 -1
- package/dist/core/completion.js +1 -1
- package/dist/core/completion.js.map +1 -1
- package/dist/core/delta.d.ts +30 -1
- package/dist/core/delta.d.ts.map +1 -1
- package/dist/core/delta.js +141 -4
- package/dist/core/delta.js.map +1 -1
- package/dist/core/harness.d.ts +69 -0
- package/dist/core/harness.d.ts.map +1 -0
- package/dist/core/harness.js +278 -0
- package/dist/core/harness.js.map +1 -0
- package/dist/core/integrity-exemptions.d.ts +29 -0
- package/dist/core/integrity-exemptions.d.ts.map +1 -0
- package/dist/core/integrity-exemptions.js +100 -0
- package/dist/core/integrity-exemptions.js.map +1 -0
- package/dist/core/integrity.d.ts +12 -0
- package/dist/core/integrity.d.ts.map +1 -0
- package/dist/core/integrity.js +163 -0
- package/dist/core/integrity.js.map +1 -0
- package/dist/core/invariants.d.ts +5 -0
- package/dist/core/invariants.d.ts.map +1 -0
- package/dist/core/invariants.js +19 -0
- package/dist/core/invariants.js.map +1 -0
- package/dist/core/lifecycle.d.ts +37 -0
- package/dist/core/lifecycle.d.ts.map +1 -0
- package/dist/core/lifecycle.js +70 -0
- package/dist/core/lifecycle.js.map +1 -0
- package/dist/core/paths.d.ts +3 -0
- package/dist/core/paths.d.ts.map +1 -1
- package/dist/core/paths.js +19 -1
- package/dist/core/paths.js.map +1 -1
- package/dist/core/reconciliation.d.ts +25 -0
- package/dist/core/reconciliation.d.ts.map +1 -0
- package/dist/core/reconciliation.js +122 -0
- package/dist/core/reconciliation.js.map +1 -0
- package/dist/core/remediation.d.ts +41 -0
- package/dist/core/remediation.d.ts.map +1 -0
- package/dist/core/remediation.js +169 -0
- package/dist/core/remediation.js.map +1 -0
- package/dist/core/spec-io.d.ts +2 -0
- package/dist/core/spec-io.d.ts.map +1 -1
- package/dist/core/spec-io.js +23 -2
- package/dist/core/spec-io.js.map +1 -1
- package/dist/core/status.d.ts +2 -0
- package/dist/core/status.d.ts.map +1 -1
- package/dist/core/status.js +7 -0
- package/dist/core/status.js.map +1 -1
- package/dist/core/task.d.ts +24 -0
- package/dist/core/task.d.ts.map +1 -1
- package/dist/core/task.js +62 -43
- package/dist/core/task.js.map +1 -1
- package/dist/core/transaction.d.ts +10 -0
- package/dist/core/transaction.d.ts.map +1 -0
- package/dist/core/transaction.js +65 -0
- package/dist/core/transaction.js.map +1 -0
- package/dist/core/usability.d.ts.map +1 -1
- package/dist/core/usability.js +50 -13
- package/dist/core/usability.js.map +1 -1
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -1
- package/dist/schemas/change.d.ts +20 -20
- package/dist/schemas/spec.d.ts +12 -12
- package/package.json +1 -1
- package/rules/doc-governance.md +2 -2
- package/skill/SKILL.md +12 -9
- package/skill/subskills/adr.md +2 -2
- package/skill/subskills/change.md +4 -4
- package/skill/subskills/design.md +4 -4
- package/skill/subskills/impl.md +9 -9
- package/skill/subskills/plan.md +1 -1
- package/skill/subskills/postmortem.md +1 -1
- package/skill/subskills/prd.md +9 -9
- package/skill/subskills/release.md +2 -2
- package/skill/subskills/runbook.md +1 -1
- package/skill/subskills/testplan.md +2 -2
- package/templates/L2-design.md +2 -2
- package/templates/L3-impl.md +1 -1
package/README.md
CHANGED
|
@@ -17,6 +17,12 @@
|
|
|
17
17
|
- **24 rules** with `applies_to` filtering — no need to load all 24 every time
|
|
18
18
|
- **Status machine** L1/L2 use `draft → confirmed`; L3 uses `draft → frozen → implemented`
|
|
19
19
|
- **Agent Task lifecycle** — `create → start → step → complete`, steps in spec frontmatter; R5 blocks complete if steps are skipped
|
|
20
|
+
- **Coding harness bridge** — export task context, report task progress, record verification evidence, and propose implementation-scope changes from CLI-friendly commands
|
|
21
|
+
- **Project integrity inspection** — scan for dangling references, conflicting active tasks, missing verifications/decisions, and stale parents; surfaced via `project doctor`
|
|
22
|
+
- **Lifecycle reconciliation** — dry-run/apply plans to retroactively mark historical L1/L2 specs as `implemented` and create missing decision records
|
|
23
|
+
- **Repository remediation** — versioned migrations that retroactively create decision records, integrity exemptions, and missing agent asset directories
|
|
24
|
+
- **File transactions** — atomic, rollback-capable multi-file writes with snapshot-and-restore semantics
|
|
25
|
+
- **Task invariants** — hard-safety checks: one active task per spec, only running tasks accept steps, successful verification required before completion
|
|
20
26
|
- **Decision cards** with `what/why/affectedCriteria` + topic query
|
|
21
27
|
- **Rule audit** with at-least-once local JSON accumulator
|
|
22
28
|
- **Delta specs** (OpenSpec-style `changes/<name>/` with ADDED/MODIFIED/REMOVED/RENAMED + archive merge)
|
|
@@ -142,7 +148,9 @@ Or use an AI agent configured with spec-manager:
|
|
|
142
148
|
For day-to-day use, these helper commands reduce command memorization:
|
|
143
149
|
|
|
144
150
|
```bash
|
|
145
|
-
spec-manager project doctor # check setup, agent files, skill assets, placeholders, audit
|
|
151
|
+
spec-manager project doctor # check setup, agent files, skill assets, placeholders, audit, integrity
|
|
152
|
+
spec-manager project reconcile # dry-run: retroactively mark historical specs as implemented + create missing decisions
|
|
153
|
+
spec-manager project remediate # versioned migrations: decision records, integrity exemptions, missing agent assets
|
|
146
154
|
spec-manager flow status --topic auth # show L1/L2/L3/Task progress and the next command
|
|
147
155
|
spec-manager view --topic auth # interactively browse specs, tasks, and next steps
|
|
148
156
|
spec-manager guide "add user auth" # print the next useful step for a request
|
|
@@ -158,7 +166,9 @@ Long-form commands remain available; the shortcuts only wrap the same rules and
|
|
|
158
166
|
|
|
159
167
|
| Command | Use it when | What it gives you |
|
|
160
168
|
|---|---|---|
|
|
161
|
-
| `project doctor` | You are unsure whether the project is ready | Setup checks plus concrete fix commands |
|
|
169
|
+
| `project doctor` | You are unsure whether the project is ready | Setup checks plus integrity scan and concrete fix commands |
|
|
170
|
+
| `project reconcile` | Historical specs need retroactive status fixes | Dry-run/apply plan to mark L1/L2 as implemented + create missing decisions |
|
|
171
|
+
| `project remediate` | Project needs versioned migrations | Creates decision records, integrity exemptions, and missing agent assets |
|
|
162
172
|
| `flow status` | You need to know where a topic is blocked | L1/L2/L3/Task state and the next command |
|
|
163
173
|
| `view` | You want to explore workflow state interactively | Topic/spec/task browser with next-step suggestions |
|
|
164
174
|
| `guide` | You have a request but do not know which command starts it | The next useful step without changing files |
|
|
@@ -375,18 +385,38 @@ spec-manager task create auth-L3.1.1-jwt --plan /tmp/jwt-plan.json --auto-confir
|
|
|
375
385
|
# → outputs: taskId T-001, file specs/auth/tasks/auth-L3.1.1-jwt-T-001.json
|
|
376
386
|
|
|
377
387
|
spec-manager task start T-001 --spec auth-L3.1.1-jwt
|
|
388
|
+
|
|
389
|
+
# optional: export a compact context packet for a coding harness / agent
|
|
390
|
+
spec-manager task context auth-L3.1.1-jwt --format text
|
|
391
|
+
spec-manager task context auth-L3.1.1-jwt --format json
|
|
392
|
+
|
|
378
393
|
# step 1
|
|
379
394
|
spec-manager task step T-001 --spec auth-L3.1.1-jwt --no 1 --type mcp_tool --name "Context gathering" \
|
|
380
395
|
--status succeeded --output-json '{"summary":"read L2 + L1","read":["auth-L2.1"]}' --latency 1200
|
|
381
396
|
# ... repeat for each step
|
|
382
397
|
|
|
398
|
+
# shorthand for harnesses: write a structured progress report into the next/picked task step
|
|
399
|
+
spec-manager task report T-001 --spec auth-L3.1.1-jwt \
|
|
400
|
+
--summary "Implemented JWT signing" \
|
|
401
|
+
--files "src/auth/jwt.ts,src/auth/__tests__/jwt.test.ts" \
|
|
402
|
+
--tests "npm test -- --run src/auth/__tests__/jwt.test.ts"
|
|
403
|
+
|
|
404
|
+
# record verification evidence before completion
|
|
405
|
+
spec-manager task verify T-001 --spec auth-L3.1.1-jwt \
|
|
406
|
+
--command "npm test -- --run src/auth/__tests__/jwt.test.ts" \
|
|
407
|
+
--exit-code 0 \
|
|
408
|
+
--summary "JWT tests passed" \
|
|
409
|
+
--covers-ac AC-1,AC-2
|
|
410
|
+
|
|
383
411
|
spec-manager task complete T-001 --spec auth-L3.1.1-jwt
|
|
384
412
|
# → L3 status: frozen → implemented
|
|
385
413
|
# → if all L3 children of L2 are implemented: L2 cascades to implemented
|
|
386
414
|
# → if all L2 children of L1 are implemented: L1 cascades to implemented
|
|
387
415
|
```
|
|
388
416
|
|
|
389
|
-
`task step` is the per-step report (with required `outputJson` per R15); `task complete` triggers the cascade — it never goes the other way (R2).
|
|
417
|
+
`task context` is designed for coding harnesses and agents that need a bounded work packet before editing. `task step` is the per-step report (with required `outputJson` per R15); `task report` is a compact harness-friendly wrapper around the same step recording model. `task verify` stores command, exit code, summary, artifacts, and covered ACs on the task. `task complete` triggers the cascade — it never goes the other way (R2).
|
|
418
|
+
|
|
419
|
+
Task history is immutable after `completed` or `failed`. A task can complete only after every planned step succeeds and at least one recorded verification has `exitCode=0`. The deprecated `task batch` command cannot synthesize successful execution records.
|
|
390
420
|
|
|
391
421
|
### 7. Record a decision card (R18: L1 implemented)
|
|
392
422
|
|
|
@@ -462,6 +492,24 @@ spec-manager change archive add-2fa
|
|
|
462
492
|
|
|
463
493
|
This gives you a full audit trail: who proposed what, when, and what the spec looked like before the change.
|
|
464
494
|
|
|
495
|
+
When an implementation discovers that the frozen L3 no longer matches reality, keep that deviation explicit and task-linked:
|
|
496
|
+
|
|
497
|
+
```bash
|
|
498
|
+
spec-manager change propose \
|
|
499
|
+
--task T-001 \
|
|
500
|
+
--spec auth-L3.1.1-jwt \
|
|
501
|
+
--reason "The library exposes async key loading, but the L3 specified sync loading" \
|
|
502
|
+
--impact "Update AC-2 and the verification command before merging"
|
|
503
|
+
|
|
504
|
+
spec-manager change list
|
|
505
|
+
spec-manager change show auth-l3-1-1-jwt-t-001-proposal
|
|
506
|
+
|
|
507
|
+
# after amending the L3, recording a decision, or splitting follow-up work
|
|
508
|
+
spec-manager change resolve auth-l3-1-1-jwt-t-001-proposal
|
|
509
|
+
```
|
|
510
|
+
|
|
511
|
+
Task-linked proposals live in `changes/<name>/proposal.md` with `status: unresolved|resolved`. `audit show` warns on unresolved task-linked proposals so implementation drift cannot disappear silently.
|
|
512
|
+
|
|
465
513
|
## Common commands
|
|
466
514
|
|
|
467
515
|
| Command | What it does |
|
|
@@ -469,6 +517,9 @@ This gives you a full audit trail: who proposed what, when, and what the spec lo
|
|
|
469
517
|
| `spec-manager project init --name X` | Initialize `.spec-manager/` |
|
|
470
518
|
| `spec-manager project status` | Project overview (specs by level, recent activity) |
|
|
471
519
|
| `spec-manager project agents [--provider P] [--dry-run]` | Auto-detect or install agent workflow files |
|
|
520
|
+
| `spec-manager project doctor` | Setup + integrity checks with concrete fix commands |
|
|
521
|
+
| `spec-manager project reconcile [--dry-run]` | Retroactively mark historical L1/L2 as implemented + create missing decisions |
|
|
522
|
+
| `spec-manager project remediate [--dry-run]` | Versioned migrations: decisions, exemptions, missing agent assets |
|
|
472
523
|
| `spec-manager view [--topic X]` | Interactive topic/spec/task browser |
|
|
473
524
|
| `spec-manager completion install zsh\|bash\|fish` | Install shell and spec-code completion |
|
|
474
525
|
| `spec-manager spec list [--level L1] [--topic X] [--status draft]` | List specs (filterable) |
|
|
@@ -478,9 +529,9 @@ This gives you a full audit trail: who proposed what, when, and what the spec lo
|
|
|
478
529
|
| `spec-manager spec validate <code>` | Re-run warning-only validation |
|
|
479
530
|
| `spec-manager spec validate-plan [file] [--from-spec <code>]` | Validate planJson from a file or L3 spec |
|
|
480
531
|
| `spec-manager spec add-relation <code> --target T --type based_on\|supersedes\|implements\|references` | Cross-spec reference |
|
|
481
|
-
| `spec-manager task create \| start \| step \| complete \| fail \| list \| show` | Agent Task lifecycle |
|
|
532
|
+
| `spec-manager task create \| start \| step \| report \| verify \| complete \| fail \| list \| show \| context` | Agent Task lifecycle and coding harness bridge |
|
|
482
533
|
| `spec-manager decision create \| list \| show \| update \| set-partial \| supersede \| delete` | Decision cards (R18) |
|
|
483
|
-
| `spec-manager change new \| archive \| list \| show` | Delta spec workflow |
|
|
534
|
+
| `spec-manager change new \| propose \| resolve \| archive \| list \| show` | Delta spec workflow and task-linked implementation change proposals |
|
|
484
535
|
| `spec-manager incident new \| list` | Rule violation tracking |
|
|
485
536
|
| `spec-manager audit hit \| report \| show` | Local rule audit |
|
|
486
537
|
|
|
@@ -505,7 +556,7 @@ my-project/
|
|
|
505
556
|
│ └── tasks/ # R3: L3 frozen → agent tasks
|
|
506
557
|
│ └── <specCode>-T-001.json
|
|
507
558
|
├── changes/<name>/
|
|
508
|
-
│ ├── proposal.md
|
|
559
|
+
│ ├── proposal.md # regular delta proposal or task-linked implementation proposal
|
|
509
560
|
│ ├── deltas/<code>.md
|
|
510
561
|
│ └── specs/<topic>/<code>/<code>.md # ADDED placeholder
|
|
511
562
|
└── archive/<name>/ # merged changes
|
|
@@ -535,7 +586,7 @@ spec-manager/
|
|
|
535
586
|
## Design choices
|
|
536
587
|
|
|
537
588
|
- **Markdown + YAML frontmatter** over JSON or DB: git-friendly, human-readable, diff-able
|
|
538
|
-
- **Atomic file writes** (temp + rename) prevent half-written specs
|
|
589
|
+
- **Atomic file writes** (temp + rename) prevent half-written specs; **file transactions** extend this to multi-spec operations with rollback
|
|
539
590
|
- **Narrow view by default** (`spec show` returns metadata only, R19) — saves context
|
|
540
591
|
- **Warning-only validation** — never throws on content quality issues (per R22, R13); R22 blocks confirm/freeze if content is still placeholder
|
|
541
592
|
- **Local rule audit** — JSON file with at-least-once pending queue (no network to fail)
|
package/dist/cli/change.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"change.d.ts","sourceRoot":"","sources":["../../src/cli/change.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"change.d.ts","sourceRoot":"","sources":["../../src/cli/change.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAcpC,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAyK7D"}
|
package/dist/cli/change.js
CHANGED
|
@@ -6,12 +6,48 @@
|
|
|
6
6
|
* archive <name>
|
|
7
7
|
*/
|
|
8
8
|
import { getPaths } from '../core/paths.js';
|
|
9
|
-
import { createChange,
|
|
9
|
+
import { createChange, createTaskLinkedChangeProposal, getChangeDir, listChanges, listTaskLinkedChangeProposals, parseDeltaSpec, readTaskLinkedChangeProposal, resolveTaskLinkedChangeProposal, } from '../core/delta.js';
|
|
10
10
|
import { archiveChange } from '../core/archive.js';
|
|
11
11
|
export function registerChangeCommands(program) {
|
|
12
12
|
const change = program
|
|
13
13
|
.command('change')
|
|
14
14
|
.description('Delta change 提案(OpenSpec 风格:proposal + ADDED/MODIFIED/REMOVED/RENAMED)');
|
|
15
|
+
change
|
|
16
|
+
.command('propose')
|
|
17
|
+
.description('创建与 task/L3 关联的 change proposal')
|
|
18
|
+
.requiredOption('--task <taskCode>', '关联 task code')
|
|
19
|
+
.requiredOption('--spec <specCode>', '关联 L3 spec code')
|
|
20
|
+
.requiredOption('--reason <reason>', '偏差原因')
|
|
21
|
+
.requiredOption('--impact <impact>', '影响范围')
|
|
22
|
+
.option('--json', '以 JSON 格式输出', false)
|
|
23
|
+
.action((opts) => {
|
|
24
|
+
const paths = getPaths();
|
|
25
|
+
try {
|
|
26
|
+
const result = createTaskLinkedChangeProposal({
|
|
27
|
+
paths,
|
|
28
|
+
taskCode: opts.task,
|
|
29
|
+
specCode: opts.spec,
|
|
30
|
+
reason: opts.reason,
|
|
31
|
+
impact: opts.impact,
|
|
32
|
+
});
|
|
33
|
+
if (opts.json) {
|
|
34
|
+
console.log(JSON.stringify(result, null, 2));
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
console.log(`✓ Change proposal created: ${result.name}`);
|
|
38
|
+
console.log(` status: ${result.status}`);
|
|
39
|
+
console.log(` task: ${result.taskCode}`);
|
|
40
|
+
console.log(` spec: ${result.specCode}`);
|
|
41
|
+
console.log(` proposal: ${result.proposalFile}`);
|
|
42
|
+
console.log('');
|
|
43
|
+
console.log('Next:');
|
|
44
|
+
console.log(` spec-manager change show ${result.name}`);
|
|
45
|
+
console.log(` spec-manager change resolve ${result.name}`);
|
|
46
|
+
}
|
|
47
|
+
catch (err) {
|
|
48
|
+
handleChangeError(err);
|
|
49
|
+
}
|
|
50
|
+
});
|
|
15
51
|
change
|
|
16
52
|
.command('new <name>')
|
|
17
53
|
.description('创建 change 提案目录(changes/<name>/)')
|
|
@@ -37,15 +73,23 @@ export function registerChangeCommands(program) {
|
|
|
37
73
|
const paths = getPaths();
|
|
38
74
|
const all = listChanges(paths);
|
|
39
75
|
if (opts.json) {
|
|
40
|
-
|
|
76
|
+
const taskLinked = listTaskLinkedChangeProposals(paths);
|
|
77
|
+
console.log(JSON.stringify(all.map(c => taskLinked.find(p => p.name === c.name) ?? c), null, 2));
|
|
41
78
|
return;
|
|
42
79
|
}
|
|
43
80
|
if (all.length === 0) {
|
|
44
81
|
console.log('(no active changes)');
|
|
45
82
|
return;
|
|
46
83
|
}
|
|
84
|
+
const taskLinkedByName = new Map(listTaskLinkedChangeProposals(paths).map(p => [p.name, p]));
|
|
47
85
|
for (const c of all) {
|
|
48
|
-
|
|
86
|
+
const taskLinked = taskLinkedByName.get(c.name);
|
|
87
|
+
if (taskLinked) {
|
|
88
|
+
console.log(` ${c.name} ${taskLinked.status} task=${taskLinked.taskCode} spec=${taskLinked.specCode}`);
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
console.log(` ${c.name} (created ${c.created || '?'})`);
|
|
92
|
+
}
|
|
49
93
|
}
|
|
50
94
|
});
|
|
51
95
|
change
|
|
@@ -60,13 +104,27 @@ export function registerChangeCommands(program) {
|
|
|
60
104
|
process.exit(1);
|
|
61
105
|
}
|
|
62
106
|
if (opts.json) {
|
|
107
|
+
const taskLinked = readTaskLinkedChangeProposal(paths, name);
|
|
108
|
+
if (taskLinked) {
|
|
109
|
+
console.log(JSON.stringify({ name, changes: [], proposal: taskLinked }, null, 2));
|
|
110
|
+
return;
|
|
111
|
+
}
|
|
63
112
|
const delta = parseDeltaSpec(paths, name);
|
|
64
|
-
console.log(JSON.stringify(delta, null, 2));
|
|
113
|
+
console.log(JSON.stringify({ ...delta, proposal: taskLinked }, null, 2));
|
|
65
114
|
return;
|
|
66
115
|
}
|
|
116
|
+
const taskLinked = readTaskLinkedChangeProposal(paths, name);
|
|
67
117
|
console.log(`Change: ${name}`);
|
|
68
118
|
console.log(` root: ${dir.root}`);
|
|
69
119
|
console.log(` proposal: ${dir.proposal}`);
|
|
120
|
+
if (taskLinked) {
|
|
121
|
+
console.log(` type: task-linked`);
|
|
122
|
+
console.log(` status: ${taskLinked.status}`);
|
|
123
|
+
console.log(` task: ${taskLinked.taskCode}`);
|
|
124
|
+
console.log(` spec: ${taskLinked.specCode}`);
|
|
125
|
+
console.log(` reason: ${taskLinked.reason}`);
|
|
126
|
+
console.log(` impact: ${taskLinked.impact}`);
|
|
127
|
+
}
|
|
70
128
|
console.log(` delta files: ${dir.deltaFiles.length}`);
|
|
71
129
|
for (const f of dir.deltaFiles)
|
|
72
130
|
console.log(` - ${f}`);
|
|
@@ -74,6 +132,25 @@ export function registerChangeCommands(program) {
|
|
|
74
132
|
for (const f of dir.specFiles)
|
|
75
133
|
console.log(` - ${f}`);
|
|
76
134
|
});
|
|
135
|
+
change
|
|
136
|
+
.command('resolve <name>')
|
|
137
|
+
.description('将 task-linked change proposal 标记为 resolved')
|
|
138
|
+
.option('--json', '以 JSON 格式输出', false)
|
|
139
|
+
.action((name, opts) => {
|
|
140
|
+
const paths = getPaths();
|
|
141
|
+
try {
|
|
142
|
+
const result = resolveTaskLinkedChangeProposal(paths, name);
|
|
143
|
+
if (opts.json) {
|
|
144
|
+
console.log(JSON.stringify(result, null, 2));
|
|
145
|
+
return;
|
|
146
|
+
}
|
|
147
|
+
console.log(`✓ Change proposal resolved: ${result.name}`);
|
|
148
|
+
console.log(` status: ${result.status}`);
|
|
149
|
+
}
|
|
150
|
+
catch (err) {
|
|
151
|
+
handleChangeError(err);
|
|
152
|
+
}
|
|
153
|
+
});
|
|
77
154
|
change
|
|
78
155
|
.command('archive <name>')
|
|
79
156
|
.description('应用 delta 到主 specs/,把 changes/<name>/ 移到 archive/')
|
|
@@ -100,4 +177,16 @@ export function registerChangeCommands(program) {
|
|
|
100
177
|
}
|
|
101
178
|
});
|
|
102
179
|
}
|
|
180
|
+
function handleChangeError(err) {
|
|
181
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
182
|
+
if (message.startsWith('INVALID_CHANGE:') ||
|
|
183
|
+
message.startsWith('SPEC_NOT_FOUND:') ||
|
|
184
|
+
message.startsWith('SPEC_NOT_L3:') ||
|
|
185
|
+
message.startsWith('TASK_NOT_FOUND:') ||
|
|
186
|
+
message.startsWith('CHANGE_NOT_FOUND:')) {
|
|
187
|
+
console.error(`✗ ${message}`);
|
|
188
|
+
process.exit(2);
|
|
189
|
+
}
|
|
190
|
+
throw err;
|
|
191
|
+
}
|
|
103
192
|
//# sourceMappingURL=change.js.map
|
package/dist/cli/change.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"change.js","sourceRoot":"","sources":["../../src/cli/change.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,
|
|
1
|
+
{"version":3,"file":"change.js","sourceRoot":"","sources":["../../src/cli/change.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/index.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
+
import { createRequire } from 'node:module';
|
|
2
3
|
import { Command } from 'commander';
|
|
3
4
|
import { registerProject } from './project.js';
|
|
4
5
|
import { registerSpec } from './spec.js';
|
|
@@ -11,11 +12,13 @@ import { registerDictCommands } from './dict.js';
|
|
|
11
12
|
import { registerUsabilityCommands } from './usability.js';
|
|
12
13
|
import { registerViewCommands } from './view.js';
|
|
13
14
|
import { registerCompletionCommands } from './completion.js';
|
|
15
|
+
const require = createRequire(import.meta.url);
|
|
16
|
+
const { version } = require('../../package.json');
|
|
14
17
|
const program = new Command();
|
|
15
18
|
program
|
|
16
19
|
.name('spec-manager')
|
|
17
20
|
.description('spec-manager: local-first spec-driven development platform. Portable CLI + multi-agent instructions.')
|
|
18
|
-
.version(
|
|
21
|
+
.version(version);
|
|
19
22
|
registerProject(program);
|
|
20
23
|
registerSpec(program);
|
|
21
24
|
registerTaskCommands(program);
|
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAE7D,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAC9B,OAAO;KACJ,IAAI,CAAC,cAAc,CAAC;KACpB,WAAW,CAAC,sGAAsG,CAAC;KACnH,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,eAAe,CAAC,OAAO,CAAC,CAAC;AACzB,YAAY,CAAC,OAAO,CAAC,CAAC;AACtB,oBAAoB,CAAC,OAAO,CAAC,CAAC;AAC9B,wBAAwB,CAAC,OAAO,CAAC,CAAC;AAClC,qBAAqB,CAAC,OAAO,CAAC,CAAC;AAC/B,sBAAsB,CAAC,OAAO,CAAC,CAAC;AAChC,wBAAwB,CAAC,OAAO,CAAC,CAAC;AAClC,oBAAoB,CAAC,OAAO,CAAC,CAAC;AAC9B,yBAAyB,CAAC,OAAO,CAAC,CAAC;AACnC,oBAAoB,CAAC,OAAO,CAAC,CAAC;AAC9B,0BAA0B,CAAC,OAAO,CAAC,CAAC;AAEpC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;IAC3C,OAAO,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,EAAE,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC;IACxC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAE7D,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAElD,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAC9B,OAAO;KACJ,IAAI,CAAC,cAAc,CAAC;KACpB,WAAW,CAAC,sGAAsG,CAAC;KACnH,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,eAAe,CAAC,OAAO,CAAC,CAAC;AACzB,YAAY,CAAC,OAAO,CAAC,CAAC;AACtB,oBAAoB,CAAC,OAAO,CAAC,CAAC;AAC9B,wBAAwB,CAAC,OAAO,CAAC,CAAC;AAClC,qBAAqB,CAAC,OAAO,CAAC,CAAC;AAC/B,sBAAsB,CAAC,OAAO,CAAC,CAAC;AAChC,wBAAwB,CAAC,OAAO,CAAC,CAAC;AAClC,oBAAoB,CAAC,OAAO,CAAC,CAAC;AAC9B,yBAAyB,CAAC,OAAO,CAAC,CAAC;AACnC,oBAAoB,CAAC,OAAO,CAAC,CAAC;AAC9B,0BAA0B,CAAC,OAAO,CAAC,CAAC;AAEpC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;IAC3C,OAAO,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,EAAE,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC;IACxC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../src/cli/project.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../src/cli/project.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAkBpC,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAyKtD"}
|
package/dist/cli/project.js
CHANGED
|
@@ -5,6 +5,8 @@ import { detectAgentProviders, installAgentSupport, listAgentProviders, parseAge
|
|
|
5
5
|
import { getPaths } from '../core/paths.js';
|
|
6
6
|
import { listAllSpecs } from '../core/spec-io.js';
|
|
7
7
|
import { runProjectDoctor } from '../core/usability.js';
|
|
8
|
+
import { applyRepositoryRemediation, planRepositoryRemediation } from '../core/remediation.js';
|
|
9
|
+
import { applyLifecycleReconciliation, planLifecycleReconciliation } from '../core/reconciliation.js';
|
|
8
10
|
import { printPathGroup, requireInitialized } from './common.js';
|
|
9
11
|
export function registerProject(program) {
|
|
10
12
|
const cmd = program.command('project').description('项目管理(init/status)');
|
|
@@ -88,6 +90,45 @@ export function registerProject(program) {
|
|
|
88
90
|
console.log(' Verify: spec-manager project doctor');
|
|
89
91
|
}
|
|
90
92
|
});
|
|
93
|
+
cmd
|
|
94
|
+
.command('reconcile')
|
|
95
|
+
.description('预览或执行已审阅范围内的历史规格状态对账')
|
|
96
|
+
.option('--dry-run', '仅预览对账计划,不写入文件')
|
|
97
|
+
.action((opts) => {
|
|
98
|
+
const paths = getPaths();
|
|
99
|
+
requireInitialized(paths);
|
|
100
|
+
const report = opts.dryRun ? planLifecycleReconciliation(paths) : applyLifecycleReconciliation(paths);
|
|
101
|
+
console.log(`✓ Lifecycle reconciliation ${opts.dryRun ? 'planned' : 'applied'}`);
|
|
102
|
+
printRemediationGroup('implementations', report.implementationActions);
|
|
103
|
+
printRemediationGroup('decisions', report.decisionActions);
|
|
104
|
+
if (report.conflicts.length > 0) {
|
|
105
|
+
console.log('blocked:');
|
|
106
|
+
for (const conflict of report.conflicts)
|
|
107
|
+
console.log(` - ${conflict.target}: ${conflict.message}`);
|
|
108
|
+
}
|
|
109
|
+
});
|
|
110
|
+
cmd
|
|
111
|
+
.command('remediate')
|
|
112
|
+
.description('执行显式、版本化的仓库修复迁移')
|
|
113
|
+
.requiredOption('--migration <id>', '迁移 ID')
|
|
114
|
+
.option('--dry-run', '仅预览迁移计划,不写入文件')
|
|
115
|
+
.action((opts) => {
|
|
116
|
+
const paths = getPaths();
|
|
117
|
+
requireInitialized(paths);
|
|
118
|
+
const packageRoot = join(dirname(fileURLToPath(import.meta.url)), '..', '..');
|
|
119
|
+
const report = opts.dryRun
|
|
120
|
+
? planRepositoryRemediation({ paths, packageRoot, migrationId: String(opts.migration) })
|
|
121
|
+
: applyRepositoryRemediation({ paths, packageRoot, migrationId: String(opts.migration) });
|
|
122
|
+
console.log(`✓ Repository remediation ${opts.dryRun ? 'planned' : 'applied'}: ${report.migrationId}`);
|
|
123
|
+
printRemediationGroup('decisions', report.decisions);
|
|
124
|
+
printRemediationGroup('exemptions', report.exemptions);
|
|
125
|
+
printRemediationGroup('agent assets', report.agentAssets);
|
|
126
|
+
if (report.conflicts.length > 0) {
|
|
127
|
+
console.log('conflicts:');
|
|
128
|
+
for (const conflict of report.conflicts)
|
|
129
|
+
console.log(` - ${conflict.target}: ${conflict.message}`);
|
|
130
|
+
}
|
|
131
|
+
});
|
|
91
132
|
cmd
|
|
92
133
|
.command('doctor')
|
|
93
134
|
.description('检查项目初始化、agent 指令、skill 资产、占位 spec 和 audit 状态')
|
|
@@ -132,6 +173,15 @@ export function registerProject(program) {
|
|
|
132
173
|
}
|
|
133
174
|
});
|
|
134
175
|
}
|
|
176
|
+
function printRemediationGroup(label, actions) {
|
|
177
|
+
console.log(`${label}:`);
|
|
178
|
+
if (actions.length === 0) {
|
|
179
|
+
console.log(' (none)');
|
|
180
|
+
return;
|
|
181
|
+
}
|
|
182
|
+
for (const action of actions)
|
|
183
|
+
console.log(` - ${action.action}: ${action.target} (${action.detail})`);
|
|
184
|
+
}
|
|
135
185
|
function printAgentDetection(detection) {
|
|
136
186
|
console.log('detected:');
|
|
137
187
|
for (const provider of detection.providers) {
|
package/dist/cli/project.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project.js","sourceRoot":"","sources":["../../src/cli/project.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"project.js","sourceRoot":"","sources":["../../src/cli/project.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/task.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../src/cli/task.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../src/cli/task.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA6BpC,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAwZ3D"}
|