@miniidealab/openlogos 0.3.0 → 0.3.2

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.
@@ -9,7 +9,8 @@ export declare function readConfigName(root: string): NameResult | null;
9
9
  export declare function detectProjectName(root: string): NameResult;
10
10
  export declare const SKILL_NAMES: readonly ["project-init", "prd-writer", "product-designer", "architecture-designer", "scenario-architect", "api-designer", "db-designer", "test-writer", "test-orchestrator", "code-reviewer", "change-writer", "merge-executor"];
11
11
  export declare function findSkillsSource(): string | null;
12
- export declare function deploySkills(root: string, aiTool: AiTool, skillsSource?: string): {
12
+ export declare function generatePolicyMdc(locale: Locale): string;
13
+ export declare function deploySkills(root: string, aiTool: AiTool, locale?: Locale, skillsSource?: string): {
13
14
  target: string;
14
15
  count: number;
15
16
  } | null;
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,MAAM,EAAiD,MAAM,YAAY,CAAC;AAExF,MAAM,MAAM,MAAM,GAAG,QAAQ,GAAG,aAAa,GAAG,OAAO,CAAC;AAExD,KAAK,UAAU,GAAG,UAAU,GAAG,cAAc,GAAG,YAAY,GAAG,gBAAgB,GAAG,WAAW,CAAC;AAE9F,UAAU,UAAU;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,UAAU,CAAC;CACpB;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CA+B9D;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAI1D;AAoED,eAAO,MAAM,WAAW,mOAad,CAAC;AAiBX,wBAAgB,gBAAgB,IAAI,MAAM,GAAG,IAAI,CAahD;AAED,wBAAgB,YAAY,CAC1B,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,YAAY,CAAC,EAAE,MAAM,GACpB;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAiC1C;AAgCD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAE,MAAiB,GAAG,MAAM,CA0CjG;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAYvE;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,MAAM,CAmDpG;AAED,wBAAsB,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,iBAyDvC"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,MAAM,EAAiD,MAAM,YAAY,CAAC;AAExF,MAAM,MAAM,MAAM,GAAG,QAAQ,GAAG,aAAa,GAAG,OAAO,CAAC;AAExD,KAAK,UAAU,GAAG,UAAU,GAAG,cAAc,GAAG,YAAY,GAAG,gBAAgB,GAAG,WAAW,CAAC;AAE9F,UAAU,UAAU;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,UAAU,CAAC;CACpB;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CA+B9D;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAI1D;AAoED,eAAO,MAAM,WAAW,mOAad,CAAC;AAiBX,wBAAgB,gBAAgB,IAAI,MAAM,GAAG,IAAI,CAahD;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAoDxD;AAYD,wBAAgB,YAAY,CAC1B,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,MAAM,GAAE,MAAa,EACrB,YAAY,CAAC,EAAE,MAAM,GACpB;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAkC1C;AAgCD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAE,MAAiB,GAAG,MAAM,CA0CjG;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAYvE;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,MAAM,CA6FpG;AAED,wBAAsB,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,iBAyDvC"}
@@ -139,7 +139,70 @@ export function findSkillsSource() {
139
139
  return devSkills;
140
140
  return null;
141
141
  }
