@careerchain/stdd 0.1.1 → 0.1.3
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/assets/.claude/agents/implementer.md +4 -4
- package/assets/.claude/agents/plan-writer.md +7 -7
- package/assets/.claude/agents/qa-engineer.md +58 -6
- package/assets/.claude/agents/spec-reviewer.md +24 -18
- package/assets/.claude/agents/spec-writer.md +42 -38
- package/assets/.claude/agents/test-reviewer.md +21 -21
- package/assets/.claude/hooks/spec-first-check.sh +201 -0
- package/assets/.claude/rules/stdd-spec-first.md +36 -0
- package/assets/.claude/settings.json +16 -2
- package/assets/.claude/skills/auto-implement/SKILL.md +1 -1
- package/assets/.claude/skills/auto-implement/references/phases.md +14 -12
- package/assets/.claude/skills/documenting-plans/SKILL.md +2 -2
- package/assets/.claude/skills/documenting-specifications/SKILL.md +375 -300
- package/assets/.claude/skills/documenting-specifications/guides/error-handling.md +23 -21
- package/assets/.claude/skills/documenting-specifications/guides/stdd-violations.md +2 -2
- package/assets/.claude/skills/documenting-specifications/templates/api-spec-common.md +97 -0
- package/assets/.claude/skills/documenting-specifications/templates/architecture-common.md +188 -0
- package/assets/.claude/skills/documenting-specifications/templates/design-common.md +57 -0
- package/assets/.claude/skills/documenting-specifications/templates/requirements-common.md +104 -0
- package/assets/.claude/skills/documenting-specifications/templates/requirements.md +105 -125
- package/assets/.claude/skills/documenting-specifications/templates/table-definition-common.md +78 -0
- package/assets/.claude/skills/documenting-specifications/templates/tech-design.md +110 -183
- package/assets/.claude/skills/documenting-specifications/templates/test-plan.md +58 -0
- package/assets/.claude/skills/generating-wireframes/SKILL.md +10 -10
- package/assets/.claude/skills/generating-wireframes/guides/from-requirements.md +13 -13
- package/assets/.claude/skills/generating-wireframes/templates/index.html +1 -1
- package/assets/.claude/skills/introducing-stdd/SKILL.md +6 -3
- package/assets/.claude/skills/introducing-stdd/templates/introduction-plan.md +1 -1
- package/assets/.claude/skills/reverse-engineering-common-spec/SKILL.md +25 -14
- package/assets/.claude/skills/reverse-engineering-feature-spec/SKILL.md +53 -32
- package/assets/.claude/skills/reverse-engineering-feature-spec/guides/figma-capture.md +9 -9
- package/assets/.claude/skills/starting-new-with-stdd/SKILL.md +2 -2
- package/assets/.claude/skills/starting-new-with-stdd/templates/bootstrap-plan.md +4 -4
- package/assets/.claude/skills/tailoring-spec-format/SKILL.md +7 -7
- package/assets/.claude/skills/verifying-consistency/SKILL.md +1 -1
- package/assets/mcp.json +9 -0
- package/assets/stdd.config.yml.tpl +4 -0
- package/dist/cli.js +1 -0
- package/dist/cli.js.map +1 -1
- package/dist/install.js +20 -1
- package/dist/install.js.map +1 -1
- package/package.json +1 -1
- package/assets/.claude/skills/documenting-specifications/templates/screen-items-definition.md +0 -179
|
@@ -1,184 +1,164 @@
|
|
|
1
|
-
# REQUIREMENTS.md
|
|
1
|
+
# REQUIREMENTS.md テンプレート(feature)
|
|
2
2
|
|
|
3
|
-
**目的**:
|
|
3
|
+
**目的**: 機能の要件を「業務要件 → 機能要件 → 非機能要件」の3層で定義し、後続(TECH_DESIGN / テスト / コード)の一次インプットにする。
|
|
4
4
|
|
|
5
5
|
**配置**: `docs/<app>/<path>/REQUIREMENTS.md`
|
|
6
6
|
|
|
7
|
-
##
|
|
8
|
-
|
|
9
|
-
```markdown
|
|
10
|
-
# [機能名] 仕様書
|
|
11
|
-
|
|
12
|
-
---
|
|
13
|
-
|
|
14
|
-
## 1. 概要
|
|
15
|
-
|
|
16
|
-
### 解決する問題
|
|
17
|
-
|
|
18
|
-
(この機能が解決する問題)
|
|
19
|
-
|
|
20
|
-
### 対象ユーザー
|
|
21
|
-
|
|
22
|
-
(対象ユーザー)
|
|
7
|
+
## 章立ての骨格(3層 + コア/拡張)
|
|
23
8
|
|
|
24
|
-
|
|
9
|
+
必ず **業務要件 → 機能要件 → 非機能要件** の順に並べる。
|
|
10
|
+
**機能要件は、アプリ種別を問わない「コア」と、機能の性質に応じた「拡張」に分ける**(章立てを特定アプリ・技術スタックに依存させないため)。
|
|
25
11
|
|
|
26
|
-
|
|
12
|
+
| 区分 | セクション | 適用 |
|
|
13
|
+
|---|---|---|
|
|
14
|
+
| 業務要件〔コア〕 | 解決する問題・対象ユーザー・ビジネス目標 | 常に |
|
|
15
|
+
| 機能要件・コア | ユースケース(振る舞い+受入基準)・業務ルール | 常に |
|
|
16
|
+
| 機能要件・拡張 | 指標定義 / UI・画面 / 外部インターフェース | **該当する機能のみ(無ければ章ごと省略)** |
|
|
17
|
+
| 非機能要件〔コア〕 | 性能・可用性・セキュリティ・アクセシビリティ 等 | 常に |
|
|
18
|
+
| スコープ外〔コア〕 | 対応しない項目 | 常に |
|
|
27
19
|
|
|
28
|
-
|
|
20
|
+
**拡張章の適用基準**:
|
|
29
21
|
|
|
30
|
-
|
|
22
|
+
- **指標定義** … 集計・分析・KPI を持つ機能(ダッシュボード等)
|
|
23
|
+
- **UI/UX・画面** … 画面を持つ機能(API・バッチには不要)
|
|
24
|
+
- **外部インターフェース** … 外部システム連携・API を持つ機能
|
|
31
25
|
|
|
32
|
-
|
|
26
|
+
> コア章だけで要件定義として成立する。拡張章はアプリ種別に依存する部分をここに隔離し、該当しない機能では付けない。
|
|
33
27
|
|
|
34
|
-
|
|
28
|
+
## 記法の役割分担(重要)
|
|
35
29
|
|
|
36
|
-
|
|
30
|
+
ユースケースは **振る舞い(番号付き手順)+ 受入基準(EARS)** の2部構成で書く。
|
|
37
31
|
|
|
38
|
-
1.
|
|
39
|
-
|
|
40
|
-
3. ユーザーは...する
|
|
32
|
+
- **振る舞い → 番号付き手順(1. 2. 3. …)**: ユーザー操作とシステム応答の主要フロー。**各ステップの主語を明示**(「ユーザーは〜」「システムは〜」)。E2E テストの骨格になる。抽象(ビジネス言語)に保ち、テストデータ・セレクタはテストコード側へ。
|
|
33
|
+
- **受入基準・制約 → EARS**: フローが満たすべき詳細条件・例外・データ制約。手順と重複させず、例外・境界・横断ルールを担う。
|
|
41
34
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
- xxが...されること
|
|
45
|
-
- xxが...すること
|
|
46
|
-
- xxが...されないこと
|
|
47
|
-
|
|
48
|
-
---
|
|
49
|
-
|
|
50
|
-
### [別のクリティカルパス]
|
|
51
|
-
|
|
52
|
-
**Priority**: P0 (Critical Path)
|
|
53
|
-
|
|
54
|
-
#### 手順
|
|
35
|
+
## テンプレート構造
|
|
55
36
|
|
|
56
|
-
|
|
37
|
+
````markdown
|
|
38
|
+
# [機能名] 要件定義書
|
|
57
39
|
|
|
58
|
-
|
|
40
|
+
> 全体要件は [`docs/common/REQUIREMENTS.md`](../../common/REQUIREMENTS.md) を前提とする。
|
|
59
41
|
|
|
60
|
-
|
|
42
|
+
## 1. 業務要件
|
|
61
43
|
|
|
62
|
-
|
|
44
|
+
### 1.1 解決する問題
|
|
45
|
+
(この機能が解決する業務課題。Why)
|
|
63
46
|
|
|
64
|
-
###
|
|
47
|
+
### 1.2 対象ユーザー / 利用シーン
|
|
48
|
+
(誰が・どんな場面で使うか)
|
|
65
49
|
|
|
66
|
-
|
|
50
|
+
### 1.3 ビジネス目標
|
|
51
|
+
(この機能が支える意思決定・KPI。3〜5項目)
|
|
67
52
|
|
|
68
|
-
|
|
53
|
+
## 2. 機能要件
|
|
69
54
|
|
|
70
|
-
1
|
|
71
|
-
2. システムはエラーメッセージ「...」を表示
|
|
72
|
-
3. ユーザーは...
|
|
55
|
+
### 2.1 ユースケース別 機能要件
|
|
73
56
|
|
|
74
|
-
|
|
57
|
+
ユースケース(ユーザーが達成する単位)ごとに見出し+Priority を立て、
|
|
58
|
+
**振る舞い(手順)** と **受入基準・制約** を併記する。
|
|
75
59
|
|
|
76
|
-
|
|
77
|
-
- ユーザーが次のアクションを理解できる
|
|
60
|
+
#### [ユースケース名]
|
|
78
61
|
|
|
79
|
-
|
|
62
|
+
**Priority**: P0
|
|
80
63
|
|
|
81
|
-
|
|
64
|
+
**振る舞い(手順)**
|
|
82
65
|
|
|
83
|
-
|
|
66
|
+
1. ユーザーは(前提となる状態にある/操作を行う)
|
|
67
|
+
2. システムは…する
|
|
68
|
+
3. ユーザーは…する
|
|
69
|
+
4. システムは…する
|
|
84
70
|
|
|
85
|
-
|
|
71
|
+
**受入基準・制約**
|
|
86
72
|
|
|
87
|
-
|
|
73
|
+
```
|
|
74
|
+
[WHEN] …したとき、システムは、…すること。
|
|
75
|
+
[IF] もし…ならば、システムは、…すること。
|
|
76
|
+
[WHERE] …の場合、システムは、…すること。
|
|
77
|
+
```
|
|
88
78
|
|
|
89
|
-
|
|
79
|
+
### 2.2 業務ルール / 制約
|
|
90
80
|
|
|
91
|
-
|
|
81
|
+
機能横断・常時成立する規則(論理削除除外・代理母集団の注記 等)。
|
|
92
82
|
|
|
93
|
-
|
|
83
|
+
```
|
|
84
|
+
[常時] システムは、…すること。
|
|
85
|
+
```
|
|
94
86
|
|
|
95
|
-
|
|
87
|
+
### 2.3 指標定義(KPI 定義表) 〔拡張:集計・分析を持つ機能のみ。無ければ章ごと省略〕
|
|
96
88
|
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
89
|
+
| 指標 | 定義(What) | 算出ロジック | データソース | 近似・代理 | 注記表示 |
|
|
90
|
+
|------|------|------|------|------|:---:|
|
|
91
|
+
| | | | | | |
|
|
100
92
|
|
|
101
|
-
###
|
|
93
|
+
### 2.4 UI/UX・画面 〔拡張:画面を持つ機能のみ。無ければ章ごと省略〕
|
|
102
94
|
|
|
103
|
-
- [
|
|
95
|
+
- [ワイヤーフレーム一覧](./wireframes/index.html)
|
|
104
96
|
|
|
105
97
|
| 画面 | 状態 | WF |
|
|
106
98
|
|------|------|----|
|
|
107
|
-
| [画面名
|
|
108
|
-
| [画面名2] | 通常 | [画面名2](./wireframes/[screen-2].html) |
|
|
109
|
-
|
|
110
|
-
### 画面ごとの要点
|
|
111
|
-
|
|
112
|
-
#### [画面名1]
|
|
113
|
-
|
|
114
|
-
- 主な操作(ボタン文言): [検索] / [新規登録] / ...
|
|
115
|
-
- 表示要素: (ヘッダー / 検索条件 / 一覧 / ページネーション など要点)
|
|
116
|
-
- インタラクション: (選択・遷移・送信時の挙動)
|
|
117
|
-
|
|
118
|
-
#### [画面名2]
|
|
99
|
+
| [画面名] | 通常 / 空 / エラー | [画面](./wireframes/[screen].html) |
|
|
119
100
|
|
|
120
|
-
|
|
121
|
-
- 表示要素: ...
|
|
122
|
-
|
|
123
|
-
---
|
|
124
|
-
|
|
125
|
-
### 表示要素
|
|
101
|
+
#### 表示要素
|
|
126
102
|
|
|
127
103
|
| 要素 | 説明 |
|
|
128
104
|
|------|------|
|
|
129
|
-
|
|
|
130
|
-
| 要素名 | 説明 |
|
|
105
|
+
| | |
|
|
131
106
|
|
|
132
|
-
|
|
107
|
+
> 画面状態(通常 / 空 / ローディング / エラー)の表示設計は TECH_DESIGN.md(画面項目定義)で扱う。
|
|
133
108
|
|
|
134
|
-
###
|
|
109
|
+
### 2.5 外部インターフェース 〔拡張:連携・API を持つ機能のみ。無ければ章ごと省略〕
|
|
135
110
|
|
|
136
|
-
|
|
111
|
+
(外部システム連携・API の入出力概要を業務視点で。プロトコル・スキーマ詳細は TECH_DESIGN)
|
|
137
112
|
|
|
138
|
-
|
|
113
|
+
## 3. 非機能要件
|
|
139
114
|
|
|
140
|
-
|
|
115
|
+
(機能固有の品質特性のみ記載。共通は common §6 を参照。固有要件が無ければ「common 準拠」と明記)
|
|
141
116
|
|
|
142
|
-
|
|
143
|
-
- 詳細説明
|
|
117
|
+
## 4. スコープ外
|
|
144
118
|
|
|
145
|
-
|
|
146
|
-
|
|
119
|
+
- (この機能で対応しない項目 / 別 feature の項目)
|
|
120
|
+
````
|
|
147
121
|
|
|
148
|
-
|
|
122
|
+
## 記法ルール
|
|
149
123
|
|
|
150
|
-
|
|
124
|
+
### 振る舞い → 番号付き手順
|
|
151
125
|
|
|
152
|
-
|
|
126
|
+
- `1. 2. 3. …` でユーザー操作とシステム応答の主要フロー(ハッピーパス+主要分岐)を記述。1ユースケース=1つの主要フロー。
|
|
127
|
+
- **各ステップの主語を明示する**(「ユーザーは〜する」「システムは〜する」)。ユーザーの操作とシステムの応答を主語で区別する。
|
|
128
|
+
- 前提となる状態は手順の冒頭ステップに書く(例: 「1. ユーザーは認可済みでダッシュボードに到達している」)。
|
|
129
|
+
- **抽象(ビジネス言語)に保つ**。テストデータ・セレクタ・実装詳細は書かず、テストコード側に委ねる。これがそのまま E2E テストの骨格になる。
|
|
153
130
|
|
|
154
|
-
|
|
155
|
-
- ✅ [達成すべき項目2]
|
|
156
|
-
- ✅ [達成すべき項目3]
|
|
131
|
+
### 受入基準・業務ルール → EARS(5パターン)
|
|
157
132
|
|
|
158
|
-
|
|
133
|
+
| パターン | 形 |
|
|
134
|
+
|---|---|
|
|
135
|
+
| 常時 | システムは、〜すること |
|
|
136
|
+
| イベント (WHEN) | 〜したとき、システムは、〜すること |
|
|
137
|
+
| 状態 (WHILE) | 〜の間、システムは、〜すること |
|
|
138
|
+
| 異常 (IF / THEN) | もし〜ならば、システムは、〜すること |
|
|
139
|
+
| オプション (WHERE) | 〜の場合、システムは、〜すること |
|
|
159
140
|
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
- (この機能で対応しない項目)
|
|
163
|
-
- (将来的な拡張として残す項目)
|
|
164
|
-
```
|
|
141
|
+
- 振る舞い(手順)と重複させず、EARS は例外・境界・データ制約・横断ルールを網羅する。
|
|
142
|
+
- 各要件は観測可能・検証可能(テスト1件に落ちる粒度)。曖昧語(適切に / 正しく / きちんと)は禁止。
|
|
165
143
|
|
|
166
|
-
##
|
|
144
|
+
## 記載基準チェックリスト(作成後に必ず実行)
|
|
167
145
|
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
146
|
+
```
|
|
147
|
+
□ コア章(業務要件/機能要件のユースケース+業務ルール/非機能要件/スコープ外)が揃っている
|
|
148
|
+
□ 拡張章(指標定義・UI/UX・外部IF)は該当する機能のみ。不要なら章ごと省略している
|
|
149
|
+
□ 業務要件・機能要件・非機能要件の3層が揃っている(非機能が「common 準拠」でも明記)
|
|
150
|
+
□ 全ユースケースに Priority+振る舞い(番号付き手順・主語明示)+受入基準(EARS)がある
|
|
151
|
+
□ 振る舞い手順は主要フロー(抽象)に保たれ、テストデータ・セレクタが混入していない
|
|
152
|
+
□ 受入基準(EARS)が例外・境界・データ制約を網羅している(エッジケースは IF/WHERE で統合)
|
|
153
|
+
□ 指標を持つ機能は §2.3 指標定義表が埋まっている(算出/データソース/代理注記)
|
|
154
|
+
□ 近似・代理指標は「注記表示=必須」が明記されている
|
|
155
|
+
□ 履歴・経緯・version 記述が無い(SSOT 違反 grep を流用)
|
|
156
|
+
```
|
|
176
157
|
|
|
177
|
-
|
|
158
|
+
## 記述しない内容(責務分界)
|
|
178
159
|
|
|
179
|
-
-
|
|
180
|
-
-
|
|
181
|
-
-
|
|
182
|
-
-
|
|
183
|
-
-
|
|
184
|
-
- 実装方法の詳細(TECH_DESIGN.mdに記載)
|
|
160
|
+
- ロジック設計・集計実装・画面項目 × バリデーション × DB マッピング → **TECH_DESIGN.md**
|
|
161
|
+
- テーブル定義 → common **TABLE_DEFINITION.md** / API 設計 → common **API_SPEC.md**
|
|
162
|
+
- テスト戦略 → **TEST_PLAN.md** / E2E テストの実装詳細(テストデータ・セレクタ・step 実装)→ **テストコード**
|
|
163
|
+
- 実装ファイルへの参照・関数名・クラス名などのコード詳細
|
|
164
|
+
- 履歴・経緯・「今回の変更」(SSOT 原則)
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
# TABLE_DEFINITION.md テンプレート(common)
|
|
2
|
+
|
|
3
|
+
**目的**: プロジェクトの全テーブル定義を集約する正典(実装・DB 設計・QA の SSoT)。各 feature の `TECH_DESIGN.md` は本書を**参照**し、テーブル・カラムを再定義しない。
|
|
4
|
+
|
|
5
|
+
**配置**: `docs/common/TABLE_DEFINITION.md`(`.stdd.config.yml` の `docs.layout.common_table_definition` に従う)
|
|
6
|
+
|
|
7
|
+
## 章立ての骨格
|
|
8
|
+
|
|
9
|
+
- テーブルごとに「カード(見出し+カラム表)」で表現する。
|
|
10
|
+
- 列は **`カラム名 / データ型 / NULL / 説明`** の 4 列。主キーは `🔑` で示す。
|
|
11
|
+
- **ER 図は持たない**(リレーションが必要な場合は各カラムの説明に「FK → <table>.<column>」と記す)。
|
|
12
|
+
- テーブルが多い場合はドメイングループ見出し(`# ユーザー系` 等)で束ねる。
|
|
13
|
+
|
|
14
|
+
**含めない**:
|
|
15
|
+
|
|
16
|
+
- インデックス / RLS / トリガ等の DB メタデータ詳細 → 必要なら各 feature の `TECH_DESIGN.md`(ロジック設計 / 非機能要件)
|
|
17
|
+
- 集計・変換などのロジック設計 → 各 feature の `TECH_DESIGN.md`(ロジック設計)
|
|
18
|
+
- 実装の進捗・履歴(SSoT として常に最新のスキーマのみ保持する)
|
|
19
|
+
|
|
20
|
+
## 確度マーカーの運用
|
|
21
|
+
|
|
22
|
+
- 確信が持てないカラム・型は、説明欄に **要確認マーカー** を仮説とセットで置く(`⚠️要確認(仮説: … / 確認: …)`)。ユーザーが是非を確定したら除去する。構文の正典は [documenting-specifications SKILL「要確認マーカー」](../SKILL.md) を参照。
|
|
23
|
+
|
|
24
|
+
## テンプレート構造
|
|
25
|
+
|
|
26
|
+
````markdown
|
|
27
|
+
# [サービス名] テーブル定義
|
|
28
|
+
|
|
29
|
+
> 全テーブル定義の正典(SSoT)。各機能の `TECH_DESIGN.md` は本書を参照する。
|
|
30
|
+
> 生成された型定義 / マイグレーションを正とし、本書はそれに追従する。
|
|
31
|
+
>
|
|
32
|
+
> **最終更新**: [yyyy-mm-dd]
|
|
33
|
+
|
|
34
|
+
## 設計方針
|
|
35
|
+
|
|
36
|
+
- **主キー**: [UUID / 連番 等]
|
|
37
|
+
- **削除方針**: [論理削除 / 物理削除・判定カラム(例: `deleted_at IS NULL` で有効)]
|
|
38
|
+
- **時系列**: [`created_at` / `updated_at` の方針]
|
|
39
|
+
- **命名規則**: [テーブル / カラムの命名規則]
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## [ドメイングループ名(例: ユーザー系)]
|
|
44
|
+
|
|
45
|
+
### users (PK: user_id ・ N カラム)
|
|
46
|
+
|
|
47
|
+
| カラム名 | データ型 | NULL | 説明 |
|
|
48
|
+
| --- | --- | --- | --- |
|
|
49
|
+
| 🔑 user_id | UUID | NOT NULL | ユーザー ID |
|
|
50
|
+
| email | VARCHAR(255) | 許容 | メールアドレス |
|
|
51
|
+
| referred_by | UUID | 許容 | 紹介元ユーザー ID(FK → users.user_id) |
|
|
52
|
+
| status | INTEGER | 許容 | 状態区分 |
|
|
53
|
+
| last_login_at | TIMESTAMP | 許容 | 最終ログイン日時(最新のみ・履歴なし) |
|
|
54
|
+
| created_at | TIMESTAMP | NOT NULL | 登録日時 |
|
|
55
|
+
| updated_at | TIMESTAMP | 許容 | 更新日時 |
|
|
56
|
+
| deleted_at | TIMESTAMP | 許容 | 論理削除日時(NULL で有効レコード) |
|
|
57
|
+
|
|
58
|
+
### [次のテーブル] (PK: [pk] ・ N カラム)
|
|
59
|
+
|
|
60
|
+
| カラム名 | データ型 | NULL | 説明 |
|
|
61
|
+
| --- | --- | --- | --- |
|
|
62
|
+
| 🔑 [col] | [type] | NOT NULL | ... |
|
|
63
|
+
| [col] | [type] | 許容 | ... |
|
|
64
|
+
````
|
|
65
|
+
|
|
66
|
+
## 記述基準
|
|
67
|
+
|
|
68
|
+
- **型は DB の論理型で表記**(`UUID` / `VARCHAR(255)` / `INTEGER` / `TIMESTAMP` / `BOOLEAN` / `JSONB` 等)。言語固有の型(TS 型等)は持ち込まない(→ feature の TECH_DESIGN)。
|
|
69
|
+
- **NULL 列は `NOT NULL` / `許容` の 2 値**で統一。
|
|
70
|
+
- FK は説明欄に `FK → <table>.<column>` と明記する(ER 図の代替)。
|
|
71
|
+
- 既存 DB に同名カラムがある場合はそれを正とし、無い場合は新規追加として説明欄に「新規」と注記する。
|
|
72
|
+
|
|
73
|
+
## 記述しない内容(責務分界)
|
|
74
|
+
|
|
75
|
+
- 集計・変換・ドメインロジック → 各 feature の `TECH_DESIGN.md`(ロジック設計)
|
|
76
|
+
- 画面項目とのマッピング → 各 feature の `TECH_DESIGN.md`(画面項目定義)
|
|
77
|
+
- インデックス / RLS / トリガ等の詳細 → 必要に応じて feature の `TECH_DESIGN.md`
|
|
78
|
+
- 履歴・経緯・version(SSoT 原則)
|