@magic-ingredients/tiny-brain-local 0.11.0 → 0.13.0
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/cli-factory.d.ts.map +1 -1
- package/dist/cli/cli-factory.js +81 -2
- package/dist/cli/cli-factory.js.map +1 -1
- package/dist/cli/commands/analyse.command.d.ts +11 -0
- package/dist/cli/commands/analyse.command.d.ts.map +1 -1
- package/dist/cli/commands/analyse.command.js +31 -0
- package/dist/cli/commands/analyse.command.js.map +1 -1
- package/dist/cli/commands/config.command.d.ts +10 -2
- package/dist/cli/commands/config.command.d.ts.map +1 -1
- package/dist/cli/commands/config.command.js +171 -3
- package/dist/cli/commands/config.command.js.map +1 -1
- package/dist/cli/commands/track-commit.command.d.ts +52 -0
- package/dist/cli/commands/track-commit.command.d.ts.map +1 -0
- package/dist/cli/commands/track-commit.command.js +239 -0
- package/dist/cli/commands/track-commit.command.js.map +1 -0
- package/dist/cli/commands/validate-commit-message.command.d.ts +47 -0
- package/dist/cli/commands/validate-commit-message.command.d.ts.map +1 -0
- package/dist/cli/commands/validate-commit-message.command.js +223 -0
- package/dist/cli/commands/validate-commit-message.command.js.map +1 -0
- package/dist/core/mcp-server.d.ts +1 -0
- package/dist/core/mcp-server.d.ts.map +1 -1
- package/dist/core/mcp-server.js +10 -0
- package/dist/core/mcp-server.js.map +1 -1
- package/dist/prompts/planning/planning.prompt.d.ts.map +1 -1
- package/dist/prompts/planning/planning.prompt.js +36 -45
- package/dist/prompts/planning/planning.prompt.js.map +1 -1
- package/dist/services/adr-service.d.ts +70 -0
- package/dist/services/adr-service.d.ts.map +1 -0
- package/dist/services/adr-service.js +242 -0
- package/dist/services/adr-service.js.map +1 -0
- package/dist/services/agent-manager.d.ts.map +1 -1
- package/dist/services/agent-manager.js +5 -2
- package/dist/services/agent-manager.js.map +1 -1
- package/dist/services/analyse-service.d.ts +31 -0
- package/dist/services/analyse-service.d.ts.map +1 -1
- package/dist/services/analyse-service.js +192 -5
- package/dist/services/analyse-service.js.map +1 -1
- package/dist/services/repo-service.d.ts +38 -4
- package/dist/services/repo-service.d.ts.map +1 -1
- package/dist/services/repo-service.js +364 -10
- package/dist/services/repo-service.js.map +1 -1
- package/dist/tools/config/config.tool.d.ts +10 -0
- package/dist/tools/config/config.tool.d.ts.map +1 -0
- package/dist/tools/config/config.tool.js +199 -0
- package/dist/tools/config/config.tool.js.map +1 -0
- package/dist/tools/config/index.d.ts +2 -0
- package/dist/tools/config/index.d.ts.map +1 -0
- package/dist/tools/config/index.js +2 -0
- package/dist/tools/config/index.js.map +1 -0
- package/dist/tools/persona/as.tool.d.ts +4 -0
- package/dist/tools/persona/as.tool.d.ts.map +1 -1
- package/dist/tools/persona/as.tool.js +58 -11
- package/dist/tools/persona/as.tool.js.map +1 -1
- package/dist/tools/plan/plan.tool.d.ts +4 -1
- package/dist/tools/plan/plan.tool.d.ts.map +1 -1
- package/dist/tools/plan/plan.tool.js +486 -157
- package/dist/tools/plan/plan.tool.js.map +1 -1
- package/dist/utils/adr-pattern-detector.d.ts +38 -0
- package/dist/utils/adr-pattern-detector.d.ts.map +1 -0
- package/dist/utils/adr-pattern-detector.js +158 -0
- package/dist/utils/adr-pattern-detector.js.map +1 -0
- package/dist/utils/adr-suggestion-generator.d.ts +50 -0
- package/dist/utils/adr-suggestion-generator.d.ts.map +1 -0
- package/dist/utils/adr-suggestion-generator.js +63 -0
- package/dist/utils/adr-suggestion-generator.js.map +1 -0
- package/dist/utils/commit-parser.d.ts +25 -0
- package/dist/utils/commit-parser.d.ts.map +1 -0
- package/dist/utils/commit-parser.js +46 -0
- package/dist/utils/commit-parser.js.map +1 -0
- package/dist/utils/package-version.d.ts +11 -0
- package/dist/utils/package-version.d.ts.map +1 -0
- package/dist/utils/package-version.js +26 -0
- package/dist/utils/package-version.js.map +1 -0
- package/package.json +4 -3
- package/templates/adr/README.md +243 -0
- package/templates/adr/_template/0001-record-architecture-decisions.md +223 -0
- package/templates/adr/_template/ADR_CREATION_INSTRUCTIONS.md +234 -0
- package/templates/adr/_template/adr-schema.json +74 -0
- package/templates/adr/_template/adr-template.md +136 -0
- package/templates/prd/PRD_CREATION_INSTRUCTIONS.md +268 -0
- package/templates/prd/README.md +252 -0
- package/templates/prd/_template/feature-template.md +105 -0
- package/templates/prd/_template/prd-template.md +126 -0
- package/templates/prd/example-task-management/features/task-collaboration.md +84 -0
- package/templates/prd/example-task-management/features/task-crud.md +222 -0
- package/templates/prd/example-task-management/features/task-workflow.md +62 -0
- package/templates/prd/example-task-management/prd.md +177 -0
- package/templates/prd/feature-schema.json +54 -0
- package/templates/prd/prd-schema.json +60 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyse-service.js","sourceRoot":"","sources":["../../src/services/analyse-service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"analyse-service.js","sourceRoot":"","sources":["../../src/services/analyse-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* Responsible for formatting and storing repository analysis and agent usage.
|
|
6
6
|
*/
|
|
7
7
|
import type { RepoAnalysis } from '@magic-ingredients/tiny-brain-core';
|
|
8
|
-
import { type TechStackDiff } from '@magic-ingredients/tiny-brain-core';
|
|
8
|
+
import { type TechStackDiff, ConfigService } from '@magic-ingredients/tiny-brain-core';
|
|
9
9
|
import type { RequestContext } from '../types/request-context.js';
|
|
10
10
|
export interface AgentInfo {
|
|
11
11
|
name: string;
|
|
@@ -62,15 +62,16 @@ export declare class RepoService {
|
|
|
62
62
|
private static readonly ANALYSIS_IGNORE_SUFFIX;
|
|
63
63
|
private static readonly STATUS_IGNORE_PREFIX;
|
|
64
64
|
private static readonly STATUS_IGNORE_SUFFIX;
|
|
65
|
-
|
|
65
|
+
private configService;
|
|
66
|
+
constructor(context: RequestContext, configService?: ConfigService);
|
|
66
67
|
/**
|
|
67
68
|
* Write the repository block to context file with phase-based agent structure
|
|
68
69
|
*/
|
|
69
|
-
writeRepoBlockWithPhases(analysis: RepoAnalysis, agentResponse: any, contextFilePath?: string): Promise<string>;
|
|
70
|
+
writeRepoBlockWithPhases(analysis: RepoAnalysis, agentResponse: any, contextFilePath?: string, version?: string): Promise<string>;
|
|
70
71
|
/**
|
|
71
72
|
* Write the repository block to context file and return the formatted block (legacy compact format)
|
|
72
73
|
*/
|
|
73
|
-
writeRepoBlockToContextFile(analysis: RepoAnalysis, agents: AgentInfo[], contextFilePath?: string): Promise<string>;
|
|
74
|
+
writeRepoBlockToContextFile(analysis: RepoAnalysis, agents: AgentInfo[], contextFilePath?: string, version?: string): Promise<string>;
|
|
74
75
|
/**
|
|
75
76
|
* Read the repository block from context file
|
|
76
77
|
*/
|
|
@@ -103,6 +104,26 @@ export declare class RepoService {
|
|
|
103
104
|
* Format repository context as clean YAML
|
|
104
105
|
*/
|
|
105
106
|
private formatRepositoryContextYaml;
|
|
107
|
+
/**
|
|
108
|
+
* Get the analysis version from package.json
|
|
109
|
+
*/
|
|
110
|
+
private getAnalysisVersion;
|
|
111
|
+
/**
|
|
112
|
+
* Extract version from tiny-brain block frontmatter
|
|
113
|
+
* @param content - The content containing the tiny-brain block
|
|
114
|
+
* @returns Version string or null if not found/invalid
|
|
115
|
+
*/
|
|
116
|
+
extractTinyBrainVersion(content: string): string | null;
|
|
117
|
+
/**
|
|
118
|
+
* Format Developer Workflow section with PRD and ADR information
|
|
119
|
+
* This section appears before the Subagent Context Protocol
|
|
120
|
+
*/
|
|
121
|
+
private formatDeveloperWorkflowSection;
|
|
122
|
+
/**
|
|
123
|
+
* Format documentation templates section for PRDs and ADRs
|
|
124
|
+
* Only includes sections for directories that exist
|
|
125
|
+
*/
|
|
126
|
+
private formatDocumentationTemplatesSection;
|
|
106
127
|
/**
|
|
107
128
|
* Extract TB_ANALYSIS from content with new IGNORE format
|
|
108
129
|
*/
|
|
@@ -191,5 +212,18 @@ export declare class RepoService {
|
|
|
191
212
|
* Get description for an agent (placeholder - could be enhanced)
|
|
192
213
|
*/
|
|
193
214
|
private getAgentDescription;
|
|
215
|
+
/**
|
|
216
|
+
* Format PRD Workflow section (appears FIRST in tiny-brain block)
|
|
217
|
+
* Combines PRD locations, ADR locations, workflow instructions, and commit headers
|
|
218
|
+
*/
|
|
219
|
+
private formatPRDWorkflowSection;
|
|
220
|
+
/**
|
|
221
|
+
* Format ADR section (currently empty as ADR info is part of PRD workflow)
|
|
222
|
+
*/
|
|
223
|
+
private formatADRSection;
|
|
224
|
+
/**
|
|
225
|
+
* Format the PRD Commit Headers section
|
|
226
|
+
*/
|
|
227
|
+
private formatPRDCommitHeadersSection;
|
|
194
228
|
}
|
|
195
229
|
//# sourceMappingURL=repo-service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repo-service.d.ts","sourceRoot":"","sources":["../../src/services/repo-service.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"repo-service.d.ts","sourceRoot":"","sources":["../../src/services/repo-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,8 +5,10 @@
|
|
|
5
5
|
* Responsible for formatting and storing repository analysis and agent usage.
|
|
6
6
|
*/
|
|
7
7
|
import * as fs from 'fs/promises';
|
|
8
|
+
import { existsSync, readFileSync } from 'fs';
|
|
8
9
|
import * as path from 'path';
|
|
9
|
-
import {
|
|
10
|
+
import { fileURLToPath } from 'url';
|
|
11
|
+
import { detectTechStackChanges, ConfigService } from '@magic-ingredients/tiny-brain-core';
|
|
10
12
|
import { getRepoRoot } from '../utils/repo-utils.js';
|
|
11
13
|
/**
|
|
12
14
|
* Service for managing repository context in the context file
|
|
@@ -28,13 +30,15 @@ export class RepoService {
|
|
|
28
30
|
static ANALYSIS_IGNORE_SUFFIX = ' -->';
|
|
29
31
|
static STATUS_IGNORE_PREFIX = '<!-- TB-STATUS-IGNORE:';
|
|
30
32
|
static STATUS_IGNORE_SUFFIX = ' -->';
|
|
31
|
-
|
|
33
|
+
configService;
|
|
34
|
+
constructor(context, configService) {
|
|
32
35
|
this.context = context;
|
|
36
|
+
this.configService = configService || new ConfigService(context);
|
|
33
37
|
}
|
|
34
38
|
/**
|
|
35
39
|
* Write the repository block to context file with phase-based agent structure
|
|
36
40
|
*/
|
|
37
|
-
async writeRepoBlockWithPhases(analysis, agentResponse, contextFilePath = 'CLAUDE.md') {
|
|
41
|
+
async writeRepoBlockWithPhases(analysis, agentResponse, contextFilePath = 'CLAUDE.md', version) {
|
|
38
42
|
const repoRoot = getRepoRoot();
|
|
39
43
|
const fullPath = path.join(repoRoot, contextFilePath);
|
|
40
44
|
this.context.logger.debug('[RepoService] Writing repo block with phases to context file:', {
|
|
@@ -44,7 +48,7 @@ export class RepoService {
|
|
|
44
48
|
agentCount: agentResponse?.agents?.length || 0
|
|
45
49
|
});
|
|
46
50
|
// Build the complete repo block with phase-based formatting
|
|
47
|
-
const repoBlock = this.formatRepoBlockWithPhases(analysis, agentResponse);
|
|
51
|
+
const repoBlock = await this.formatRepoBlockWithPhases(analysis, agentResponse, version);
|
|
48
52
|
// Read existing content
|
|
49
53
|
let existingContent = '';
|
|
50
54
|
try {
|
|
@@ -94,7 +98,7 @@ export class RepoService {
|
|
|
94
98
|
/**
|
|
95
99
|
* Write the repository block to context file and return the formatted block (legacy compact format)
|
|
96
100
|
*/
|
|
97
|
-
async writeRepoBlockToContextFile(analysis, agents, contextFilePath = 'CLAUDE.md') {
|
|
101
|
+
async writeRepoBlockToContextFile(analysis, agents, contextFilePath = 'CLAUDE.md', version) {
|
|
98
102
|
const repoRoot = getRepoRoot();
|
|
99
103
|
const fullPath = path.join(repoRoot, contextFilePath);
|
|
100
104
|
this.context.logger.debug('[RepoService] Writing repo block to context file:', {
|
|
@@ -103,7 +107,7 @@ export class RepoService {
|
|
|
103
107
|
fullPath
|
|
104
108
|
});
|
|
105
109
|
// Build the complete repo block
|
|
106
|
-
const repoBlock = this.formatRepoBlock(analysis, agents);
|
|
110
|
+
const repoBlock = this.formatRepoBlock(analysis, agents, version);
|
|
107
111
|
// Read existing content
|
|
108
112
|
let existingContent = '';
|
|
109
113
|
try {
|
|
@@ -187,8 +191,25 @@ export class RepoService {
|
|
|
187
191
|
/**
|
|
188
192
|
* Format the repository block with phase-based agent structure
|
|
189
193
|
*/
|
|
190
|
-
formatRepoBlockWithPhases(analysis, agentResponse) {
|
|
194
|
+
async formatRepoBlockWithPhases(analysis, agentResponse, version) {
|
|
191
195
|
let block = `${RepoService.REPO_BLOCK_START}\n`;
|
|
196
|
+
// Add YAML frontmatter with version if provided
|
|
197
|
+
if (version) {
|
|
198
|
+
block += '---\n';
|
|
199
|
+
block += `version: ${version}\n`;
|
|
200
|
+
block += `updated: ${new Date().toISOString()}\n`;
|
|
201
|
+
block += '---\n\n';
|
|
202
|
+
}
|
|
203
|
+
// PRD Workflow section (appears FIRST if PRD exists)
|
|
204
|
+
const prdWorkflow = await this.formatPRDWorkflowSection();
|
|
205
|
+
if (prdWorkflow) {
|
|
206
|
+
block += prdWorkflow;
|
|
207
|
+
}
|
|
208
|
+
// ADR section (if exists)
|
|
209
|
+
const adrSection = this.formatADRSection();
|
|
210
|
+
if (adrSection) {
|
|
211
|
+
block += adrSection;
|
|
212
|
+
}
|
|
192
213
|
block += `${RepoService.SUBAGENT_PROTOCOL_HEADER}\n\n`;
|
|
193
214
|
// When to use agents - phase-based format
|
|
194
215
|
block += `${RepoService.AGENT_USAGE_HEADER}\n\n`;
|
|
@@ -196,6 +217,11 @@ export class RepoService {
|
|
|
196
217
|
// Repository context - YAML format
|
|
197
218
|
block += `${RepoService.REPO_CONTEXT_HEADER}\n`;
|
|
198
219
|
block += this.formatRepositoryContextYaml(analysis);
|
|
220
|
+
// Documentation templates section (conditional)
|
|
221
|
+
const docTemplatesSection = this.formatDocumentationTemplatesSection();
|
|
222
|
+
if (docTemplatesSection) {
|
|
223
|
+
block += docTemplatesSection;
|
|
224
|
+
}
|
|
199
225
|
// Usage template
|
|
200
226
|
block += `\n${RepoService.USAGE_TEMPLATE_HEADER}\n\n`;
|
|
201
227
|
block += '```\n';
|
|
@@ -222,8 +248,20 @@ export class RepoService {
|
|
|
222
248
|
/**
|
|
223
249
|
* Format the complete repository block with subagent context protocol (legacy compact format)
|
|
224
250
|
*/
|
|
225
|
-
formatRepoBlock(analysis, agents) {
|
|
251
|
+
formatRepoBlock(analysis, agents, version) {
|
|
226
252
|
let block = `${RepoService.REPO_BLOCK_START}\n`;
|
|
253
|
+
// Add YAML frontmatter with version if provided
|
|
254
|
+
if (version) {
|
|
255
|
+
block += '---\n';
|
|
256
|
+
block += `version: ${version}\n`;
|
|
257
|
+
block += `updated: ${new Date().toISOString()}\n`;
|
|
258
|
+
block += '---\n\n';
|
|
259
|
+
}
|
|
260
|
+
// Developer Workflow section (appears before Subagent Context Protocol)
|
|
261
|
+
const developerWorkflow = this.formatDeveloperWorkflowSection();
|
|
262
|
+
if (developerWorkflow) {
|
|
263
|
+
block += developerWorkflow;
|
|
264
|
+
}
|
|
227
265
|
block += `${RepoService.SUBAGENT_PROTOCOL_HEADER}\n\n`;
|
|
228
266
|
// When to use agents - compact format
|
|
229
267
|
block += `${RepoService.AGENT_USAGE_HEADER}\n\n`;
|
|
@@ -231,6 +269,11 @@ export class RepoService {
|
|
|
231
269
|
// Repository context - YAML format
|
|
232
270
|
block += `${RepoService.REPO_CONTEXT_HEADER}\n`;
|
|
233
271
|
block += this.formatRepositoryContextYaml(analysis);
|
|
272
|
+
// Documentation templates section (conditional)
|
|
273
|
+
const docTemplatesSection = this.formatDocumentationTemplatesSection();
|
|
274
|
+
if (docTemplatesSection) {
|
|
275
|
+
block += docTemplatesSection;
|
|
276
|
+
}
|
|
234
277
|
// Usage template
|
|
235
278
|
block += `\n${RepoService.USAGE_TEMPLATE_HEADER}\n\n`;
|
|
236
279
|
block += '```\n';
|
|
@@ -249,6 +292,8 @@ export class RepoService {
|
|
|
249
292
|
block += 'CONSTRAINTS: Must be accessible, use TypeScript, follow TDD\n';
|
|
250
293
|
block += 'EXPECTED OUTPUT: Component file with tests and usage example\n';
|
|
251
294
|
block += '```\n';
|
|
295
|
+
// PRD Commit Headers section (before analysis marker)
|
|
296
|
+
block += this.formatPRDCommitHeadersSection();
|
|
252
297
|
// TB_ANALYSIS at the end with IGNORE suffix for clarity
|
|
253
298
|
block += `\n${RepoService.ANALYSIS_IGNORE_PREFIX}${JSON.stringify(analysis)}${RepoService.ANALYSIS_IGNORE_SUFFIX}\n`;
|
|
254
299
|
block += `${RepoService.REPO_BLOCK_END}\n`;
|
|
@@ -448,7 +493,11 @@ export class RepoService {
|
|
|
448
493
|
* Format repository context as clean YAML
|
|
449
494
|
*/
|
|
450
495
|
formatRepositoryContextYaml(analysis) {
|
|
496
|
+
const repoRoot = getRepoRoot();
|
|
451
497
|
let yaml = '```yaml\n';
|
|
498
|
+
// Analysis metadata
|
|
499
|
+
yaml += `Analysis Date: ${new Date().toISOString()}\n`;
|
|
500
|
+
yaml += `Analysis Version: ${this.getAnalysisVersion()}\n`;
|
|
452
501
|
yaml += `Languages: ${analysis.languages.join(', ')}\n`;
|
|
453
502
|
yaml += `Frameworks: ${analysis.frameworks.join(', ')}\n`;
|
|
454
503
|
yaml += `Build Tools: ${analysis.buildTools.join(', ')}\n`;
|
|
@@ -460,12 +509,134 @@ export class RepoService {
|
|
|
460
509
|
yaml += `Polyglot: Yes (primary: ${analysis.primaryLanguage})\n`;
|
|
461
510
|
}
|
|
462
511
|
yaml += `Documentation Pattern: ${analysis.documentationPattern}\n`;
|
|
463
|
-
//
|
|
464
|
-
const docLocations = analysis.documentationLocations?.map(loc => path.isAbsolute(loc) ? loc : path.join(
|
|
512
|
+
// Build documentation locations including PRD and ADR paths if they exist
|
|
513
|
+
const docLocations = analysis.documentationLocations?.map(loc => path.isAbsolute(loc) ? loc : path.join(repoRoot, loc)) || [];
|
|
514
|
+
// Add PRD path if it exists
|
|
515
|
+
const prdPath = path.join(repoRoot, 'docs', 'prd');
|
|
516
|
+
if (existsSync(prdPath) && !docLocations.includes(prdPath)) {
|
|
517
|
+
docLocations.push(prdPath);
|
|
518
|
+
}
|
|
519
|
+
// Add ADR path if it exists
|
|
520
|
+
const adrPath = path.join(repoRoot, 'docs', 'adr');
|
|
521
|
+
if (existsSync(adrPath) && !docLocations.includes(adrPath)) {
|
|
522
|
+
docLocations.push(adrPath);
|
|
523
|
+
}
|
|
465
524
|
yaml += `Documentation Locations: ${docLocations.join(', ')}\n`;
|
|
466
525
|
yaml += '```\n';
|
|
467
526
|
return yaml;
|
|
468
527
|
}
|
|
528
|
+
/**
|
|
529
|
+
* Get the analysis version from package.json
|
|
530
|
+
*/
|
|
531
|
+
getAnalysisVersion() {
|
|
532
|
+
try {
|
|
533
|
+
// Read package.json from the tiny-brain-local package
|
|
534
|
+
const currentFilePath = fileURLToPath(import.meta.url);
|
|
535
|
+
const packageJsonPath = path.join(path.dirname(currentFilePath), '../../package.json');
|
|
536
|
+
const packageJson = JSON.parse(readFileSync(packageJsonPath, 'utf-8'));
|
|
537
|
+
return packageJson.version || '0.0.0';
|
|
538
|
+
}
|
|
539
|
+
catch (error) {
|
|
540
|
+
this.context.logger.warn('Failed to read package version:', error);
|
|
541
|
+
return '0.0.0';
|
|
542
|
+
}
|
|
543
|
+
}
|
|
544
|
+
/**
|
|
545
|
+
* Extract version from tiny-brain block frontmatter
|
|
546
|
+
* @param content - The content containing the tiny-brain block
|
|
547
|
+
* @returns Version string or null if not found/invalid
|
|
548
|
+
*/
|
|
549
|
+
extractTinyBrainVersion(content) {
|
|
550
|
+
// Match YAML frontmatter after ## tiny-brain - start
|
|
551
|
+
const versionRegex = /## tiny-brain - start\n---\nversion: ([0-9]+\.[0-9]+\.[0-9]+)/;
|
|
552
|
+
const match = content.match(versionRegex);
|
|
553
|
+
return match ? match[1] : null;
|
|
554
|
+
}
|
|
555
|
+
/**
|
|
556
|
+
* Format Developer Workflow section with PRD and ADR information
|
|
557
|
+
* This section appears before the Subagent Context Protocol
|
|
558
|
+
*/
|
|
559
|
+
formatDeveloperWorkflowSection() {
|
|
560
|
+
const repoRoot = getRepoRoot();
|
|
561
|
+
const prdPath = path.join(repoRoot, 'docs', 'prd');
|
|
562
|
+
const adrPath = path.join(repoRoot, 'docs', 'adr');
|
|
563
|
+
const hasPRD = existsSync(prdPath);
|
|
564
|
+
const hasADR = existsSync(adrPath);
|
|
565
|
+
// Only include section if PRD or ADR directories exist
|
|
566
|
+
if (!hasPRD && !hasADR) {
|
|
567
|
+
return '';
|
|
568
|
+
}
|
|
569
|
+
let section = '## Developer Workflow\n\n';
|
|
570
|
+
section += 'This repository uses structured documentation for technical decisions and feature planning.\n\n';
|
|
571
|
+
if (hasPRD) {
|
|
572
|
+
section += '**Product Requirements Documents (PRDs):**\n';
|
|
573
|
+
section += `- Location: \`docs/prd/{prd-id}/prd.md\`\n`;
|
|
574
|
+
section += `- Features: \`docs/prd/{prd-id}/features/{feature-id}.md\`\n`;
|
|
575
|
+
section += `- Templates: \`docs/prd/_template/\`\n\n`;
|
|
576
|
+
}
|
|
577
|
+
if (hasADR) {
|
|
578
|
+
section += '**Architecture Decision Records (ADRs):**\n';
|
|
579
|
+
section += `- Location: \`docs/adr/NNNN-decision-title.md\`\n`;
|
|
580
|
+
section += `- Templates: \`docs/adr/_template/\`\n`;
|
|
581
|
+
section += `- Example: \`docs/adr/_template/0001-record-architecture-decisions.md\`\n\n`;
|
|
582
|
+
}
|
|
583
|
+
// Add PRD commit workflow with ADR checking if both exist
|
|
584
|
+
if (hasPRD && hasADR) {
|
|
585
|
+
section += '**PRD Commit Workflow:**\n\n';
|
|
586
|
+
section += 'After committing PRD-tracked code, ALWAYS check for ADR suggestions:\n\n';
|
|
587
|
+
section += '1. After successful git commit (via Bash tool)\n';
|
|
588
|
+
section += '2. Immediately call: `plan operation=check-adrs`\n';
|
|
589
|
+
section += '3. If suggestions exist, present them to user\n';
|
|
590
|
+
section += '4. Wait for user decision before proceeding\n\n';
|
|
591
|
+
section += '**When to Suggest ADRs:**\n\n';
|
|
592
|
+
section += 'Commit messages containing:\n';
|
|
593
|
+
section += '- adopt, migrate, implement, choose, replace, select\n';
|
|
594
|
+
section += '- + technology names (PostgreSQL, Redis, GraphQL, OAuth2, Kubernetes, etc.)\n';
|
|
595
|
+
section += '- + architecture patterns (microservices, event-driven, CQRS, etc.)\n\n';
|
|
596
|
+
}
|
|
597
|
+
return section;
|
|
598
|
+
}
|
|
599
|
+
/**
|
|
600
|
+
* Format documentation templates section for PRDs and ADRs
|
|
601
|
+
* Only includes sections for directories that exist
|
|
602
|
+
*/
|
|
603
|
+
formatDocumentationTemplatesSection() {
|
|
604
|
+
const repoRoot = getRepoRoot();
|
|
605
|
+
const prdPath = path.join(repoRoot, 'docs', 'prd');
|
|
606
|
+
const adrPath = path.join(repoRoot, 'docs', 'adr');
|
|
607
|
+
const hasPRD = existsSync(prdPath);
|
|
608
|
+
const hasADR = existsSync(adrPath);
|
|
609
|
+
// If neither exists, return empty string
|
|
610
|
+
if (!hasPRD && !hasADR) {
|
|
611
|
+
return '';
|
|
612
|
+
}
|
|
613
|
+
let section = '\n### Documentation Templates\n\n';
|
|
614
|
+
// Add PRD instructions if directory exists
|
|
615
|
+
if (hasPRD) {
|
|
616
|
+
const instructionsPath = path.join(prdPath, 'PRD_CREATION_INSTRUCTIONS.md');
|
|
617
|
+
const templatePath = path.join(prdPath, '_template');
|
|
618
|
+
const schemaPath = path.join(prdPath, '*.json');
|
|
619
|
+
const examplePath = path.join(prdPath, 'example-task-management');
|
|
620
|
+
section += '**PRD Creation:**\n';
|
|
621
|
+
section += `- ALWAYS read \`${instructionsPath}\` before creating PRDs\n`;
|
|
622
|
+
section += `- Use templates in \`${templatePath}/\`\n`;
|
|
623
|
+
section += `- Validate against schemas in \`${schemaPath}\`\n`;
|
|
624
|
+
section += `- Reference example: \`${examplePath}/\`\n\n`;
|
|
625
|
+
}
|
|
626
|
+
// Add ADR instructions if directory exists
|
|
627
|
+
if (hasADR) {
|
|
628
|
+
const instructionsPath = path.join(adrPath, '_template', 'ADR_CREATION_INSTRUCTIONS.md');
|
|
629
|
+
const templatePath = path.join(adrPath, '_template', 'adr-template.md');
|
|
630
|
+
const schemaPath = path.join(adrPath, '_template', 'adr-schema.json');
|
|
631
|
+
const examplePath = path.join(adrPath, '_template', '0001-record-architecture-decisions.md');
|
|
632
|
+
section += '**ADR Creation:**\n';
|
|
633
|
+
section += `- ALWAYS read \`${instructionsPath}\` before creating ADRs\n`;
|
|
634
|
+
section += `- Use template: \`${templatePath}\`\n`;
|
|
635
|
+
section += `- Validate against schema: \`${schemaPath}\`\n`;
|
|
636
|
+
section += `- Reference example: \`${examplePath}\`\n`;
|
|
637
|
+
}
|
|
638
|
+
return section;
|
|
639
|
+
}
|
|
469
640
|
/**
|
|
470
641
|
* Extract TB_ANALYSIS from content with new IGNORE format
|
|
471
642
|
*/
|
|
@@ -1019,5 +1190,188 @@ export class RepoService {
|
|
|
1019
1190
|
};
|
|
1020
1191
|
return descriptions[agentName] || `${agentName.replace(/-/g, ' ')} specialist`;
|
|
1021
1192
|
}
|
|
1193
|
+
/**
|
|
1194
|
+
* Format PRD Workflow section (appears FIRST in tiny-brain block)
|
|
1195
|
+
* Combines PRD locations, ADR locations, workflow instructions, and commit headers
|
|
1196
|
+
*/
|
|
1197
|
+
async formatPRDWorkflowSection() {
|
|
1198
|
+
// Check if SDD is enabled
|
|
1199
|
+
const enableSDD = await this.configService.isSDDEnabled();
|
|
1200
|
+
if (!enableSDD) {
|
|
1201
|
+
this.context.logger.debug('SDD disabled, skipping PRD Workflow section');
|
|
1202
|
+
return '';
|
|
1203
|
+
}
|
|
1204
|
+
const repoRoot = getRepoRoot();
|
|
1205
|
+
const prdPath = path.join(repoRoot, 'docs', 'prd');
|
|
1206
|
+
const adrPath = path.join(repoRoot, 'docs', 'adr');
|
|
1207
|
+
const hasPRD = existsSync(prdPath);
|
|
1208
|
+
const hasADR = existsSync(adrPath);
|
|
1209
|
+
// Only show section if PRD exists
|
|
1210
|
+
if (!hasPRD) {
|
|
1211
|
+
return '';
|
|
1212
|
+
}
|
|
1213
|
+
let section = '## PRD Workflow\n\n';
|
|
1214
|
+
section += 'IMPORTANT: Before starting work, read and understand all template files in `docs/prd/_template/` and `docs/adr/_template/` to understand the structure and requirements.\n\n';
|
|
1215
|
+
section += '**Product Requirements Documents (PRDs):**\n';
|
|
1216
|
+
section += `- Location: \`docs/prd/{prd-id}/prd.md\`\n`;
|
|
1217
|
+
section += `- Features: \`docs/prd/{prd-id}/features/{feature-id}.md\`\n`;
|
|
1218
|
+
section += `- Templates: \`docs/prd/_template/\` - READ ALL FILES to understand structure\n\n`;
|
|
1219
|
+
// Check if ADR is enabled before showing ADR-related content
|
|
1220
|
+
const enableADR = await this.configService.isADREnabled();
|
|
1221
|
+
if (hasADR && enableADR) {
|
|
1222
|
+
section += '**Architecture Decision Records (ADRs):**\n';
|
|
1223
|
+
section += `- Location: \`docs/adr/NNNN-decision-title.md\`\n`;
|
|
1224
|
+
section += `- Templates: \`docs/adr/_template/\` - READ ALL FILES to understand structure\n`;
|
|
1225
|
+
section += `- Example: \`docs/adr/_template/0001-record-architecture-decisions.md\`\n\n`;
|
|
1226
|
+
section += '**PRD Commit Workflow:**\n\n';
|
|
1227
|
+
section += 'After committing PRD-tracked code, ALWAYS check for ADR suggestions:\n\n';
|
|
1228
|
+
section += '1. After successful git commit (via Bash tool)\n';
|
|
1229
|
+
section += '2. Immediately call: `plan operation=check-adrs`\n';
|
|
1230
|
+
section += '3. If suggestions exist, present them to user\n';
|
|
1231
|
+
section += '4. Wait for user decision before proceeding\n\n';
|
|
1232
|
+
section += '**When to Suggest ADRs:**\n\n';
|
|
1233
|
+
section += 'Commit messages containing:\n';
|
|
1234
|
+
section += '- adopt, migrate, implement, choose, replace, select\n';
|
|
1235
|
+
section += '- + technology names (PostgreSQL, Redis, GraphQL, OAuth2, Kubernetes, etc.)\n';
|
|
1236
|
+
section += '- + architecture patterns (microservices, event-driven, CQRS, etc.)\n\n';
|
|
1237
|
+
}
|
|
1238
|
+
// Add commit headers section
|
|
1239
|
+
section += '## Commit Message Format\n\n';
|
|
1240
|
+
section += 'This project uses **Conventional Commits** (https://www.conventionalcommits.org/en/v1.0.0/).\n\n';
|
|
1241
|
+
section += 'When working on PRD-tracked tasks, ALWAYS add these headers immediately after the commit title.\n\n';
|
|
1242
|
+
section += '**Format:**\n';
|
|
1243
|
+
section += '```\n';
|
|
1244
|
+
section += '{type}({scope}): commit title\n\n';
|
|
1245
|
+
section += 'PRD: {prd-id}\n';
|
|
1246
|
+
section += 'Feature: {feature-id}\n';
|
|
1247
|
+
section += 'Task: {exact-task-description}\n\n';
|
|
1248
|
+
section += 'Detailed description of what changed, why, and how.\n';
|
|
1249
|
+
section += 'This section is REQUIRED - explain implementation details,\n';
|
|
1250
|
+
section += 'technical decisions, and any important context.\n\n';
|
|
1251
|
+
section += '🤖 Generated with [Claude Code](https://claude.com/claude-code)\n';
|
|
1252
|
+
section += '```\n\n';
|
|
1253
|
+
section += '**Example:**\n';
|
|
1254
|
+
section += '```\n';
|
|
1255
|
+
section += 'feat(dashboard): add SSE events for plan changes\n\n';
|
|
1256
|
+
section += 'PRD: plan-system-refactoring-implementation\n';
|
|
1257
|
+
section += 'Feature: dashboard-integration\n';
|
|
1258
|
+
section += 'Task: Add real-time SSE updates for plan changes\n\n';
|
|
1259
|
+
section += 'Implement server-sent events to notify dashboard clients\n';
|
|
1260
|
+
section += 'when progress.json files are updated. Uses EventEmitter\n';
|
|
1261
|
+
section += 'pattern to broadcast changes. Clients automatically\n';
|
|
1262
|
+
section += 'reconnect on connection loss.\n\n';
|
|
1263
|
+
section += '🤖 Generated with [Claude Code](https://claude.com/claude-code)\n';
|
|
1264
|
+
section += '```\n\n';
|
|
1265
|
+
section += '**Quick Reference:**\n';
|
|
1266
|
+
section += '- Use conventional commit format: `type(scope):` or `type:`\n';
|
|
1267
|
+
section += '- Scope is optional but recommended\n';
|
|
1268
|
+
section += '- PRD ID = directory name in `docs/prd/`\n';
|
|
1269
|
+
section += '- Feature ID = feature\'s `id` field (NOT `number`)\n';
|
|
1270
|
+
section += '- Task = EXACT description from progress.json\n';
|
|
1271
|
+
section += '- Type = `test`, `feat`, or `refactor` (for TDD tracking)\n';
|
|
1272
|
+
section += '- Order: Title → PRD headers → Description (REQUIRED) → Claude footer (LAST)\n\n';
|
|
1273
|
+
section += '📖 **Full documentation**: See `docs/prd/README.md` → "Task Tracking with Git Commits" section\n\n';
|
|
1274
|
+
// Check if TDD is enabled before showing TDD Workflow section
|
|
1275
|
+
const enableTDD = await this.configService.isTDDEnabled();
|
|
1276
|
+
if (enableTDD) {
|
|
1277
|
+
// Add TDD Workflow section
|
|
1278
|
+
section += '## TDD Workflow\n\n';
|
|
1279
|
+
section += '**MANDATORY:** This repository follows strict Test-Driven Development (TDD) with a 3-phase commit workflow.\n\n';
|
|
1280
|
+
section += '**CRITICAL RULES - NO EXCEPTIONS:**\n';
|
|
1281
|
+
section += '1. **NEVER** commit test files and implementation files together\n';
|
|
1282
|
+
section += '2. **ALWAYS** commit in this exact order: Red → Green → (optional) Refactor\n';
|
|
1283
|
+
section += '3. **RED PHASE MUST FAIL** - If tests pass in red phase, you did it wrong\n';
|
|
1284
|
+
section += '4. **GREEN PHASE MUST PASS** - If tests fail in green phase, you did it wrong\n\n';
|
|
1285
|
+
section += '**Red → Green → Refactor Cycle:**\n\n';
|
|
1286
|
+
section += '1. **Red Phase** (`test:` or `test(scope):` commits):\n';
|
|
1287
|
+
section += ' - **ONLY commit test files** (e.g., `*.test.ts`, `*.test.tsx`)\n';
|
|
1288
|
+
section += ' - **DO NOT commit implementation files** in this commit\n';
|
|
1289
|
+
section += ' - Tests MUST fail when you commit them (that\'s the point!)\n';
|
|
1290
|
+
section += ' - Run tests BEFORE committing to verify they fail\n';
|
|
1291
|
+
section += ' - Use: `git commit -m "test: ..."` or `git commit -m "test(api): ..."`\n';
|
|
1292
|
+
section += ' - Git hook automatically runs typecheck + lint but SKIPS tests\n';
|
|
1293
|
+
section += ' - Tracked in: `testCommitSha` field\n';
|
|
1294
|
+
section += ' - **Example:** `git add src/**/*.test.ts && git commit -m "test: add preference integration tests"`\n\n';
|
|
1295
|
+
section += '2. **Green Phase** (`feat:` or `feat(scope):` commits):\n';
|
|
1296
|
+
section += ' - **ONLY commit implementation files** (e.g., service files, components)\n';
|
|
1297
|
+
section += ' - **DO NOT commit test files** in this commit\n';
|
|
1298
|
+
section += ' - Implement minimum code to make tests pass\n';
|
|
1299
|
+
section += ' - Run tests BEFORE committing to verify they pass\n';
|
|
1300
|
+
section += ' - Use: `git commit -m "feat: ..."` or `git commit -m "feat(auth): ..."`\n';
|
|
1301
|
+
section += ' - Git hook automatically runs full checks (typecheck + lint + test)\n';
|
|
1302
|
+
section += ' - Tracked in: `commitSha` field\n';
|
|
1303
|
+
section += ' - **Marks task as COMPLETED**\n';
|
|
1304
|
+
section += ' - **Example:** `git add src/services/*.ts && git commit -m "feat: implement preference integration"`\n\n';
|
|
1305
|
+
section += '3. **Refactor Phase** (`refactor:` or `refactor(scope):` commits - optional):\n';
|
|
1306
|
+
section += ' - Improve code quality without changing behavior\n';
|
|
1307
|
+
section += ' - All tests must still pass\n';
|
|
1308
|
+
section += ' - Use: `git commit -m "refactor: ..."` or `git commit -m "refactor(plan): ..."`\n';
|
|
1309
|
+
section += ' - Git hook automatically runs full checks (typecheck + lint + test)\n';
|
|
1310
|
+
section += ' - Tracked in: `refactorCommitSha` field\n\n';
|
|
1311
|
+
section += '**Workflow Checklist:**\n';
|
|
1312
|
+
section += '- [ ] Write tests first (Red phase)\n';
|
|
1313
|
+
section += '- [ ] Run tests to verify they FAIL\n';
|
|
1314
|
+
section += '- [ ] Commit ONLY test files with `test:` prefix\n';
|
|
1315
|
+
section += '- [ ] Write implementation (Green phase)\n';
|
|
1316
|
+
section += '- [ ] Run tests to verify they PASS\n';
|
|
1317
|
+
section += '- [ ] Commit ONLY implementation files with `feat:` prefix\n';
|
|
1318
|
+
section += '- [ ] (Optional) Refactor and commit with `refactor:` prefix\n\n';
|
|
1319
|
+
section += '**Why This Matters:**\n';
|
|
1320
|
+
section += '- Git hooks automatically detect commit type and run appropriate checks\n';
|
|
1321
|
+
section += '- Separate commit tracking enables Feature 9 (TDD phase tracking in dashboard)\n';
|
|
1322
|
+
section += '- Provides audit trail of development process\n';
|
|
1323
|
+
section += '- Only `feat:` or `feat(scope):` commits mark tasks as completed\n';
|
|
1324
|
+
section += '- **Bundling phases together breaks the tracking system**\n\n';
|
|
1325
|
+
}
|
|
1326
|
+
return section;
|
|
1327
|
+
}
|
|
1328
|
+
/**
|
|
1329
|
+
* Format ADR section (currently empty as ADR info is part of PRD workflow)
|
|
1330
|
+
*/
|
|
1331
|
+
formatADRSection() {
|
|
1332
|
+
// ADR information is now included in PRD workflow section
|
|
1333
|
+
return '';
|
|
1334
|
+
}
|
|
1335
|
+
/**
|
|
1336
|
+
* Format the PRD Commit Headers section
|
|
1337
|
+
*/
|
|
1338
|
+
formatPRDCommitHeadersSection() {
|
|
1339
|
+
let section = '\n## Commit Message Format\n\n';
|
|
1340
|
+
section += 'This project uses **Conventional Commits** (https://www.conventionalcommits.org/en/v1.0.0/).\n\n';
|
|
1341
|
+
section += 'When working on PRD-tracked tasks, ALWAYS add these headers immediately after the commit title.\n\n';
|
|
1342
|
+
section += '**Format:**\n';
|
|
1343
|
+
section += '```\n';
|
|
1344
|
+
section += '{type}({scope}): commit title\n\n';
|
|
1345
|
+
section += 'PRD: {prd-id}\n';
|
|
1346
|
+
section += 'Feature: {feature-id}\n';
|
|
1347
|
+
section += 'Task: {exact-task-description}\n\n';
|
|
1348
|
+
section += 'Detailed description of what changed, why, and how.\n';
|
|
1349
|
+
section += 'This section is REQUIRED - explain implementation details,\n';
|
|
1350
|
+
section += 'technical decisions, and any important context.\n\n';
|
|
1351
|
+
section += '🤖 Generated with [Claude Code](https://claude.com/claude-code)\n';
|
|
1352
|
+
section += '```\n\n';
|
|
1353
|
+
section += '**Example:**\n';
|
|
1354
|
+
section += '```\n';
|
|
1355
|
+
section += 'feat(dashboard): add SSE events for plan changes\n\n';
|
|
1356
|
+
section += 'PRD: plan-system-refactoring-implementation\n';
|
|
1357
|
+
section += 'Feature: dashboard-integration\n';
|
|
1358
|
+
section += 'Task: Add real-time SSE updates for plan changes\n\n';
|
|
1359
|
+
section += 'Implement server-sent events to notify dashboard clients\n';
|
|
1360
|
+
section += 'when progress.json files are updated. Uses EventEmitter\n';
|
|
1361
|
+
section += 'pattern to broadcast changes. Clients automatically\n';
|
|
1362
|
+
section += 'reconnect on connection loss.\n\n';
|
|
1363
|
+
section += '🤖 Generated with [Claude Code](https://claude.com/claude-code)\n';
|
|
1364
|
+
section += '```\n\n';
|
|
1365
|
+
section += '**Quick Reference:**\n';
|
|
1366
|
+
section += '- Use conventional commit format: `type(scope):` or `type:`\n';
|
|
1367
|
+
section += '- Scope is optional but recommended\n';
|
|
1368
|
+
section += '- PRD ID = directory name in `docs/prd/`\n';
|
|
1369
|
+
section += '- Feature ID = feature\'s `id` field (NOT `number`)\n';
|
|
1370
|
+
section += '- Task = EXACT description from progress.json\n';
|
|
1371
|
+
section += '- Type = `test`, `feat`, or `refactor` (for TDD tracking)\n';
|
|
1372
|
+
section += '- Order: Title → PRD headers → Description (REQUIRED) → Claude footer (LAST)\n\n';
|
|
1373
|
+
section += '📖 **Full documentation**: See `docs/prd/README.md` → "Task Tracking with Git Commits" section\n';
|
|
1374
|
+
return section;
|
|
1375
|
+
}
|
|
1022
1376
|
}
|
|
1023
1377
|
//# sourceMappingURL=repo-service.js.map
|