@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
package/assets/.claude/skills/documenting-specifications/templates/screen-items-definition.md
DELETED
|
@@ -1,179 +0,0 @@
|
|
|
1
|
-
# SCREEN_ITEMS_DEFINITION.md テンプレート
|
|
2
|
-
|
|
3
|
-
**目的**: 画面の入力項目・表示項目を「UI × バリデーション × DBマッピング」の粒度で定義する実装SSoT(Single Source of Truth)
|
|
4
|
-
|
|
5
|
-
**配置**: `docs/<app>/<path>/SCREEN_ITEMS_DEFINITION.md`
|
|
6
|
-
|
|
7
|
-
**作成タイミング**(オプション。以下に当てはまる画面で作成を検討):
|
|
8
|
-
|
|
9
|
-
- フォーム項目が多い画面
|
|
10
|
-
- 複雑なバリデーションルール/操作モード(Create / Edit / View)がある
|
|
11
|
-
- 表示形式(フォーマット・単位)や DB カラムとの対応の明示が必要
|
|
12
|
-
|
|
13
|
-
**画面タイプ別の使い分け**:
|
|
14
|
-
|
|
15
|
-
| 画面タイプ | 使うセクション |
|
|
16
|
-
| --- | --- |
|
|
17
|
-
| 入力フォーム(登録・編集) | 0. 操作モード / 1. 画面項目定義(入力) / 操作ボタン定義 / 3. バリデーション適用ルール |
|
|
18
|
-
| 一覧・検索 | 1.x 検索条件項目 + 1.x 一覧表示項目 |
|
|
19
|
-
| 詳細・表示専用 | 1. 画面項目定義(表示) + 表示レイアウト |
|
|
20
|
-
|
|
21
|
-
不要なセクション(操作モード・バリデーション適用ルール等)は表示専用画面では省略してよい。
|
|
22
|
-
|
|
23
|
-
> **記述粒度の方針**: 本書は技術スタック非依存とする。言語固有の型(TS型等)・ORM・フレームワーク詳細は記載せず TECH_DESIGN.md に委ねる。DBマッピング(保存先テーブル・カラム)は画面項目と DB スキーマの対応を示す SSoT として記載する。
|
|
24
|
-
|
|
25
|
-
## テンプレート構造
|
|
26
|
-
|
|
27
|
-
```markdown
|
|
28
|
-
# [画面名]([SCREEN_ID])画面項目定義
|
|
29
|
-
|
|
30
|
-
本ドキュメントは、[画面名]画面における **画面項目定義(実装SSoT)** を定義する。
|
|
31
|
-
|
|
32
|
-
- 画面レイアウト(Excel / 画像 / WF)を正(SSoT)とする
|
|
33
|
-
- DB スキーマは画面項目定義に追従する(DB のメタデータは本書には定義しない)
|
|
34
|
-
- SELECT 項目は label-only(表示文字列=保存値)とする
|
|
35
|
-
- デフォルト値の表記は **null で統一**する
|
|
36
|
-
|
|
37
|
-
---
|
|
38
|
-
|
|
39
|
-
## 0. 操作モード定義 ← 入力フォームの場合のみ
|
|
40
|
-
|
|
41
|
-
| モード | 説明 |
|
|
42
|
-
| ------ | -------------------------- |
|
|
43
|
-
| Create | 新規登録時の操作 |
|
|
44
|
-
| Edit | 既存編集時の操作 |
|
|
45
|
-
| View | 参照専用モード(初期表示) |
|
|
46
|
-
|
|
47
|
-
※ View モードではすべての項目を非活性とする(表中には明示しない)
|
|
48
|
-
|
|
49
|
-
---
|
|
50
|
-
|
|
51
|
-
## 1. 画面項目定義(UI × Validation × DB Mapping)
|
|
52
|
-
|
|
53
|
-
### 表記ルール ← 操作モードを持つ画面のみ
|
|
54
|
-
|
|
55
|
-
- **必須条件**:操作モード(Create / Edit)ごとの必須可否を記載(例: Create: 必須 / Edit: 必須)
|
|
56
|
-
- **活性条件**:操作モード(Create / Edit)ごとの入力可否を記載(例: Create: 活性 / Edit: 非活性)
|
|
57
|
-
- **デフォルト値**:新規登録時(Create)のみ適用
|
|
58
|
-
- **SELECT定義**:`2. SELECT項目定義` 内の参照先ID(例: `S.1 業界`)を記載
|
|
59
|
-
|
|
60
|
-
#### 列の意味(列レジェンド)
|
|
61
|
-
|
|
62
|
-
| 列 | 内容 |
|
|
63
|
-
| --- | --- |
|
|
64
|
-
| 項目名 | 画面に表示するラベル |
|
|
65
|
-
| 必須(条件) | 必須可否。操作モードがある場合はモードごと |
|
|
66
|
-
| 活性(条件) | 入力可否。操作モードがある場合はモードごと |
|
|
67
|
-
| デフォルト値 | Create 時の初期値(なければ null) |
|
|
68
|
-
| 入力コンポーネント | Text / TextArea / Number / Date / Select / Checkbox / Tag など |
|
|
69
|
-
| 制約 | maxLen / 範囲(0–100)/ 相関(From ≤ To)/ 形式 など |
|
|
70
|
-
| SELECT定義 | SELECT 項目の参照先ID(なければ – ) |
|
|
71
|
-
| DBテーブル | 保存先テーブル |
|
|
72
|
-
| DBカラム | 保存先カラム |
|
|
73
|
-
| 備考 | 連動・特記事項(新規カラム・FK 等もここに記す) |
|
|
74
|
-
|
|
75
|
-
---
|
|
76
|
-
|
|
77
|
-
### 1.1 [セクション名(例: 基本情報)] ← 入力フォーム
|
|
78
|
-
|
|
79
|
-
| 項目名 | 必須条件 | 活性条件 | デフォルト値(Create) | 入力コンポーネント | 制約 | SELECT定義 | DBテーブル | DBカラム | 備考 |
|
|
80
|
-
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
|
|
81
|
-
| [項目名] | Create: 必須 / Edit: 必須 | Create: 活性 / Edit: 活性 | null | Text | maxLen=100 | – | [table] | [column] | |
|
|
82
|
-
| [項目名] | Create: 任意 / Edit: 任意 | Create: 活性 / Edit: 活性 | null | Select | – | S.1 [選択肢名] | [table] | [column] | |
|
|
83
|
-
|
|
84
|
-
---
|
|
85
|
-
|
|
86
|
-
### 1.x 検索条件項目 ← 一覧・検索画面
|
|
87
|
-
|
|
88
|
-
| 項目名 | 必須 | 活性 | デフォルト値 | 入力コンポーネント | 制約 | SELECT定義 | DBテーブル | DBカラム | 備考 |
|
|
89
|
-
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
|
|
90
|
-
| [項目名] | 任意 | 活性 | null | Text | 部分一致 | – | [table] | [column] | OR検索 |
|
|
91
|
-
|
|
92
|
-
### 1.x 一覧表示項目 ← 一覧・検索画面
|
|
93
|
-
|
|
94
|
-
| 項目名 | 表示 | ソート | DBテーブル | DBカラム | 備考 |
|
|
95
|
-
| --- | --- | --- | --- | --- | --- |
|
|
96
|
-
| [項目名] | ○ | ○ | [table] | [column] | |
|
|
97
|
-
|
|
98
|
-
---
|
|
99
|
-
|
|
100
|
-
### 1.x [タブ名]表示項目 ← 詳細・表示専用画面
|
|
101
|
-
|
|
102
|
-
| 項目名 | 表示 | DBテーブル | DBカラム | 備考 |
|
|
103
|
-
| --- | --- | --- | --- | --- |
|
|
104
|
-
| [項目名] | ○ | [table] | [column] | 表示形式(例: 「XX歳」/ From–To)を備考に記載 |
|
|
105
|
-
|
|
106
|
-
---
|
|
107
|
-
|
|
108
|
-
### 1.x 操作ボタン定義 ← ボタンを持つ画面
|
|
109
|
-
|
|
110
|
-
| ボタン名 | 表示条件 | 活性条件 | アクション | 備考 |
|
|
111
|
-
| --- | --- | --- | --- | --- |
|
|
112
|
-
| [登録] | Create / Edit モード | Create: 活性 / Edit: 活性 / View: 非活性 | 全バリデーション後に保存 | |
|
|
113
|
-
| [キャンセル] | Create / Edit モード | Create: 活性 / Edit: 活性 | 未保存変更があれば破棄確認 | |
|
|
114
|
-
|
|
115
|
-
---
|
|
116
|
-
|
|
117
|
-
## 2. SELECT項目定義(共通参照)
|
|
118
|
-
|
|
119
|
-
- 本画面で使用する SELECT 項目の選択肢は共通定義(例: `[SELECT_ITEM_DEFINITION.md](../../../common/SELECT_ITEM_DEFINITION.md)`)を参照する。
|
|
120
|
-
- 表中の「SELECT定義」列には、参照先ID(例: `S.1 業界`)を記載する。
|
|
121
|
-
- 共通定義を持たない場合は、本セクションに `S.x [名称]` 単位で選択肢一覧を直接定義する。
|
|
122
|
-
|
|
123
|
-
---
|
|
124
|
-
|
|
125
|
-
## 3. バリデーション適用ルール ← 下書き保存等のモードがある画面
|
|
126
|
-
|
|
127
|
-
| バリデーション種別 | 説明 | Create / Edit(本登録) | 下書き保存 |
|
|
128
|
-
| --- | --- | --- | --- |
|
|
129
|
-
| 必須チェック | 必須条件列で「必須」と定義された項目の入力有無を検証 | ✅ 適用 | ❌ スキップ |
|
|
130
|
-
| 型チェック | 型の整合性を検証 | ✅ 適用 | ✅ 適用 |
|
|
131
|
-
| 桁数・文字数チェック | maxLen 等の上限値を検証 | ✅ 適用 | ✅ 適用 |
|
|
132
|
-
| 形式チェック | 日付・メール等のフォーマットを検証 | ✅ 適用 | ✅ 適用 |
|
|
133
|
-
| 範囲・相関チェック | From ≤ To、0–100 等を検証 | ✅ 適用 | ✅ 適用 |
|
|
134
|
-
|
|
135
|
-
※ スキップされるのは必須チェックのみ。入力値が存在する場合の型・桁数・形式・範囲チェックは常に実施する。
|
|
136
|
-
|
|
137
|
-
---
|
|
138
|
-
|
|
139
|
-
## 4. DBスキーマ変更方針([table])
|
|
140
|
-
|
|
141
|
-
- **1. 画面項目定義の表に記載された DBカラムを正とする**
|
|
142
|
-
- 既存 DB に同一カラム名が存在する場合はそれを利用する
|
|
143
|
-
- 存在しない場合は新規追加する
|
|
144
|
-
- 使用されていないカラムを削除する際は、必ず開発者へ確認をとる
|
|
145
|
-
- 新規追加が必要なカラムも `1. 画面項目定義` 表の DBテーブル / DBカラム に記載し(必要なら備考に「新規」と注記)、別表で再掲しない(SSoTの二重化を避ける)
|
|
146
|
-
|
|
147
|
-
---
|
|
148
|
-
|
|
149
|
-
## 5. 補足
|
|
150
|
-
|
|
151
|
-
- 本ドキュメントは、実装・DB設計・QA における **Single Source of Truth** とする
|
|
152
|
-
- (画面固有の前提: ページング方式・閲覧権限・未登録項目の表示「-」など)
|
|
153
|
-
```
|
|
154
|
-
|
|
155
|
-
## 重要なポイント
|
|
156
|
-
|
|
157
|
-
### 記述すべき内容
|
|
158
|
-
|
|
159
|
-
- 画面に存在するすべての入力項目・表示項目を網羅
|
|
160
|
-
- 各項目の:必須/活性条件、デフォルト値、入力コンポーネント、制約、SELECT参照、DBマッピング(テーブル・カラム)
|
|
161
|
-
- 操作モード(Create / Edit / View)がある場合はモードごとの差異
|
|
162
|
-
- 操作ボタンの表示/活性条件とアクション
|
|
163
|
-
- バリデーション適用ルール(特に下書き保存など必須チェックを緩めるモード)
|
|
164
|
-
|
|
165
|
-
### 記述不要な内容
|
|
166
|
-
|
|
167
|
-
- ユーザージャーニー・画面遷移の文脈 → REQUIREMENTS.md に記載
|
|
168
|
-
- 技術設計・アーキテクチャ・実装コード → TECH_DESIGN.md に記載
|
|
169
|
-
- 言語固有の型定義・実装技術に依存する記述(TS型・ORM・フレームワーク詳細)→ TECH_DESIGN.md に記載
|
|
170
|
-
- DB のメタデータ詳細(インデックス・RLS 等)→ TECH_DESIGN.md に記載
|
|
171
|
-
- 関数名・クラス名・ファイル行番号などのコード参照
|
|
172
|
-
|
|
173
|
-
### 運用上の原則
|
|
174
|
-
|
|
175
|
-
- **画面レイアウト(Excel / 画像 / WF)を正(SSoT)とし、DB スキーマは画面項目定義に追従する**
|
|
176
|
-
- 本書は技術スタック非依存。言語固有の型やフレームワーク詳細は持ち込まない
|
|
177
|
-
- SELECT 項目は label-only(表示文字列=保存値)を基本とする
|
|
178
|
-
- デフォルト値の表記は null で統一する
|
|
179
|
-
- 共通の選択肢は SELECT 共通定義ファイルに切り出し、本書からは参照IDで指す
|