lee-spec-kit 0.9.1 → 0.9.2

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lee-spec-kit",
3
- "version": "0.9.1",
3
+ "version": "0.9.2",
4
4
  "description": "Document-centered harness engineering toolkit for AI agent development",
5
5
  "type": "module",
6
6
  "bin": {
@@ -138,7 +138,8 @@ When you run `lee-spec-kit init`, it creates `.lee-spec-kit.json` in the docs ro
138
138
  - `workflow.baseBranch` (string): branch that receives a completed local Feature
139
139
  - `workflow.completionStrategy` (`"local-ff" | "local-squash" | "none"`): fast-forward, create one verified squash commit, or explicitly finish without integration
140
140
  - `workflow.deleteFeatureBranchAfterMerge` (boolean): delete the integrated local Feature branch after cleanup; remote branches are never deleted
141
- - `workflow.postMergeChecks` (array): structured commands run from the base branch after local integration, for example `{ "command": "pnpm", "args": ["test"] }`
141
+ - `workflow.featureChecks` (array): build/test/lint/typecheck commands run in the Feature worktree before integration
142
+ - `workflow.postMergeChecks` (array): optional commands that genuinely require the integrated base-branch environment
142
143
  - `approval` (object, optional): optional approval-checkpoint metadata for repo policy and custom validators
143
144
  - The Codex-native default path still asks at documented checkpoints and before remote/destructive actions first.
144
145
  - Legacy runtime consumed this field directly; keep it only when you intentionally want category-based checkpoint metadata.
@@ -168,6 +169,7 @@ When you run `lee-spec-kit init`, it creates `.lee-spec-kit.json` in the docs ro
168
169
  "baseBranch": "main",
169
170
  "completionStrategy": "local-ff",
170
171
  "deleteFeatureBranchAfterMerge": true,
172
+ "featureChecks": [],
171
173
  "postMergeChecks": [],
172
174
  "prePrReview": {
173
175
  "evidenceMode": "path_required",
@@ -57,7 +57,7 @@ This document defines workflow policy, not a custom runtime loop.
57
57
  - The Pre-PR review subagent returns findings without modifying code. The main agent remediates findings and records reviewer metadata and the final decision as evidence.
58
58
  - Treat spec/plan/tasks approval, issue creation, and branch creation as hard gates before implementation.
59
59
  - In standalone mode, do not hand-write `git worktree add`; run the exact `nextAction.command` from `workflow-stage` so the managed workspace path, stale directory cleanup, and `.env`/`.env.*` copy step stay consistent.
60
- - In local mode, do not stop after implementation approval. Follow the exact `local merge` and `local cleanup` commands returned by `workflow-stage` until verified integration and cleanup produce `done`.
60
+ - In local mode, do not stop after implementation approval. Follow the exact `local verify`, `local merge`, and `local cleanup` commands returned by `workflow-stage` until verified integration and cleanup produce `done`. A `feature_remediation` stage explicitly permits fixes in the Feature worktree.
61
61
  - In a `local-ff` or `local-squash` workflow, keep implementation approval and local merge approval distinct when `local_merge` is required: the first accepts the implementation, and the second authorizes the configured integration strategy, post-merge checks, and local cleanup.
62
62
  - Keep docs synced with code changes in the same turn whenever behavior or scope changes.
63
63
  - Use `npx lee-spec-kit commit-audit --json` before `git commit`; Feature-scoped commits use `#123` when an Issue is linked and the stable Feature ID such as `F027` for issue-less local workflows.
@@ -57,7 +57,11 @@ npx lee-spec-kit workflow-stage <feature-ref> --json
57
57
 
58
58
  Use the returned `stage`, `nextAction`, and `implementationAllowed` values as the current workflow state.
59
59
 
60
- In a local workflow with `completionStrategy: "local-ff"` or `"local-squash"`, completion is `implementation_approve local_merge local_verify local_cleanup done`. Use the exact helper command returned for each stage. `local-ff` proves ancestry; `local-squash` proves the squash commit tree matches the internally preserved source Feature tip. Both require cleanup before `done`.
60
+ The three final completion checkboxes in `tasks.md` carry `lee-spec-kit:completion:*` HTML markers. You may customize their visible wording, but preserve the marker on each checkbox line; `workflow-stage` uses the marker as the machine-readable identity and falls back to the legacy canonical wording for older projects.
61
+
62
+ In a local workflow with `completionStrategy: "local-ff"` or `"local-squash"`, completion is `implementation_approve → feature_verify → local_merge → local_cleanup → done`. Failed checks enter `feature_remediation` with implementation enabled. `local-ff` moves only the verified Feature SHA; `local-squash` requires the integration tree to match the verified Feature tree. Both require cleanup before `done`.
63
+
64
+ A remediation commit invalidates verification and the prior local-merge confirmation. Refresh review evidence for the changed diff when Pre-PR review is enabled, verify the new tip, and obtain local-merge approval again.
61
65
 
62
66
  ---
63
67
 
@@ -81,9 +81,9 @@
81
81
 
82
82
  > ⚠️ This is a **final verification checklist**. Only check after you actually verified.
83
83
 
84
- - [ ] All tasks are `[DONE]`, and each task's `Acceptance` is verified and `Checklist` is checked
85
- - [ ] Tests executed and passing (record command/result below)
86
- - [ ] Final outcome shared and any required user confirmation recorded at the documented workflow checkpoint
84
+ - [ ] All tasks are `[DONE]`, and each task's `Acceptance` is verified and `Checklist` is checked <!-- lee-spec-kit:completion:all-tasks -->
85
+ - [ ] Tests executed and passing (record command/result below) <!-- lee-spec-kit:completion:tests -->
86
+ - [ ] Final outcome shared and any required user confirmation recorded at the documented workflow checkpoint <!-- lee-spec-kit:completion:final-outcome -->
87
87
 
88
88
  ### Test Run Log (Latest by Command)
89
89
 
@@ -138,7 +138,8 @@ npx lee-spec-kit docs get agents --json
138
138
  - `workflow.baseBranch` (string): 완료된 local Feature를 통합할 기준 브랜치
139
139
  - `workflow.completionStrategy` (`"local-ff" | "local-squash" | "none"`): fast-forward, 검증된 단일 squash commit 생성, 또는 명시적으로 통합 없이 종료
140
140
  - `workflow.deleteFeatureBranchAfterMerge` (boolean): cleanup 후 통합된 local Feature 브랜치 삭제 여부. 원격 브랜치는 삭제하지 않음
141
- - `workflow.postMergeChecks` (array): local 통합 기준 브랜치에서 실행할 구조화 명령. 예: `{ "command": "pnpm", "args": ["test"] }`
141
+ - `workflow.featureChecks` (array): 통합 전에 Feature worktree에서 실행할 build/test/lint/typecheck 명령
142
+ - `workflow.postMergeChecks` (array): 통합된 기준 브랜치 환경이 실제로 필요한 선택적 검사
142
143
  - `approval` (object, optional): repo 정책/커스텀 validator용 승인 checkpoint 메타데이터
143
144
  - 기본 Codex-native 경로는 여전히 문서화된 checkpoint와 원격/파괴적 작업을 우선 기준으로 승인 요청합니다.
144
145
  - legacy runtime은 이 필드를 직접 소비했지만, 이제는 category 기반 checkpoint 메타데이터가 정말 필요할 때만 유지하세요.
@@ -168,6 +169,7 @@ npx lee-spec-kit docs get agents --json
168
169
  "baseBranch": "main",
169
170
  "completionStrategy": "local-ff",
170
171
  "deleteFeatureBranchAfterMerge": true,
172
+ "featureChecks": [],
171
173
  "postMergeChecks": [],
172
174
  "prePrReview": {
173
175
  "evidenceMode": "path_required",
@@ -57,7 +57,7 @@
57
57
  - Pre-PR 리뷰 서브에이전트는 finding만 반환하며 코드를 수정하지 않습니다. 메인 에이전트가 finding을 반영하고 reviewer metadata와 최종 decision을 evidence에 기록합니다.
58
58
  - spec / plan / tasks 승인, issue 생성, branch 생성은 구현 전 하드 게이트로 취급합니다.
59
59
  - standalone 모드에서는 `git worktree add`를 직접 만들지 말고 `workflow-stage`의 정확한 `nextAction.command`를 실행해 managed workspace 경로, stale 디렉터리 정리, `.env`/`.env.*` 복사 단계가 일관되게 유지되도록 합니다.
60
- - local 모드에서는 구현 승인 직후 종료하지 않습니다. `workflow-stage`가 반환하는 정확한 `local merge`, `local cleanup` 명령을 따라 통합·검증·정리가 확인되어 `done`이 될 때까지 진행합니다.
60
+ - local 모드에서는 구현 승인 직후 종료하지 않습니다. `workflow-stage`가 반환하는 정확한 `local verify`, `local merge`, `local cleanup` 명령을 따라 검증·통합·정리가 확인되어 `done`이 될 때까지 진행합니다. `feature_remediation` 단계에서는 Feature worktree 수정이 명시적으로 허용됩니다.
61
61
  - `local-ff` 또는 `local-squash` workflow에서 `local_merge` 승인이 필요하면 구현 승인과 local merge 승인을 구분합니다. 첫 번째 승인은 구현 결과를 수락하고, 두 번째 승인은 설정된 통합 전략, post-merge 검사, local cleanup을 허가합니다.
62
62
  - 동작이나 범위가 바뀌는 코드 변경이 있으면 같은 턴 안에서 feature 문서를 같이 동기화합니다.
63
63
  - `git commit` 전에 `npx lee-spec-kit commit-audit --json`를 사용합니다. Feature-scoped commit은 Issue가 연결되어 있으면 `#123`, Issue 없는 local workflow에서는 `F027` 같은 안정적인 Feature ID를 scope로 사용합니다.
@@ -57,7 +57,11 @@ npx lee-spec-kit workflow-stage <feature-ref> --json
57
57
 
58
58
  반환되는 `stage`, `nextAction`, `implementationAllowed` 값을 현재 워크플로우 상태로 사용하세요.
59
59
 
60
- `completionStrategy`가 `"local-ff"` 또는 `"local-squash"`인 local workflow의 완료 흐름은 `implementation_approve local_merge local_verify local_cleanup done`입니다.단계에서 반환된 helper 명령을 그대로 사용합니다. `local-ff`는 조상 관계로, `local-squash`는 squash commit tree와 내부 보존된 원본 Feature tip의 tree 일치로 통합을 증명하며, 다 cleanup 후에만 `done`입니다.
60
+ `tasks.md`의 최종 완료 체크박스 3개에는 `lee-spec-kit:completion:*` HTML marker가 있습니다. 사용자에게 보이는 문구는 바꿔도 되지만체크박스 라인의 marker는 유지하세요. `workflow-stage`는 marker를 machine-readable identity로 우선 사용하고, 기존 프로젝트 호환을 위해 marker가 없으면 이전 canonical 문구를 fallback으로 인식합니다.
61
+
62
+ `completionStrategy`가 `"local-ff"` 또는 `"local-squash"`인 local workflow의 완료 흐름은 `implementation_approve → feature_verify → local_merge → local_cleanup → done`입니다. 검사 실패 시 구현이 허용된 `feature_remediation`으로 이동합니다. `local-ff`는 검증된 Feature SHA만 옮기고, `local-squash`는 통합 tree가 검증된 Feature tree와 같아야 합니다. 둘 다 cleanup 후에만 `done`입니다.
63
+
64
+ remediation 커밋이 추가되면 기존 검증과 local merge 승인은 무효입니다. Pre-PR review가 활성화되어 있다면 변경된 diff의 review evidence를 갱신하고 새 tip을 검증한 뒤 local merge 승인을 다시 받습니다.
61
65
 
62
66
  ---
63
67
 
@@ -81,9 +81,9 @@
81
81
 
82
82
  > ⚠️ 아래 항목은 **최종 확인 체크리스트**입니다. 실제로 확인/실행한 뒤에만 체크하세요.
83
83
 
84
- - [ ] 모든 태스크가 `[DONE]`이며, 각 태스크의 `Acceptance` 검증 및 `Checklist` 체크 완료
85
- - [ ] 테스트 실행 및 통과 (아래에 명령어/결과 기록)
86
- - [ ] 최종 결과를 공유했고, 필요한 사용자 확인을 문서화된 workflow checkpoint 기준으로 기록함
84
+ - [ ] 모든 태스크가 `[DONE]`이며, 각 태스크의 `Acceptance` 검증 및 `Checklist` 체크 완료 <!-- lee-spec-kit:completion:all-tasks -->
85
+ - [ ] 테스트 실행 및 통과 (아래에 명령어/결과 기록) <!-- lee-spec-kit:completion:tests -->
86
+ - [ ] 최종 결과를 공유했고, 필요한 사용자 확인을 문서화된 workflow checkpoint 기준으로 기록함 <!-- lee-spec-kit:completion:final-outcome -->
87
87
 
88
88
  ### 테스트 실행 기록
89
89