phasegate 0.72.0 → 0.73.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
CHANGED
|
@@ -7,6 +7,21 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [0.73.0] - 2026-04-22
|
|
11
|
+
|
|
12
|
+
### Added
|
|
13
|
+
|
|
14
|
+
- ISSUE-007 Wave 8 — `phasegate.config.json` の `project.paths` セクションを schema (`harness-config-v2.schema.json`) に追加。`project.paths.source` (array, minItems: 1) で phase-gate の監視ディレクトリを override できるようになった。`project.paths.docs.construction` / `project.paths.docs.inception` も optional で指定可能。
|
|
15
|
+
- IT-CF-PP-001a..d を追加(`project.paths.source` の valid/invalid パターン)。
|
|
16
|
+
|
|
17
|
+
### Fixed
|
|
18
|
+
|
|
19
|
+
- ISSUE-007 Wave 8 dogfood で発覚した retrofit blocker を解消 — 従来は adapter (`harness-config-config-query-adapter.ts`) が `config.project?.paths?.source` を読む設計だったにも関わらず schema がそれを additionalProperties として reject していたため、`src/` 配下を使う一般 Node.js プロジェクトでは phase-gate が実質無効化されていた。
|
|
20
|
+
|
|
21
|
+
### Retrofit ガイド追補
|
|
22
|
+
|
|
23
|
+
- `docs/guide/retrofit-adoption.md` に「source path の指定」セクションを追加。`src/` 系プロジェクトでは `project.paths.source: ["src"]` の明示が必須である旨を記載。
|
|
24
|
+
|
|
10
25
|
## [0.72.0] - 2026-04-22
|
|
11
26
|
|
|
12
27
|
### Changed
|
|
@@ -63,6 +63,42 @@ grandfather をオフにしたい場合のみ `phasegate.config.json` に明示:
|
|
|
63
63
|
`path` も省略時は `.phasegate/baseline.json` が使われる。retrofit 用途では
|
|
64
64
|
この既定値のまま触らないのが最短。
|
|
65
65
|
|
|
66
|
+
### source path の指定(v0.73.0 以降、`src/` 系 retrofit に必須)
|
|
67
|
+
|
|
68
|
+
pre-tool-use hook の phase-gate は `project.paths.source` に記載されたディレクトリ
|
|
69
|
+
配下のファイルのみを監視対象にする。既定値は `["scripts/harness"]` で、これは
|
|
70
|
+
phasegate 本体のレイアウトに合わせたもの。**一般的な Node.js プロジェクト
|
|
71
|
+
(`src/` 配下) では必ず上書きすること**。
|
|
72
|
+
|
|
73
|
+
```json
|
|
74
|
+
{
|
|
75
|
+
"project": {
|
|
76
|
+
"name": "your-project",
|
|
77
|
+
"preset": "standard",
|
|
78
|
+
"paths": {
|
|
79
|
+
"source": ["src"]
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
monorepo など複数ディレクトリを持つ場合は配列で列挙:
|
|
86
|
+
|
|
87
|
+
```json
|
|
88
|
+
{
|
|
89
|
+
"project": {
|
|
90
|
+
"paths": {
|
|
91
|
+
"source": ["apps/web/src", "apps/api/src", "packages/shared/src"]
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
この設定を忘れると、phase-gate は `scripts/harness/` 配下しか見ないため、
|
|
98
|
+
retrofit 対象の新規コード作成が block されず、結果として **phasegate が
|
|
99
|
+
無効化された運用** になってしまう(ISSUE-007 Wave 8 で schema 上 overridable
|
|
100
|
+
になるまで、この設定は config validator で拒否されていた)。
|
|
101
|
+
|
|
66
102
|
---
|
|
67
103
|
|
|
68
104
|
## Step 2: 既存コードを baseline に登録
|
package/package.json
CHANGED
package/scripts/harness/config-foundation/infrastructure/schemas/harness-config-v2.schema.json
CHANGED
|
@@ -32,6 +32,35 @@
|
|
|
32
32
|
"standard",
|
|
33
33
|
"strict"
|
|
34
34
|
]
|
|
35
|
+
},
|
|
36
|
+
"paths": {
|
|
37
|
+
"type": "object",
|
|
38
|
+
"additionalProperties": false,
|
|
39
|
+
"properties": {
|
|
40
|
+
"source": {
|
|
41
|
+
"type": "array",
|
|
42
|
+
"items": {
|
|
43
|
+
"type": "string",
|
|
44
|
+
"minLength": 1
|
|
45
|
+
},
|
|
46
|
+
"minItems": 1,
|
|
47
|
+
"uniqueItems": true
|
|
48
|
+
},
|
|
49
|
+
"docs": {
|
|
50
|
+
"type": "object",
|
|
51
|
+
"additionalProperties": false,
|
|
52
|
+
"properties": {
|
|
53
|
+
"construction": {
|
|
54
|
+
"type": "string",
|
|
55
|
+
"minLength": 1
|
|
56
|
+
},
|
|
57
|
+
"inception": {
|
|
58
|
+
"type": "string",
|
|
59
|
+
"minLength": 1
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
35
64
|
}
|
|
36
65
|
}
|
|
37
66
|
},
|