Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions .claude/agents-en/task-executor-frontend.md
Original file line number Diff line number Diff line change
Expand Up @@ -183,6 +183,16 @@ This gate runs only when the task file's "Investigation Targets" section lists a
2. **Investigate existing implementations**: Search for similar components/hooks in same domain/responsibility
3. **Execute determination**: Determine continue/escalation per "Mandatory Judgment Criteria" above

#### Unimplemented Dependency Handling

Applies when Pre-implementation Verification finds a dependency this task requires is absent or unimplemented (e.g., a Design Doc / UI Spec component or hook marked "requires new creation"). Runs after Pre-implementation Verification, before the Adjacent Case Sweep. Treat a missing dependency as a stop condition only when preserving the required contract needs it and no local, reversible construct can stand in.

1. Establish the required contract from an already-read source (Design Doc, UI Spec, or a Dependency deliverable read at Step 2). When the dependency is a `Dependencies:` deliverable that does not exist and no already-read source defines the same contract, the contract is undeterminable — stop and escalate with `escalation_type: "design_compliance_violation"` (a stand-in cannot preserve an undefined contract).
2. Determine whether a local, reversible construct — a vertical slice, or a contract-preserving stub/adapter scoped to the Target Files — reproduces that contract. A qualifying stand-in preserves the required behavior: run the Step4 Core Mechanism Preservation Check against it, and treat a stand-in the check flags (e.g., canned return values substituting for the required mechanism) as failing to preserve the contract.
3. Branch on the result:
- One or more local, reversible constructs preserve the contract and any alternatives are interchangeable (no architectural trade-off between them) → proceed with one and record the integration handoff (what the real dependency must later provide, and where it connects) in Investigation Notes.
- No local construct preserves the contract, or two or more valid constructs differ on an architectural trade-off (placement, component hierarchy / data flow direction, contract shape) — consistent with the Iron Rule → stop and escalate with `escalation_type: "design_compliance_violation"` per the Escalation Response table; populate every field the row requires — map the Design Doc / UI Spec requirement for the dependency to `details.design_doc_expectation`, the absent/unimplemented dependency plus the exact undecided decision to `details.actual_situation`, and also set `details.why_cannot_implement`, `details.attempted_approaches[]`, and `claude_recommendation` per the table.

#### Adjacent Case Sweep (Required when the task file has a `Change Category` field set to one or more of `bug-fix`, `regression`, `state-change`, `boundary-change`)

Runs after Pre-implementation Verification, before the Binding Decision Check. This step fires on the field value the task decomposition wrote — read the field value and treat it as authoritative for whether the sweep applies.
Expand Down
10 changes: 10 additions & 0 deletions .claude/agents-en/task-executor.md
Original file line number Diff line number Diff line change
Expand Up @@ -183,6 +183,16 @@ This gate runs only when the task file's "Investigation Targets" section lists a
2. **Investigate existing implementations**: Search for similar functions in same domain/responsibility
3. **Execute determination**: Determine continue/escalation per "Mandatory Judgment Criteria" above

#### Unimplemented Dependency Handling

Applies when Pre-implementation Verification finds a dependency this task requires is absent or unimplemented (e.g., a Design Doc component marked "requires new creation"). Runs after Pre-implementation Verification, before the Adjacent Case Sweep. Treat a missing dependency as a stop condition only when preserving the required contract needs it and no local, reversible construct can stand in.

1. Establish the required contract from an already-read source (Design Doc, API spec, or a Dependency deliverable read at Step 2). When the dependency is a `Dependencies:` deliverable that does not exist and no already-read source defines the same contract, the contract is undeterminable — stop and escalate with `escalation_type: "design_compliance_violation"` (a stand-in cannot preserve an undefined contract).
2. Determine whether a local, reversible construct — a vertical slice, or a contract-preserving stub/adapter scoped to the Target Files — reproduces that contract. A qualifying stand-in preserves the required behavior: run the Step4 Core Mechanism Preservation Check against it, and treat a stand-in the check flags (e.g., canned return values substituting for the required mechanism) as failing to preserve the contract.
3. Branch on the result:
- One or more local, reversible constructs preserve the contract and any alternatives are interchangeable (no architectural trade-off between them) → proceed with one and record the integration handoff (what the real dependency must later provide, and where it connects) in Investigation Notes.
- No local construct preserves the contract, or two or more valid constructs differ on an architectural trade-off (placement, dependency direction, contract shape) — consistent with the Iron Rule → stop and escalate with `escalation_type: "design_compliance_violation"` per the Escalation Response table; populate every field the row requires — map the Design Doc requirement for the dependency to `details.design_doc_expectation`, the absent/unimplemented dependency plus the exact undecided decision to `details.actual_situation`, and also set `details.why_cannot_implement`, `details.attempted_approaches[]`, and `claude_recommendation` per the table.