142
- export function deploySkills(root, aiTool, skillsSource) {
142
+ export function generatePolicyMdc(locale) {
143
+ const body = locale === 'zh'
144
+ ? `## ⚠️ 语言策略(最高优先级)
145
+
146
+ 本项目的文档语言为 **中文**(配置于 \`logos/logos.config.json\` → \`locale: "zh"\`)。
147
+
148
+ **你的所有输出——包括生成的文档、代码注释、回复消息——必须使用中文。**
149
+ 即使 Skill 文件使用其他语言编写,你的输出也必须是中文。
150
+ 违反此规则将导致产出不可用。
151
+
152
+ ## ⚠️ 变更管理(必须遵守)
153
+
154
+ **在修改项目源代码或文档之前,必须遵循以下流程:**
155
+
156
+ 1. 确认 \`logos/changes/\` 下是否已有对应的 active 变更提案
157
+ 2. 如果没有,**立即停止编码**,先运行 \`openlogos change <slug>\` 创建提案
158
+ 3. 按照 change-writer Skill 填写 \`proposal.md\` 和 \`tasks.md\`
159
+ 4. 提案经用户 review 通过后才能开始代码实现
160
+ 5. 实现完成后运行 \`openlogos merge <slug>\` 和 \`openlogos archive <slug>\`
161
+
162
+ ### 例外情况
163
+ - 纯 typo 修复(不改变语义)
164
+ - 仅修改 \`.gitignore\`、\`README.md\` 等非方法论文件`
165
+ : `## ⚠️ Language Policy (Highest Priority)
166
+
167
+ This project's document language is **English** (configured in \`logos/logos.config.json\` → \`locale: "en"\`).
168
+
169
+ **ALL your output — including generated documents, code comments, and responses — MUST be in English.**
170
+ Even if Skill files are written in another language, your output MUST be in English.
171
+ Violating this rule will render the output unusable.
172
+
173
+ ## ⚠️ Change Management (Must Follow)
174
+
175
+ **Before modifying any project source code or documents, you MUST follow this workflow:**
176
+
177
+ 1. Check if there is an active change proposal under \`logos/changes/\`
178
+ 2. If NOT, **stop coding immediately** and run \`openlogos change <slug>\` to create a proposal
179
+ 3. Fill in \`proposal.md\` and \`tasks.md\` following the change-writer Skill
180
+ 4. Only proceed with implementation after the user has reviewed and approved the proposal
181
+ 5. After implementation, run \`openlogos merge <slug>\` and \`openlogos archive <slug>\`
182
+
183
+ ### Exceptions
184
+ - Pure typo fixes (no semantic change)
185
+ - Changes to non-methodology files only (\`.gitignore\`, \`README.md\`, etc.)`;
186
+ return `---
187
+ description: "OpenLogos — Project Policy: Language & Change Management (always active)"
188
+ alwaysApply: true
189
+ ---
190
+
191
+ ${body}
192
+ `;
193
+ }
194
+ function resolveSkillFile(sourceDir, skillName, locale) {
195
+ if (locale === 'en') {
196
+ const enPath = join(sourceDir, skillName, 'SKILL.en.md');
197
+ if (existsSync(enPath))
198
+ return enPath;
199
+ }
200
+ const defaultPath = join(sourceDir, skillName, 'SKILL.md');
201
+ if (existsSync(defaultPath))
202
+ return defaultPath;
203
+ return null;
204
+ }
205
+ export function deploySkills(root, aiTool, locale = 'en', skillsSource) {
143
206
  const source = skillsSource ?? findSkillsSource();
144
207
  if (!source || !existsSync(source))
145
208
  return null;
@@ -148,24 +211,25 @@ export function deploySkills(root, aiTool, skillsSource) {
148
211
  const targetDir = join(root, '.cursor', 'rules');
149
212
  mkdirSync(targetDir, { recursive: true });
150
213
  for (const name of SKILL_NAMES) {
151
- const src = join(source, name, 'SKILL.md');
152
- if (existsSync(src)) {
153
- const content = readFileSync(src, 'utf-8');
214
+ const srcPath = resolveSkillFile(source, name, locale);
215
+ if (srcPath) {
216
+ const content = readFileSync(srcPath, 'utf-8');
154
217
  const desc = SKILL_DESCRIPTIONS[name]?.en ?? name;
155
218
  const mdc = `---\ndescription: "OpenLogos — ${desc}"\nalwaysApply: false\n---\n\n${content}`;
156
219
  writeFileSync(join(targetDir, `${name}.mdc`), mdc);
157
220
  count++;
158
221
  }
159
222
  }
223
+ writeFileSync(join(targetDir, 'openlogos-policy.mdc'), generatePolicyMdc(locale));
160
224
  return { target: '.cursor/rules/', count };
161
225
  }
162
226
  const targetDir = join(root, 'logos', 'skills');
163
227
  for (const name of SKILL_NAMES) {
164
228
  const skillDir = join(targetDir, name);
165
229
  mkdirSync(skillDir, { recursive: true });
166
- const src = join(source, name, 'SKILL.md');
167
- if (existsSync(src)) {
168
- copyFileSync(src, join(skillDir, 'SKILL.md'));
230
+ const srcPath = resolveSkillFile(source, name, locale);
231
+ if (srcPath) {
232
+ copyFileSync(srcPath, join(skillDir, 'SKILL.md'));
169
233
  count++;
170
234
  }
171
235
  }
@@ -258,6 +322,19 @@ ${conventionsForYaml(locale)}
258
322
  }
259
323
  export function createAgentsMd(locale, aiTool, target) {
260
324
  const includeSkills = aiTool && target ? shouldIncludeActiveSkills(aiTool, target) : false;
325
+ const langPolicy = locale === 'zh'
326
+ ? `## Language Policy
327
+ 本项目的文档语言配置于 \`logos/logos.config.json\` 的 \`locale\` 字段(当前值:\`"zh"\`)。
328
+ - 所有生成的文档、注释和 AI 回复**必须使用中文**
329
+ - Skill 文件可能使用任何语言编写,但你的输出必须遵循 locale 设置
330
+ - 生成文档前请先检查 \`logos/logos.config.json\`
331
+ `
332
+ : `## Language Policy
333
+ This project's document language is configured in \`logos/logos.config.json\` → \`locale\` field (current value: \`"en"\`).
334
+ - ALL generated documents, comments, and AI responses MUST be in **English**
335
+ - Skill files may be written in any language, but your output MUST follow the locale setting
336
+ - Check \`logos/logos.config.json\` before generating any document
337
+ `;
261
338
  let content = `# AI Assistant Instructions
262
339
 
263
340
  This project follows the **OpenLogos** methodology.
@@ -267,6 +344,7 @@ Read \`logos/logos-project.yaml\` first to understand the project resource index
267
344
  - Config: \`logos/logos.config.json\`
268
345
  - Resource Index: \`logos/logos-project.yaml\`
269
346
 
347
+ ${langPolicy}
270
348
  ## Methodology Rules
271
349
  1. Never write code without first completing the design documents
272
350
  2. Follow the Why → What → How progression
@@ -298,7 +376,33 @@ Phase detection logic:
298
376
  ## Active Skills
299
377
  ${generateActiveSkillsSection(locale)}`;
300
378
  }
379
+ const changeMgmt = locale === 'zh'
380
+ ? `## ⚠️ 变更管理(必须遵守)
381
+
382
+ **修改任何源代码或 Skill 文件之前,必须先创建变更提案:**
383
+
384
+ 1. 运行 \`openlogos change <slug>\` 创建提案目录
385
+ 2. 使用 change-writer Skill 填写 \`proposal.md\` + \`tasks.md\`
386
+ 3. 用户确认后再开始编码
387
+ 4. 完成后运行 \`openlogos merge <slug>\` → \`openlogos archive <slug>\`
388
+
389
+ 唯一例外:纯 typo 修复、README 等非方法论文件的修改。
390
+ **跳过此步骤将违反 OpenLogos 核心方法论。**
391
+ `
392
+ : `## ⚠️ Change Management (Must Follow)
393
+
394
+ **Before modifying ANY source code or Skill files, you MUST create a change proposal first:**
395
+
396
+ 1. Run \`openlogos change <slug>\` to create the proposal directory
397
+ 2. Fill in \`proposal.md\` + \`tasks.md\` using the change-writer Skill
398
+ 3. Only proceed with implementation after user approval
399
+ 4. After completion, run \`openlogos merge <slug>\` → \`openlogos archive <slug>\`
400
+
401
+ Only exception: pure typo fixes and non-methodology files (README, .gitignore, etc.).
402
+ **Skipping this step violates the core OpenLogos methodology.**
403
+ `;
301
404
  content += `
405
+ ${changeMgmt}
302
406
  ## Conventions
303
407
  ${conventionsForAgentsMd(locale)}
304
408
  `;
@@ -336,7 +440,7 @@ export async function init(name) {
336
440
  console.log(` ✓ AGENTS.md`);
337
441
  writeFileSync(join(root, 'CLAUDE.md'), createAgentsMd(locale, aiTool, 'claude'));
338
442
  console.log(` ✓ CLAUDE.md`);
339
- const deployResult = deploySkills(root, aiTool);
443
+ const deployResult = deploySkills(root, aiTool, locale);
340
444
  if (deployResult && deployResult.count > 0) {
341
445
  console.log(` ✓ ${t(locale, 'init.skillsDeployed', { count: String(deployResult.count), target: deployResult.target })}`);
342
446
  }
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
@@ -35,7 +35,7 @@ export function sync() {
35
35
  console.log(' ✓ AGENTS.md updated');
36
36
  writeFileSync(join(root, 'CLAUDE.md'), createAgentsMd(locale, aiTool, 'claude'));
37
37
  console.log(' ✓ CLAUDE.md updated');
38
- const deployResult = deploySkills(root, aiTool);
38
+ const deployResult = deploySkills(root, aiTool, locale);
39
39
  if (deployResult && deployResult.count > 0) {
40
40
  console.log(` ✓ ${t(locale, 'init.skillsSynced', { count: String(deployResult.count), target: deployResult.target })}`);
41
41
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sync.js","sourceRoot":"","sources":["../../src/commands/sync.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync.js","sourceRoot":"","sources":["../../src/commands/sync.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -36,7 +36,7 @@ Examples:
36
36
 
37
37
  Learn more: https://openlogos.ai
38
38
  `;
39
- const VERSION = '0.3.0';
39
+ const VERSION = '0.3.2';
40
40
  async function main() {
41
41
  const args = process.argv.slice(2);
42
42
  if (args.length === 0 || args.includes('--help') || args.includes('-h')) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@miniidealab/openlogos",
3
- "version": "0.3.0",
3
+ "version": "0.3.2",
4
4
  "description": "CLI tool for the OpenLogos software engineering methodology",
5
5
  "type": "module",
6
6
  "bin": {
@@ -0,0 +1,209 @@
1
+ # Skill: API Designer
2
+
3
+ > Design OpenAPI 3.0+ YAML specifications based on sequence diagrams, letting APIs emerge naturally from scenarios rather than being defined in isolation. Every endpoint is traceable to a Step number in the sequence diagrams, ensuring "no scenario, no API design."
4
+
5
+ ## Trigger Conditions
6
+
7
+ - User requests API design or API documentation
8
+ - User mentions "Phase 3 Step 2" or "API design"
9
+ - Scenario sequence diagrams already exist and API specifications need to be refined
10
+ - User provides a specific API endpoint that needs detailed design
11
+
12
+ ## Prerequisites
13
+
14
+ - `logos/resources/prd/3-technical-plan/2-scenario-implementation/` contains scenario sequence diagrams
15
+ - `logos/resources/prd/3-technical-plan/1-architecture/` contains the architecture overview (confirming frontend-backend separation approach, authentication scheme, etc.)
16
+ - `tech_stack` in `logos-project.yaml` is filled in
17
+
18
+ If the sequence diagram directory is empty, prompt the user to complete Phase 3 Step 1 (scenario-architect) first.
19
+
20
+ ## Core Capabilities
21
+
22
+ 1. Extract all cross-system-boundary API calls from sequence diagrams
23
+ 2. Deduplicate, merge, and group by domain to form an endpoint inventory
24
+ 3. Design OpenAPI 3.0+ YAML specifications (paths, parameters, request bodies, response structures)
25
+ 4. Define a unified error response format and error code system
26
+ 5. Design authentication schemes (Bearer Token / API Key / Cookie)
27
+ 6. Design standardized parameters for pagination, sorting, and filtering
28
+
29
+ ## Execution Steps
30
+
31
+ ### Step 1: Read Scenario Context
32
+
33
+ Read the following files to establish complete context:
34
+
35
+ - **Scenario sequence diagrams** (`logos/resources/prd/3-technical-plan/2-scenario-implementation/`): Extract all cross-system-boundary arrows
36
+ - **Architecture overview** (`logos/resources/prd/3-technical-plan/1-architecture/`): Confirm authentication scheme, frontend-backend separation approach, API gateway, etc.
37
+ - **`logos-project.yaml`**: Read `tech_stack` to confirm backend framework and deployment approach
38
+
39
+ ### Step 2: Extract Endpoint Inventory
40
+
41
+ Traverse all scenario sequence diagrams and collect every cross-system-boundary call arrow:
42
+
43
+ 1. Identify "cross-system-boundary" arrows — client to server, server to external service, inter-service calls
44
+ 2. For each arrow, extract: HTTP method, path, source scenario number, and Step number
45
+ 3. Deduplicate and merge — the same endpoint may appear in multiple scenarios (e.g., `POST /api/auth/login` may appear in both S02 and S03)
46
+ 4. Output an endpoint inventory summary for user confirmation:
47
+
48
+ ```markdown
49
+ Identified N API endpoints from sequence diagrams:
50
+
51
+ | # | Method | Path | Source Scenario | Domain |
52
+ |---|--------|------|-----------------|--------|
53
+ | 1 | POST | /api/auth/register | S01 Step 2 | auth |
54
+ | 2 | POST | /api/auth/login | S02 Step 1 | auth |
55
+ | 3 | GET | /api/projects | S04 Step 1 | projects |
56
+ ```
57
+
58
+ ### Step 3: Group by Domain
59
+
60
+ Group endpoints by business domain, with each group corresponding to a YAML file:
61
+
62
+ - `auth.yaml` — Authentication-related (registration, login, logout, password reset)
63
+ - `projects.yaml` — CRUD for core business entities
64
+ - `billing.yaml` — Payment and subscriptions
65
+
66
+ Grouping principles:
67
+ - Operations on the same data entity go together
68
+ - Authentication/authorization is a separate group
69
+ - Third-party service callbacks (e.g., payment callbacks) go under the corresponding business domain
70
+
71
+ ### Step 4: Design Unified Conventions
72
+
73
+ Before generating specific endpoints, establish global conventions:
74
+
75
+ **Authentication scheme** (read from architecture overview):
76
+
77
+ ```yaml
78
+ components:
79
+ securitySchemes:
80
+ bearerAuth:
81
+ type: http
82
+ scheme: bearer
83
+ bearerFormat: JWT
84
+ ```
85
+
86
+ **Unified error response**:
87
+
88
+ ```yaml
89
+ components:
90
+ schemas:
91
+ ErrorResponse:
92
+ type: object
93
+ required: [code, message]
94
+ properties:
95
+ code:
96
+ type: string
97
+ description: Machine-readable error code (e.g., EMAIL_EXISTS)
98
+ message:
99
+ type: string
100
+ description: Human-readable error description
101
+ details:
102
+ type: object
103
+ description: Additional error information (e.g., field-level validation errors)
104
+ ```
105
+
106
+ **Pagination parameters** (applicable to list endpoints):
107
+
108
+ ```yaml
109
+ parameters:
110
+ - name: page
111
+ in: query
112
+ schema: { type: integer, minimum: 1, default: 1 }
113
+ - name: per_page
114
+ in: query
115
+ schema: { type: integer, minimum: 1, maximum: 100, default: 20 }
116
+ ```
117
+
118
+ ### Step 5: Design Detailed Specification per Endpoint
119
+
120
+ Design a complete OpenAPI specification for each endpoint, **output by domain**, pausing after each domain for user review:
121
+
122
+ Each endpoint must include:
123
+ - `operationId`: Unique identifier for code generation
124
+ - `summary`: One-sentence description
125
+ - `description`: Annotate the source sequence diagram step (e.g., `Source: S01 Step 2 → Step 3`)
126
+ - `requestBody`: Schema including all fields (with required, types, validation rules such as minLength/format)
127
+ - `responses`: Cover the normal response + all known exceptions (extracted from EX use cases in sequence diagrams)
128
+
129
+ **Example**:
130
+
131
+ ```yaml
132
+ paths:
133
+ /api/auth/register:
134
+ post:
135
+ operationId: register
136
+ summary: User registration
137
+ description: "Source: S01 Step 2 → Step 3"
138
+ requestBody:
139
+ required: true
140
+ content:
141
+ application/json:
142
+ schema:
143
+ type: object
144
+ required: [email, password]
145
+ properties:
146
+ email: { type: string, format: email }
147
+ password: { type: string, minLength: 8 }
148
+ responses:
149
+ '201':
150
+ description: Registration successful, verification email sent
151
+ content:
152
+ application/json:
153
+ schema:
154
+ type: object
155
+ properties:
156
+ userId: { type: string, format: uuid }
157
+ message: { type: string }
158
+ '409':
159
+ description: "Email already registered (EX-2.1)"
160
+ content:
161
+ application/json:
162
+ schema:
163
+ $ref: '#/components/schemas/ErrorResponse'
164
+ '422':
165
+ description: Request parameter validation failed
166
+ content:
167
+ application/json:
168
+ schema:
169
+ $ref: '#/components/schemas/ErrorResponse'
170
+ ```
171
+
172
+ ### Step 6: Verify Traceability Completeness
173
+
174
+ After output is complete, perform a traceability check:
175
+
176
+ 1. **Forward check**: Every cross-system arrow in the sequence diagrams has a corresponding API endpoint
177
+ 2. **Reverse check**: Every API endpoint's `description` annotates the source Step
178
+ 3. **Exception coverage**: Every EX use case in the sequence diagrams has a corresponding HTTP error response
179
+
180
+ If gaps are found, supplement them before outputting the final version.
181
+
182
+ ## Output Specification
183
+
184
+ - File format: OpenAPI 3.1 YAML
185
+ - Storage location: `logos/resources/api/`
186
+ - Split by domain: `auth.yaml`, `projects.yaml`, `billing.yaml`
187
+ - Each file contains complete `openapi`, `info`, `paths`, and `components` sections
188
+ - Error responses uniformly reference `$ref: '#/components/schemas/ErrorResponse'`
189
+ - Every endpoint's `description` must annotate the source sequence diagram step
190
+
191
+ ## Best Practices
192
+
193
+ - **APIs emerge from sequence diagrams**: If an API cannot be traced back to a sequence diagram, it most likely should not exist. Design sequence diagrams first, then APIs — not the other way around
194
+ - **Path naming**: RESTful style, use plural nouns, `/api/{resource}`
195
+ - **Version prefix**: Do not add a version prefix initially (`/api/auth/register`); add `/api/v2/` when versioning becomes necessary
196
+ - **Status code semantics**: Strictly follow HTTP status code semantics — 200 success, 201 created, 400 bad request, 401 unauthorized, 403 forbidden, 404 not found, 409 conflict, 422 validation failed, 500 server error
197
+ - **Idempotent design**: PUT/DELETE operations must be idempotent
198
+ - **Sensitive data**: Do not include plaintext sensitive information such as passwords or tokens in responses
199
+ - **Output by domain**: Do not output all endpoints at once — output in batches by domain, letting the user review each batch before continuing
200
+ - **Consistent field naming**: Field names in the API should be consistent with column names in the subsequent DB design (or have explicit mapping rules) to avoid unnecessary field transformations in the code layer
201
+
202
+ ## Recommended Prompts
203
+
204
+ The following prompts can be copied directly for use with the AI:
205
+
206
+ - `Help me design APIs`
207
+ - `Generate OpenAPI YAML based on the sequence diagrams`
208
+ - `Help me design the API specifications related to S01`
209
+ - `Help me extract all cross-system calls from the sequence diagrams into APIs`