intent-planner 0.13.1 → 0.14.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/package.json +9 -5
- package/templates/en/claude/skills/CONTRACT.md +1 -0
- package/templates/en/claude/skills/intent-compass/rules/constraint-surfacing.md +1 -1
- package/templates/en/claude/skills/intent-discover/SKILL.md +5 -5
- package/templates/en/claude/skills/intent-discover/rules/drift-terrain.md +9 -9
- package/templates/en/claude/skills/intent-export-cc-sdd/rules/drift-export-check.md +1 -1
- package/templates/en/claude/skills/intent-export-openspec/rules/drift-export-check.md +1 -1
- package/templates/en/claude/skills/intent-improve/SKILL.md +2 -2
- package/templates/en/claude/skills/intent-improve/rules/improve-axes.md +1 -1
- package/templates/en/claude/skills/intent-status/SKILL.md +42 -18
- package/templates/en/claude/skills/intent-writeback/SKILL.md +3 -3
- package/templates/en/claude/skills/intent-writeback/rules/writeback-protocol.md +11 -5
- package/templates/en/codex/skills/CONTRACT.md +1 -0
- package/templates/en/codex/skills/intent-compass/rules/constraint-surfacing.md +1 -1
- package/templates/en/codex/skills/intent-discover/SKILL.md +5 -5
- package/templates/en/codex/skills/intent-discover/rules/drift-terrain.md +9 -9
- package/templates/en/codex/skills/intent-export-cc-sdd/rules/drift-export-check.md +1 -1
- package/templates/en/codex/skills/intent-export-openspec/rules/drift-export-check.md +1 -1
- package/templates/en/codex/skills/intent-improve/SKILL.md +2 -2
- package/templates/en/codex/skills/intent-improve/rules/improve-axes.md +1 -1
- package/templates/en/codex/skills/intent-status/SKILL.md +42 -18
- package/templates/en/codex/skills/intent-writeback/SKILL.md +3 -3
- package/templates/en/codex/skills/intent-writeback/rules/writeback-protocol.md +11 -5
- package/templates/en/intent/README.md +1 -1
- package/templates/en/intent/constraint-starters.md +1 -1
- package/templates/en/intent/deltas.md +9 -5
- package/templates/en/intent/drift-log.md +1 -1
- package/templates/en/intent/drift-patterns.md +5 -5
- package/templates/en/intent/glossary.md +1 -1
- package/templates/en/intent/mode.md +1 -1
- package/templates/ja/claude/skills/CONTRACT.md +1 -0
- package/templates/ja/claude/skills/intent-compass/rules/constraint-surfacing.md +1 -1
- package/templates/ja/claude/skills/intent-discover/SKILL.md +5 -5
- package/templates/ja/claude/skills/intent-discover/rules/drift-terrain.md +10 -10
- package/templates/ja/claude/skills/intent-export-cc-sdd/rules/drift-export-check.md +1 -1
- package/templates/ja/claude/skills/intent-export-openspec/rules/drift-export-check.md +1 -1
- package/templates/ja/claude/skills/intent-improve/SKILL.md +2 -2
- package/templates/ja/claude/skills/intent-improve/rules/improve-axes.md +1 -1
- package/templates/ja/claude/skills/intent-status/SKILL.md +42 -18
- package/templates/ja/claude/skills/intent-writeback/SKILL.md +3 -3
- package/templates/ja/claude/skills/intent-writeback/rules/writeback-protocol.md +11 -5
- package/templates/ja/codex/skills/CONTRACT.md +1 -0
- package/templates/ja/codex/skills/intent-compass/rules/constraint-surfacing.md +1 -1
- package/templates/ja/codex/skills/intent-discover/SKILL.md +5 -5
- package/templates/ja/codex/skills/intent-discover/rules/drift-terrain.md +10 -10
- package/templates/ja/codex/skills/intent-export-cc-sdd/rules/drift-export-check.md +1 -1
- package/templates/ja/codex/skills/intent-export-openspec/rules/drift-export-check.md +1 -1
- package/templates/ja/codex/skills/intent-improve/SKILL.md +2 -2
- package/templates/ja/codex/skills/intent-improve/rules/improve-axes.md +1 -1
- package/templates/ja/codex/skills/intent-status/SKILL.md +42 -18
- package/templates/ja/codex/skills/intent-writeback/SKILL.md +3 -3
- package/templates/ja/codex/skills/intent-writeback/rules/writeback-protocol.md +11 -5
- package/templates/ja/intent/README.md +1 -1
- package/templates/ja/intent/constraint-starters.md +1 -1
- package/templates/ja/intent/deltas.md +9 -5
- package/templates/ja/intent/drift-log.md +1 -1
- package/templates/ja/intent/drift-patterns.md +5 -5
- package/templates/ja/intent/glossary.md +1 -1
- package/templates/ja/intent/mode.md +1 -1
|
@@ -112,7 +112,7 @@ coherence 軸の評価と並んで、実装後の振り返り(realignment)
|
|
|
112
112
|
- 照合に使うのは題材のみ。トークン消費量・git 差分・実行時メトリクスは読まない。
|
|
113
113
|
|
|
114
114
|
3. **該当型があるとき(気づきの提示・ログには書かない)**
|
|
115
|
-
-
|
|
115
|
+
- 利用者に指図せず気づかせる言い方で名指しする。例:「この振り返りの進め方は `<id>` に当てはまるかもしれません — これがコンテキストを食っている可能性があります」。
|
|
116
116
|
- その型の「もし意図せず効いていれば」の軽い代替(薄い入口 / JIT pull / 入力限定)を、**任意の選択肢**として添える。例:「もし意図せず効いていれば、<軽い代替> もあります(判断はお任せします)」。
|
|
117
117
|
- **矯正・指図をしない**。命令形・断定で言わず、気づきの提示に留める。大量スキルの導入・全文ロード等は正当な高コスト選択でありうるので、コストを食う選択を不要と断じない。判断は利用者に委ねる。
|
|
118
118
|
- **どのログにも append しない**(coherence 逸脱の append 手順・集計を流用しない)。
|
|
@@ -14,6 +14,11 @@ argument-hint: なし
|
|
|
14
14
|
- 孤児 spec 検査: `.kiro/specs/` に進行/完了している spec があるのに、`active/` のどの packet・`deltas.md` のどの delta ともテキスト照合できない場合、「起草されていない実装の可能性(Packet を経ずに実装された疑い)」として詳細に併記している(断定せず候補提示。照合不能は常態として誤検知を許容し、次の一手の first-match は奪わない。`.kiro/specs/` 不在の環境ではこの検査を行わない)
|
|
15
15
|
- intent-tree 起票漏れ検査(discover スキップ): `.kiro/specs/` に設計/実装が進んだ spec があるのに、`.intent/intent-tree.md` の **L0〜L4 の見出し・本文**(O#/C#/B#/P# のような ID アンカーは intent-planner に存在しないためテキスト照合のみで判定する)のどれともテキスト照合できない場合、「intent-tree に起票されていない実装の可能性(discover スキップ)」として詳細に併記している(断定せず候補提示。照合不能は常態として誤検知を許容し、次の一手の first-match は奪わない。`.intent/intent-tree.md` 不在または `.kiro/specs/` 不在の環境ではこの検査を行わない)。この起票漏れ(tree 層)・既存の孤児 spec 検査(Packet 層)・writeback 漏れ(下流層)を3階層で棲み分け、同一 spec が複数層に該当する場合は最上流の1層でのみ提示して二重警告を出さない
|
|
16
16
|
- 報告冒頭にミニ工程レール(全 packet を5信号 ✅/🔵/⚪/🔴/◻ で縦に並べ、各行に `[現在の工程 → 次に通る工程]` を併記する)を置き、「いまどの packet が 🔵 今ここで・この後どの工程が残り・どこに ⚪ 残工程 / 🔴 反映漏れがあるか」を一望できるようにしている。内部用語(突合手順・整合検査・enforcement 用語)は冒頭でなく詳細(後段)に退避している
|
|
17
|
+
- 既定出力を3層(既定=今ここ+次の一手1行強調+Candidate Packets 件数/名前+Ice box 案内1行/詳細=折りたたみ位置/オプション=自然言語トリガ時のみ)でスリム化し、次の一手の要約1行は折りたたまず冒頭の目立つ位置に常に強調している
|
|
18
|
+
- 「危険な知らせ」(鮮度警告・packets 整合違反・反映漏れ `🔴`)は**実害がある場面では裸の絵文字でフル表示**したまま保持し(折りたたまない)、折りたたむ詳細側にも「`⚠` N 件あり(詳細参照)」のサマリ1行を残して見落としを防いでいる。凡例・用語説明・0件サマリ等の説明の場面では警告信号を裸でなくインラインコード/語句でトーンダウンし、実害ゼロでびっくりさせない(INV32)
|
|
19
|
+
- `.intent/intent-tree.md` の L4「今後の付加候補」を Read/Glob/Grep のみで読み、`archive/`・`.kiro/specs/` と既存検査(孤児 spec/起票漏れ)と同じテキスト照合手段で突合して未消化(packet 化も実装もされていない)候補を件数+名前で既定に常設表示している(凍結マーク付きは除外。照合不能は誤検知許容・断定しない。L4/archive/specs 不在なら 0 件)
|
|
20
|
+
- 凍結マーク(`Deferred`/`保留`/`当面しない`/条件付き保留 等)の Ice box 候補は既定では本体を出さず案内文1行「凍結中(Ice box): N 件。『icebox も見せて』で表示できます」を併記し、自然言語トリガで件数+名前+凍結理由を展開している(境界曖昧は Candidate 側・断定しない)
|
|
21
|
+
- 見せ方(出力構成)だけを変え、「次の一手」の first-match 選定ロジックは変えていない(どの一手を推すかは非接触)
|
|
17
22
|
- 「次の一手」を `rules/decision-table.md` の first-match でちょうど1つ推奨し、推奨理由と判断根拠(どの成果物のどの状態に基づくか)を併記している
|
|
18
23
|
- 推奨候補を discover / compass / packets / export / validate / improve / writeback / 「アクション不要」の中から選定している
|
|
19
24
|
- mode.md の enforcement が remind または gate のとき intent-check による鮮度検査を行い、違反(判定行の `result=stale` または `pending` が 1 以上)の検出時は現在地サマリに intent-check の stdout を引用した鮮度警告を併記している(off・未記載・不正値・実行不可のときは現行どおり警告を出さない)
|
|
@@ -21,7 +26,7 @@ argument-hint: なし
|
|
|
21
26
|
- intent-compass.md の節更新日(`Updated (Invariants):` / `Updated (Decision Rules):`)と active/ 配下 packet の `updated_at` を Read/Glob/Grep のみで照合し、「compass 更新後に未追随」の packet 件数が閾値以上のとき `/intent-validate` を頃合いとして推奨し(決定表 row 12)、その根拠(どの節が更新後・未追随が何件か)を併記している。確定診断はせず概算にとどめ、閾値未満では提案しない(read-only 維持)
|
|
22
27
|
- `.intent/milestones.md` の各 event を Read/Glob/Grep のみで読み、event 記録日時より後に「compass の `Updated (Decision Rules):` 反映打刻」または「deltas の該当 Decision 参照」のいずれも無いものを「未消化 milestone(記録済みだが対応する見直しが未処理)」として把握し、残課題として現在地報告に併記している(Step 3.6 と同型の ISO 8601 辞書順・両端実打刻ペアのみの比較。断定せず候補提示。`.intent/milestones.md` 不在時はこの検査を省略する。read-only 維持)
|
|
23
28
|
- ファイルの作成・変更・削除を一切行っていない(read-only)
|
|
24
|
-
- 出力中の主要術語に、その意味の一行説明を `術語(説明)`
|
|
29
|
+
- 出力中の主要術語に、その意味の一行説明を `術語(説明)` の形で併記している(冒頭=初出・表見出しのみ/詳細=毎回の2層。用語説明一覧は維持し全廃しない)
|
|
25
30
|
|
|
26
31
|
## Execution Steps
|
|
27
32
|
|
|
@@ -73,19 +78,32 @@ argument-hint: なし
|
|
|
73
78
|
- 複数候補の併記はしない(理由と根拠は併記する)。推奨が複数見える曖昧なケースも、決定表の優先順位で機械的に1つへ畳む。
|
|
74
79
|
|
|
75
80
|
### Step 5: 報告する
|
|
76
|
-
|
|
81
|
+
報告は**読み手が「いまどこで、次に何をするか」に最短で辿り着ける順序**で構成し、既定出力をスリム化する。出力は **既定(折りたたまない)/詳細(折りたたみ位置)/オプション(自然言語トリガ時のみ)** の3層で構成する。既定には要点(①〜④)と「危険な知らせ」だけを置き、内部用語(突合手順・整合検査・enforcement 用語など)や検査の詳細は ⑤ 詳細へ退避する。
|
|
82
|
+
|
|
83
|
+
**【既定】折りたたまない要点**
|
|
77
84
|
|
|
78
85
|
- ① **工程レール(冒頭ミニレール)**: 全 packet を縦に並べ、各 packet に5信号(✅ 反映済 / 🔵 今ここ / ⚪ 未着手 / 🔴 反映漏れ / ◻ 統合済)のいずれか1つを付け、**続けて `[現在の工程 → 次に通る工程]` を併記する**。信号の判定も工程併記も overview の `progress-readout.md`「工程レール」と同じ規律(5信号は `state` × export-log の行有無 × deltas の対応エントリ有無を first-match で突合、工程併記は packet `state` を固定パイプライン `discover→compass→packets→export→実装→verify→writeback` 上の位置として読み替え。いずれも算出・推論しない)に従う。例: `P2 🔵 今ここ [implementing → 次: verify→writeback]` / `P3 ⚪ 未着手 [ready → 次: export→実装]`。これにより**「P いくつが今ここで・この後どの工程が残り・どこに ⚪ 残工程 / 🔴 反映漏れがあるか」を1枚で一望**させる。各信号は用語一覧に従い意味を併記する。レールは read-only mirror であり、status は何も変更しない。
|
|
79
|
-
- ② **次の一手(ちょうど1つ・1
|
|
80
|
-
- ③
|
|
81
|
-
- ④
|
|
86
|
+
- ② **次の一手(ちょうど1つ・1行・常に強調)**: スキル名 or「アクション不要」を**要約1行で**冒頭の目立つ位置に示す(既定をスリム化しても**この1行は折りたたまず常に出す**)。続けて推奨理由 + 判断根拠(どの成果物のどの状態に基づくか)を簡潔に添える。決定表(`rules/decision-table.md`)の first-match 結果を、内部の行番号でなく**人間が次に取る行動**として翻訳して提示する(**見せ方を変えるだけで、どの一手を推すかの first-match 選定ロジックは変えない**)。
|
|
87
|
+
- ③ **Candidate Packets(packet 化されていない候補プール)**: `.intent/intent-tree.md` の L4「今後の付加候補」を **Read / Glob / Grep のみ**で読み、`.intent/packets/archive/` と `.kiro/specs/` を Step 2 の孤児 spec / 起票漏れ検査と同じテキスト照合手段で突合して、**未消化(packet 化も実装もされていない)候補**に絞り、**件数+名前**の箇条書きで既定に出す。照合不能は常態として誤検知を許容し、断定せず候補提示にとどめる。**凍結マーク付きの候補(後述 Ice box)は件数+名前から除外する**。L4/archive/`.kiro/specs/` が不在なら 0 件として扱い、エラーにしない。
|
|
88
|
+
- ④ **Ice box 案内(凍結候補の存在告知・1行)**: 凍結マーク(`Deferred` / `保留` / `当面しない` / 条件付き保留 等)を **Read / Grep のみ**でテキスト照合した凍結候補は、**既定では本体を出さず**、案内文1行 **「凍結中(Ice box): N 件。『icebox も見せて』で表示できます」** を既定に常時併記する(0 件なら案内も省いて冒頭をさらに軽くする)。境界が曖昧な候補(マーク無しだが実質塩漬け)は凍結とみなさず ③ Candidate 側に出す(断定しない)。
|
|
89
|
+
- ⊕ **危険な知らせ(既定に必ずフル表示・折りたたまない)**: **鮮度警告(Step 3)・packets 整合違反(index ↔ active/ の乖離・done / superseded_by 滞留・export-log 最新行 packet の active/ 不在)・反映漏れ 🔴** の3種は見落とすと危険なため、**既定にフル表示したまま保持し、⑤ 詳細へ折りたたまない**。enforcement / drift-watch が off・未記載のときは現行どおり鮮度警告を出さない(既存挙動を変えない)。**警告信号の見た目の出し分け(INV32)**: ここ(実害がある場面)では `🔴` 等を**裸の絵文字で目立たせる**が、凡例・用語説明・0件サマリ・空レール等の**説明の場面では裸で出さずインラインコード(`🔴`)/語句(「反映漏れ」)でトーンダウン**する。0件のときは「反映漏れなし」を語句で示し、裸の警告絵文字を出さない(警告の語義は保つ)。
|
|
90
|
+
|
|
91
|
+
**【詳細】折りたたみ位置へ退避**
|
|
92
|
+
|
|
93
|
+
- ⑤ **詳細(折りたたみ位置)**: ① の各信号の根拠となった成果物ごとの 有/無/未記入 と特記事項、現行 Source Packet(export-log 最新行に基づく packet 名)と当該 packet のディレクトリ(`.intent/cc-sdd/<スラッグ>/`)の有無。⊕ で既定に出した危険な知らせは、ここにも **「⚠ N 件あり(詳細参照)」のサマリ1行**を残して詳細本体と接続する(既定からは消さない)。index 不在の場合は再生成の案内を、Step 3.5 で drift-watch が `on` のときは drift-log の軽い集計(`caught N / missed N / false-positive N / unjudged N`)を、Step 3.6 で conformance 陳腐化の頃合い(未追随件数が閾値以上)を検出した場合は「どの compass 節が更新後・未追随 packet が何件か」の根拠を、ここに1ブロック併記する。Step 2 で intent-tree 起票漏れ(discover スキップの疑い)を検出した場合は、その spec 名と「設計/実装が進んでいますが、`.intent/intent-tree.md` の L0〜L4 のどのノードともテキスト照合できませんでした。discover フェーズそのものをスキップした疑いがあります。`/intent-discover` で intent-tree(L0〜L4)へ起票し、その後 `/intent-packets` で Packet を起こし、`/intent-writeback` で実装の現実を canonical へ戻すのが順序です」という案内を、断定を避けた候補提示の温度で1ブロック併記する(次の一手の決定表結果は変えない)。Step 2 で孤児 spec(起草されていない実装の疑い)を検出した場合は、その spec 名と「Packet を経ずに実装された疑いがあります。事後でも `/intent-packets` で Packet を起こし(未確定の仕様は Open Questions / Deferred として明示)、その後 `/intent-writeback` で実装の現実を canonical へ戻すのが順序です」という案内を、断定を避けた候補提示の温度で1ブロック併記する(次の一手の決定表結果は変えない)。**この2検査と writeback 漏れ(鮮度警告)は上流から tree 層 → packet 層 → 下流層の3階層で棲み分け、同一 spec が複数層に該当する場合は最上流の1層でのみ提示して二重警告を出さない**(上流が該当する spec を下流の孤児 spec/鮮度警告で重ねて出さず、`discover → packets → writeback` の段階対処として案内する)。Step 3.7 で未消化 milestone(記録済みだが対応する見直しが未処理の節目イベント)を検出した場合は、その event 名と「節目イベントが記録されていますが、対応する Decision の見直し(Revisit 反映)がまだ消化されていない可能性があります。`/intent-improve` で該当 Decision Rule の `Revisit when` 照合・再提案を確認するのが順序です」という案内を、鮮度警告と同じ位置・温度感で(断定を避けた候補提示の温度で)1ブロック併記する(次の一手の決定表結果は変えない)。
|
|
94
|
+
- ⑥ Open Questions: ユーザー確認が必要な点。確認は自然言語での候補提示にとどめ、次のアクションの判断はユーザーに委ねる(一方向報告)。
|
|
95
|
+
|
|
96
|
+
**【オプション】自然言語トリガ時のみ**
|
|
97
|
+
|
|
98
|
+
- ⑦ **Ice box 展開**: 利用者が自然言語トリガ(「icebox も見せて」等)で要求したときのみ、④ の凍結候補を **件数+名前+凍結理由の短い添え**で展開する。展開も Read / Grep のみの read-only で、status は何も変更しない。
|
|
99
|
+
|
|
82
100
|
- **未記入・不在の表示**: 成果物が未記入・不在のときは、`Intent Tree(やりたいことの階層マップ): 未作成` のように「術語(説明): 状態」の形で、その成果物が**まだ無い/中身が入っていない**ことが術語を知らなくても分かる平易な日本語で示す。整合検査の違反(`superseded_by` 滞留・index との乖離・archive 在中等)も同様に、術語に説明を併記しつつ「何がどう滞留/乖離しているか」を平易な日本語で示す。
|
|
83
101
|
|
|
84
102
|
## 用語の常時併記ルール
|
|
85
103
|
|
|
86
|
-
出力に現れる術語は、下記「用語説明一覧」を参照して `術語(説明)`
|
|
104
|
+
出力に現れる術語は、下記「用語説明一覧」を参照して `術語(説明)` の括弧書き形式で意味を併記する。併記は **冒頭(既定)と詳細(折りたたみ位置)で2層に分ける**。具体的な規約は以下の通り。
|
|
87
105
|
|
|
88
|
-
-
|
|
106
|
+
- **2層併記ルール(冒頭=初出/見出しのみ・詳細=毎回)**: status 出力に現れる intent-planner 固有の術語(成果物名・state 値・検査用語・コマンド名)は、**英語表記のまま正として保ち、訳語に置換しない**。その上で、各術語にはその意味を表す日本語の一行説明を `術語(説明)` の括弧書き形式で併記する。併記の密度は出力の層で分ける: **冒頭(既定のスリムな要点)では併記を初出・表見出しのみに絞る**(冒頭の冗長さを避け「次の一手」を埋もれさせない)。**詳細(折りたたみ位置)では、その術語が出力に現れるたびに毎回併記する**(詳細は状況により出る項目が変わる断片的な報告であり「初出」が安定しないため、毎回その場で意味が分かることを優先する)。用語説明一覧そのものは維持し、術語併記を全廃しない(status-readability の「術語を知らなくても読める」価値は詳細側で保つ)。
|
|
89
107
|
- **冗長回避の運用**: 同一出力内で同じ術語が繰り返し現れて冗長になる場合でも、各項目を**術語のみで放置しない**。一覧・表形式の項目見出しでは括弧書き併記を保ち、本文中の反復言及では文脈で意味が辿れる限り形式を簡潔に整えてよい。形式を整える場合も「術語の意味が辿れる状態」を維持することが条件。
|
|
90
108
|
|
|
91
109
|
### 用語説明一覧
|
|
@@ -114,13 +132,15 @@ status が出力時に参照する術語と一行説明(この一覧はこの
|
|
|
114
132
|
|
|
115
133
|
**工程レール(5信号 + 工程併記)**(packet を `state` × export-log の行有無 × deltas の対応エントリ有無で突合し、first-match で1つ付ける。さらに各行に `[現在の工程 → 次に通る工程]` を併記し、packet `state` を固定パイプライン `discover→compass→packets→export→実装→verify→writeback` 上の位置として読み替える。判定の正本は `rules/decision-table.md` ではなく overview の `progress-readout.md`「工程レール」だが、status の冒頭ミニレールも同じ5信号語彙 + 工程併記を使う)
|
|
116
134
|
|
|
135
|
+
> 凡例の信号は見た目をトーンダウンしてインラインコードで示す(説明の場面で裸の警告色を並べない=INV32)。実際に該当 packet がある実害の場面では INV31 どおり裸の絵文字でフル表示する。
|
|
136
|
+
|
|
117
137
|
| 信号 | 一行説明 |
|
|
118
138
|
|------|----------|
|
|
119
|
-
|
|
|
120
|
-
|
|
|
121
|
-
|
|
|
122
|
-
|
|
|
123
|
-
|
|
|
139
|
+
| `✅` 反映済 | 実装完了し intent へ書き戻し済み(`state: done` かつ対応 delta が promoted/closed) |
|
|
140
|
+
| `🔵` 今ここ | いま手をつけている1工程(export 済み・未反映のうち現行 Source Packet=export-log 最新行) |
|
|
141
|
+
| `🔴` 反映漏れ | 実装の証跡があるのに未反映(export 済み・未反映のうち現行 Source Packet 以外=過去の取り残し) |
|
|
142
|
+
| `⚪` 未着手 | まだ cc-sdd へ export していない(export-log に行が無い) |
|
|
143
|
+
| `◻` 統合済 | 後継 packet に統合され役目を終えた(`superseded_by` が非空) |
|
|
124
144
|
|
|
125
145
|
**置換軸**
|
|
126
146
|
|
|
@@ -154,12 +174,16 @@ status が出力時に参照する術語と一行説明(この一覧はこの
|
|
|
154
174
|
## Output Description
|
|
155
175
|
|
|
156
176
|
**読み手**: 「いま自分がどこにいて、次に何をすればいいか」を最短で知りたい人間開発者。
|
|
157
|
-
**この出力で最初に掴ませること**:
|
|
158
|
-
|
|
159
|
-
- ①
|
|
160
|
-
- ② **次の一手ちょうど1
|
|
161
|
-
- ③
|
|
162
|
-
- ④
|
|
177
|
+
**この出力で最初に掴ませること**: 既定をスリム化し、①工程レールで「どの packet が 🔵 今ここ・この後どの工程が残るか」、続けて②「次の一手ちょうど1つ(要約1行・折りたたまず常に強調)」、③ Candidate Packets(packet 化されていない候補の件数+名前)、④ Ice box 案内1行。危険な知らせ(鮮度警告・整合違反・反映漏れ 🔴)は既定にフル保持する。内部用語(突合・整合検査・enforcement)・検査詳細・術語の毎回併記はそのあとの ⑤ 詳細(折りたたみ位置)に退避する。出力は Step 5 の3層(既定 ①〜④+⊕危険な知らせ → ⑤詳細 → ⑥Open Questions → ⑦Ice box 展開はトリガ時のみ)で構成する。
|
|
178
|
+
|
|
179
|
+
- ① **工程レール**(既定・結論): 全 packet を縦に並べ、各行に5信号 + `[現在の工程 → 次に通る工程]` を併記(残工程 `⚪` と反映漏れ `🔴` を一望。実際に該当 packet がある行では裸の絵文字で表示)
|
|
180
|
+
- ② **次の一手ちょうど1つ**(既定・要約1行を折りたたまず常に強調・推奨理由/判断根拠付き。見せ方だけ変え first-match 選定ロジックは不変)
|
|
181
|
+
- ③ **Candidate Packets**(既定・件数+名前。L4 未消化候補を read-only で・凍結マーク付きは除外・断定しない)
|
|
182
|
+
- ④ **Ice box 案内**(既定・1行「凍結中(Ice box): N 件。『icebox も見せて』で表示できます」。0 件なら省略)
|
|
183
|
+
- ⊕ **危険な知らせ**(既定にフル保持・折りたたまない): 鮮度警告(enforcement 違反検出時は intent-check の stdout を引用)・packets 整合違反(index ↔ active/ の乖離・done / superseded_by 滞留・export-log 最新行 packet の active/ 不在)・反映漏れ 🔴
|
|
184
|
+
- ⑤ **詳細**(折りたたみ位置): 現在地の要約(成果物ごとの存在と記入状態 + 特記事項。現行 Source Packet と当該 packet ディレクトリの有無を含む)。⊕ で出した危険な知らせの「⚠ N 件あり(詳細参照)」サマリ1行をここにも残す。drift-watch が `on` のときは drift-log の軽い集計 `caught N / missed N / false-positive N / unjudged N` の1ブロックを併記し、`on` でないときは併記しない。conformance 陳腐化の頃合い(Step 3.6)を検出したときは未追随の根拠を1ブロック併記し、閾値未満のときは併記しない。index 不在時の再生成案内も詳細に置く。
|
|
185
|
+
- ⑥ 人間が確認すべき Open Questions
|
|
186
|
+
- ⑦ **Ice box 展開**(オプション・自然言語トリガ時のみ): 凍結候補を件数+名前+凍結理由の短い添えで展開
|
|
163
187
|
|
|
164
188
|
## Safety & Fallback
|
|
165
189
|
- **read-only 宣言**: ファイルの作成・変更・削除を一切行わない(frontmatter に Write を持たない。Bash は読み取り専用スクリプト `node .intent/scripts/intent-check.mjs` の起動に限り、この性質を変えない)。drift-log の読み取りは Read / Grep のみで行い(Bash 起動の対象を広げない・drift-log に書き込まない)、この read-only 性質を変えない。
|
|
@@ -28,7 +28,7 @@ argument-hint: <対象 packet 名(任意)>
|
|
|
28
28
|
|
|
29
29
|
### Step 2: 学びを抽出して提示する
|
|
30
30
|
- 実装の現実(コードベース・テスト・`.kiro/specs/`。すべて読み取りのみ)と、packet 定義(対象 packet ファイル)・cc-sdd 下書き・intent-compass.md を突き合わせる。
|
|
31
|
-
- rules の5観点([decision] / [invariant-violation] / [implicit-behavior] / [deferred-resolved] / [question]
|
|
31
|
+
- rules の5観点([decision] / [invariant-violation] / [implicit-behavior] / [deferred-resolved] / [question])で学びを抽出し、タグ付きの一覧で提示する。各学びは `[tag] <平易な要約一文(必須)>`(承認者がそのまま読んで意味の取れる平易な文)で示し、背景・根拠・含意が要るときだけ任意の `解説:` を添える(解説は必須でなく、要約のみが正規形。rules §2/§9 参照)。
|
|
32
32
|
|
|
33
33
|
### Step 3: delta を記録する(canonical 不可侵)
|
|
34
34
|
- 抽出した学びを `.intent/deltas.md` に新規エントリ(Status: pending)として記録する。
|
|
@@ -36,7 +36,7 @@ argument-hint: <対象 packet 名(任意)>
|
|
|
36
36
|
- この段階では canonical(intent-tree.md / intent-compass.md / `.intent/packets/` 配下)を一切書き換えない。
|
|
37
37
|
|
|
38
38
|
### Step 4: 昇格を確認する(承認の粒度を分ける)
|
|
39
|
-
- 承認の粒度は学びの種類で分ける(rules §3 第2
|
|
39
|
+
- 承認の粒度は学びの種類で分ける(rules §3 第2段)。全件を一律に一件ずつ問わない。承認の一次情報は各学びの平易な要約一文であり、解説は要るときだけ補う二次情報として扱う。
|
|
40
40
|
- **ゲート対象**(`[invariant-violation]` と Decision Rules を変える `[decision]`)は項目ごとに承認を確認する。
|
|
41
41
|
- **それ以外(L3 追記系・`[question]` 転記)**は反映先を一覧で提示し、止めたい項目があれば指定を求めたうえで、無指定なら一括昇格する。
|
|
42
42
|
- 止めた(承認されない)項目には「却下(再提案不要) | 保留(次回 writeback で再提案)」のどちらかを確認する。
|
|
@@ -59,7 +59,7 @@ argument-hint: <対象 packet 名(任意)>
|
|
|
59
59
|
- **昇格結果(先頭)**: 何が canonical(intent-tree / intent-compass / packets)へ昇格したか、反映先明細つき。止めた項目は「却下(再提案不要) / 保留(次回再提案)」の見送りタグで区別して示す。
|
|
60
60
|
- **完了処理の結果(次)**: 対象 packet の `state: done`・`closed_at`・`spec_refs` 記入、`archive/<年>/` への移動、index.md 再生成。「この packet はこれで締まった」と分かる形。
|
|
61
61
|
- **昇格提案**(承認を求める段で出ていれば): ゲート対象(invariant 違反・Decision Rules 変更)は項目ごとに確認、L3 追記系は一覧提示 + 止める項目の指定。
|
|
62
|
-
- **詳細**: 抽出した学び一覧(5観点 [decision]/[invariant-violation]/[implicit-behavior]/[deferred-resolved]/[question]
|
|
62
|
+
- **詳細**: 抽出した学び一覧(5観点 [decision]/[invariant-violation]/[implicit-behavior]/[deferred-resolved]/[question] のタグ付き。各行は平易な要約一文を主情報とし、必要なときだけ任意の解説を添える)、delta 記録結果(deltas.md のエントリ)。
|
|
63
63
|
|
|
64
64
|
## Safety & Fallback
|
|
65
65
|
- 対象 packet が特定できなければ、状況を提示して書き戻し対象の指定を求めて停止する。
|
|
@@ -21,6 +21,8 @@
|
|
|
21
21
|
|
|
22
22
|
対象 packet の定義(対象 packet ファイル)・cc-sdd 下書き(Intent 由来の制約を含む)・intent-compass.md と、実装の現実(コードベース・テスト・`.kiro/specs/`。すべて読み取りのみ)を突き合わせ、次の5観点で学びを抽出する。タグは観点と1:1。実装の現実を読む際、Decision Rule(intent-compass.md)が名指すコードモジュール(ファイル名・モジュール名)も grep 突合の視野に含め、Rule 主文と実装の乖離を `[invariant-violation]` として抽出してよい。
|
|
23
23
|
|
|
24
|
+
抽出した各学びは、`[tag] <平易な要約一文(必須)>` の形で書く。要約は専門用語で圧縮した名詞句ではなく、その packet を実装していない承認者がそのまま読んで意味の取れる平易な文にする(伝わりやすさを優先し、多少長くなってよい)。背景・根拠・含意の補足が要るときだけ、その下に字下げした ` - 解説: <…>` を任意で添える(解説は必須ではなく、要約のみの学びが正規形)。これは §9 の deltas.md 正規テンプレートと同じ書式であり、ここで抽出した学びはその書式のまま §9 へ記録される。
|
|
25
|
+
|
|
24
26
|
| タグ | 観点 |
|
|
25
27
|
|------|------|
|
|
26
28
|
| `[decision]` | 新しい決定(実装中に下した、packet 定義に書かれていない判断) |
|
|
@@ -126,11 +128,15 @@ writeback フェーズにおいては、canonical 成果物を直接書き換え
|
|
|
126
128
|
|
|
127
129
|
### 学び
|
|
128
130
|
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
- [
|
|
132
|
-
-
|
|
133
|
-
- [
|
|
131
|
+
各学びは `[tag] <平易な要約一文(必須)>` で書きます。要約は専門用語で圧縮した名詞句ではなく、その packet を実装していない承認者がそのまま読んで意味の取れる平易な文にします(伝わりやすさを優先し、多少長くなってよい)。背景・根拠・含意の補足が要るときだけ、その下に字下げした ` - 解説: <…>` を**任意で**添えます(解説は必須ではなく、要約のみの学びが正規形です)。
|
|
132
|
+
|
|
133
|
+
- [decision] <実装中に下した、packet 定義に書かれていない判断を平易な一文で>
|
|
134
|
+
- 解説: <なぜその判断に至ったか・背景や根拠(任意。不要なら付けない)>
|
|
135
|
+
- [invariant-violation] <既存 Invariant と実装の現実が衝突している箇所を平易な一文で>
|
|
136
|
+
- 解説: <どの Invariant とどう衝突するか・想定される対応(任意)>
|
|
137
|
+
- [implicit-behavior] <意図に書かれていなかったが実装が既にそうなっている挙動を平易な一文で(多くは要約のみで成立)>
|
|
138
|
+
- [deferred-resolved] <保留にしていた事項がどう解消されたかを平易な一文で>
|
|
139
|
+
- [question] <新たに浮かんだ未解決の問いを平易な一文で>
|
|
134
140
|
|
|
135
141
|
### 昇格記録(promoted / closed 時)
|
|
136
142
|
|
|
@@ -60,6 +60,7 @@ cc-sdd の流儀に揃える。
|
|
|
60
60
|
- **問いは自己完結文にする**: 利用者への問い・確認の文面は、術語を知らなくても回答できる自己完結文とする。術語を使う場合は、問い文面の中に一行説明を含める(例: 「最初の packet(作業単位)が、入力から出力まで一通り動く最小実装(walking skeleton)になっているかを利用者に確認します」)。
|
|
61
61
|
- **術語は英語のまま + 一行説明**: 術語を日本語の訳語に置換しない。説明が要る場合は、機能・意味を述べる一行説明(括弧書きまたは blockquote)を初出箇所に添える。
|
|
62
62
|
- **造語を勝手に作らない**: 正規語彙(ubiquitous language=intent 成果物で既に使われている合意済みの用語の集合)に無い新造の語を勝手に作らず、既存の語を再利用する。どうしても新しい語を導入する場合は、初出箇所に一行説明を添える。
|
|
63
|
+
- **設計文書で導入する語は識別子に限り、説明文中の比喩の呼び名は普通の記述語で書く**: 設計文書(SKILL.md / rules / 規約文書 / `.intent` 成果物)で語を導入するとき、横断参照される識別子(コマンド名・frontmatter キー・ファイル名・ログ値・glossary 見出し)だけを残し、説明文の中だけで使う比喩の呼び名(書き手の語感で生まれ、機能を説明しているわけでもない語)は作らず、普通の記述語で書く。識別子は消すと参照が壊れるため一行説明を添えて残す。比喩の呼び名は普通の言葉に開く(読み手が語の意味を別途学ばなくても文意が取れるようにする)。
|
|
63
64
|
|
|
64
65
|
## スキル間の状態共有
|
|
65
66
|
|
|
@@ -38,4 +38,4 @@
|
|
|
38
38
|
|
|
39
39
|
## discover との関係
|
|
40
40
|
|
|
41
|
-
- discover
|
|
41
|
+
- discover の逸脱しやすい場面の事前チェックレーン(`drift-terrain.md`)でも、`drift-watch: on` のとき同じカタログを薄く照合して早期に気づかせる。本手順(compass)が主接点であり、discover は補助。
|
|
@@ -11,8 +11,8 @@ description: Intent Planning の入口。リポジトリの課題感・README・
|
|
|
11
11
|
- Intent の詰め方モードが推奨・確認され、`.intent/mode.local.md`(mode 状態のローカル正本)に記録されている
|
|
12
12
|
- 問いの代行(designer-questions)の要否が確認され `.intent/mode.local.md` に記録されている(on の場合は purpose も。保留時は Open Questions に告知)
|
|
13
13
|
- 人間が確認すべき Open Questions が明示されている
|
|
14
|
-
- drift-watch が on
|
|
15
|
-
- drift-watch が on のとき、context-cost-cues
|
|
14
|
+
- drift-watch が on のとき、逸脱しやすい場面の事前チェックを行い該当型を名指しして drift-log に記録している(off のときは何もしない)
|
|
15
|
+
- drift-watch が on のとき、context-cost-cues を照合してコンテキストを食う進め方を指図せず気づかせる言い方で名指している(どのログにも記録しない・off のときは何もしない)
|
|
16
16
|
- アプリケーションコードを一切変更していない
|
|
17
17
|
|
|
18
18
|
## Execution Steps
|
|
@@ -34,9 +34,9 @@ description: Intent Planning の入口。リポジトリの課題感・README・
|
|
|
34
34
|
- 確定した意図と推測(Assumptions)を分離する。未確定は Open Questions に置く。
|
|
35
35
|
- 既存の `.intent/intent-tree.md` があれば読み、上書きではなく追記・更新案として提示する。
|
|
36
36
|
|
|
37
|
-
### Step 3.5:
|
|
38
|
-
- Step 1 で読んだ `.intent/mode.md` の `## Drift-watch(ユーザー管理)` セクションから `drift-watch` の値を確認する。`on` でないとき(off・未記載・不正値・セクション不在・mode.md
|
|
39
|
-
- `on` のときのみ、`rules/drift-terrain.md` を読み、適用する。symptom × 構築中 Intent Tree の照合・該当型の名指し提示・anti-direction / invariant 候補の Open Questions への起案・drift-log への append は、すべて rule の手順に委ねる(ここに手順を複製しない)。同 rule 末尾の「コンテキストコストの気づき」節も併せて適用し、`.intent/context-cost-cues.md`
|
|
37
|
+
### Step 3.5: 逸脱しやすい場面の事前チェック(drift-watch)
|
|
38
|
+
- Step 1 で読んだ `.intent/mode.md` の `## Drift-watch(ユーザー管理)` セクションから `drift-watch` の値を確認する。`on` でないとき(off・未記載・不正値・セクション不在・mode.md 不在を含む)は逸脱しやすい場面の事前チェックを行わず、現行どおり Step 4 へ続行する(現行動作とバイト等価)。
|
|
39
|
+
- `on` のときのみ、`rules/drift-terrain.md` を読み、適用する。symptom × 構築中 Intent Tree の照合・該当型の名指し提示・anti-direction / invariant 候補の Open Questions への起案・drift-log への append は、すべて rule の手順に委ねる(ここに手順を複製しない)。同 rule 末尾の「コンテキストコストの気づき」節も併せて適用し、`.intent/context-cost-cues.md` の型を照合してコンテキストを食う進め方を指図せず気づかせる言い方で名指す(どのログにも記録しない・カタログ不在ならスキップ)。
|
|
40
40
|
|
|
41
41
|
### Step 4: 提示する
|
|
42
42
|
- `.intent/intent-tree.md` の更新案を提示する。
|
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
# Drift Terrain
|
|
1
|
+
# Drift Terrain(逸脱しやすい場面の事前チェック)
|
|
2
2
|
|
|
3
|
-
`/intent-discover` の Step 3.5 で使う、symptom × 構築中 Intent Tree の照合ロジック。`drift-watch: on` のときだけ走る(off / 未記載 /
|
|
3
|
+
`/intent-discover` の Step 3.5 で使う、symptom × 構築中 Intent Tree の照合ロジック。`drift-watch: on` のときだけ走る(off / 未記載 / 不正値は何もしない)。着手前に「この題材は逸脱しやすい場面だ」と名指しし、外れきる前に anti-direction / invariant を先に書かせるのが目的。
|
|
4
4
|
|
|
5
5
|
## 診断の根拠は型カタログのみ
|
|
6
6
|
|
|
7
7
|
- **診断の根拠は `.intent/drift-patterns.md` の型カタログだけ**にする。discover の段階では compass も packet もまだ無いため、照合できる材料は型カタログしかない(本質的な制約)。compass の Invariant / Anti-direction を根拠にした照合は export 工程(drift-watch の別フック)の役目であり、ここでは行わない。
|
|
8
|
-
-
|
|
8
|
+
- 逸脱しやすい場面の事前チェックは**誤検知前提**。型に「該当した」ことは逸脱の確定ではない。弱い手がかりで早めに名指しし、空振りも含めて記録する。
|
|
9
9
|
|
|
10
10
|
## 手順
|
|
11
11
|
|
|
12
12
|
1. **drift-patterns.md を読む**
|
|
13
13
|
- `.intent/drift-patterns.md` を読み、全型(seed + 利用者が育てた型すべて)を取得する。
|
|
14
|
-
- **不在のとき**:
|
|
14
|
+
- **不在のとき**: 逸脱しやすい場面の事前チェックをスキップし、その旨を利用者に告知する(停止しない / drift-log にも書かない)。以降の手順は実行しない。
|
|
15
15
|
|
|
16
16
|
2. **各型の symptom を構築中の Intent Tree と照合する**
|
|
17
17
|
- 各型の `symptom` を、いま構築している Intent Tree の**題材(topic)と L0–L3**(目的 / 成果 / 能力 / 振る舞い・設計意図)に照らす。
|
|
18
18
|
- `symptom` は**弱い手がかり**であって「当てはまったら必ず逸脱」という強い判定条件ではない。誤検知前提で、疑わしければ拾う。
|
|
19
19
|
|
|
20
20
|
3. **該当型があるとき**
|
|
21
|
-
- 利用者に**名指しで提示**する。例:「この題材は `<id>`
|
|
21
|
+
- 利用者に**名指しで提示**する。例:「この題材は `<id>` を逸脱しやすい場面です」。
|
|
22
22
|
- その型の「先に書かせるもの」(Anti-direction / Invariant 候補)を、Intent Tree の **Open Questions / anti-direction 候補**へ追記する。題材に依存する部分は文脈から具体化する(型カタログの汎用文をそのまま貼らず、いまの題材に即した文面にする)。
|
|
23
23
|
- `drift-log.md` へ1エントリ append する(後述の append 手順)。値は:
|
|
24
24
|
- `pattern: <該当型の id>`
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
- `user-verdict: unjudged`
|
|
44
44
|
- `recorded_at: <ISO 8601>`
|
|
45
45
|
- `commit: <短縮ハッシュ | ->`
|
|
46
|
-
- `note: <1〜2
|
|
46
|
+
- `note: <1〜2行>`(場面に該当型が無かった旨)
|
|
47
47
|
|
|
48
48
|
## drift-log への append 手順
|
|
49
49
|
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
|
|
57
57
|
## コンテキストコストの気づき(drift-watch 連動)
|
|
58
58
|
|
|
59
|
-
|
|
59
|
+
逸脱しやすい場面の事前チェックと並んで、コンテキスト(トークン)を食う進め方に**気づかせる**照合を行う。drift-patterns(意図逸脱の型)とは**別カタログ**であり、症状(symptom)が「意図逸脱」ではなく「コンテキストを食う場面」である点だけが異なる。これは規範ではなく気づきであり、上の drift-patterns 照合とは性質が違うので**手順を分けて持つ**。
|
|
60
60
|
|
|
61
61
|
- **`drift-watch: on` のときだけ**この照合を行う(off / 未記載 / 不正値のとき何もしない)。`.intent/context-cost-cues.md` が不在のときは照合をスキップしてその旨を告知する(停止しない)。
|
|
62
62
|
- **これはどのログにも記録しない**。上の drift-patterns 照合(該当・空振りで `drift-log.md` へ append する)とは異なり、コンテキストコストの気づきは **`drift-log.md` にも他のどのログにも append しない**。理由: 消費量は計測できず outcome を評価できないため、ログに混ぜると drift-log の集計を推測値で汚す。さらに何が文脈を食うかは人により正当に異なり、記録すればプライバシーに踏み込む。**上の「drift-log への append 手順」をこの照合には適用しない**。
|
|
@@ -71,7 +71,7 @@
|
|
|
71
71
|
- 照合に使うのは構築中の Intent Tree の題材のみ。トークン消費量・git 差分・実行時メトリクスは読まない。
|
|
72
72
|
|
|
73
73
|
3. **該当型があるとき(気づきの提示・ログには書かない)**
|
|
74
|
-
-
|
|
74
|
+
- 利用者に指図せず気づかせる言い方で名指しする。例:「この題材は `<id>` に当てはまるかもしれません — これがコンテキストを食っている可能性があります」。
|
|
75
75
|
- その型の「もし意図せず効いていれば」の軽い代替(薄い入口 / JIT pull / 入力限定)を、**任意の選択肢**として添える。例:「もし意図せず効いていれば、<軽い代替> もあります(判断はお任せします)」。
|
|
76
76
|
- **矯正・指図をしない**。命令形・断定で言わず、気づきの提示に留める。大量スキルの導入・全文ロード等は正当な高コスト選択でありうるので、コストを食う選択を不要と断じない。判断は利用者に委ねる。
|
|
77
77
|
- **どのログにも append しない**(drift-patterns 照合の append 手順を流用しない)。
|
|
@@ -81,7 +81,7 @@
|
|
|
81
81
|
|
|
82
82
|
## 制約の叩き台の気づき(drift-watch 連動)
|
|
83
83
|
|
|
84
|
-
|
|
84
|
+
逸脱しやすい場面の事前チェックと並んで、ドメイン定石の叩き台に**早く気づかせる**薄い照合を行う。これは compass を主接点とする制約叩き台の候補提示(`intent-compass/rules/constraint-surfacing.md`)の discover 側の補助であり、上の照合とは別カタログ(`.intent/constraint-starters.md`=再利用したい制約定石)を見る。意図逸脱・コンテキストコストとは症状が異なるので**手順を分けて持つ**。
|
|
85
85
|
|
|
86
86
|
- **`drift-watch: on` のときだけ**この照合を行う(off / 未記載 / 不正値のとき何もしない)。`.intent/constraint-starters.md` が不在のときは照合をスキップしてその旨を告知する(停止しない)。
|
|
87
87
|
- **これはどのログにも記録しない**。上の drift-patterns 照合(`drift-log.md` へ append する)とは異なり、制約の叩き台の気づきは **`drift-log.md` にも他のどのログにも append しない**(context-cost-cues の気づきと同じ扱い)。
|
|
@@ -97,7 +97,7 @@
|
|
|
97
97
|
- 照合に使うのは構築中の Intent Tree の題材のみ。コード差分・実行時メトリクスは読まない。
|
|
98
98
|
|
|
99
99
|
3. **該当する定石があるとき(気づきの提示・ログには書かない)**
|
|
100
|
-
-
|
|
100
|
+
- 利用者に指図せず気づかせる言い方で名指しする。例:「この題材は `<id>`(<name>)に当てはまるかもしれません — compass で叩き台として検討できます」。押し付けず、候補を絞る。
|
|
101
101
|
- 詳しい叩き台(Anti-direction 候補・Invariant 候補)の提示と採否は **compass(主接点)に委ねる**。discover では「この定石が効きそう」と早期に気づかせるまで。
|
|
102
102
|
- **どのログにも append しない**。
|
|
103
103
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
## 照合の根拠は compass
|
|
6
6
|
|
|
7
|
-
- **照合の根拠は `.intent/intent-compass.md` の North Star / Anti-direction / Invariants** にする。export の段階では compass が既に存在するため、ここでは型カタログ(`.intent/drift-patterns.md`)ではなく compass を根拠にする(discover
|
|
7
|
+
- **照合の根拠は `.intent/intent-compass.md` の North Star / Anti-direction / Invariants** にする。export の段階では compass が既に存在するため、ここでは型カタログ(`.intent/drift-patterns.md`)ではなく compass を根拠にする(discover の逸脱しやすい場面の事前チェックは compass も packet もまだ無いため型カタログを根拠にする。export はその姉妹工程で、根拠が compass である点が違い)。
|
|
8
8
|
- 水際照合は**誤検知前提**。compass の要素に「抵触した」ことは逸脱の確定ではない。妥当な設計を誤って拾うこと(false-positive)を最初から織り込み、空振りも含めて記録する。
|
|
9
9
|
- **この照合は方向の関所であり、停止しない**。enforcement ゲート(手続きの関所・停止しうる)とは検査対象が直交する。drift の検知で export を止めることはしない(停止できるのは Step 1.5 の enforcement ゲートだけ)。
|
|
10
10
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
## 照合の根拠は compass
|
|
6
6
|
|
|
7
|
-
- **照合の根拠は `.intent/intent-compass.md` の North Star / Anti-direction / Invariants** にする。export の段階では compass が既に存在するため、ここでは型カタログ(`.intent/drift-patterns.md`)ではなく compass を根拠にする(discover
|
|
7
|
+
- **照合の根拠は `.intent/intent-compass.md` の North Star / Anti-direction / Invariants** にする。export の段階では compass が既に存在するため、ここでは型カタログ(`.intent/drift-patterns.md`)ではなく compass を根拠にする(discover の逸脱しやすい場面の事前チェックは compass も packet もまだ無いため型カタログを根拠にする。export はその姉妹工程で、根拠が compass である点が違い)。
|
|
8
8
|
- 水際照合は**誤検知前提**。compass の要素に「抵触した」ことは逸脱の確定ではない。妥当な設計を誤って拾うこと(false-positive)を最初から織り込み、空振りも含めて記録する。
|
|
9
9
|
- **この照合は方向の関所であり、停止しない**。enforcement ゲート(手続きの関所・停止しうる)とは検査対象が直交する。drift の検知で export を止めることはしない(停止できるのは Step 1.5 の enforcement ゲートだけ)。
|
|
10
10
|
|
|
@@ -13,7 +13,7 @@ description: 実装後に .intent/ 成果物と実装の現実を completeness /
|
|
|
13
13
|
- 書き戻し未実施の学びを検出したら、自ら delta を書かず `/intent-writeback` の実行を促している
|
|
14
14
|
- 5分類に `Decision Rules 更新推奨` または `invariant 違反検出` を含む回では、`rules/improve-axes.md` の規定に従い `/intent-validate`(conformance 追従の点検)の実行を併せて促している(含まない回では促さない。誘導のみで自らは conformance 判定をしない)
|
|
15
15
|
- drift-watch が on のとき coherence 検出を drift-log に stage:improve・outcome:missed で記録し pattern×outcome 改善度レポートを出している(off / 未記載 / 不正値 / 節不在 / mode.md 不在のとき何もしない。5分類は不変)
|
|
16
|
-
- drift-watch が on のとき context-cost-cues
|
|
16
|
+
- drift-watch が on のとき context-cost-cues を照合してコンテキストを食う進め方を指図せず気づかせる言い方で名指している(どのログにも記録せず・pattern×outcome 集計にも含めず・5分類は不変・off のとき何もしない)
|
|
17
17
|
- アプリケーションコードを一切変更していない
|
|
18
18
|
|
|
19
19
|
## Execution Steps
|
|
@@ -33,7 +33,7 @@ description: 実装後に .intent/ 成果物と実装の現実を completeness /
|
|
|
33
33
|
- 評価結果を5分類(aligned / intent 強化推奨 / 是正 packet 推奨 / Decision Rules 更新推奨 / invariant 違反検出。複数該当可)し、分類ごとに整理して提示する。
|
|
34
34
|
- 書き戻し未実施の学びや「保留」タグ付きの見送り項目を検出したら、`rules/improve-axes.md` の規定に従い `/intent-writeback` への誘導を併記する。
|
|
35
35
|
- 5分類に `Decision Rules 更新推奨` または `invariant 違反検出` を含む回は、`rules/improve-axes.md` の「validate 追従誘導」規定に従い `/intent-validate`(conformance 追従の点検)への誘導を writeback 誘導と並置で併記する(含まない回は併記しない。誘導のみで自らは判定しない)。
|
|
36
|
-
- drift-watch が on のとき(off / 未記載 / 不正値 / 節不在 / mode.md 不在は何もしない): `.intent/mode.md` の `## Drift-watch(ユーザー管理)` セクションの `drift-watch` 値を確認し、`on` のときのみ、`rules/improve-axes.md` の規定に従い coherence 軸で検出した逸脱(invariant 違反 / anti-direction 抵触)を `.intent/drift-log.md` へ `stage: improve` / `outcome: missed` の下書きとして記録し、`pattern × outcome` クロス集計の改善度レポートを出す。記録手順の詳細(9キー固定順・append-only・commit 取得・drift-log 不在時の新規作成)は `rules/improve-axes.md` に委ねる(ここでは重複させない)。この記録は**新しい是正分類を作らず**(上の5分類は不変)、deltas.md への書き込みや writeback フックも行わない。off / 未記載 / 不正値 / 節不在 / mode.md 不在のときは drift 記録・集計を行わず現行どおり進む(現行動作とバイト等価)。なお上の5分類の報告は drift-watch の値によらず常に行う。あわせて `drift-watch: on` のとき、`rules/improve-axes.md` 末尾の「コンテキストコストの気づき」節に従い `.intent/context-cost-cues.md`
|
|
36
|
+
- drift-watch が on のとき(off / 未記載 / 不正値 / 節不在 / mode.md 不在は何もしない): `.intent/mode.md` の `## Drift-watch(ユーザー管理)` セクションの `drift-watch` 値を確認し、`on` のときのみ、`rules/improve-axes.md` の規定に従い coherence 軸で検出した逸脱(invariant 違反 / anti-direction 抵触)を `.intent/drift-log.md` へ `stage: improve` / `outcome: missed` の下書きとして記録し、`pattern × outcome` クロス集計の改善度レポートを出す。記録手順の詳細(9キー固定順・append-only・commit 取得・drift-log 不在時の新規作成)は `rules/improve-axes.md` に委ねる(ここでは重複させない)。この記録は**新しい是正分類を作らず**(上の5分類は不変)、deltas.md への書き込みや writeback フックも行わない。off / 未記載 / 不正値 / 節不在 / mode.md 不在のときは drift 記録・集計を行わず現行どおり進む(現行動作とバイト等価)。なお上の5分類の報告は drift-watch の値によらず常に行う。あわせて `drift-watch: on` のとき、`rules/improve-axes.md` 末尾の「コンテキストコストの気づき」節に従い `.intent/context-cost-cues.md` を照合してコンテキストを食う進め方を指図せず気づかせる言い方で名指す(**どのログにも記録せず・pattern × outcome 集計にも含めず・5分類も不変**。カタログ不在ならスキップ)。
|
|
37
37
|
|
|
38
38
|
### Step 4: 是正案を提案ごとに承認確認する
|
|
39
39
|
- 是正が必要な項目ごとに是正案(成果物の更新案または是正 packet 案)を提示し、**提案ごとに**ユーザーの承認を確認する(一括承認を強要しない)。
|
|
@@ -112,7 +112,7 @@ coherence 軸の評価と並んで、実装後の振り返り(realignment)
|
|
|
112
112
|
- 照合に使うのは題材のみ。トークン消費量・git 差分・実行時メトリクスは読まない。
|
|
113
113
|
|
|
114
114
|
3. **該当型があるとき(気づきの提示・ログには書かない)**
|
|
115
|
-
-
|
|
115
|
+
- 利用者に指図せず気づかせる言い方で名指しする。例:「この振り返りの進め方は `<id>` に当てはまるかもしれません — これがコンテキストを食っている可能性があります」。
|
|
116
116
|
- その型の「もし意図せず効いていれば」の軽い代替(薄い入口 / JIT pull / 入力限定)を、**任意の選択肢**として添える。例:「もし意図せず効いていれば、<軽い代替> もあります(判断はお任せします)」。
|
|
117
117
|
- **矯正・指図をしない**。命令形・断定で言わず、気づきの提示に留める。大量スキルの導入・全文ロード等は正当な高コスト選択でありうるので、コストを食う選択を不要と断じない。判断は利用者に委ねる。
|
|
118
118
|
- **どのログにも append しない**(coherence 逸脱の append 手順・集計を流用しない)。
|
|
@@ -12,6 +12,11 @@ description: .intent/ の現状を読み取り、現在地の要約と「次の
|
|
|
12
12
|
- 孤児 spec 検査: `.kiro/specs/` に進行/完了している spec があるのに、`active/` のどの packet・`deltas.md` のどの delta ともテキスト照合できない場合、「起草されていない実装の可能性(Packet を経ずに実装された疑い)」として詳細に併記している(断定せず候補提示。照合不能は常態として誤検知を許容し、次の一手の first-match は奪わない。`.kiro/specs/` 不在の環境ではこの検査を行わない)
|
|
13
13
|
- intent-tree 起票漏れ検査(discover スキップ): `.kiro/specs/` に設計/実装が進んだ spec があるのに、`.intent/intent-tree.md` の **L0〜L4 の見出し・本文**(O#/C#/B#/P# のような ID アンカーは intent-planner に存在しないためテキスト照合のみで判定する)のどれともテキスト照合できない場合、「intent-tree に起票されていない実装の可能性(discover スキップ)」として詳細に併記している(断定せず候補提示。照合不能は常態として誤検知を許容し、次の一手の first-match は奪わない。`.intent/intent-tree.md` 不在または `.kiro/specs/` 不在の環境ではこの検査を行わない)。この起票漏れ(tree 層)・既存の孤児 spec 検査(Packet 層)・writeback 漏れ(下流層)を3階層で棲み分け、同一 spec が複数層に該当する場合は最上流の1層でのみ提示して二重警告を出さない
|
|
14
14
|
- 報告冒頭にミニ工程レール(全 packet を5信号 ✅/🔵/⚪/🔴/◻ で縦に並べ、各行に `[現在の工程 → 次に通る工程]` を併記する)を置き、「いまどの packet が 🔵 今ここで・この後どの工程が残り・どこに ⚪ 残工程 / 🔴 反映漏れがあるか」を一望できるようにしている。内部用語(突合手順・整合検査・enforcement 用語)は冒頭でなく詳細(後段)に退避している
|
|
15
|
+
- 既定出力を3層(既定=今ここ+次の一手1行強調+Candidate Packets 件数/名前+Ice box 案内1行/詳細=折りたたみ位置/オプション=自然言語トリガ時のみ)でスリム化し、次の一手の要約1行は折りたたまず冒頭の目立つ位置に常に強調している
|
|
16
|
+
- 「危険な知らせ」(鮮度警告・packets 整合違反・反映漏れ `🔴`)は**実害がある場面では裸の絵文字でフル表示**したまま保持し(折りたたまない)、折りたたむ詳細側にも「`⚠` N 件あり(詳細参照)」のサマリ1行を残して見落としを防いでいる。凡例・用語説明・0件サマリ等の説明の場面では警告信号を裸でなくインラインコード/語句でトーンダウンし、実害ゼロでびっくりさせない(INV32)
|
|
17
|
+
- `.intent/intent-tree.md` の L4「今後の付加候補」を Read/Glob/Grep のみで読み、`archive/`・`.kiro/specs/` と既存検査(孤児 spec/起票漏れ)と同じテキスト照合手段で突合して未消化(packet 化も実装もされていない)候補を件数+名前で既定に常設表示している(凍結マーク付きは除外。照合不能は誤検知許容・断定しない。L4/archive/specs 不在なら 0 件)
|
|
18
|
+
- 凍結マーク(`Deferred`/`保留`/`当面しない`/条件付き保留 等)の Ice box 候補は既定では本体を出さず案内文1行「凍結中(Ice box): N 件。『icebox も見せて』で表示できます」を併記し、自然言語トリガで件数+名前+凍結理由を展開している(境界曖昧は Candidate 側・断定しない)
|
|
19
|
+
- 見せ方(出力構成)だけを変え、「次の一手」の first-match 選定ロジックは変えていない(どの一手を推すかは非接触)
|
|
15
20
|
- 「次の一手」を `rules/decision-table.md` の first-match でちょうど1つ推奨し、推奨理由と判断根拠(どの成果物のどの状態に基づくか)を併記している
|
|
16
21
|
- 推奨候補を discover / compass / packets / export / validate / improve / writeback / 「アクション不要」の中から選定している
|
|
17
22
|
- mode.md の enforcement が remind または gate のとき intent-check による鮮度検査を行い、違反(判定行の `result=stale` または `pending` が 1 以上)の検出時は現在地サマリに intent-check の stdout を引用した鮮度警告を併記している(off・未記載・不正値・実行不可のときは現行どおり警告を出さない)
|
|
@@ -19,7 +24,7 @@ description: .intent/ の現状を読み取り、現在地の要約と「次の
|
|
|
19
24
|
- intent-compass.md の節更新日(`Updated (Invariants):` / `Updated (Decision Rules):`)と active/ 配下 packet の `updated_at` を Read/Glob/Grep のみで照合し、「compass 更新後に未追随」の packet 件数が閾値以上のとき `/intent-validate` を頃合いとして推奨し(決定表 row 12)、その根拠(どの節が更新後・未追随が何件か)を併記している。確定診断はせず概算にとどめ、閾値未満では提案しない(read-only 維持)
|
|
20
25
|
- `.intent/milestones.md` の各 event を Read/Glob/Grep のみで読み、event 記録日時より後に「compass の `Updated (Decision Rules):` 反映打刻」または「deltas の該当 Decision 参照」のいずれも無いものを「未消化 milestone(記録済みだが対応する見直しが未処理)」として把握し、残課題として現在地報告に併記している(Step 3.6 と同型の ISO 8601 辞書順・両端実打刻ペアのみの比較。断定せず候補提示。`.intent/milestones.md` 不在時はこの検査を省略する。read-only 維持)
|
|
21
26
|
- ファイルの作成・変更・削除を一切行っていない(read-only)
|
|
22
|
-
- 出力中の主要術語に、その意味の一行説明を `術語(説明)`
|
|
27
|
+
- 出力中の主要術語に、その意味の一行説明を `術語(説明)` の形で併記している(冒頭=初出・表見出しのみ/詳細=毎回の2層。用語説明一覧は維持し全廃しない)
|
|
23
28
|
|
|
24
29
|
## Execution Steps
|
|
25
30
|
|
|
@@ -71,19 +76,32 @@ description: .intent/ の現状を読み取り、現在地の要約と「次の
|
|
|
71
76
|
- 複数候補の併記はしない(理由と根拠は併記する)。推奨が複数見える曖昧なケースも、決定表の優先順位で機械的に1つへ畳む。
|
|
72
77
|
|
|
73
78
|
### Step 5: 報告する
|
|
74
|
-
|
|
79
|
+
報告は**読み手が「いまどこで、次に何をするか」に最短で辿り着ける順序**で構成し、既定出力をスリム化する。出力は **既定(折りたたまない)/詳細(折りたたみ位置)/オプション(自然言語トリガ時のみ)** の3層で構成する。既定には要点(①〜④)と「危険な知らせ」だけを置き、内部用語(突合手順・整合検査・enforcement 用語など)や検査の詳細は ⑤ 詳細へ退避する。
|
|
80
|
+
|
|
81
|
+
**【既定】折りたたまない要点**
|
|
75
82
|
|
|
76
83
|
- ① **工程レール(冒頭ミニレール)**: 全 packet を縦に並べ、各 packet に5信号(✅ 反映済 / 🔵 今ここ / ⚪ 未着手 / 🔴 反映漏れ / ◻ 統合済)のいずれか1つを付け、**続けて `[現在の工程 → 次に通る工程]` を併記する**。信号の判定も工程併記も overview の `progress-readout.md`「工程レール」と同じ規律(5信号は `state` × export-log の行有無 × deltas の対応エントリ有無を first-match で突合、工程併記は packet `state` を固定パイプライン `discover→compass→packets→export→実装→verify→writeback` 上の位置として読み替え。いずれも算出・推論しない)に従う。例: `P2 🔵 今ここ [implementing → 次: verify→writeback]` / `P3 ⚪ 未着手 [ready → 次: export→実装]`。これにより**「P いくつが今ここで・この後どの工程が残り・どこに ⚪ 残工程 / 🔴 反映漏れがあるか」を1枚で一望**させる。各信号は用語一覧に従い意味を併記する。レールは read-only mirror であり、status は何も変更しない。
|
|
77
|
-
- ② **次の一手(ちょうど1つ・1
|
|
78
|
-
- ③
|
|
79
|
-
- ④
|
|
84
|
+
- ② **次の一手(ちょうど1つ・1行・常に強調)**: スキル名 or「アクション不要」を**要約1行で**冒頭の目立つ位置に示す(既定をスリム化しても**この1行は折りたたまず常に出す**)。続けて推奨理由 + 判断根拠(どの成果物のどの状態に基づくか)を簡潔に添える。決定表(`rules/decision-table.md`)の first-match 結果を、内部の行番号でなく**人間が次に取る行動**として翻訳して提示する(**見せ方を変えるだけで、どの一手を推すかの first-match 選定ロジックは変えない**)。
|
|
85
|
+
- ③ **Candidate Packets(packet 化されていない候補プール)**: `.intent/intent-tree.md` の L4「今後の付加候補」を **Read / Glob / Grep のみ**で読み、`.intent/packets/archive/` と `.kiro/specs/` を Step 2 の孤児 spec / 起票漏れ検査と同じテキスト照合手段で突合して、**未消化(packet 化も実装もされていない)候補**に絞り、**件数+名前**の箇条書きで既定に出す。照合不能は常態として誤検知を許容し、断定せず候補提示にとどめる。**凍結マーク付きの候補(後述 Ice box)は件数+名前から除外する**。L4/archive/`.kiro/specs/` が不在なら 0 件として扱い、エラーにしない。
|
|
86
|
+
- ④ **Ice box 案内(凍結候補の存在告知・1行)**: 凍結マーク(`Deferred` / `保留` / `当面しない` / 条件付き保留 等)を **Read / Grep のみ**でテキスト照合した凍結候補は、**既定では本体を出さず**、案内文1行 **「凍結中(Ice box): N 件。『icebox も見せて』で表示できます」** を既定に常時併記する(0 件なら案内も省いて冒頭をさらに軽くする)。境界が曖昧な候補(マーク無しだが実質塩漬け)は凍結とみなさず ③ Candidate 側に出す(断定しない)。
|
|
87
|
+
- ⊕ **危険な知らせ(既定に必ずフル表示・折りたたまない)**: **鮮度警告(Step 3)・packets 整合違反(index ↔ active/ の乖離・done / superseded_by 滞留・export-log 最新行 packet の active/ 不在)・反映漏れ 🔴** の3種は見落とすと危険なため、**既定にフル表示したまま保持し、⑤ 詳細へ折りたたまない**。enforcement / drift-watch が off・未記載のときは現行どおり鮮度警告を出さない(既存挙動を変えない)。**警告信号の見た目の出し分け(INV32)**: ここ(実害がある場面)では `🔴` 等を**裸の絵文字で目立たせる**が、凡例・用語説明・0件サマリ・空レール等の**説明の場面では裸で出さずインラインコード(`🔴`)/語句(「反映漏れ」)でトーンダウン**する。0件のときは「反映漏れなし」を語句で示し、裸の警告絵文字を出さない(警告の語義は保つ)。
|
|
88
|
+
|
|
89
|
+
**【詳細】折りたたみ位置へ退避**
|
|
90
|
+
|
|
91
|
+
- ⑤ **詳細(折りたたみ位置)**: ① の各信号の根拠となった成果物ごとの 有/無/未記入 と特記事項、現行 Source Packet(export-log 最新行に基づく packet 名)と当該 packet のディレクトリ(`.intent/cc-sdd/<スラッグ>/`)の有無。⊕ で既定に出した危険な知らせは、ここにも **「⚠ N 件あり(詳細参照)」のサマリ1行**を残して詳細本体と接続する(既定からは消さない)。index 不在の場合は再生成の案内を、Step 3.5 で drift-watch が `on` のときは drift-log の軽い集計(`caught N / missed N / false-positive N / unjudged N`)を、Step 3.6 で conformance 陳腐化の頃合い(未追随件数が閾値以上)を検出した場合は「どの compass 節が更新後・未追随 packet が何件か」の根拠を、ここに1ブロック併記する。Step 2 で intent-tree 起票漏れ(discover スキップの疑い)を検出した場合は、その spec 名と「設計/実装が進んでいますが、`.intent/intent-tree.md` の L0〜L4 のどのノードともテキスト照合できませんでした。discover フェーズそのものをスキップした疑いがあります。`/intent-discover` で intent-tree(L0〜L4)へ起票し、その後 `/intent-packets` で Packet を起こし、`/intent-writeback` で実装の現実を canonical へ戻すのが順序です」という案内を、断定を避けた候補提示の温度で1ブロック併記する(次の一手の決定表結果は変えない)。Step 2 で孤児 spec(起草されていない実装の疑い)を検出した場合は、その spec 名と「Packet を経ずに実装された疑いがあります。事後でも `/intent-packets` で Packet を起こし(未確定の仕様は Open Questions / Deferred として明示)、その後 `/intent-writeback` で実装の現実を canonical へ戻すのが順序です」という案内を、断定を避けた候補提示の温度で1ブロック併記する(次の一手の決定表結果は変えない)。**この2検査と writeback 漏れ(鮮度警告)は上流から tree 層 → packet 層 → 下流層の3階層で棲み分け、同一 spec が複数層に該当する場合は最上流の1層でのみ提示して二重警告を出さない**(上流が該当する spec を下流の孤児 spec/鮮度警告で重ねて出さず、`discover → packets → writeback` の段階対処として案内する)。Step 3.7 で未消化 milestone(記録済みだが対応する見直しが未処理の節目イベント)を検出した場合は、その event 名と「節目イベントが記録されていますが、対応する Decision の見直し(Revisit 反映)がまだ消化されていない可能性があります。`/intent-improve` で該当 Decision Rule の `Revisit when` 照合・再提案を確認するのが順序です」という案内を、鮮度警告と同じ位置・温度感で(断定を避けた候補提示の温度で)1ブロック併記する(次の一手の決定表結果は変えない)。
|
|
92
|
+
- ⑥ Open Questions: ユーザー確認が必要な点。確認は自然言語での候補提示にとどめ、次のアクションの判断はユーザーに委ねる(一方向報告)。
|
|
93
|
+
|
|
94
|
+
**【オプション】自然言語トリガ時のみ**
|
|
95
|
+
|
|
96
|
+
- ⑦ **Ice box 展開**: 利用者が自然言語トリガ(「icebox も見せて」等)で要求したときのみ、④ の凍結候補を **件数+名前+凍結理由の短い添え**で展開する。展開も Read / Grep のみの read-only で、status は何も変更しない。
|
|
97
|
+
|
|
80
98
|
- **未記入・不在の表示**: 成果物が未記入・不在のときは、`Intent Tree(やりたいことの階層マップ): 未作成` のように「術語(説明): 状態」の形で、その成果物が**まだ無い/中身が入っていない**ことが術語を知らなくても分かる平易な日本語で示す。整合検査の違反(`superseded_by` 滞留・index との乖離・archive 在中等)も同様に、術語に説明を併記しつつ「何がどう滞留/乖離しているか」を平易な日本語で示す。
|
|
81
99
|
|
|
82
100
|
## 用語の常時併記ルール
|
|
83
101
|
|
|
84
|
-
出力に現れる術語は、下記「用語説明一覧」を参照して `術語(説明)`
|
|
102
|
+
出力に現れる術語は、下記「用語説明一覧」を参照して `術語(説明)` の括弧書き形式で意味を併記する。併記は **冒頭(既定)と詳細(折りたたみ位置)で2層に分ける**。具体的な規約は以下の通り。
|
|
85
103
|
|
|
86
|
-
-
|
|
104
|
+
- **2層併記ルール(冒頭=初出/見出しのみ・詳細=毎回)**: status 出力に現れる intent-planner 固有の術語(成果物名・state 値・検査用語・コマンド名)は、**英語表記のまま正として保ち、訳語に置換しない**。その上で、各術語にはその意味を表す日本語の一行説明を `術語(説明)` の括弧書き形式で併記する。併記の密度は出力の層で分ける: **冒頭(既定のスリムな要点)では併記を初出・表見出しのみに絞る**(冒頭の冗長さを避け「次の一手」を埋もれさせない)。**詳細(折りたたみ位置)では、その術語が出力に現れるたびに毎回併記する**(詳細は状況により出る項目が変わる断片的な報告であり「初出」が安定しないため、毎回その場で意味が分かることを優先する)。用語説明一覧そのものは維持し、術語併記を全廃しない(status-readability の「術語を知らなくても読める」価値は詳細側で保つ)。
|
|
87
105
|
- **冗長回避の運用**: 同一出力内で同じ術語が繰り返し現れて冗長になる場合でも、各項目を**術語のみで放置しない**。一覧・表形式の項目見出しでは括弧書き併記を保ち、本文中の反復言及では文脈で意味が辿れる限り形式を簡潔に整えてよい。形式を整える場合も「術語の意味が辿れる状態」を維持することが条件。
|
|
88
106
|
|
|
89
107
|
### 用語説明一覧
|
|
@@ -112,13 +130,15 @@ status が出力時に参照する術語と一行説明(この一覧はこの
|
|
|
112
130
|
|
|
113
131
|
**工程レール(5信号 + 工程併記)**(packet を `state` × export-log の行有無 × deltas の対応エントリ有無で突合し、first-match で1つ付ける。さらに各行に `[現在の工程 → 次に通る工程]` を併記し、packet `state` を固定パイプライン `discover→compass→packets→export→実装→verify→writeback` 上の位置として読み替える。判定の正本は `rules/decision-table.md` ではなく overview の `progress-readout.md`「工程レール」だが、status の冒頭ミニレールも同じ5信号語彙 + 工程併記を使う)
|
|
114
132
|
|
|
133
|
+
> 凡例の信号は見た目をトーンダウンしてインラインコードで示す(説明の場面で裸の警告色を並べない=INV32)。実際に該当 packet がある実害の場面では INV31 どおり裸の絵文字でフル表示する。
|
|
134
|
+
|
|
115
135
|
| 信号 | 一行説明 |
|
|
116
136
|
|------|----------|
|
|
117
|
-
|
|
|
118
|
-
|
|
|
119
|
-
|
|
|
120
|
-
|
|
|
121
|
-
|
|
|
137
|
+
| `✅` 反映済 | 実装完了し intent へ書き戻し済み(`state: done` かつ対応 delta が promoted/closed) |
|
|
138
|
+
| `🔵` 今ここ | いま手をつけている1工程(export 済み・未反映のうち現行 Source Packet=export-log 最新行) |
|
|
139
|
+
| `🔴` 反映漏れ | 実装の証跡があるのに未反映(export 済み・未反映のうち現行 Source Packet 以外=過去の取り残し) |
|
|
140
|
+
| `⚪` 未着手 | まだ cc-sdd へ export していない(export-log に行が無い) |
|
|
141
|
+
| `◻` 統合済 | 後継 packet に統合され役目を終えた(`superseded_by` が非空) |
|
|
122
142
|
|
|
123
143
|
**置換軸**
|
|
124
144
|
|
|
@@ -152,12 +172,16 @@ status が出力時に参照する術語と一行説明(この一覧はこの
|
|
|
152
172
|
## Output Description
|
|
153
173
|
|
|
154
174
|
**読み手**: 「いま自分がどこにいて、次に何をすればいいか」を最短で知りたい人間開発者。
|
|
155
|
-
**この出力で最初に掴ませること**:
|
|
156
|
-
|
|
157
|
-
- ①
|
|
158
|
-
- ② **次の一手ちょうど1
|
|
159
|
-
- ③
|
|
160
|
-
- ④
|
|
175
|
+
**この出力で最初に掴ませること**: 既定をスリム化し、①工程レールで「どの packet が 🔵 今ここ・この後どの工程が残るか」、続けて②「次の一手ちょうど1つ(要約1行・折りたたまず常に強調)」、③ Candidate Packets(packet 化されていない候補の件数+名前)、④ Ice box 案内1行。危険な知らせ(鮮度警告・整合違反・反映漏れ 🔴)は既定にフル保持する。内部用語(突合・整合検査・enforcement)・検査詳細・術語の毎回併記はそのあとの ⑤ 詳細(折りたたみ位置)に退避する。出力は Step 5 の3層(既定 ①〜④+⊕危険な知らせ → ⑤詳細 → ⑥Open Questions → ⑦Ice box 展開はトリガ時のみ)で構成する。
|
|
176
|
+
|
|
177
|
+
- ① **工程レール**(既定・結論): 全 packet を縦に並べ、各行に5信号 + `[現在の工程 → 次に通る工程]` を併記(残工程 `⚪` と反映漏れ `🔴` を一望。実際に該当 packet がある行では裸の絵文字で表示)
|
|
178
|
+
- ② **次の一手ちょうど1つ**(既定・要約1行を折りたたまず常に強調・推奨理由/判断根拠付き。見せ方だけ変え first-match 選定ロジックは不変)
|
|
179
|
+
- ③ **Candidate Packets**(既定・件数+名前。L4 未消化候補を read-only で・凍結マーク付きは除外・断定しない)
|
|
180
|
+
- ④ **Ice box 案内**(既定・1行「凍結中(Ice box): N 件。『icebox も見せて』で表示できます」。0 件なら省略)
|
|
181
|
+
- ⊕ **危険な知らせ**(既定にフル保持・折りたたまない): 鮮度警告(enforcement 違反検出時は intent-check の stdout を引用)・packets 整合違反(index ↔ active/ の乖離・done / superseded_by 滞留・export-log 最新行 packet の active/ 不在)・反映漏れ 🔴
|
|
182
|
+
- ⑤ **詳細**(折りたたみ位置): 現在地の要約(成果物ごとの存在と記入状態 + 特記事項。現行 Source Packet と当該 packet ディレクトリの有無を含む)。⊕ で出した危険な知らせの「⚠ N 件あり(詳細参照)」サマリ1行をここにも残す。drift-watch が `on` のときは drift-log の軽い集計 `caught N / missed N / false-positive N / unjudged N` の1ブロックを併記し、`on` でないときは併記しない。conformance 陳腐化の頃合い(Step 3.6)を検出したときは未追随の根拠を1ブロック併記し、閾値未満のときは併記しない。index 不在時の再生成案内も詳細に置く。
|
|
183
|
+
- ⑥ 人間が確認すべき Open Questions
|
|
184
|
+
- ⑦ **Ice box 展開**(オプション・自然言語トリガ時のみ): 凍結候補を件数+名前+凍結理由の短い添えで展開
|
|
161
185
|
|
|
162
186
|
## Safety & Fallback
|
|
163
187
|
- **read-only 宣言**: ファイルの作成・変更・削除を一切行わない(frontmatter に Write を持たない。Bash は読み取り専用スクリプト `node .intent/scripts/intent-check.mjs` の起動に限り、この性質を変えない)。drift-log の読み取りは Read / Grep のみで行い(Bash 起動の対象を広げない・drift-log に書き込まない)、この read-only 性質を変えない。
|