#### Adjacent Case Sweep (Required when the task file has a `Change Category` field set to one or more of `bug-fix`, `regression`, `state-change`, `boundary-change`)

Runs after Pre-implementation Verification, before the Binding Decision Check. This step fires on the field value the task decomposition wrote — read the field value and treat it as authoritative for whether the sweep applies.
Expand Down
10 changes: 10 additions & 0 deletions .claude/agents-ja/task-executor-frontend.md
Original file line number Diff line number Diff line change
Expand Up @@ -183,6 +183,16 @@ task_file パスはオーケストレータが渡す入力。プロンプトで
2. **既存実装調査**:同ドメイン・責務で類似コンポーネント・hook を検索
3. **判定実行**:上記「必須判断基準」に従い継続・エスカレーション判定

#### 未実装依存の取り扱い

実装前確認で、このタスクが必要とする依存が存在しない、または未実装であると判明した場合に適用する(例: Design Doc / UI Spec のコンポーネントまたは hook で「新規作成が必要」とマークされたもの)。実装前確認の後、隣接ケース走査の前に実行する。依存の欠落が停止条件となるのは、必要な契約の保全にその依存が必要であり、かつローカルかつ可逆な構成物で代替できない場合に限る。

1. まず既読のソース(Design Doc、UI Spec、Step 2 で読み込んだ依存成果物)から必要な契約を確定する。依存が存在しない `Dependencies:` 成果物であり、既読のいずれのソースもその契約を定義していない場合、契約は確定不能 — 実装を中止し `escalation_type: "design_compliance_violation"` でエスカレーションする(代替は未定義の契約を保全できない)。
2. ローカルかつ可逆な構成物 — 垂直スライス、または Target Files にスコープした契約保全のスタブ/アダプタ — がその契約を再現できるか判定する。適格な代替は要求された振る舞いを保全する: その代替に Step4 中核メカニズム保全チェックを適用し、チェックが指摘する代替(例: 要求された中核メカニズムを決め打ちの返り値で置き換えたもの)は契約を保全できないものとして扱う。
3. 結果で分岐する:
- 1つ以上のローカルかつ可逆な構成物が契約を保全し、かつ複数ある場合も互いに交換可能(それらの間にアーキテクチャ的トレードオフがない)→ そのうち1つで実装を進め、統合時の引き継ぎ(実際の依存が後で提供すべきもの、および接続箇所)を Investigation Notes に記録する。
- 契約を保全するローカル構成物が1つもない、または2つ以上の妥当な構成物がアーキテクチャ的トレードオフ(配置・コンポーネント階層/データフロー方向・契約の形状)で差を持つ — 鉄則に整合 → 実装を中止し `escalation_type: "design_compliance_violation"` でエスカレーションする。エスカレーションレスポンス表に従い、行が要求する全フィールドを埋める — 依存に対する Design Doc / UI Spec の要件を `details.design_doc_expectation`、欠落/未実装の依存と具体的な未決の判断を `details.actual_situation` に対応づけ、`details.why_cannot_implement` / `details.attempted_approaches[]` / `claude_recommendation` は表に従う。

#### 隣接ケース走査(タスクファイルの `Change Category` フィールドが `bug-fix` / `regression` / `state-change` / `boundary-change` のいずれかに設定されている場合は必須)

