agents-reverse-engineer 0.3.0 → 0.3.1
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/dist/cli/generate.d.ts.map +1 -1
- package/dist/cli/generate.js +34 -4
- package/dist/cli/generate.js.map +1 -1
- package/dist/config/schema.d.ts +50 -0
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config/schema.js +10 -0
- package/dist/config/schema.js.map +1 -1
- package/dist/generation/complexity.d.ts +23 -2
- package/dist/generation/complexity.d.ts.map +1 -1
- package/dist/generation/complexity.js +53 -3
- package/dist/generation/complexity.js.map +1 -1
- package/dist/generation/executor.d.ts +15 -0
- package/dist/generation/executor.d.ts.map +1 -1
- package/dist/generation/executor.js +142 -14
- package/dist/generation/executor.js.map +1 -1
- package/dist/generation/orchestrator.d.ts +15 -3
- package/dist/generation/orchestrator.d.ts.map +1 -1
- package/dist/generation/orchestrator.js +22 -12
- package/dist/generation/orchestrator.js.map +1 -1
- package/dist/generation/writers/index.d.ts +1 -1
- package/dist/generation/writers/index.d.ts.map +1 -1
- package/dist/generation/writers/index.js +1 -1
- package/dist/generation/writers/index.js.map +1 -1
- package/dist/generation/writers/supplementary.d.ts +150 -0
- package/dist/generation/writers/supplementary.d.ts.map +1 -1
- package/dist/generation/writers/supplementary.js +833 -1
- package/dist/generation/writers/supplementary.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/cli/generate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAgBH;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,oCAAoC;IACpC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,mCAAmC;IACnC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,6CAA6C;IAC7C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,4BAA4B;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wDAAwD;IACxD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,8CAA8C;IAC9C,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;
|
|
1
|
+
{"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/cli/generate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAgBH;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,oCAAoC;IACpC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,mCAAmC;IACnC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,6CAA6C;IAC7C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,4BAA4B;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wDAAwD;IACxD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,8CAA8C;IAC9C,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAuFD;;;;;;;;;;GAUG;AACH,wBAAsB,eAAe,CACnC,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,IAAI,CAAC,CA0Hf"}
|
package/dist/cli/generate.js
CHANGED
|
@@ -58,10 +58,23 @@ function formatPlan(plan) {
|
|
|
58
58
|
lines.push(` Patterns: ${plan.complexity.architecturalPatterns.join(', ')}`);
|
|
59
59
|
}
|
|
60
60
|
lines.push('');
|
|
61
|
+
// Package roots
|
|
62
|
+
lines.push(`Package roots: ${plan.packageRoots.length}`);
|
|
63
|
+
for (const pkgRoot of plan.packageRoots) {
|
|
64
|
+
const label = pkgRoot.path || '(root)';
|
|
65
|
+
lines.push(` - ${label} (${pkgRoot.type}: ${pkgRoot.manifestFile})`);
|
|
66
|
+
}
|
|
67
|
+
lines.push('');
|
|
61
68
|
// Supplementary docs
|
|
62
69
|
lines.push('Supplementary docs:');
|
|
63
|
-
lines.push(` ARCHITECTURE.md: ${plan.generateArchitecture ? 'yes' : 'no'}`);
|
|
64
|
-
lines.push(`
|
|
70
|
+
lines.push(` ARCHITECTURE.md: ${plan.generateArchitecture ? 'yes' : 'no'} (root only)`);
|
|
71
|
+
lines.push(` Per package root:`);
|
|
72
|
+
lines.push(` STACK.md: ${plan.generateStack ? 'yes' : 'no'} (node packages only)`);
|
|
73
|
+
lines.push(` STRUCTURE.md: ${plan.generateStructure ? 'yes' : 'no'}`);
|
|
74
|
+
lines.push(` CONVENTIONS.md: ${plan.generateConventions ? 'yes' : 'no'}`);
|
|
75
|
+
lines.push(` TESTING.md: ${plan.generateTesting ? 'yes' : 'no'}`);
|
|
76
|
+
lines.push(` INTEGRATIONS.md: ${plan.generateIntegrations ? 'yes' : 'no'}`);
|
|
77
|
+
lines.push(` CONCERNS.md: ${plan.generateConcerns ? 'yes' : 'no'}`);
|
|
65
78
|
lines.push('');
|
|
66
79
|
// Skipped files
|
|
67
80
|
if (plan.skippedFiles.length > 0) {
|
|
@@ -167,8 +180,25 @@ export async function generateCommand(targetPath, options) {
|
|
|
167
180
|
if (plan.generateArchitecture) {
|
|
168
181
|
console.log('6. Generate ARCHITECTURE.md (complexity threshold met)');
|
|
169
182
|
}
|
|
170
|
-
|
|
171
|
-
|
|
183
|
+
// Show package root supplementary docs
|
|
184
|
+
if (plan.packageRoots.length > 0) {
|
|
185
|
+
console.log(`\nFor each package root (${plan.packageRoots.length} found):`);
|
|
186
|
+
const enabledDocs = [];
|
|
187
|
+
if (plan.generateStack)
|
|
188
|
+
enabledDocs.push('STACK.md (node only)');
|
|
189
|
+
if (plan.generateStructure)
|
|
190
|
+
enabledDocs.push('STRUCTURE.md');
|
|
191
|
+
if (plan.generateConventions)
|
|
192
|
+
enabledDocs.push('CONVENTIONS.md');
|
|
193
|
+
if (plan.generateTesting)
|
|
194
|
+
enabledDocs.push('TESTING.md');
|
|
195
|
+
if (plan.generateIntegrations)
|
|
196
|
+
enabledDocs.push('INTEGRATIONS.md');
|
|
197
|
+
if (plan.generateConcerns)
|
|
198
|
+
enabledDocs.push('CONCERNS.md');
|
|
199
|
+
for (const doc of enabledDocs) {
|
|
200
|
+
console.log(` - Generate ${doc}`);
|
|
201
|
+
}
|
|
172
202
|
}
|
|
173
203
|
console.log('\nRun with --execute to get JSON output for AI agent execution.');
|
|
174
204
|
console.log('Run with --stream for streaming task output.');
|
package/dist/cli/generate.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/cli/generate.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/cli/generate.ts"],"names":[],"mappings":"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"}
|
package/dist/config/schema.d.ts
CHANGED
|
@@ -64,6 +64,16 @@ declare const GenerationSchema: z.ZodDefault<z.ZodObject<{
|
|
|
64
64
|
generateArchitecture: z.ZodDefault<z.ZodBoolean>;
|
|
65
65
|
/** Generate STACK.md from package.json (default: true) */
|
|
66
66
|
generateStack: z.ZodDefault<z.ZodBoolean>;
|
|
67
|
+
/** Generate STRUCTURE.md codebase structure overview (default: true) */
|
|
68
|
+
generateStructure: z.ZodDefault<z.ZodBoolean>;
|
|
69
|
+
/** Generate CONVENTIONS.md coding conventions and patterns (default: true) */
|
|
70
|
+
generateConventions: z.ZodDefault<z.ZodBoolean>;
|
|
71
|
+
/** Generate TESTING.md testing approach and coverage (default: true) */
|
|
72
|
+
generateTesting: z.ZodDefault<z.ZodBoolean>;
|
|
73
|
+
/** Generate INTEGRATIONS.md external dependencies and APIs (default: true) */
|
|
74
|
+
generateIntegrations: z.ZodDefault<z.ZodBoolean>;
|
|
75
|
+
/** Generate CONCERNS.md technical debt and known issues (default: true) */
|
|
76
|
+
generateConcerns: z.ZodDefault<z.ZodBoolean>;
|
|
67
77
|
/** Output directory for supplementary docs (default: project root) */
|
|
68
78
|
supplementaryDocsDir: z.ZodOptional<z.ZodString>;
|
|
69
79
|
/** Chunk size for large files in tokens (default: 3000) */
|
|
@@ -72,12 +82,22 @@ declare const GenerationSchema: z.ZodDefault<z.ZodObject<{
|
|
|
72
82
|
tokenBudget: number;
|
|
73
83
|
generateArchitecture: boolean;
|
|
74
84
|
generateStack: boolean;
|
|
85
|
+
generateStructure: boolean;
|
|
86
|
+
generateConventions: boolean;
|
|
87
|
+
generateTesting: boolean;
|
|
88
|
+
generateIntegrations: boolean;
|
|
89
|
+
generateConcerns: boolean;
|
|
75
90
|
chunkSize: number;
|
|
76
91
|
supplementaryDocsDir?: string | undefined;
|
|
77
92
|
}, {
|
|
78
93
|
tokenBudget?: number | undefined;
|
|
79
94
|
generateArchitecture?: boolean | undefined;
|
|
80
95
|
generateStack?: boolean | undefined;
|
|
96
|
+
generateStructure?: boolean | undefined;
|
|
97
|
+
generateConventions?: boolean | undefined;
|
|
98
|
+
generateTesting?: boolean | undefined;
|
|
99
|
+
generateIntegrations?: boolean | undefined;
|
|
100
|
+
generateConcerns?: boolean | undefined;
|
|
81
101
|
supplementaryDocsDir?: string | undefined;
|
|
82
102
|
chunkSize?: number | undefined;
|
|
83
103
|
}>>;
|
|
@@ -150,6 +170,16 @@ export declare const ConfigSchema: z.ZodDefault<z.ZodObject<{
|
|
|
150
170
|
generateArchitecture: z.ZodDefault<z.ZodBoolean>;
|
|
151
171
|
/** Generate STACK.md from package.json (default: true) */
|
|
152
172
|
generateStack: z.ZodDefault<z.ZodBoolean>;
|
|
173
|
+
/** Generate STRUCTURE.md codebase structure overview (default: true) */
|
|
174
|
+
generateStructure: z.ZodDefault<z.ZodBoolean>;
|
|
175
|
+
/** Generate CONVENTIONS.md coding conventions and patterns (default: true) */
|
|
176
|
+
generateConventions: z.ZodDefault<z.ZodBoolean>;
|
|
177
|
+
/** Generate TESTING.md testing approach and coverage (default: true) */
|
|
178
|
+
generateTesting: z.ZodDefault<z.ZodBoolean>;
|
|
179
|
+
/** Generate INTEGRATIONS.md external dependencies and APIs (default: true) */
|
|
180
|
+
generateIntegrations: z.ZodDefault<z.ZodBoolean>;
|
|
181
|
+
/** Generate CONCERNS.md technical debt and known issues (default: true) */
|
|
182
|
+
generateConcerns: z.ZodDefault<z.ZodBoolean>;
|
|
153
183
|
/** Output directory for supplementary docs (default: project root) */
|
|
154
184
|
supplementaryDocsDir: z.ZodOptional<z.ZodString>;
|
|
155
185
|
/** Chunk size for large files in tokens (default: 3000) */
|
|
@@ -158,12 +188,22 @@ export declare const ConfigSchema: z.ZodDefault<z.ZodObject<{
|
|
|
158
188
|
tokenBudget: number;
|
|
159
189
|
generateArchitecture: boolean;
|
|
160
190
|
generateStack: boolean;
|
|
191
|
+
generateStructure: boolean;
|
|
192
|
+
generateConventions: boolean;
|
|
193
|
+
generateTesting: boolean;
|
|
194
|
+
generateIntegrations: boolean;
|
|
195
|
+
generateConcerns: boolean;
|
|
161
196
|
chunkSize: number;
|
|
162
197
|
supplementaryDocsDir?: string | undefined;
|
|
163
198
|
}, {
|
|
164
199
|
tokenBudget?: number | undefined;
|
|
165
200
|
generateArchitecture?: boolean | undefined;
|
|
166
201
|
generateStack?: boolean | undefined;
|
|
202
|
+
generateStructure?: boolean | undefined;
|
|
203
|
+
generateConventions?: boolean | undefined;
|
|
204
|
+
generateTesting?: boolean | undefined;
|
|
205
|
+
generateIntegrations?: boolean | undefined;
|
|
206
|
+
generateConcerns?: boolean | undefined;
|
|
167
207
|
supplementaryDocsDir?: string | undefined;
|
|
168
208
|
chunkSize?: number | undefined;
|
|
169
209
|
}>>;
|
|
@@ -185,6 +225,11 @@ export declare const ConfigSchema: z.ZodDefault<z.ZodObject<{
|
|
|
185
225
|
tokenBudget: number;
|
|
186
226
|
generateArchitecture: boolean;
|
|
187
227
|
generateStack: boolean;
|
|
228
|
+
generateStructure: boolean;
|
|
229
|
+
generateConventions: boolean;
|
|
230
|
+
generateTesting: boolean;
|
|
231
|
+
generateIntegrations: boolean;
|
|
232
|
+
generateConcerns: boolean;
|
|
188
233
|
chunkSize: number;
|
|
189
234
|
supplementaryDocsDir?: string | undefined;
|
|
190
235
|
};
|
|
@@ -206,6 +251,11 @@ export declare const ConfigSchema: z.ZodDefault<z.ZodObject<{
|
|
|
206
251
|
tokenBudget?: number | undefined;
|
|
207
252
|
generateArchitecture?: boolean | undefined;
|
|
208
253
|
generateStack?: boolean | undefined;
|
|
254
|
+
generateStructure?: boolean | undefined;
|
|
255
|
+
generateConventions?: boolean | undefined;
|
|
256
|
+
generateTesting?: boolean | undefined;
|
|
257
|
+
generateIntegrations?: boolean | undefined;
|
|
258
|
+
generateConcerns?: boolean | undefined;
|
|
209
259
|
supplementaryDocsDir?: string | undefined;
|
|
210
260
|
chunkSize?: number | undefined;
|
|
211
261
|
} | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB;;GAEG;AACH,QAAA,MAAM,aAAa;IACjB,mEAAmE;;IAEnE,oCAAoC;;IAEpC,wCAAwC;;;;;;;;;;GAE5B,CAAC;AAEf;;GAEG;AACH,QAAA,MAAM,aAAa;IACjB,wDAAwD;;IAExD,sEAAsE;;;;;;;;GAE1D,CAAC;AAEf;;GAEG;AACH,QAAA,MAAM,YAAY;IAChB,+CAA+C;;IAE/C,8DAA8D;;;;;;;;GAElD,CAAC;AAEf;;GAEG;AACH,QAAA,MAAM,gBAAgB;IACpB,yDAAyD;;IAEzD,mEAAmE;;IAEnE,0DAA0D;;IAE1D,sEAAsE;;IAEtE,2DAA2D
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB;;GAEG;AACH,QAAA,MAAM,aAAa;IACjB,mEAAmE;;IAEnE,oCAAoC;;IAEpC,wCAAwC;;;;;;;;;;GAE5B,CAAC;AAEf;;GAEG;AACH,QAAA,MAAM,aAAa;IACjB,wDAAwD;;IAExD,sEAAsE;;;;;;;;GAE1D,CAAC;AAEf;;GAEG;AACH,QAAA,MAAM,YAAY;IAChB,+CAA+C;;IAE/C,8DAA8D;;;;;;;;GAElD,CAAC;AAEf;;GAEG;AACH,QAAA,MAAM,gBAAgB;IACpB,yDAAyD;;IAEzD,mEAAmE;;IAEnE,0DAA0D;;IAE1D,wEAAwE;;IAExE,8EAA8E;;IAE9E,wEAAwE;;IAExE,8EAA8E;;IAE9E,2EAA2E;;IAE3E,sEAAsE;;IAEtE,2DAA2D;;;;;;;;;;;;;;;;;;;;;;;;GAE/C,CAAC;AAEf;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,YAAY;IACvB,gDAAgD;;QAxEhD,mEAAmE;;QAEnE,oCAAoC;;QAEpC,wCAAwC;;;;;;;;;;;IAsExC,wBAAwB;;QA9DxB,wDAAwD;;QAExD,sEAAsE;;;;;;;;;IA8DtE,gCAAgC;;QAtDhC,+CAA+C;;QAE/C,8DAA8D;;;;;;;;;IAsD9D,yBAAyB;;QA9CzB,yDAAyD;;QAEzD,mEAAmE;;QAEnE,0DAA0D;;QAE1D,wEAAwE;;QAExE,8EAA8E;;QAE9E,wEAAwE;;QAExE,8EAA8E;;QAE9E,2EAA2E;;QAE3E,sEAAsE;;QAEtE,2DAA2D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8B/C,CAAC;AAEf;;;GAGG;AACH,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAElD;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAE1D;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAE1D;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAExD;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC"}
|
package/dist/config/schema.js
CHANGED
|
@@ -45,6 +45,16 @@ const GenerationSchema = z.object({
|
|
|
45
45
|
generateArchitecture: z.boolean().default(true),
|
|
46
46
|
/** Generate STACK.md from package.json (default: true) */
|
|
47
47
|
generateStack: z.boolean().default(true),
|
|
48
|
+
/** Generate STRUCTURE.md codebase structure overview (default: true) */
|
|
49
|
+
generateStructure: z.boolean().default(true),
|
|
50
|
+
/** Generate CONVENTIONS.md coding conventions and patterns (default: true) */
|
|
51
|
+
generateConventions: z.boolean().default(true),
|
|
52
|
+
/** Generate TESTING.md testing approach and coverage (default: true) */
|
|
53
|
+
generateTesting: z.boolean().default(true),
|
|
54
|
+
/** Generate INTEGRATIONS.md external dependencies and APIs (default: true) */
|
|
55
|
+
generateIntegrations: z.boolean().default(true),
|
|
56
|
+
/** Generate CONCERNS.md technical debt and known issues (default: true) */
|
|
57
|
+
generateConcerns: z.boolean().default(true),
|
|
48
58
|
/** Output directory for supplementary docs (default: project root) */
|
|
49
59
|
supplementaryDocsDir: z.string().optional(),
|
|
50
60
|
/** Chunk size for large files in tokens (default: 3000) */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EACzB,qBAAqB,GACtB,MAAM,eAAe,CAAC;AAEvB;;GAEG;AACH,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7B,mEAAmE;IACnE,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IACzC,oCAAoC;IACpC,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,mBAAmB,CAAC,CAAC;IACjE,wCAAwC;IACxC,gBAAgB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,yBAAyB,CAAC,CAAC;CAC9E,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;AAEf;;GAEG;AACH,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7B,wDAAwD;IACxD,cAAc,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IAC1C,sEAAsE;IACtE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,qBAAqB,CAAC;CAClE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;AAEf;;GAEG;AACH,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5B,+CAA+C;IAC/C,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IACjC,8DAA8D;IAC9D,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;CACnC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;AAEf;;GAEG;AACH,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChC,yDAAyD;IACzD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC;IACnD,mEAAmE;IACnE,oBAAoB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAC/C,0DAA0D;IAC1D,aAAa,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IACxC,sEAAsE;IACtE,oBAAoB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3C,2DAA2D;IAC3D,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;CAC/C,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;AAEf;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,gDAAgD;IAChD,OAAO,EAAE,aAAa;IACtB,wBAAwB;IACxB,OAAO,EAAE,aAAa;IACtB,gCAAgC;IAChC,MAAM,EAAE,YAAY;IACpB,yBAAyB;IACzB,UAAU,EAAE,gBAAgB;CAC7B,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Package manifest type indicator.
|
|
3
|
+
*/
|
|
4
|
+
export type PackageType = 'node' | 'python' | 'go' | 'rust';
|
|
5
|
+
/**
|
|
6
|
+
* Detected package root information.
|
|
7
|
+
*/
|
|
8
|
+
export interface PackageRoot {
|
|
9
|
+
/** Relative path from project root (empty string for root) */
|
|
10
|
+
path: string;
|
|
11
|
+
/** Absolute path */
|
|
12
|
+
absolutePath: string;
|
|
13
|
+
/** Type of package (node for package.json, python for requirements.txt/pyproject.toml, go for go.mod, rust for Cargo.toml) */
|
|
14
|
+
type: PackageType;
|
|
15
|
+
/** Manifest file that triggered detection */
|
|
16
|
+
manifestFile: string;
|
|
17
|
+
/** Package name if available */
|
|
18
|
+
name?: string;
|
|
19
|
+
}
|
|
1
20
|
/**
|
|
2
21
|
* Metrics about codebase complexity.
|
|
3
22
|
*/
|
|
@@ -12,6 +31,8 @@ export interface ComplexityMetrics {
|
|
|
12
31
|
files: string[];
|
|
13
32
|
/** Unique directory paths */
|
|
14
33
|
directories: Set<string>;
|
|
34
|
+
/** Detected package roots (directories with package.json, requirements.txt, pyproject.toml, go.mod, Cargo.toml) */
|
|
35
|
+
packageRoots: PackageRoot[];
|
|
15
36
|
}
|
|
16
37
|
/**
|
|
17
38
|
* Analyze codebase complexity from discovered files.
|
|
@@ -33,9 +54,9 @@ export declare function shouldGenerateArchitecture(metrics: ComplexityMetrics):
|
|
|
33
54
|
/**
|
|
34
55
|
* Determine if STACK.md should be generated.
|
|
35
56
|
*
|
|
36
|
-
* Always generate if package
|
|
57
|
+
* Always generate if a package manifest exists (has dependencies to document).
|
|
37
58
|
*/
|
|
38
|
-
export declare function shouldGenerateStack(
|
|
59
|
+
export declare function shouldGenerateStack(hasPackageManifest: boolean): boolean;
|
|
39
60
|
/**
|
|
40
61
|
* Generate a summary of why supplementary docs should/shouldn't be generated.
|
|
41
62
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"complexity.d.ts","sourceRoot":"","sources":["../../src/generation/complexity.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,mCAAmC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,8BAA8B;IAC9B,cAAc,EAAE,MAAM,CAAC;IACvB,sCAAsC;IACtC,qBAAqB,EAAE,MAAM,EAAE,CAAC;IAChC,gCAAgC;IAChC,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,6BAA6B;IAC7B,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"complexity.d.ts","sourceRoot":"","sources":["../../src/generation/complexity.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,QAAQ,GAAG,IAAI,GAAG,MAAM,CAAC;AAE5D;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,8DAA8D;IAC9D,IAAI,EAAE,MAAM,CAAC;IACb,oBAAoB;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,8HAA8H;IAC9H,IAAI,EAAE,WAAW,CAAC;IAClB,6CAA6C;IAC7C,YAAY,EAAE,MAAM,CAAC;IACrB,gCAAgC;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,mCAAmC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,8BAA8B;IAC9B,cAAc,EAAE,MAAM,CAAC;IACvB,sCAAsC;IACtC,qBAAqB,EAAE,MAAM,EAAE,CAAC;IAChC,gCAAgC;IAChC,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,6BAA6B;IAC7B,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACzB,mHAAmH;IACnH,YAAY,EAAE,WAAW,EAAE,CAAC;CAC7B;AAqKD;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,MAAM,EAAE,EACf,WAAW,EAAE,MAAM,GAClB,iBAAiB,CASnB;AAED;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAW9E;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,kBAAkB,EAAE,OAAO,GAAG,OAAO,CAExE;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,iBAAiB,GAAG,MAAM,CAcvE"}
|
|
@@ -92,6 +92,55 @@ function extractDirectories(files) {
|
|
|
92
92
|
}
|
|
93
93
|
return directories;
|
|
94
94
|
}
|
|
95
|
+
/**
|
|
96
|
+
* Package manifest files to detect.
|
|
97
|
+
*/
|
|
98
|
+
const PACKAGE_MANIFESTS = [
|
|
99
|
+
{ file: 'package.json', type: 'node' },
|
|
100
|
+
{ file: 'requirements.txt', type: 'python' },
|
|
101
|
+
{ file: 'pyproject.toml', type: 'python' },
|
|
102
|
+
{ file: 'go.mod', type: 'go' },
|
|
103
|
+
{ file: 'Cargo.toml', type: 'rust' },
|
|
104
|
+
];
|
|
105
|
+
/**
|
|
106
|
+
* Detect package roots from discovered files.
|
|
107
|
+
* A package root is a directory containing package.json, requirements.txt, pyproject.toml, go.mod, or Cargo.toml.
|
|
108
|
+
*/
|
|
109
|
+
function detectPackageRoots(files, projectRoot) {
|
|
110
|
+
const packageRoots = [];
|
|
111
|
+
const seenDirs = new Set();
|
|
112
|
+
for (const file of files) {
|
|
113
|
+
const relativePath = path.relative(projectRoot, file);
|
|
114
|
+
const fileName = path.basename(file);
|
|
115
|
+
const dirPath = path.dirname(relativePath);
|
|
116
|
+
// Check if this file is a package manifest
|
|
117
|
+
for (const manifest of PACKAGE_MANIFESTS) {
|
|
118
|
+
if (fileName === manifest.file) {
|
|
119
|
+
// Normalize directory path (use empty string for root)
|
|
120
|
+
const normalizedDir = dirPath === '.' ? '' : dirPath;
|
|
121
|
+
// Avoid duplicates (same directory with different manifest types)
|
|
122
|
+
const key = `${normalizedDir}:${manifest.type}`;
|
|
123
|
+
if (!seenDirs.has(key)) {
|
|
124
|
+
seenDirs.add(key);
|
|
125
|
+
packageRoots.push({
|
|
126
|
+
path: normalizedDir,
|
|
127
|
+
absolutePath: normalizedDir ? path.join(projectRoot, normalizedDir) : projectRoot,
|
|
128
|
+
type: manifest.type,
|
|
129
|
+
manifestFile: manifest.file,
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
// Sort by path depth (root first, then alphabetically)
|
|
136
|
+
return packageRoots.sort((a, b) => {
|
|
137
|
+
const depthA = a.path ? a.path.split(path.sep).length : 0;
|
|
138
|
+
const depthB = b.path ? b.path.split(path.sep).length : 0;
|
|
139
|
+
if (depthA !== depthB)
|
|
140
|
+
return depthA - depthB;
|
|
141
|
+
return a.path.localeCompare(b.path);
|
|
142
|
+
});
|
|
143
|
+
}
|
|
95
144
|
/**
|
|
96
145
|
* Analyze codebase complexity from discovered files.
|
|
97
146
|
*
|
|
@@ -106,6 +155,7 @@ export function analyzeComplexity(files, projectRoot) {
|
|
|
106
155
|
architecturalPatterns: detectArchitecturalPatterns(files),
|
|
107
156
|
files,
|
|
108
157
|
directories: extractDirectories(files),
|
|
158
|
+
packageRoots: detectPackageRoots(files, projectRoot),
|
|
109
159
|
};
|
|
110
160
|
}
|
|
111
161
|
/**
|
|
@@ -131,10 +181,10 @@ export function shouldGenerateArchitecture(metrics) {
|
|
|
131
181
|
/**
|
|
132
182
|
* Determine if STACK.md should be generated.
|
|
133
183
|
*
|
|
134
|
-
* Always generate if package
|
|
184
|
+
* Always generate if a package manifest exists (has dependencies to document).
|
|
135
185
|
*/
|
|
136
|
-
export function shouldGenerateStack(
|
|
137
|
-
return
|
|
186
|
+
export function shouldGenerateStack(hasPackageManifest) {
|
|
187
|
+
return hasPackageManifest;
|
|
138
188
|
}
|
|
139
189
|
/**
|
|
140
190
|
* Generate a summary of why supplementary docs should/shouldn't be generated.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"complexity.js","sourceRoot":"","sources":["../../src/generation/complexity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"complexity.js","sourceRoot":"","sources":["../../src/generation/complexity.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
* - Streaming JSON output for incremental processing
|
|
8
8
|
*/
|
|
9
9
|
import type { GenerationPlan } from './orchestrator.js';
|
|
10
|
+
import type { PackageRoot } from './complexity.js';
|
|
10
11
|
/**
|
|
11
12
|
* Execution task ready for AI processing.
|
|
12
13
|
*/
|
|
@@ -37,6 +38,8 @@ export interface ExecutionTask {
|
|
|
37
38
|
directoryFiles?: string[];
|
|
38
39
|
/** Directory depth (for post-order traversal) */
|
|
39
40
|
depth?: number;
|
|
41
|
+
/** Package root path (for supplementary docs) */
|
|
42
|
+
packageRoot?: string;
|
|
40
43
|
};
|
|
41
44
|
}
|
|
42
45
|
/**
|
|
@@ -59,6 +62,18 @@ export interface ExecutionPlan {
|
|
|
59
62
|
generateArchitecture: boolean;
|
|
60
63
|
/** Whether to generate STACK.md */
|
|
61
64
|
generateStack: boolean;
|
|
65
|
+
/** Whether to generate STRUCTURE.md */
|
|
66
|
+
generateStructure: boolean;
|
|
67
|
+
/** Whether to generate CONVENTIONS.md */
|
|
68
|
+
generateConventions: boolean;
|
|
69
|
+
/** Whether to generate TESTING.md */
|
|
70
|
+
generateTesting: boolean;
|
|
71
|
+
/** Whether to generate INTEGRATIONS.md */
|
|
72
|
+
generateIntegrations: boolean;
|
|
73
|
+
/** Whether to generate CONCERNS.md */
|
|
74
|
+
generateConcerns: boolean;
|
|
75
|
+
/** Package roots where supplementary docs will be generated */
|
|
76
|
+
packageRoots: PackageRoot[];
|
|
62
77
|
}
|
|
63
78
|
/**
|
|
64
79
|
* Build execution plan from generation plan.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../src/generation/executor.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EAAE,cAAc,EAA8B,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../src/generation/executor.ts"],"names":[],"mappings":"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"}
|
|
@@ -113,21 +113,115 @@ Base this on the directory structure and file summaries.`,
|
|
|
113
113
|
metadata: {},
|
|
114
114
|
});
|
|
115
115
|
}
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
116
|
+
// Generate supplementary docs for each package root
|
|
117
|
+
for (const pkgRoot of plan.packageRoots) {
|
|
118
|
+
const pkgAbsPath = pkgRoot.absolutePath;
|
|
119
|
+
const pkgPrefix = pkgRoot.path ? `pkg:${pkgRoot.path}` : 'root';
|
|
120
|
+
const pkgLabel = pkgRoot.path || 'root';
|
|
121
|
+
// Get directory task IDs relevant to this package root
|
|
122
|
+
const pkgDirTaskIds = Object.keys(directoryFileMap)
|
|
123
|
+
.filter(d => {
|
|
124
|
+
if (!pkgRoot.path)
|
|
125
|
+
return true; // Root package includes all dirs
|
|
126
|
+
return d.startsWith(pkgRoot.path + path.sep) || d === pkgRoot.path;
|
|
127
|
+
})
|
|
128
|
+
.map(d => `dir:${d}`);
|
|
129
|
+
if (plan.generateStack && pkgRoot.type === 'node') {
|
|
130
|
+
rootTasks.push({
|
|
131
|
+
id: `${pkgPrefix}:STACK.md`,
|
|
132
|
+
type: 'root-doc',
|
|
133
|
+
path: pkgRoot.path ? path.join(pkgRoot.path, 'STACK.md') : 'STACK.md',
|
|
134
|
+
absolutePath: path.join(pkgAbsPath, 'STACK.md'),
|
|
135
|
+
systemPrompt: `You are generating STACK.md for "${pkgLabel}", documenting the technology stack.
|
|
123
136
|
Analyze package.json and the codebase to document all technologies used.
|
|
124
137
|
Include: frameworks, libraries, dev tools, and their purposes.`,
|
|
125
|
-
|
|
138
|
+
userPrompt: `Generate STACK.md documenting the technology stack for "${pkgLabel}".
|
|
126
139
|
Read package.json and analyze dependencies.`,
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
140
|
+
dependencies: pkgRoot.path ? [] : ['root:CLAUDE.md'],
|
|
141
|
+
outputPath: path.join(pkgAbsPath, 'STACK.md'),
|
|
142
|
+
metadata: { packageRoot: pkgRoot.path },
|
|
143
|
+
});
|
|
144
|
+
}
|
|
145
|
+
if (plan.generateStructure) {
|
|
146
|
+
rootTasks.push({
|
|
147
|
+
id: `${pkgPrefix}:STRUCTURE.md`,
|
|
148
|
+
type: 'root-doc',
|
|
149
|
+
path: pkgRoot.path ? path.join(pkgRoot.path, 'STRUCTURE.md') : 'STRUCTURE.md',
|
|
150
|
+
absolutePath: path.join(pkgAbsPath, 'STRUCTURE.md'),
|
|
151
|
+
systemPrompt: `You are generating STRUCTURE.md for "${pkgLabel}", documenting the codebase structure.
|
|
152
|
+
Analyze the directory layout and organization patterns.
|
|
153
|
+
Include: directory overview, entry points, key modules, and organization patterns.`,
|
|
154
|
+
userPrompt: `Generate STRUCTURE.md documenting the codebase structure for "${pkgLabel}".
|
|
155
|
+
Describe how the package is organized and where key functionality lives.`,
|
|
156
|
+
dependencies: pkgDirTaskIds,
|
|
157
|
+
outputPath: path.join(pkgAbsPath, 'STRUCTURE.md'),
|
|
158
|
+
metadata: { packageRoot: pkgRoot.path },
|
|
159
|
+
});
|
|
160
|
+
}
|
|
161
|
+
if (plan.generateConventions) {
|
|
162
|
+
rootTasks.push({
|
|
163
|
+
id: `${pkgPrefix}:CONVENTIONS.md`,
|
|
164
|
+
type: 'root-doc',
|
|
165
|
+
path: pkgRoot.path ? path.join(pkgRoot.path, 'CONVENTIONS.md') : 'CONVENTIONS.md',
|
|
166
|
+
absolutePath: path.join(pkgAbsPath, 'CONVENTIONS.md'),
|
|
167
|
+
systemPrompt: `You are generating CONVENTIONS.md for "${pkgLabel}", documenting coding conventions and patterns.
|
|
168
|
+
Analyze the codebase for naming conventions, code style, and common patterns.
|
|
169
|
+
Include: naming conventions, file patterns, module system, and common code patterns.`,
|
|
170
|
+
userPrompt: `Generate CONVENTIONS.md documenting coding conventions for "${pkgLabel}".
|
|
171
|
+
Describe the code style and patterns used in this package.`,
|
|
172
|
+
dependencies: pkgDirTaskIds,
|
|
173
|
+
outputPath: path.join(pkgAbsPath, 'CONVENTIONS.md'),
|
|
174
|
+
metadata: { packageRoot: pkgRoot.path },
|
|
175
|
+
});
|
|
176
|
+
}
|
|
177
|
+
if (plan.generateTesting) {
|
|
178
|
+
rootTasks.push({
|
|
179
|
+
id: `${pkgPrefix}:TESTING.md`,
|
|
180
|
+
type: 'root-doc',
|
|
181
|
+
path: pkgRoot.path ? path.join(pkgRoot.path, 'TESTING.md') : 'TESTING.md',
|
|
182
|
+
absolutePath: path.join(pkgAbsPath, 'TESTING.md'),
|
|
183
|
+
systemPrompt: `You are generating TESTING.md for "${pkgLabel}", documenting the testing approach and coverage.
|
|
184
|
+
Analyze the test framework(s), test directories, and testing patterns.
|
|
185
|
+
Include: testing frameworks, test directories, patterns, coverage tools, and test strategy.`,
|
|
186
|
+
userPrompt: `Generate TESTING.md documenting the testing approach for "${pkgLabel}".
|
|
187
|
+
Describe how tests are organized and run in this package.`,
|
|
188
|
+
dependencies: pkgDirTaskIds,
|
|
189
|
+
outputPath: path.join(pkgAbsPath, 'TESTING.md'),
|
|
190
|
+
metadata: { packageRoot: pkgRoot.path },
|
|
191
|
+
});
|
|
192
|
+
}
|
|
193
|
+
if (plan.generateIntegrations) {
|
|
194
|
+
rootTasks.push({
|
|
195
|
+
id: `${pkgPrefix}:INTEGRATIONS.md`,
|
|
196
|
+
type: 'root-doc',
|
|
197
|
+
path: pkgRoot.path ? path.join(pkgRoot.path, 'INTEGRATIONS.md') : 'INTEGRATIONS.md',
|
|
198
|
+
absolutePath: path.join(pkgAbsPath, 'INTEGRATIONS.md'),
|
|
199
|
+
systemPrompt: `You are generating INTEGRATIONS.md for "${pkgLabel}", documenting external dependencies and APIs.
|
|
200
|
+
Analyze ${pkgRoot.type === 'node' ? 'package.json' : pkgRoot.manifestFile} and code for database connections, API clients, and third-party services.
|
|
201
|
+
Include: databases, external APIs, third-party services, and environment variables.`,
|
|
202
|
+
userPrompt: `Generate INTEGRATIONS.md documenting external integrations for "${pkgLabel}".
|
|
203
|
+
Describe the external services and APIs this package connects to.`,
|
|
204
|
+
dependencies: pkgDirTaskIds,
|
|
205
|
+
outputPath: path.join(pkgAbsPath, 'INTEGRATIONS.md'),
|
|
206
|
+
metadata: { packageRoot: pkgRoot.path },
|
|
207
|
+
});
|
|
208
|
+
}
|
|
209
|
+
if (plan.generateConcerns) {
|
|
210
|
+
rootTasks.push({
|
|
211
|
+
id: `${pkgPrefix}:CONCERNS.md`,
|
|
212
|
+
type: 'root-doc',
|
|
213
|
+
path: pkgRoot.path ? path.join(pkgRoot.path, 'CONCERNS.md') : 'CONCERNS.md',
|
|
214
|
+
absolutePath: path.join(pkgAbsPath, 'CONCERNS.md'),
|
|
215
|
+
systemPrompt: `You are generating CONCERNS.md for "${pkgLabel}", documenting technical debt and known issues.
|
|
216
|
+
Identify areas needing attention: missing docs, complex code, improvement opportunities.
|
|
217
|
+
Include: missing documentation, technical debt, known issues, and improvement areas.`,
|
|
218
|
+
userPrompt: `Generate CONCERNS.md documenting technical concerns for "${pkgLabel}".
|
|
219
|
+
Identify technical debt and areas that need attention in this package.`,
|
|
220
|
+
dependencies: pkgDirTaskIds,
|
|
221
|
+
outputPath: path.join(pkgAbsPath, 'CONCERNS.md'),
|
|
222
|
+
metadata: { packageRoot: pkgRoot.path },
|
|
223
|
+
});
|
|
224
|
+
}
|
|
131
225
|
}
|
|
132
226
|
return {
|
|
133
227
|
projectRoot,
|
|
@@ -138,6 +232,12 @@ Read package.json and analyze dependencies.`,
|
|
|
138
232
|
directoryFileMap,
|
|
139
233
|
generateArchitecture: plan.generateArchitecture,
|
|
140
234
|
generateStack: plan.generateStack,
|
|
235
|
+
generateStructure: plan.generateStructure,
|
|
236
|
+
generateConventions: plan.generateConventions,
|
|
237
|
+
generateTesting: plan.generateTesting,
|
|
238
|
+
generateIntegrations: plan.generateIntegrations,
|
|
239
|
+
generateConcerns: plan.generateConcerns,
|
|
240
|
+
packageRoots: plan.packageRoots,
|
|
141
241
|
};
|
|
142
242
|
}
|
|
143
243
|
/**
|
|
@@ -339,12 +439,40 @@ export function formatExecutionPlanAsMarkdown(plan) {
|
|
|
339
439
|
// Phase 3: Root Documents
|
|
340
440
|
lines.push('## Phase 3: Root Documents');
|
|
341
441
|
lines.push('');
|
|
442
|
+
lines.push('### Global');
|
|
342
443
|
lines.push('- [ ] `CLAUDE.md`');
|
|
343
444
|
if (plan.generateArchitecture) {
|
|
344
445
|
lines.push('- [ ] `ARCHITECTURE.md`');
|
|
345
446
|
}
|
|
346
|
-
|
|
347
|
-
|
|
447
|
+
lines.push('');
|
|
448
|
+
// Supplementary docs per package root
|
|
449
|
+
if (plan.packageRoots.length > 0) {
|
|
450
|
+
lines.push('### Supplementary Docs by Package');
|
|
451
|
+
lines.push('');
|
|
452
|
+
for (const pkgRoot of plan.packageRoots) {
|
|
453
|
+
const pkgLabel = pkgRoot.path || '(root)';
|
|
454
|
+
const pkgPath = pkgRoot.path ? `${pkgRoot.path}/` : '';
|
|
455
|
+
lines.push(`#### ${pkgLabel} (${pkgRoot.type})`);
|
|
456
|
+
if (plan.generateStack && pkgRoot.type === 'node') {
|
|
457
|
+
lines.push(`- [ ] \`${pkgPath}STACK.md\``);
|
|
458
|
+
}
|
|
459
|
+
if (plan.generateStructure) {
|
|
460
|
+
lines.push(`- [ ] \`${pkgPath}STRUCTURE.md\``);
|
|
461
|
+
}
|
|
462
|
+
if (plan.generateConventions) {
|
|
463
|
+
lines.push(`- [ ] \`${pkgPath}CONVENTIONS.md\``);
|
|
464
|
+
}
|
|
465
|
+
if (plan.generateTesting) {
|
|
466
|
+
lines.push(`- [ ] \`${pkgPath}TESTING.md\``);
|
|
467
|
+
}
|
|
468
|
+
if (plan.generateIntegrations) {
|
|
469
|
+
lines.push(`- [ ] \`${pkgPath}INTEGRATIONS.md\``);
|
|
470
|
+
}
|
|
471
|
+
if (plan.generateConcerns) {
|
|
472
|
+
lines.push(`- [ ] \`${pkgPath}CONCERNS.md\``);
|
|
473
|
+
}
|
|
474
|
+
lines.push('');
|
|
475
|
+
}
|
|
348
476
|
}
|
|
349
477
|
lines.push('');
|
|
350
478
|
return lines.join('\n');
|