@orchestrator-claude/cli 1.7.2 → 1.7.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.
Files changed (51) hide show
  1. package/dist/index.d.ts +1 -1
  2. package/dist/index.js +1 -1
  3. package/dist/templates/base/.orchestrator/patterns/legacy/README.md +360 -0
  4. package/dist/templates/base/.orchestrator/patterns/legacy/php/laravel.patterns.json +396 -0
  5. package/dist/templates/base/.orchestrator/templates/legacy/README.md +296 -0
  6. package/dist/templates/base/.orchestrator/templates/legacy/analysis-report.md.hbs +342 -0
  7. package/dist/templates/base/.orchestrator/templates/legacy/api-spec.yaml.hbs +263 -0
  8. package/dist/templates/base/.orchestrator/templates/legacy/business-rules.md.hbs +449 -0
  9. package/dist/templates/base/.orchestrator/templates/legacy/database-schema.md.hbs +356 -0
  10. package/dist/templates/base/.orchestrator/templates/legacy/dead-code-report.md.hbs +330 -0
  11. package/dist/templates/base/.orchestrator/templates/legacy/discovery-report.md.hbs +267 -0
  12. package/dist/templates/base/.orchestrator/templates/legacy/final-report.md.hbs +451 -0
  13. package/dist/templates/base/.orchestrator/templates/legacy/inventory.json.schema +346 -0
  14. package/dist/templates/base/.orchestrator/templates/legacy/migration-roadmap.md.hbs +571 -0
  15. package/dist/templates/base/.orchestrator/templates/legacy/tech-debt.md.hbs +412 -0
  16. package/dist/templates/base/claude/agents/api-extractor.md +665 -0
  17. package/dist/templates/base/claude/agents/business-rule-miner.md +734 -0
  18. package/dist/templates/base/claude/agents/code-archaeologist.md +715 -0
  19. package/dist/templates/base/claude/agents/legacy-discoverer.md +578 -0
  20. package/dist/templates/base/claude/agents/legacy-synthesizer.md +1097 -0
  21. package/dist/templates/base/claude/agents/schema-extractor.md +767 -0
  22. package/dist/templates/workflows/README.md +137 -0
  23. package/dist/templates/workflows/bug-fix.json +73 -0
  24. package/dist/templates/workflows/feature-development.json +87 -0
  25. package/dist/templates/workflows/legacy-analysis.json +288 -0
  26. package/dist/templates/workflows/refactoring.json +73 -0
  27. package/package.json +1 -1
  28. package/templates/base/.orchestrator/patterns/legacy/README.md +360 -0
  29. package/templates/base/.orchestrator/patterns/legacy/php/laravel.patterns.json +396 -0
  30. package/templates/base/.orchestrator/templates/legacy/README.md +296 -0
  31. package/templates/base/.orchestrator/templates/legacy/analysis-report.md.hbs +342 -0
  32. package/templates/base/.orchestrator/templates/legacy/api-spec.yaml.hbs +263 -0
  33. package/templates/base/.orchestrator/templates/legacy/business-rules.md.hbs +449 -0
  34. package/templates/base/.orchestrator/templates/legacy/database-schema.md.hbs +356 -0
  35. package/templates/base/.orchestrator/templates/legacy/dead-code-report.md.hbs +330 -0
  36. package/templates/base/.orchestrator/templates/legacy/discovery-report.md.hbs +267 -0
  37. package/templates/base/.orchestrator/templates/legacy/final-report.md.hbs +451 -0
  38. package/templates/base/.orchestrator/templates/legacy/inventory.json.schema +346 -0
  39. package/templates/base/.orchestrator/templates/legacy/migration-roadmap.md.hbs +571 -0
  40. package/templates/base/.orchestrator/templates/legacy/tech-debt.md.hbs +412 -0
  41. package/templates/base/claude/agents/api-extractor.md +665 -0
  42. package/templates/base/claude/agents/business-rule-miner.md +734 -0
  43. package/templates/base/claude/agents/code-archaeologist.md +715 -0
  44. package/templates/base/claude/agents/legacy-discoverer.md +578 -0
  45. package/templates/base/claude/agents/legacy-synthesizer.md +1097 -0
  46. package/templates/base/claude/agents/schema-extractor.md +767 -0
  47. package/templates/workflows/README.md +137 -0
  48. package/templates/workflows/bug-fix.json +73 -0
  49. package/templates/workflows/feature-development.json +87 -0
  50. package/templates/workflows/legacy-analysis.json +288 -0
  51. package/templates/workflows/refactoring.json +73 -0