実装前確認の後、Binding Decision チェックの前に実行する。このステップはタスク分解が書き込んだフィールド値で発火する — フィールド値を読み、走査を適用するかの判断はそれを正本とする。
Expand Down
10 changes: 10 additions & 0 deletions .claude/agents-ja/task-executor.md
Original file line number Diff line number Diff line change
Expand Up @@ -183,6 +183,16 @@ task_file パスはオーケストレータが渡す入力。プロンプトで
2. **既存実装調査**:同ドメイン・責務で類似機能を検索
3. **判定実行**:上記「必須判断基準」に従い継続・エスカレーション判定

#### 未実装依存の取り扱い

実装前確認で、このタスクが必要とする依存が存在しない、または未実装であると判明した場合に適用する(例: Design Doc で「新規作成が必要」とマークされたコンポーネント)。実装前確認の後、隣接ケース走査の前に実行する。依存の欠落が停止条件となるのは、必要な契約の保全にその依存が必要であり、かつローカルかつ可逆な構成物で代替できない場合に限る。

1. まず既読のソース(Design Doc、API仕様、Step 2 で読み込んだ依存成果物)から必要な契約を確定する。依存が存在しない `Dependencies:` 成果物であり、既読のいずれのソースもその契約を定義していない場合、契約は確定不能 — 実装を中止し `escalation_type: "design_compliance_violation"` でエスカレーションする(代替は未定義の契約を保全できない)。
2. ローカルかつ可逆な構成物 — 垂直スライス、または Target Files にスコープした契約保全のスタブ/アダプタ — がその契約を再現できるか判定する。適格な代替は要求された振る舞いを保全する: その代替に Step4 中核メカニズム保全チェックを適用し、チェックが指摘する代替(例: 要求された中核メカニズムを決め打ちの返り値で置き換えたもの)は契約を保全できないものとして扱う。
3. 結果で分岐する:
- 1つ以上のローカルかつ可逆な構成物が契約を保全し、かつ複数ある場合も互いに交換可能(それらの間にアーキテクチャ的トレードオフがない)→ そのうち1つで実装を進め、統合時の引き継ぎ(実際の依存が後で提供すべきもの、および接続箇所)を Investigation Notes に記録する。
- 契約を保全するローカル構成物が1つもない、または2つ以上の妥当な構成物がアーキテクチャ的トレードオフ(配置・依存方向・契約の形状)で差を持つ — 鉄則に整合 → 実装を中止し `escalation_type: "design_compliance_violation"` でエスカレーションする。エスカレーションレスポンス表に従い、行が要求する全フィールドを埋める — 依存に対する Design Doc の要件を `details.design_doc_expectation`、欠落/未実装の依存と具体的な未決の判断を `details.actual_situation` に対応づけ、`details.why_cannot_implement` / `details.attempted_approaches[]` / `claude_recommendation` は表に従う。

#### 隣接ケース走査(タスクファイルの `Change Category` フィールドが `bug-fix` / `regression` / `state-change` / `boundary-change` のいずれかに設定されている場合は必須)

実装前確認の後、Binding Decision チェックの前に実行する。このステップはタスク分解が書き込んだフィールド値で発火する — フィールド値を読み、走査を適用するかの判断はそれを正本とする。
Expand Down
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [1.25.1] - 2026-06-29

### Added

- **Unimplemented-dependency handling** (agents) — `task-executor` / `-frontend` gain a rule for a dependency the task requires that is absent or unimplemented: it is a stop condition only when preserving the required contract needs it and no local, reversible construct (a vertical slice, or a contract-preserving stub/adapter scoped to the Target Files) can stand in. The required contract is established from an already-read source first — a missing `Dependencies:` deliverable whose contract no read source defines escalates as `design_compliance_violation`; one or more interchangeable constructs proceed with the integration handoff recorded in Investigation Notes; no viable construct, or constructs that differ on an architectural trade-off, escalate (reusing the existing escalation type, no new enum). Applied across en/ja.

## [1.25.0] - 2026-06-25

### Added
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "create-ai-project",
"version": "1.25.0",
"version": "1.25.1",
"packageManager": "npm@10.8.2",
"description": "TypeScript boilerplate with skills and sub-agents for Claude Code. Prevents context exhaustion through role-based task splitting.",
"keywords": [
Expand Down