phasegate 0.283.0 → 0.335.0
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 +16 -0
- package/docs/ADR/017-warning-severity-aggregation.md +17 -0
- package/docs/ADR/038-config-state-operation-permission-policy.md +78 -0
- package/docs/ADR/039-hook-observable-state-as-authorization-unit.md +74 -0
- package/docs/ADR/040-quick-mode-config-via-preset-resolution.md +66 -0
- package/docs/guide/cli-reference.md +89 -7
- package/docs/guide/configuration.md +43 -2
- package/docs/guide/layer-model.md +2 -0
- package/docs/guide/quick-vs-full-mode.md +63 -3
- package/docs/guide/troubleshooting.md +37 -0
- package/docs/templates/agent-context/CLAUDE.md.template.md +6 -6
- package/package.json +2 -2
- package/scripts/harness/agent-integration/application/dto/handle-pre-tool-use-dto.ts +5 -1
- package/scripts/harness/agent-integration/application/usecases/handle-pre-tool-use-usecase.ts +108 -20
- package/scripts/harness/agent-integration/domain/services/bash-write-target-extractor.ts +215 -5
- package/scripts/harness/agent-integration/domain/value-objects/protected-file-list.ts +5 -0
- package/scripts/harness/agent-integration/infrastructure/adapters/file-system-full-mode-session-query-adapter.ts +75 -23
- package/scripts/harness/agent-integration/infrastructure/adapters/harness-config-config-query-adapter.ts +18 -3
- package/scripts/harness/agent-integration/infrastructure/adapters/quick-mode-full-mode-requirement-adapter.ts +15 -1
- package/scripts/harness/agent-integration/presentation/pre-tool-use-hook.ts +57 -9
- package/scripts/harness/ci-governance/application/dto/scaffold-inception-input.ts +9 -0
- package/scripts/harness/ci-governance/application/dto/scaffold-inception-output.ts +13 -0
- package/scripts/harness/ci-governance/application/usecases/list-templates-usecase.ts +30 -0
- package/scripts/harness/ci-governance/application/usecases/scaffold-inception-usecase.ts +63 -0
- package/scripts/harness/ci-governance/application/usecases/show-template-usecase.ts +39 -0
- package/scripts/harness/ci-governance/composition-root.ts +57 -5
- package/scripts/harness/ci-governance/domain/ports/inception-doc-writer-port.ts +19 -0
- package/scripts/harness/ci-governance/domain/ports/inception-template-repository-port.ts +16 -0
- package/scripts/harness/ci-governance/domain/ports/template-catalog-port.ts +23 -0
- package/scripts/harness/ci-governance/domain/services/claude-md-composer.ts +20 -11
- package/scripts/harness/ci-governance/domain/value-objects/inception-doc-kind.ts +109 -0
- package/scripts/harness/ci-governance/domain/value-objects/template-catalog-entry.ts +53 -0
- package/scripts/harness/ci-governance/domain/value-objects/template-name.ts +50 -0
- package/scripts/harness/ci-governance/infrastructure/adapters/file-system-inception-doc-writer-adapter.ts +42 -0
- package/scripts/harness/ci-governance/infrastructure/adapters/file-system-inception-template-repository-adapter.ts +32 -0
- package/scripts/harness/ci-governance/infrastructure/adapters/file-system-template-catalog-adapter.ts +60 -0
- package/scripts/harness/ci-governance/presentation/handlers/check-repetition-handler.ts +10 -2
- package/scripts/harness/ci-governance/presentation/handlers/scaffold-inception-handler.ts +101 -0
- package/scripts/harness/ci-governance/presentation/handlers/templates-handler.ts +103 -0
- package/scripts/harness/config-foundation/domain/harness-config.ts +12 -0
- package/scripts/harness/config-foundation/infrastructure/presets/minimal.json +3 -3
- package/scripts/harness/config-foundation/infrastructure/presets/standard.json +3 -3
- package/scripts/harness/config-foundation/infrastructure/presets/strict.json +3 -3
- package/scripts/harness/config-foundation/infrastructure/schemas/harness-config-v2.schema.json +44 -1
- package/scripts/harness/config-foundation/infrastructure/schemas/harness-config-v3.schema.json +42 -1
- package/scripts/harness/harness-api/domain/services/command-dispatch-service.ts +12 -3
- package/scripts/harness/harness-api/domain/value-objects/ci-check-result.ts +2 -22
- package/scripts/harness/harness-api/domain/value-objects/known-harness-commands.ts +3 -1
- package/scripts/harness/harness-error/application/dto/create-harness-error-input.ts +3 -1
- package/scripts/harness/harness-error/application/dto/harness-error-contract.ts +3 -1
- package/scripts/harness/harness-error/application/mappers/harness-error-contract-mapper.ts +9 -17
- package/scripts/harness/harness-error/application/usecases/create-harness-error-use-case.ts +7 -7
- package/scripts/harness/harness-error/domain/services/harness-error-factory.ts +30 -33
- package/scripts/harness/harness-error/domain/value-objects/error-definition.ts +28 -17
- package/scripts/harness/harness-error/domain/value-objects/harness-error.ts +30 -9
- package/scripts/harness/harness-error/domain/value-objects/remediation-type.ts +30 -0
- package/scripts/harness/harness-error/infrastructure/registry/l2-error-definitions.ts +44 -29
- package/scripts/harness/harness-error/infrastructure/registry/l3-error-definitions.ts +44 -27
- package/scripts/harness/harness-error/infrastructure/registry/l4-error-definitions.ts +47 -32
- package/scripts/harness/installation/application/checks/claude-context-missing-check.ts +13 -7
- package/scripts/harness/installation/application/checks/config-status-check.ts +52 -0
- package/scripts/harness/installation/application/checks/husky-pre-commit-missing-check.ts +6 -0
- package/scripts/harness/installation/application/ports/config-status-probe-port.ts +9 -0
- package/scripts/harness/installation/application/usecases/run-doctor-diagnostics.ts +30 -8
- package/scripts/harness/installation/application/usecases/run-install.ts +44 -11
- package/scripts/harness/installation/application/usecases/run-reconcile.ts +44 -11
- package/scripts/harness/installation/composition-root.ts +13 -3
- package/scripts/harness/installation/domain/check-id.ts +2 -0
- package/scripts/harness/installation/domain/config-status.ts +17 -0
- package/scripts/harness/installation/domain/ports/heuristic-check.ts +10 -1
- package/scripts/harness/installation/infrastructure/adapters/config-status-probe-adapter.ts +79 -0
- package/scripts/harness/installation/presentation/cli/doctor-handler.ts +6 -1
- package/scripts/harness/installation/presentation/formatters/diagnostic-report-formatter.ts +19 -5
- package/scripts/harness/integrations/pre-commit.ts +17 -3
- package/scripts/harness/main.ts +159 -21
- package/scripts/harness/phase-dependency-model/application/services/evidence-bundle-assembler.ts +2 -1
- package/scripts/harness/phase-dependency-model/domain/ports/plan-document-reader-port.ts +12 -0
- package/scripts/harness/phase-dependency-model/infrastructure/filesystem/markdown-plan-document-reader.ts +64 -33
- package/scripts/harness/phase2-extensions/presentation/handlers/check-freshness-handler.ts +17 -9
- package/scripts/harness/quick-mode/application/ports/file-existence-port.ts +15 -0
- package/scripts/harness/quick-mode/application/usecases/classify-change-category-usecase.ts +60 -22
- package/scripts/harness/quick-mode/composition-root.ts +25 -15
- package/scripts/harness/quick-mode/domain/errors/quick-mode-config-error.ts +19 -0
- package/scripts/harness/quick-mode/domain/services/quick-mode-judgment-engine.ts +116 -18
- package/scripts/harness/quick-mode/domain/value-objects/category-override-rules.ts +147 -0
- package/scripts/harness/quick-mode/domain/value-objects/change-category.ts +33 -0
- package/scripts/harness/quick-mode/domain/value-objects/quick-mode-config.ts +31 -10
- package/scripts/harness/quick-mode/index.ts +7 -1
- package/scripts/harness/quick-mode/infrastructure/adapters/fs-file-existence-adapter.ts +38 -0
- package/scripts/harness/quick-mode/infrastructure/adapters/harness-config-quick-mode-config-adapter.ts +83 -32
- package/scripts/harness/skill-quality/infrastructure/adapters/file-system-requirement-test-matrix-adapter.ts +51 -8
- package/scripts/harness/skill-quality/presentation/handlers/check-coverage-handler.ts +13 -6
- package/scripts/harness/traceability-model/domain/value-objects/work-item-frontmatter.ts +5 -1
- package/scripts/harness/traceability-model/infrastructure/gateways/file-system-work-item-identity-gateway.ts +6 -1
- package/scripts/harness/traceability-model/infrastructure/gateways/file-system-work-item-status-gateway.ts +15 -2
- package/scripts/harness/validator-system/application/use-cases/aggregate-validation-results-usecase.ts +11 -14
- package/scripts/harness/validator-system/application/use-cases/run-l3-validators-usecase.ts +8 -0
- package/scripts/harness/validator-system/domain/services/effective-severity-policy.ts +39 -0
- package/scripts/harness/validator-system/domain/value-objects/consistency-report.ts +6 -4
- package/scripts/harness/validator-system/domain/value-objects/drift-report.ts +12 -7
- package/scripts/harness/validator-system/domain/value-objects/validation-result.ts +11 -3
- package/scripts/harness/validator-system/infrastructure/adapters/file-system-security-pattern-scanner-adapter.ts +20 -17
- package/scripts/harness/validator-system/infrastructure/adapters/phase-dependency-phase-gate-policy-adapter.ts +35 -14
- package/scripts/harness/validator-system/infrastructure/adapters/traceability-metadata-policy-adapter.ts +13 -8
- package/scripts/harness/validator-system/presentation/formatters/agent-validation-result-formatter.ts +19 -10
- package/skills/product-architect/SKILL.md +19 -0
- package/skills/quick-implementor/SKILL.md +19 -0
- package/skills/story-mapper/SKILL.md +11 -0
- package/skills/story-writer/SKILL.md +11 -0
- package/skills/unit-designer/SKILL.md +11 -0
- package/templates/product_overview.template.md +85 -0
- package/templates/product_overview_plan.template.md +55 -0
- package/templates/story_mapping_plan.template.md +61 -0
- package/templates/story_writer_plan.template.md +61 -0
- package/templates/unit_design_plan.template.md +63 -0
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
# ストーリーマッピング計画
|
|
2
|
+
|
|
3
|
+
> **スキル**: `story-mapper` Phase 1(計画)
|
|
4
|
+
> **成果物**: `docs/product/user_story_mapping.md`(Phase 2 で作成)
|
|
5
|
+
> **入力**: `docs/product/user_stories.md`
|
|
6
|
+
> **作成日**: <YYYY-MM-DD>
|
|
7
|
+
|
|
8
|
+
このファイルは `phasegate scaffold-inception --kind story-mapping-plan --apply`
|
|
9
|
+
が生成した雛形です。TODO を実体で埋めてください。
|
|
10
|
+
**QA セクションの `[Answer]` は人間が記入するもので、AI が埋めてはいけません。**
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## 1. スコープ
|
|
15
|
+
|
|
16
|
+
- TODO: 全ストーリー数
|
|
17
|
+
- TODO: MVP 選定の対象業務プロセス
|
|
18
|
+
|
|
19
|
+
## 2. MVP選定基準
|
|
20
|
+
|
|
21
|
+
- TODO: 基盤 MVP と業務プロセス MVP の分類基準
|
|
22
|
+
- TODO: MVP / Post-MVP 判定の考え方
|
|
23
|
+
|
|
24
|
+
## 3. MVPシナリオ(ドラフト)
|
|
25
|
+
|
|
26
|
+
- TODO: 想定されるメインユーザーフロー
|
|
27
|
+
- TODO: 最小限の業務プロセス単位
|
|
28
|
+
|
|
29
|
+
## 4. ストーリー分類(ドラフト)
|
|
30
|
+
|
|
31
|
+
| ストーリーID | 概要 | MVP候補 | 分類理由 |
|
|
32
|
+
|------------|------|---------|---------|
|
|
33
|
+
| TODO | TODO | TODO | TODO |
|
|
34
|
+
|
|
35
|
+
## 5. QA(不明点・確認事項)
|
|
36
|
+
|
|
37
|
+
### [Question] Q1: <質問タイトル>
|
|
38
|
+
|
|
39
|
+
<質問の詳細と背景>
|
|
40
|
+
|
|
41
|
+
**推奨案:** <AI の推奨案>
|
|
42
|
+
|
|
43
|
+
> 下の `[Answer]` 行の直後に **人間が** 回答を記入してください。
|
|
44
|
+
> 空欄のままだと `planningMode: "embedded-qa"` のフェーズゲートは通りません(意図した挙動です)。
|
|
45
|
+
|
|
46
|
+
[Answer]
|
|
47
|
+
|
|
48
|
+
## 6. 前提条件・リスク
|
|
49
|
+
|
|
50
|
+
- TODO: 前提条件
|
|
51
|
+
- TODO: リスクと対応方針
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
## フェーズゲートとの関係
|
|
56
|
+
|
|
57
|
+
- `planningMode.default: "interactive"`(既定)では、`## 5. QA(不明点・確認事項)`
|
|
58
|
+
という **QA セクション見出しの存在** が Level-1 ゲート通過条件です。
|
|
59
|
+
- `planningMode.default: "embedded-qa"` では、`[Question]` と `[Answer]` の
|
|
60
|
+
**個数一致かつ [Answer] に本文があること** が追加で要求されます。
|
|
61
|
+
この雛形のままではゲートを通りません(人間の回答が必要)。これは意図した挙動です。
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
# ユーザーストーリー作成計画
|
|
2
|
+
|
|
3
|
+
> **スキル**: `story-writer` Phase 1(計画)
|
|
4
|
+
> **成果物**: `docs/product/user_stories.md`(Phase 2 で作成)
|
|
5
|
+
> **入力**: `docs/product/product_overview.md`
|
|
6
|
+
> **作成日**: <YYYY-MM-DD>
|
|
7
|
+
|
|
8
|
+
このファイルは `phasegate scaffold-inception --kind story-writer-plan --apply`
|
|
9
|
+
が生成した雛形です。TODO を実体で埋めてください。
|
|
10
|
+
**QA セクションの `[Answer]` は人間が記入するもので、AI が埋めてはいけません。**
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## 1. スコープ
|
|
15
|
+
|
|
16
|
+
- TODO: 対象の要求文書
|
|
17
|
+
- TODO: 想定される Epic 一覧
|
|
18
|
+
|
|
19
|
+
## 2. アクター分析
|
|
20
|
+
|
|
21
|
+
- TODO: 特定されたアクター(ロール)一覧
|
|
22
|
+
|
|
23
|
+
## 3. ストーリー作成方針
|
|
24
|
+
|
|
25
|
+
- TODO: ストーリーの粒度方針
|
|
26
|
+
|
|
27
|
+
## 4. ストーリー一覧(ドラフト)
|
|
28
|
+
|
|
29
|
+
Epic 別のストーリー ID・概要の一覧(本文はまだ書かない)。
|
|
30
|
+
|
|
31
|
+
| Epic | ストーリーID | 概要 |
|
|
32
|
+
|------|------------|------|
|
|
33
|
+
| TODO | TODO | TODO |
|
|
34
|
+
|
|
35
|
+
## 5. QA(不明点・確認事項)
|
|
36
|
+
|
|
37
|
+
### [Question] Q1: <質問タイトル>
|
|
38
|
+
|
|
39
|
+
<質問の詳細と背景>
|
|
40
|
+
|
|
41
|
+
**推奨案:** <AI の推奨案>
|
|
42
|
+
|
|
43
|
+
> 下の `[Answer]` 行の直後に **人間が** 回答を記入してください。
|
|
44
|
+
> 空欄のままだと `planningMode: "embedded-qa"` のフェーズゲートは通りません(意図した挙動です)。
|
|
45
|
+
|
|
46
|
+
[Answer]
|
|
47
|
+
|
|
48
|
+
## 6. 前提条件・リスク
|
|
49
|
+
|
|
50
|
+
- TODO: 前提条件
|
|
51
|
+
- TODO: リスクと対応方針
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
## フェーズゲートとの関係
|
|
56
|
+
|
|
57
|
+
- `planningMode.default: "interactive"`(既定)では、`## 5. QA(不明点・確認事項)`
|
|
58
|
+
という **QA セクション見出しの存在** が Level-1 ゲート通過条件です。
|
|
59
|
+
- `planningMode.default: "embedded-qa"` では、`[Question]` と `[Answer]` の
|
|
60
|
+
**個数一致かつ [Answer] に本文があること** が追加で要求されます。
|
|
61
|
+
この雛形のままではゲートを通りません(人間の回答が必要)。これは意図した挙動です。
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
# Unit設計計画
|
|
2
|
+
|
|
3
|
+
> **スキル**: `unit-designer` Phase 1(計画)
|
|
4
|
+
> **成果物**: `docs/product/units/{unit}_unit.md` / `docs/product/units/integration_contract.md`(Phase 2 で作成)
|
|
5
|
+
> **入力**: `docs/product/user_stories.md` / `docs/product/user_story_mapping.md`
|
|
6
|
+
> **作成日**: <YYYY-MM-DD>
|
|
7
|
+
|
|
8
|
+
このファイルは `phasegate scaffold-inception --kind unit-design-plan --apply`
|
|
9
|
+
が生成した雛形です。TODO を実体で埋めてください。
|
|
10
|
+
**QA セクションの `[Answer]` は人間が記入するもので、AI が埋めてはいけません。**
|
|
11
|
+
|
|
12
|
+
> **パス注記**: 上記の既定パスは `phasegate.config.json` の `paths` 設定で
|
|
13
|
+
> 上書きされている場合、そちらが優先されます。
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## 1. スコープ
|
|
18
|
+
|
|
19
|
+
- TODO: 対象ストーリー数
|
|
20
|
+
- TODO: 分析対象の業務領域
|
|
21
|
+
|
|
22
|
+
## 2. グルーピング方針
|
|
23
|
+
|
|
24
|
+
- TODO: 凝集性の基準
|
|
25
|
+
- TODO: Unit 分割の判断根拠
|
|
26
|
+
|
|
27
|
+
## 3. Unit一覧(ドラフト)
|
|
28
|
+
|
|
29
|
+
| Unit名 | 担当ストーリーID | 責務概要 |
|
|
30
|
+
|--------|----------------|---------|
|
|
31
|
+
| TODO | TODO | TODO |
|
|
32
|
+
|
|
33
|
+
## 4. Unit間依存関係(ドラフト)
|
|
34
|
+
|
|
35
|
+
- TODO: 依存関係図(概要レベル)
|
|
36
|
+
|
|
37
|
+
## 5. QA(不明点・確認事項)
|
|
38
|
+
|
|
39
|
+
### [Question] Q1: <質問タイトル>
|
|
40
|
+
|
|
41
|
+
<質問の詳細と背景>
|
|
42
|
+
|
|
43
|
+
**推奨案:** <AI の推奨案>
|
|
44
|
+
|
|
45
|
+
> 下の `[Answer]` 行の直後に **人間が** 回答を記入してください。
|
|
46
|
+
> 空欄のままだと `planningMode: "embedded-qa"` のフェーズゲートは通りません(意図した挙動です)。
|
|
47
|
+
|
|
48
|
+
[Answer]
|
|
49
|
+
|
|
50
|
+
## 6. 前提条件・リスク
|
|
51
|
+
|
|
52
|
+
- TODO: 前提条件
|
|
53
|
+
- TODO: リスクと対応方針
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
## フェーズゲートとの関係
|
|
58
|
+
|
|
59
|
+
- `planningMode.default: "interactive"`(既定)では、`## 5. QA(不明点・確認事項)`
|
|
60
|
+
という **QA セクション見出しの存在** が Level-1 ゲート通過条件です。
|
|
61
|
+
- `planningMode.default: "embedded-qa"` では、`[Question]` と `[Answer]` の
|
|
62
|
+
**個数一致かつ [Answer] に本文があること** が追加で要求されます。
|
|
63
|
+
この雛形のままではゲートを通りません(人間の回答が必要)。これは意図した挙動です。
|