@@ -0,0 +1,342 @@
1
+ # Analysis Report: {{projectName}}
2
+
3
+ **Generated:** {{generatedAt}}
4
+ **Agent:** code-archaeologist
5
+ **Workflow Phase:** ANALYZE
6
+ **Codebase Path:** {{codebasePath}}
7
+
8
+ ---
9
+
10
+ ## Executive Summary
11
+
12
+ {{summary}}
13
+
14
+ **Risk Score:** {{riskScore}}/100 ({{riskLevel}})
15
+
16
+ ---
17
+
18
+ ## Findings Overview
19
+
20
+ | Severity | Count | Percentage |
21
+ |----------|-------|------------|
22
+ | ❌ CRITICAL | {{counts.critical}} | {{percentages.critical}}% |
23
+ | ⚠️ HIGH | {{counts.high}} | {{percentages.high}}% |
24
+ | ⚡ MEDIUM | {{counts.medium}} | {{percentages.medium}}% |
25
+ | ℹ️ LOW | {{counts.low}} | {{percentages.low}}% |
26
+ | **Total** | **{{counts.total}}** | **100%** |
27
+
28
+ ---
29
+
30
+ ## ❌ CRITICAL Issues
31
+
32
+ {{#if findings.critical}}
33
+ {{#each findings.critical}}
34
+ ### {{id}}: {{title}}
35
+
36
+ - **Category:** {{category}}
37
+ - **Location:** `{{location.file}}:{{location.line}}`
38
+ - **Impact:** {{impact}}
39
+ - **Risk:** {{risk}}
40
+
41
+ **Description:**
42
+ {{description}}
43
+
44
+ **Evidence:**
45
+ ```{{language}}
46
+ {{codeSnippet}}
47
+ ```
48
+
49
+ **Recommendation:**
50
+ {{recommendation}}
51
+
52
+ **Estimated Fix Time:** {{estimatedFixTime}}
53
+
54
+ ---
55
+
56
+ {{/each}}
57
+ {{else}}
58
+ ✅ No critical issues found.
59
+ {{/if}}
60
+
61
+ ---
62
+
63
+ ## ⚠️ HIGH Priority Issues
64
+
65
+ {{#if findings.high}}
66
+ {{#each findings.high}}
67
+ ### {{id}}: {{title}}
68
+
69
+ - **Category:** {{category}}
70
+ - **Location:** `{{location.file}}:{{location.line}}`
71
+ - **Impact:** {{impact}}
72
+
73
+ **Description:**
74
+ {{description}}
75
+
76
+ **Recommendation:**
77
+ {{recommendation}}
78
+
79
+ ---
80
+
81
+ {{/each}}
82
+ {{else}}
83
+ ✅ No high priority issues found.
84
+ {{/if}}
85
+
86
+ ---
87
+
88
+ ## ⚡ MEDIUM Priority Issues
89
+
90
+ {{#if findings.medium}}
91
+ Total: {{findings.medium.length}} issues
92
+
93
+ {{#each findings.medium}}
94
+ - **{{id}}**: {{title}} - `{{location.file}}:{{location.line}}`
95
+ {{/each}}
96
+
97
+ **Detailed findings in:** `tech-debt.md`
98
+ {{else}}
99
+ ✅ No medium priority issues found.
100
+ {{/if}}
101
+
102
+ ---
103
+
104
+ ## ℹ️ LOW Priority Issues
105
+
106
+ {{#if findings.low}}
107
+ Total: {{findings.low.length}} minor improvements suggested
108
+
109
+ **See full list in:** `tech-debt.md`
110
+ {{else}}
111
+ ✅ No low priority issues found.
112
+ {{/if}}
113
+
114
+ ---
115
+
116
+ ## Code Quality Metrics
117
+
118
+ ### Complexity
119
+
120
+ | Metric | Value | Threshold | Status |
121
+ |--------|-------|-----------|--------|
122
+ | **Average Cyclomatic Complexity** | {{metrics.complexity.average}} | <= 10 | {{#if metrics.complexity.averageExceeds}}⚠️{{else}}✅{{/if}} |
123
+ | **Maximum Cyclomatic Complexity** | {{metrics.complexity.max}} | <= 20 | {{#if metrics.complexity.maxExceeds}}⚠️{{else}}✅{{/if}} |
124
+ | **Files Above Threshold** | {{metrics.complexity.filesAbove}} | 0 | {{#if metrics.complexity.filesAbove}}⚠️{{else}}✅{{/if}} |
125
+ | **God Classes (>500 LOC)** | {{metrics.complexity.godClasses}} | 0 | {{#if metrics.complexity.godClasses}}⚠️{{else}}✅{{/if}} |
126
+
127
+ ### Maintainability
128
+
129
+ | Metric | Value | Threshold | Status |
130
+ |--------|-------|-----------|--------|
131
+ | **Maintainability Index** | {{metrics.maintainability.index}} | >= 65 | {{#if metrics.maintainability.indexBelow}}⚠️{{else}}✅{{/if}} |
132
+ | **Comment Ratio** | {{metrics.maintainability.commentRatio}}% | >= 15% | {{#if metrics.maintainability.commentRatioBelow}}⚠️{{else}}✅{{/if}} |
133
+ | **Duplicate Code** | {{metrics.maintainability.duplication}}% | <= 5% | {{#if metrics.maintainability.duplicationAbove}}⚠️{{else}}✅{{/if}} |
134
+
135
+ ### Test Coverage
136
+
137
+ | Metric | Value | Threshold | Status |
138
+ |--------|-------|-----------|--------|
139
+ | **Line Coverage** | {{metrics.coverage.lines}}% | >= 80% | {{#if metrics.coverage.linesBelow}}⚠️{{else}}✅{{/if}} |
140
+ | **Branch Coverage** | {{metrics.coverage.branches}}% | >= 75% | {{#if metrics.coverage.branchesBelow}}⚠️{{else}}✅{{/if}} |
141
+ | **Files Without Tests** | {{metrics.coverage.untested}} | 0 | {{#if metrics.coverage.untested}}⚠️{{else}}✅{{/if}} |
142
+
143
+ ---
144
+
145
+ ## Security Analysis
146
+
147
+ ### Vulnerabilities Detected
148
+
149
+ {{#if security.vulnerabilities}}
150
+ ❌ **{{security.vulnerabilities.length}} security vulnerabilities found**
151
+
152
+ {{#each security.vulnerabilities}}
153
+ #### {{id}}: {{title}}
154
+ - **Severity:** {{severity}}
155
+ - **Category:** {{category}}
156
+ - **Location:** `{{location.file}}:{{location.line}}`
157
+ - **CWE:** {{cwe}}
158
+ - **Fix:** {{fix}}
159
+
160
+ {{/each}}
161
+ {{else}}
162
+ ✅ No security vulnerabilities detected.
163
+ {{/if}}
164
+
165
+ ### Hardcoded Secrets
166
+
167
+ {{#if security.secrets}}
168
+ ❌ **{{security.secrets.length}} hardcoded secrets found**
169
+
170
+ **IMPORTANT:** All secrets have been sanitized in this report and replaced with `[REDACTED]`.
171
+
172
+ {{#each security.secrets}}
173
+ - **{{type}}** in `{{location.file}}:{{location.line}}` - **Action:** Rotate immediately
174
+ {{/each}}
175
+ {{else}}
176
+ ✅ No hardcoded secrets detected.
177
+ {{/if}}
178
+
179
+ ### Insecure Patterns
180
+
181
+ {{#if security.insecurePatterns}}
182
+ {{#each security.insecurePatterns}}
183
+ - **{{pattern}}** ({{count}} occurrences) - {{description}}
184
+ {{/each}}
185
+ {{else}}
186
+ ✅ No insecure patterns detected.
187
+ {{/if}}
188
+
189
+ ---
190
+
191
+ ## Architectural Issues
192
+
193
+ ### Dependency Analysis
194
+
195
+ {{#if architecture.circularDependencies}}
196
+ ⚠️ **Circular dependencies detected**
197
+
198
+ {{#each architecture.circularDependencies}}
199
+ - {{cycle}}
200
+ {{/each}}
201
+ {{else}}
202
+ ✅ No circular dependencies.
203
+ {{/if}}
204
+
205
+ ### Coupling & Cohesion
206
+
207
+ | Metric | Value | Threshold | Status |
208
+ |--------|-------|-----------|--------|
209
+ | **Afferent Coupling** | {{architecture.coupling.afferent}} | - | - |
210
+ | **Efferent Coupling** | {{architecture.coupling.efferent}} | - | - |
211
+ | **Instability** | {{architecture.coupling.instability}} | <= 0.5 | {{#if architecture.coupling.unstable}}⚠️{{else}}✅{{/if}} |
212
+
213
+ ### SOLID Violations
214
+
215
+ {{#if architecture.solidViolations}}
216
+ {{#each architecture.solidViolations}}
217
+ - **{{principle}}**: {{description}} (`{{location.file}}`)
218
+ {{/each}}
219
+ {{else}}
220
+ ✅ No obvious SOLID violations detected.
221
+ {{/if}}
222
+
223
+ ---
224
+
225
+ ## Dead Code Analysis
226
+
227
+ **See detailed report in:** `dead-code-report.md`
228
+
229
+ | Category | Count | Estimated LOC |
230
+ |----------|-------|---------------|
231
+ | Unused Functions | {{deadCode.unusedFunctions}} | {{deadCode.unusedFunctionsLOC}} |
232
+ | Unused Classes | {{deadCode.unusedClasses}} | {{deadCode.unusedClassesLOC}} |
233
+ | Unused Variables | {{deadCode.unusedVariables}} | - |
234
+ | Unreachable Code | {{deadCode.unreachable}} | {{deadCode.unreachableLOC}} |
235
+ | **Total** | **{{deadCode.total}}** | **{{deadCode.totalLOC}}** (~{{deadCode.percentageOfCodebase}}% of codebase) |
236
+
237
+ ---
238
+
239
+ ## Code Smells
240
+
241
+ {{#if codeSmells}}
242
+ {{#each codeSmells}}
243
+ ### {{name}}
244
+ - **Occurrences:** {{count}}
245
+ - **Severity:** {{severity}}
246
+ - **Description:** {{description}}
247
+ - **Refactoring:** {{refactoring}}
248
+
249
+ {{/each}}
250
+ {{else}}
251
+ ✅ No major code smells detected.
252
+ {{/if}}
253
+
254
+ ---
255
+
256
+ ## SQL & Database Issues
257
+
258
+ {{#if database.issues}}
259
+ {{#each database.issues}}
260
+ - **{{type}}**: {{description}} (`{{location.file}}:{{location.line}}`)
261
+ {{/each}}
262
+ {{else}}
263
+ ✅ No database-related issues detected.
264
+ {{/if}}
265
+
266
+ ---
267
+
268
+ ## Performance Concerns
269
+
270
+ {{#if performance.concerns}}
271
+ {{#each performance.concerns}}
272
+ ### {{title}}
273
+ - **Impact:** {{impact}}
274
+ - **Location:** `{{location.file}}:{{location.line}}`
275
+ - **Recommendation:** {{recommendation}}
276
+
277
+ {{/each}}
278
+ {{else}}
279
+ ✅ No performance concerns identified.
280
+ {{/if}}
281
+
282
+ ---
283
+
284
+ ## Technical Debt Score
285
+
286
+ **Total Tech Debt:** {{techDebt.score}}/100
287
+
288
+ | Category | Score | Weight | Contribution |
289
+ |----------|-------|--------|--------------|
290
+ | Code Quality | {{techDebt.categories.quality.score}} | {{techDebt.categories.quality.weight}}% | {{techDebt.categories.quality.contribution}} |
291
+ | Security | {{techDebt.categories.security.score}} | {{techDebt.categories.security.weight}}% | {{techDebt.categories.security.contribution}} |
292
+ | Architecture | {{techDebt.categories.architecture.score}} | {{techDebt.categories.architecture.weight}}% | {{techDebt.categories.architecture.contribution}} |
293
+ | Testing | {{techDebt.categories.testing.score}} | {{techDebt.categories.testing.weight}}% | {{techDebt.categories.testing.contribution}} |
294
+ | Documentation | {{techDebt.categories.documentation.score}} | {{techDebt.categories.documentation.weight}}% | {{techDebt.categories.documentation.contribution}} |
295
+
296
+ **Estimated Remediation Effort:** {{techDebt.remediationEffort}} hours
297
+
298
+ ---
299
+
300
+ ## Recommendations
301
+
302
+ ### Immediate Actions (Critical)
303
+
304
+ {{#each recommendations.immediate}}
305
+ {{@index}}. {{text}}
306
+ {{/each}}
307
+
308
+ ### Short-Term (High Priority)
309
+
310
+ {{#each recommendations.shortTerm}}
311
+ {{@index}}. {{text}}
312
+ {{/each}}
313
+
314
+ ### Long-Term (Medium/Low Priority)
315
+
316
+ {{#each recommendations.longTerm}}
317
+ {{@index}}. {{text}}
318
+ {{/each}}
319
+
320
+ ---
321
+
322
+ ## Next Steps
323
+
324
+ 1. Review and prioritize CRITICAL issues
325
+ 2. Address security vulnerabilities immediately
326
+ 3. Rotate any hardcoded secrets
327
+ 4. Proceed to MAP phase to extract API and database schema
328
+ 5. Use findings for migration roadmap in RECOMMEND phase
329
+
330
+ ---
331
+
332
+ ## Artifacts Generated
333
+
334
+ - `analysis-report.md` (this file)
335
+ - `dead-code-report.md` - Detailed dead code findings
336
+ - `tech-debt.md` - Full technical debt catalog
337
+
338
+ ---
339
+
340
+ **Generated by:** code-archaeologist agent
341
+ **Standards:** AGENT-PROMPT-STANDARDS v1.1
342
+ **RFC:** RFC-004-LEGACY-ANALYSIS-WORKFLOW
@@ -0,0 +1,263 @@
1
+ openapi: 3.0.3
2
+ info:
3
+ title: {{projectName}} API
4
+ description: |
5
+ API specification extracted from legacy codebase.
6
+
7
+ **Generated:** {{generatedAt}}
8
+ **Agent:** api-extractor
9
+ **Workflow Phase:** MAP
10
+
11
+ This specification was automatically generated from code analysis.
12
+ Request/response schemas are inferred and may require manual verification.
13
+ version: "{{apiVersion}}"
14
+ contact:
15
+ name: Generated by Orchestrator
16
+ url: https://github.com/orchestrator
17
+
18
+ servers:
19
+ {{#each servers}}
20
+ - url: {{url}}
21
+ description: {{description}}
22
+ {{/each}}
23
+
24
+ tags:
25
+ {{#each tags}}
26
+ - name: {{name}}
27
+ description: {{description}}
28
+ {{/each}}
29
+
30
+ paths:
31
+ {{#each endpoints}}
32
+ {{path}}:
33
+ {{#each methods}}
34
+ {{method}}:
35
+ summary: {{summary}}
36
+ description: {{description}}
37
+ operationId: {{operationId}}
38
+ tags:
39
+ {{#each tags}}
40
+ - {{this}}
41
+ {{/each}}
42
+ {{#if parameters}}
43
+ parameters:
44
+ {{#each parameters}}
45
+ - name: {{name}}
46
+ in: {{in}}
47
+ required: {{required}}
48
+ description: {{description}}
49
+ schema:
50
+ type: {{schema.type}}
51
+ {{#if schema.format}}
52
+ format: {{schema.format}}
53
+ {{/if}}
54
+ {{#if schema.enum}}
55
+ enum:
56
+ {{#each schema.enum}}
57
+ - {{this}}
58
+ {{/each}}
59
+ {{/if}}
60
+ {{/each}}
61
+ {{/if}}
62
+ {{#if requestBody}}
63
+ requestBody:
64
+ description: {{requestBody.description}}
65
+ required: {{requestBody.required}}
66
+ content:
67
+ {{#each requestBody.content}}
68
+ {{@key}}:
69
+ schema:
70
+ {{#if ref}}
71
+ $ref: '{{ref}}'
72
+ {{else}}
73
+ type: {{schema.type}}
74
+ {{#if schema.properties}}
75
+ properties:
76
+ {{#each schema.properties}}
77
+ {{@key}}:
78
+ type: {{type}}
79
+ {{#if description}}
80
+ description: {{description}}
81
+ {{/if}}
82
+ {{#if format}}
83
+ format: {{format}}
84
+ {{/if}}
85
+ {{/each}}
86
+ {{/if}}
87
+ {{#if schema.required}}
88
+ required:
89
+ {{#each schema.required}}
90
+ - {{this}}
91
+ {{/each}}
92
+ {{/if}}
93
+ {{/if}}
94
+ examples:
95
+ example1:
96
+ value: {{example}}
97
+ {{/each}}
98
+ {{/if}}
99
+ responses:
100
+ {{#each responses}}
101
+ '{{statusCode}}':
102
+ description: {{description}}
103
+ {{#if content}}
104
+ content:
105
+ {{#each content}}
106
+ {{@key}}:
107
+ schema:
108
+ {{#if ref}}
109
+ $ref: '{{ref}}'
110
+ {{else}}
111
+ type: {{schema.type}}
112
+ {{#if schema.properties}}
113
+ properties:
114
+ {{#each schema.properties}}
115
+ {{@key}}:
116
+ type: {{type}}
117
+ {{#if description}}
118
+ description: {{description}}
119
+ {{/if}}
120
+ {{/each}}
121
+ {{/if}}
122
+ {{/if}}
123
+ examples:
124
+ example1:
125
+ value: {{example}}
126
+ {{/each}}
127
+ {{/if}}
128
+ {{/each}}
129
+ {{#if security}}
130
+ security:
131
+ {{#each security}}
132
+ - {{@key}}: [{{#each this}}{{this}}{{#unless @last}}, {{/unless}}{{/each}}]
133
+ {{/each}}
134
+ {{/if}}
135
+ {{#if middleware}}
136
+ x-middleware:
137
+ {{#each middleware}}
138
+ - {{this}}
139
+ {{/each}}
140
+ {{/if}}
141
+ x-source:
142
+ controller: {{source.controller}}
143
+ method: {{source.method}}
144
+ file: {{source.file}}
145
+ line: {{source.line}}
146
+ {{/each}}
147
+
148
+ {{/each}}
149
+
150
+ components:
151
+ schemas:
152
+ {{#each schemas}}
153
+ {{name}}:
154
+ type: {{type}}
155
+ {{#if description}}
156
+ description: {{description}}
157
+ {{/if}}
158
+ {{#if properties}}
159
+ properties:
160
+ {{#each properties}}
161
+ {{@key}}:
162
+ type: {{type}}
163
+ {{#if description}}
164
+ description: {{description}}
165
+ {{/if}}
166
+ {{#if format}}
167
+ format: {{format}}
168
+ {{/if}}
169
+ {{#if enum}}
170
+ enum:
171
+ {{#each enum}}
172
+ - {{this}}
173
+ {{/each}}
174
+ {{/if}}
175
+ {{#if items}}
176
+ items:
177
+ {{#if items.ref}}
178
+ $ref: '{{items.ref}}'
179
+ {{else}}
180
+ type: {{items.type}}
181
+ {{/if}}
182
+ {{/if}}
183
+ {{/each}}
184
+ {{/if}}
185
+ {{#if required}}
186
+ required:
187
+ {{#each required}}
188
+ - {{this}}
189
+ {{/each}}
190
+ {{/if}}
191
+ x-source:
192
+ model: {{source.model}}
193
+ file: {{source.file}}
194
+ {{/each}}
195
+
196
+ securitySchemes:
197
+ {{#each securitySchemes}}
198
+ {{name}}:
199
+ type: {{type}}
200
+ {{#if description}}
201
+ description: {{description}}
202
+ {{/if}}
203
+ {{#if scheme}}
204
+ scheme: {{scheme}}
205
+ {{/if}}
206
+ {{#if bearerFormat}}
207
+ bearerFormat: {{bearerFormat}}
208
+ {{/if}}
209
+ {{#if in}}
210
+ in: {{in}}
211
+ {{/if}}
212
+ {{#if name}}
213
+ name: {{paramName}}
214
+ {{/if}}
215
+ {{/each}}
216
+
217
+ parameters:
218
+ {{#each commonParameters}}
219
+ {{name}}:
220
+ name: {{paramName}}
221
+ in: {{in}}
222
+ required: {{required}}
223
+ description: {{description}}
224
+ schema:
225
+ type: {{schema.type}}
226
+ {{#if schema.format}}
227
+ format: {{schema.format}}
228
+ {{/if}}
229
+ {{/each}}
230
+
231
+ responses:
232
+ {{#each commonResponses}}
233
+ {{name}}:
234
+ description: {{description}}
235
+ content:
236
+ {{#each content}}
237
+ {{@key}}:
238
+ schema:
239
+ type: {{schema.type}}
240
+ {{#if schema.properties}}
241
+ properties:
242
+ {{#each schema.properties}}
243
+ {{@key}}:
244
+ type: {{type}}
245
+ {{#if description}}
246
+ description: {{description}}
247
+ {{/if}}
248
+ {{/each}}
249
+ {{/if}}
250
+ {{/each}}
251
+ {{/each}}
252
+
253
+ x-metadata:
254
+ generatedBy: api-extractor
255
+ generatedAt: {{generatedAt}}
256
+ codebasePath: {{codebasePath}}
257
+ framework: {{framework}}
258
+ totalEndpoints: {{totalEndpoints}}
259
+ coverage: {{coverage}}%
260
+ warnings:
261
+ {{#each warnings}}
262
+ - {{this}}
263
+ {{/each}}