@barissozen/csns 0.6.0 → 0.7.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.
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Audit Gate — Post-Build Automated Audit
3
+ *
4
+ * Orchestrator plan yürütmeyi bitirdikten sonra:
5
+ * 1. ReverseEngineer ile full audit çalıştır
6
+ * 2. Sorunları WiringIssue olarak raporla
7
+ * 3. Critical sorunları DECISIONS.md'ye kaydet
8
+ * 4. Fix gerekiyorsa TaskDefinition[] döndür (orchestrator tekrar yürütebilir)
9
+ *
10
+ * Build → Audit → Fix döngüsünün "audit" bacağı.
11
+ */
12
+ import type { AuditReport } from '../agent/tracer/reverse-engineer.js';
13
+ import type { LLMProvider } from '../llm/types.js';
14
+ import type { TaskDefinition, MemoryFiles } from '../types/index.js';
15
+ export interface AuditGateResult {
16
+ passed: boolean;
17
+ report: AuditReport;
18
+ fixTasks: TaskDefinition[];
19
+ summary: string;
20
+ }
21
+ export declare class AuditGate {
22
+ private projectRoot;
23
+ private provider;
24
+ private log;
25
+ constructor(projectRoot: string, provider?: LLMProvider | null, log?: (msg: string) => void);
26
+ /**
27
+ * Full audit gate — pass/fail decision + fix tasks if failed.
28
+ * @param memoryFiles Current memory snapshot (for decision cross-check)
29
+ * @param threshold Minimum health score to pass (default: 70)
30
+ */
31
+ run(memoryFiles?: Partial<MemoryFiles>, threshold?: number): Promise<AuditGateResult>;
32
+ /**
33
+ * Convert audit violations into actionable fix tasks.
34
+ * Orchestrator can feed these back into executePlan().
35
+ */
36
+ private generateFixTasks;
37
+ private buildSummary;
38
+ }
39
+ //# sourceMappingURL=audit-gate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audit-gate.d.ts","sourceRoot":"","sources":["../../src/orchestrator/audit-gate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErE,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,WAAW,CAAC;IACpB,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,GAAG,CAAwB;gBAEvB,WAAW,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,WAAW,GAAG,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI;IAM3F;;;;OAIG;IACG,GAAG,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,EAAE,SAAS,SAAK,GAAG,OAAO,CAAC,eAAe,CAAC;IAwCvF;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAqGxB,OAAO,CAAC,YAAY;CAgBrB"}
@@ -0,0 +1,173 @@
1
+ /**
2
+ * Audit Gate — Post-Build Automated Audit
3
+ *
4
+ * Orchestrator plan yürütmeyi bitirdikten sonra:
5
+ * 1. ReverseEngineer ile full audit çalıştır
6
+ * 2. Sorunları WiringIssue olarak raporla
7
+ * 3. Critical sorunları DECISIONS.md'ye kaydet
8
+ * 4. Fix gerekiyorsa TaskDefinition[] döndür (orchestrator tekrar yürütebilir)
9
+ *
10
+ * Build → Audit → Fix döngüsünün "audit" bacağı.
11
+ */
12
+ import { StaticAnalyzer } from '../agent/tracer/static-analyzer.js';
13
+ import { ReverseEngineer } from '../agent/tracer/reverse-engineer.js';
14
+ export class AuditGate {
15
+ projectRoot;
16
+ provider;
17
+ log;
18
+ constructor(projectRoot, provider, log) {
19
+ this.projectRoot = projectRoot;
20
+ this.provider = provider ?? null;
21
+ this.log = log ?? console.log;
22
+ }
23
+ /**
24
+ * Full audit gate — pass/fail decision + fix tasks if failed.
25
+ * @param memoryFiles Current memory snapshot (for decision cross-check)
26
+ * @param threshold Minimum health score to pass (default: 70)
27
+ */
28
+ async run(memoryFiles, threshold = 70) {
29
+ this.log(' 🔍 Audit gate starting...');
30
+ // 1. Build static graph
31
+ const analyzer = new StaticAnalyzer(this.projectRoot);
32
+ const { imports, exports, edges } = await analyzer.buildGraph();
33
+ // 2. Run full audit
34
+ const auditor = new ReverseEngineer(this.projectRoot, this.provider);
35
+ const report = await auditor.audit(imports, exports, edges, {
36
+ mission: memoryFiles?.mission,
37
+ architecture: memoryFiles?.architecture,
38
+ decisions: memoryFiles?.decisions,
39
+ });
40
+ // 3. Log findings
41
+ this.log(` 🏗️ ${report.classifications.length} files classified`);
42
+ this.log(` 🔀 ${report.dataFlows.length} data flows (${report.summary.completeFlows} complete, ${report.summary.incompleteFlows} incomplete)`);
43
+ this.log(` ⚠️ ${report.violations.length} violations`);
44
+ this.log(` 📜 ${report.summary.decisionsImplemented}/${report.summary.decisionsTotal} decisions implemented`);
45
+ this.log(` 💯 Health: ${report.summary.healthScore}/100 (threshold: ${threshold})`);
46
+ // 4. Generate fix tasks for violations
47
+ const fixTasks = this.generateFixTasks(report);
48
+ // 5. Pass/fail
49
+ const passed = report.summary.healthScore >= threshold;
50
+ if (passed) {
51
+ this.log(' ✅ Audit gate PASSED');
52
+ }
53
+ else {
54
+ this.log(` ❌ Audit gate FAILED (${report.summary.healthScore} < ${threshold})`);
55
+ this.log(` 🔧 ${fixTasks.length} fix tasks generated`);
56
+ }
57
+ const summary = this.buildSummary(report, passed, threshold);
58
+ return { passed, report, fixTasks, summary };
59
+ }
60
+ /**
61
+ * Convert audit violations into actionable fix tasks.
62
+ * Orchestrator can feed these back into executePlan().
63
+ */
64
+ generateFixTasks(report) {
65
+ const tasks = [];
66
+ let taskCounter = 900; // T9xx namespace for audit-generated tasks
67
+ // Layer skip violations → add service layer
68
+ const layerSkips = report.violations.filter(v => v.type === 'layer-skip');
69
+ if (layerSkips.length > 0) {
70
+ tasks.push({
71
+ id: `T${++taskCounter}`,
72
+ title: 'Add missing service layer',
73
+ description: `Audit found ${layerSkips.length} routes that skip the service layer and access repositories directly.\n\nViolations:\n${layerSkips.map(v => `- ${v.description}`).join('\n')}\n\nExpected: Controller → Service → Repository pattern.\nCreate service classes and route through them.`,
74
+ type: 'code',
75
+ dependencies: [],
76
+ priority: 'high',
77
+ estimatedComplexity: 'moderate',
78
+ acceptanceCriteria: [
79
+ 'All routes go through a service layer',
80
+ 'No direct repository imports in route/controller files',
81
+ 'Existing tests still pass',
82
+ ],
83
+ });
84
+ }
85
+ // Wrong-direction violations → fix dependency direction
86
+ const wrongDir = report.violations.filter(v => v.type === 'wrong-direction');
87
+ if (wrongDir.length > 0) {
88
+ tasks.push({
89
+ id: `T${++taskCounter}`,
90
+ title: 'Fix upward dependency violations',
91
+ description: `Audit found ${wrongDir.length} upward dependencies (lower layer importing higher layer).\n\nViolations:\n${wrongDir.map(v => `- ${v.description}`).join('\n')}\n\nExpected: Dependencies flow downward only.\nExtract shared interfaces or move logic to correct layer.`,
92
+ type: 'code',
93
+ dependencies: [],
94
+ priority: 'high',
95
+ estimatedComplexity: 'moderate',
96
+ acceptanceCriteria: [
97
+ 'No lower-layer file imports from upper layers',
98
+ 'Shared types extracted to types/ directory',
99
+ 'Existing tests still pass',
100
+ ],
101
+ });
102
+ }
103
+ // Decision contradictions → fix code to match decisions
104
+ const contradictions = report.decisionAudit.filter(d => d.status === 'contradicted');
105
+ for (const d of contradictions) {
106
+ tasks.push({
107
+ id: `T${++taskCounter}`,
108
+ title: `Fix contradicted decision: ${d.title}`,
109
+ description: `Audit found that decision "${d.decisionId}: ${d.title}" is contradicted by actual code.\n\nEvidence:\n${d.evidence.filter(e => e.startsWith('⚠️')).map(e => `- ${e}`).join('\n')}\n\nEither fix the code to match the decision, or update DECISIONS.md if the decision changed.`,
110
+ type: 'code',
111
+ dependencies: [],
112
+ priority: 'critical',
113
+ estimatedComplexity: 'moderate',
114
+ acceptanceCriteria: [
115
+ `Code aligns with decision: ${d.title}`,
116
+ 'No contradicting imports/patterns remain',
117
+ 'DECISIONS.md is up to date',
118
+ ],
119
+ });
120
+ }
121
+ // Incomplete data flows → complete the chain
122
+ const incompleteFlows = report.dataFlows.filter(f => !f.complete);
123
+ if (incompleteFlows.length > 0) {
124
+ tasks.push({
125
+ id: `T${++taskCounter}`,
126
+ title: 'Complete broken data flow chains',
127
+ description: `Audit found ${incompleteFlows.length} incomplete data flow chains.\n\nIncomplete flows:\n${incompleteFlows.map(f => `- ${f.trigger}: ${f.gaps.join('; ')}`).join('\n')}\n\nEnsure each route has a complete chain: route → middleware → service → repository → response.`,
128
+ type: 'code',
129
+ dependencies: [],
130
+ priority: 'medium',
131
+ estimatedComplexity: 'moderate',
132
+ acceptanceCriteria: [
133
+ 'All routes have complete handler chains',
134
+ 'No inline business logic in route handlers',
135
+ 'Services delegate to repositories where applicable',
136
+ ],
137
+ });
138
+ }
139
+ // Pattern inconsistency → standardize
140
+ const patternIssues = report.violations.filter(v => v.type === 'pattern-inconsistency');
141
+ if (patternIssues.length > 0) {
142
+ tasks.push({
143
+ id: `T${++taskCounter}`,
144
+ title: 'Standardize architectural patterns',
145
+ description: `Audit found inconsistent patterns across the codebase.\n\n${patternIssues.map(v => `- ${v.description}`).join('\n')}\n\nPick one pattern and apply it consistently across all routes/modules.`,
146
+ type: 'code',
147
+ dependencies: [],
148
+ priority: 'medium',
149
+ estimatedComplexity: 'simple',
150
+ acceptanceCriteria: [
151
+ 'All routes follow the same layered pattern',
152
+ 'No mixed direct/service patterns',
153
+ ],
154
+ });
155
+ }
156
+ return tasks;
157
+ }
158
+ buildSummary(report, passed, threshold) {
159
+ const parts = [
160
+ `Audit ${passed ? 'PASSED' : 'FAILED'} (${report.summary.healthScore}/${threshold})`,
161
+ `Files: ${report.summary.totalFiles}`,
162
+ `Data flows: ${report.summary.completeFlows}/${report.summary.totalFlows} complete`,
163
+ `Violations: ${report.summary.violationCount}`,
164
+ `Decisions: ${report.summary.decisionsImplemented}/${report.summary.decisionsTotal} implemented`,
165
+ ];
166
+ const contradicted = report.decisionAudit.filter(d => d.status === 'contradicted');
167
+ if (contradicted.length > 0) {
168
+ parts.push(`⚠️ CONTRADICTED: ${contradicted.map(d => d.title).join(', ')}`);
169
+ }
170
+ return parts.join('\n');
171
+ }
172
+ }
173
+ //# sourceMappingURL=audit-gate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audit-gate.js","sourceRoot":"","sources":["../../src/orchestrator/audit-gate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAYtE,MAAM,OAAO,SAAS;IACZ,WAAW,CAAS;IACpB,QAAQ,CAAqB;IAC7B,GAAG,CAAwB;IAEnC,YAAY,WAAmB,EAAE,QAA6B,EAAE,GAA2B;QACzF,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,QAAQ,GAAG,QAAQ,IAAI,IAAI,CAAC;QACjC,IAAI,CAAC,GAAG,GAAG,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;IAChC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,GAAG,CAAC,WAAkC,EAAE,SAAS,GAAG,EAAE;QAC1D,IAAI,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;QAExC,wBAAwB;QACxB,MAAM,QAAQ,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACtD,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAC;QAEhE,oBAAoB;QACpB,MAAM,OAAO,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACrE,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;YAC1D,OAAO,EAAE,WAAW,EAAE,OAAO;YAC7B,YAAY,EAAE,WAAW,EAAE,YAAY;YACvC,SAAS,EAAE,WAAW,EAAE,SAAS;SAClC,CAAC,CAAC;QAEH,kBAAkB;QAClB,IAAI,CAAC,GAAG,CAAC,UAAU,MAAM,CAAC,eAAe,CAAC,MAAM,mBAAmB,CAAC,CAAC;QACrE,IAAI,CAAC,GAAG,CAAC,QAAQ,MAAM,CAAC,SAAS,CAAC,MAAM,gBAAgB,MAAM,CAAC,OAAO,CAAC,aAAa,cAAc,MAAM,CAAC,OAAO,CAAC,eAAe,cAAc,CAAC,CAAC;QAChJ,IAAI,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,UAAU,CAAC,MAAM,aAAa,CAAC,CAAC;QACzD,IAAI,CAAC,GAAG,CAAC,QAAQ,MAAM,CAAC,OAAO,CAAC,oBAAoB,IAAI,MAAM,CAAC,OAAO,CAAC,cAAc,wBAAwB,CAAC,CAAC;QAC/G,IAAI,CAAC,GAAG,CAAC,gBAAgB,MAAM,CAAC,OAAO,CAAC,WAAW,oBAAoB,SAAS,GAAG,CAAC,CAAC;QAErF,uCAAuC;QACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QAE/C,eAAe;QACf,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,IAAI,SAAS,CAAC;QAEvD,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QACpC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,GAAG,CAAC,0BAA0B,MAAM,CAAC,OAAO,CAAC,WAAW,MAAM,SAAS,GAAG,CAAC,CAAC;YACjF,IAAI,CAAC,GAAG,CAAC,QAAQ,QAAQ,CAAC,MAAM,sBAAsB,CAAC,CAAC;QAC1D,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;QAE7D,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;IAC/C,CAAC;IAED;;;OAGG;IACK,gBAAgB,CAAC,MAAmB;QAC1C,MAAM,KAAK,GAAqB,EAAE,CAAC;QACnC,IAAI,WAAW,GAAG,GAAG,CAAC,CAAC,2CAA2C;QAElE,4CAA4C;QAC5C,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC;QAC1E,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,KAAK,CAAC,IAAI,CAAC;gBACT,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE;gBACvB,KAAK,EAAE,2BAA2B;gBAClC,WAAW,EAAE,eAAe,UAAU,CAAC,MAAM,yFAAyF,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,0GAA0G;gBACpS,IAAI,EAAE,MAAM;gBACZ,YAAY,EAAE,EAAE;gBAChB,QAAQ,EAAE,MAAM;gBAChB,mBAAmB,EAAE,UAAU;gBAC/B,kBAAkB,EAAE;oBAClB,uCAAuC;oBACvC,wDAAwD;oBACxD,2BAA2B;iBAC5B;aACF,CAAC,CAAC;QACL,CAAC;QAED,wDAAwD;QACxD,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,iBAAiB,CAAC,CAAC;QAC7E,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,KAAK,CAAC,IAAI,CAAC;gBACT,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE;gBACvB,KAAK,EAAE,kCAAkC;gBACzC,WAAW,EAAE,eAAe,QAAQ,CAAC,MAAM,8EAA8E,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,2GAA2G;gBACtR,IAAI,EAAE,MAAM;gBACZ,YAAY,EAAE,EAAE;gBAChB,QAAQ,EAAE,MAAM;gBAChB,mBAAmB,EAAE,UAAU;gBAC/B,kBAAkB,EAAE;oBAClB,+CAA+C;oBAC/C,4CAA4C;oBAC5C,2BAA2B;iBAC5B;aACF,CAAC,CAAC;QACL,CAAC;QAED,wDAAwD;QACxD,MAAM,cAAc,GAAG,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,cAAc,CAAC,CAAC;QACrF,KAAK,MAAM,CAAC,IAAI,cAAc,EAAE,CAAC;YAC/B,KAAK,CAAC,IAAI,CAAC;gBACT,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE;gBACvB,KAAK,EAAE,8BAA8B,CAAC,CAAC,KAAK,EAAE;gBAC9C,WAAW,EAAE,8BAA8B,CAAC,CAAC,UAAU,KAAK,CAAC,CAAC,KAAK,mDAAmD,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,gGAAgG;gBAC9R,IAAI,EAAE,MAAM;gBACZ,YAAY,EAAE,EAAE;gBAChB,QAAQ,EAAE,UAAU;gBACpB,mBAAmB,EAAE,UAAU;gBAC/B,kBAAkB,EAAE;oBAClB,8BAA8B,CAAC,CAAC,KAAK,EAAE;oBACvC,0CAA0C;oBAC1C,4BAA4B;iBAC7B;aACF,CAAC,CAAC;QACL,CAAC;QAED,6CAA6C;QAC7C,MAAM,eAAe,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QAClE,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,KAAK,CAAC,IAAI,CAAC;gBACT,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE;gBACvB,KAAK,EAAE,kCAAkC;gBACzC,WAAW,EAAE,eAAe,eAAe,CAAC,MAAM,uDAAuD,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,mGAAmG;gBACvR,IAAI,EAAE,MAAM;gBACZ,YAAY,EAAE,EAAE;gBAChB,QAAQ,EAAE,QAAQ;gBAClB,mBAAmB,EAAE,UAAU;gBAC/B,kBAAkB,EAAE;oBAClB,yCAAyC;oBACzC,4CAA4C;oBAC5C,oDAAoD;iBACrD;aACF,CAAC,CAAC;QACL,CAAC;QAED,sCAAsC;QACtC,MAAM,aAAa,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,uBAAuB,CAAC,CAAC;QACxF,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,KAAK,CAAC,IAAI,CAAC;gBACT,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE;gBACvB,KAAK,EAAE,oCAAoC;gBAC3C,WAAW,EAAE,6DAA6D,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,2EAA2E;gBAC5M,IAAI,EAAE,MAAM;gBACZ,YAAY,EAAE,EAAE;gBAChB,QAAQ,EAAE,QAAQ;gBAClB,mBAAmB,EAAE,QAAQ;gBAC7B,kBAAkB,EAAE;oBAClB,4CAA4C;oBAC5C,kCAAkC;iBACnC;aACF,CAAC,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,YAAY,CAAC,MAAmB,EAAE,MAAe,EAAE,SAAiB;QAC1E,MAAM,KAAK,GAAG;YACZ,SAAS,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,OAAO,CAAC,WAAW,IAAI,SAAS,GAAG;YACpF,UAAU,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE;YACrC,eAAe,MAAM,CAAC,OAAO,CAAC,aAAa,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,WAAW;YACnF,eAAe,MAAM,CAAC,OAAO,CAAC,cAAc,EAAE;YAC9C,cAAc,MAAM,CAAC,OAAO,CAAC,oBAAoB,IAAI,MAAM,CAAC,OAAO,CAAC,cAAc,cAAc;SACjG,CAAC;QAEF,MAAM,YAAY,GAAG,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,cAAc,CAAC,CAAC;QACnF,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,KAAK,CAAC,IAAI,CAAC,oBAAoB,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC9E,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;CACF"}
@@ -6,4 +6,6 @@ export { DependencyGraph } from './dependency-graph.js';
6
6
  export { MilestoneManager } from './milestone-manager.js';
7
7
  export { RecoveryManager } from './recovery.js';
8
8
  export { IntegrationEvaluator } from './integration-evaluator.js';
9
+ export { AuditGate } from './audit-gate.js';
10
+ export { scaffoldProject } from './scaffold.js';
9
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/orchestrator/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/orchestrator/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC"}
@@ -6,4 +6,6 @@ export { DependencyGraph } from './dependency-graph.js';
6
6
  export { MilestoneManager } from './milestone-manager.js';
7
7
  export { RecoveryManager } from './recovery.js';
8
8
  export { IntegrationEvaluator } from './integration-evaluator.js';
9
+ export { AuditGate } from './audit-gate.js';
10
+ export { scaffoldProject } from './scaffold.js';
9
11
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/orchestrator/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/orchestrator/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC"}
@@ -11,6 +11,7 @@ export declare class Orchestrator {
11
11
  private planner;
12
12
  private evaluator;
13
13
  private escalator;
14
+ private auditGate;
14
15
  private config;
15
16
  private steps;
16
17
  private sessionId;
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../src/orchestrator/orchestrator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH,OAAO,KAAK,EACV,kBAAkB,EAIlB,oBAAoB,EAMrB,MAAM,mBAAmB,CAAC;AAE3B,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,KAAK,CAA2B;IACxC,OAAO,CAAC,SAAS,CAAS;IAC1B,gDAAgD;IAChD,OAAO,CAAC,OAAO,CAA0C;gBAE7C,MAAM,EAAE,kBAAkB;IAwBhC,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;YAgDzC,WAAW;YA0CX,WAAW;YAkCX,kBAAkB;YA2ClB,gBAAgB;YAgBhB,cAAc;YAqFd,gBAAgB;YAiBhB,eAAe;YAkBf,eAAe;YASf,oBAAoB;YAYpB,cAAc;YAUd,eAAe;IAiB7B,OAAO,CAAC,OAAO;IAWf,OAAO,CAAC,GAAG;CAKZ"}
1
+ {"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../src/orchestrator/orchestrator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAUH,OAAO,KAAK,EACV,kBAAkB,EAIlB,oBAAoB,EAMrB,MAAM,mBAAmB,CAAC;AAE3B,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,KAAK,CAA2B;IACxC,OAAO,CAAC,SAAS,CAAS;IAC1B,gDAAgD;IAChD,OAAO,CAAC,OAAO,CAA0C;gBAE7C,MAAM,EAAE,kBAAkB;IA6BhC,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;YAyFzC,WAAW;YA0CX,WAAW;YAkCX,kBAAkB;YA2ClB,gBAAgB;YAgBhB,cAAc;YAqFd,gBAAgB;YAiBhB,eAAe;YAkBf,eAAe;YASf,oBAAoB;YAYpB,cAAc;YAUd,eAAe;IAiB7B,OAAO,CAAC,OAAO;IAWf,OAAO,CAAC,GAAG;CAKZ"}
@@ -9,6 +9,8 @@ import { AgentRunner } from '../agent/index.js';
9
9
  import { Planner } from './planner.js';
10
10
  import { Evaluator } from './evaluator.js';
11
11
  import { Escalator } from './escalator.js';
12
+ import { AuditGate } from './audit-gate.js';
13
+ import { resolveProvider } from '../llm/resolve.js';
12
14
  import { t, setLocale } from '../i18n/index.js';
13
15
  export class Orchestrator {
14
16
  memory;
@@ -16,6 +18,7 @@ export class Orchestrator {
16
18
  planner;
17
19
  evaluator;
18
20
  escalator;
21
+ auditGate;
19
22
  config;
20
23
  steps = [];
21
24
  sessionId;
@@ -38,6 +41,7 @@ export class Orchestrator {
38
41
  this.planner = new Planner(config);
39
42
  this.evaluator = new Evaluator(config);
40
43
  this.escalator = new Escalator();
44
+ this.auditGate = new AuditGate(config.projectRoot, resolveProvider(config), (msg) => this.log(msg));
41
45
  this.sessionId = `session-${Date.now()}`;
42
46
  }
43
47
  // ── Ana Orkestrasyon Akışı ──────────────────────────────
@@ -68,7 +72,41 @@ export class Orchestrator {
68
72
  await this.transitionPhase('planning');
69
73
  // 6. Execution loop
70
74
  await this.executePlan(plan);
71
- // 7. Session özeti
75
+ // 7. Post-build audit gate
76
+ this.log('\n🔍 Running post-build audit...');
77
+ const memoryFiles = await this.memory.readAll();
78
+ const auditResult = await this.auditGate.run(memoryFiles);
79
+ if (!auditResult.passed && auditResult.fixTasks.length > 0) {
80
+ this.log(`\n🔧 Audit found ${auditResult.fixTasks.length} issues — generating fix tasks...`);
81
+ // Log audit decision
82
+ const auditDecisionId = await this.memory.getNextDecisionId();
83
+ await this.memory.appendDecision({
84
+ id: auditDecisionId,
85
+ title: `Post-build audit: ${auditResult.passed ? 'PASSED' : 'FAILED'} (${auditResult.report.summary.healthScore}/100)`,
86
+ date: new Date().toISOString(),
87
+ context: `Automated audit after plan execution`,
88
+ decision: auditResult.summary,
89
+ rationale: `${auditResult.report.violations.length} violations, ${auditResult.fixTasks.length} fix tasks generated`,
90
+ alternatives: 'Manual code review',
91
+ status: 'active',
92
+ });
93
+ // Execute fix tasks
94
+ const fixPlan = {
95
+ tasks: auditResult.fixTasks,
96
+ executionOrder: [auditResult.fixTasks.map(t2 => t2.id)],
97
+ estimatedSteps: auditResult.fixTasks.length,
98
+ };
99
+ for (const fixTask of auditResult.fixTasks) {
100
+ this.taskMap.set(fixTask.id, fixTask);
101
+ }
102
+ this.log('\n── Audit Fix Round ──');
103
+ await this.executePlan(fixPlan);
104
+ // Re-audit after fix
105
+ this.log('\n🔍 Re-auditing after fixes...');
106
+ const reAudit = await this.auditGate.run(await this.memory.readAll());
107
+ this.log(` 💯 Health: ${reAudit.report.summary.healthScore}/100 ${reAudit.passed ? '✅' : '⚠️ still below threshold'}`);
108
+ }
109
+ // 8. Session summary
72
110
  return {
73
111
  sessionId: this.sessionId,
74
112
  startedAt: new Date().toISOString(),
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../src/orchestrator/orchestrator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../src/orchestrator/orchestrator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Project Scaffold — Route-based Starter Templates
3
+ *
4
+ * /new ile proje oluşturulurken mimari kararlara göre
5
+ * route → service → repo katmanlı iskelet üretir.
6
+ * Bu iskelet Tracer/Audit tarafından trace edilebilir.
7
+ */
8
+ import type { ArchitectureDecisions } from '../types/index.js';
9
+ export interface ScaffoldResult {
10
+ files: string[];
11
+ routes: string[];
12
+ }
13
+ /**
14
+ * Mimari kararlara göre layered project scaffold üret.
15
+ * Her zaman route → service → (repo opsiyonel) yapısında.
16
+ */
17
+ export declare function scaffoldProject(projectRoot: string, decisions: ArchitectureDecisions): Promise<ScaffoldResult>;
18
+ //# sourceMappingURL=scaffold.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scaffold.d.ts","sourceRoot":"","sources":["../../src/orchestrator/scaffold.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAE/D,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED;;;GAGG;AACH,wBAAsB,eAAe,CACnC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,qBAAqB,GAC/B,OAAO,CAAC,cAAc,CAAC,CA+QzB"}
@@ -0,0 +1,274 @@
1
+ /**
2
+ * Project Scaffold — Route-based Starter Templates
3
+ *
4
+ * /new ile proje oluşturulurken mimari kararlara göre
5
+ * route → service → repo katmanlı iskelet üretir.
6
+ * Bu iskelet Tracer/Audit tarafından trace edilebilir.
7
+ */
8
+ import { writeFile, mkdir } from 'node:fs/promises';
9
+ import { join } from 'node:path';
10
+ /**
11
+ * Mimari kararlara göre layered project scaffold üret.
12
+ * Her zaman route → service → (repo opsiyonel) yapısında.
13
+ */
14
+ export async function scaffoldProject(projectRoot, decisions) {
15
+ const files = [];
16
+ const routes = [];
17
+ // Directories
18
+ const dirs = [
19
+ 'src', 'src/routes', 'src/services', 'src/middleware', 'src/config',
20
+ ...(decisions.database !== 'in-memory' ? ['src/repositories', 'src/models'] : []),
21
+ 'tests',
22
+ ];
23
+ for (const dir of dirs) {
24
+ await mkdir(join(projectRoot, dir), { recursive: true });
25
+ }
26
+ // ── src/config/index.ts ──────────────────────────────
27
+ const configContent = `import { z } from 'zod';
28
+
29
+ export const envSchema = z.object({
30
+ PORT: z.coerce.number().default(3000),
31
+ NODE_ENV: z.enum(['development', 'production', 'test']).default('development'),
32
+ ${decisions.database === 'postgresql' ? " DATABASE_URL: z.string().default('postgresql://localhost:5432/app')," : ''}
33
+ ${decisions.database === 'mongodb' ? " MONGO_URI: z.string().default('mongodb://localhost:27017/app')," : ''}
34
+ ${decisions.database === 'sqlite' ? " DB_PATH: z.string().default('./data.sqlite')," : ''}
35
+ ${decisions.auth === 'jwt' ? " JWT_SECRET: z.string().default('dev-secret-change-in-production')," : ''}
36
+ });
37
+
38
+ export const config = envSchema.parse(process.env);
39
+ export type Config = z.infer<typeof envSchema>;
40
+ `;
41
+ await writeFile(join(projectRoot, 'src/config/index.ts'), configContent);
42
+ files.push('src/config/index.ts');
43
+ // ── src/app.ts (Express setup) ───────────────────────
44
+ const appContent = `import express from 'express';
45
+ ${decisions.auth !== 'none' ? "import { authRouter } from './routes/auth.js';" : ''}
46
+ ${decisions.auth !== 'none' ? "import { authMiddleware } from './middleware/auth.js';" : ''}
47
+ import { healthRouter } from './routes/health.js';
48
+ import { apiRouter } from './routes/api.js';
49
+
50
+ export const app = express();
51
+
52
+ // Middleware
53
+ app.use(express.json());
54
+
55
+ // Public routes
56
+ app.use('/health', healthRouter);
57
+ ${decisions.auth !== 'none' ? "app.use('/auth', authRouter);" : ''}
58
+
59
+ // Protected routes
60
+ ${decisions.auth !== 'none' ? "app.use('/api', authMiddleware, apiRouter);" : "app.use('/api', apiRouter);"}
61
+ `;
62
+ await writeFile(join(projectRoot, 'src/app.ts'), appContent);
63
+ files.push('src/app.ts');
64
+ // ── src/server.ts (entry) ────────────────────────────
65
+ const serverContent = `import { app } from './app.js';
66
+ import { config } from './config/index.js';
67
+
68
+ app.listen(config.PORT, () => {
69
+ console.log(\`Server listening on port \${config.PORT}\`);
70
+ });
71
+ `;
72
+ await writeFile(join(projectRoot, 'src/server.ts'), serverContent);
73
+ files.push('src/server.ts');
74
+ // ── src/routes/health.ts ─────────────────────────────
75
+ await writeFile(join(projectRoot, 'src/routes/health.ts'), `import { Router } from 'express';
76
+
77
+ export const healthRouter = Router();
78
+
79
+ healthRouter.get('/', (_req, res) => {
80
+ res.json({ status: 'ok', timestamp: new Date().toISOString() });
81
+ });
82
+ `);
83
+ files.push('src/routes/health.ts');
84
+ routes.push('GET /health');
85
+ // ── src/routes/api.ts (main resource) ────────────────
86
+ const apiContent = `import { Router } from 'express';
87
+ import { ResourceService } from '../services/resource-service.js';
88
+
89
+ export const apiRouter = Router();
90
+ const service = new ResourceService();
91
+
92
+ apiRouter.get('/resources', (_req, res) => {
93
+ const items = service.findAll();
94
+ res.json(items);
95
+ });
96
+
97
+ apiRouter.get('/resources/:id', (req, res) => {
98
+ const item = service.findById(req.params.id!);
99
+ if (!item) { res.status(404).json({ error: 'Not found' }); return; }
100
+ res.json(item);
101
+ });
102
+
103
+ apiRouter.post('/resources', (req, res) => {
104
+ const item = service.create(req.body);
105
+ res.status(201).json(item);
106
+ });
107
+
108
+ apiRouter.put('/resources/:id', (req, res) => {
109
+ const item = service.update(req.params.id!, req.body);
110
+ if (!item) { res.status(404).json({ error: 'Not found' }); return; }
111
+ res.json(item);
112
+ });
113
+
114
+ apiRouter.delete('/resources/:id', (req, res) => {
115
+ const ok = service.delete(req.params.id!);
116
+ if (!ok) { res.status(404).json({ error: 'Not found' }); return; }
117
+ res.status(204).end();
118
+ });
119
+ `;
120
+ await writeFile(join(projectRoot, 'src/routes/api.ts'), apiContent);
121
+ files.push('src/routes/api.ts');
122
+ routes.push('GET /api/resources', 'GET /api/resources/:id', 'POST /api/resources', 'PUT /api/resources/:id', 'DELETE /api/resources/:id');
123
+ // ── src/services/resource-service.ts ─────────────────
124
+ const serviceContent = decisions.database !== 'in-memory' ? `
125
+ import { ResourceRepository } from '../repositories/resource-repo.js';
126
+
127
+ export class ResourceService {
128
+ private repo = new ResourceRepository();
129
+
130
+ findAll() { return this.repo.findAll(); }
131
+ findById(id: string) { return this.repo.findById(id); }
132
+ create(data: Record<string, unknown>) { return this.repo.create(data); }
133
+ update(id: string, data: Record<string, unknown>) { return this.repo.update(id, data); }
134
+ delete(id: string) { return this.repo.delete(id); }
135
+ }
136
+ ` : `
137
+ interface Resource { id: string; [key: string]: unknown; }
138
+
139
+ export class ResourceService {
140
+ private items: Resource[] = [];
141
+ private counter = 0;
142
+
143
+ findAll(): Resource[] { return this.items; }
144
+
145
+ findById(id: string): Resource | undefined {
146
+ return this.items.find(i => i.id === id);
147
+ }
148
+
149
+ create(data: Record<string, unknown>): Resource {
150
+ const item = { ...data, id: String(++this.counter) };
151
+ this.items.push(item);
152
+ return item;
153
+ }
154
+
155
+ update(id: string, data: Record<string, unknown>): Resource | undefined {
156
+ const idx = this.items.findIndex(i => i.id === id);
157
+ if (idx < 0) return undefined;
158
+ this.items[idx] = { ...this.items[idx]!, ...data, id };
159
+ return this.items[idx];
160
+ }
161
+
162
+ delete(id: string): boolean {
163
+ const idx = this.items.findIndex(i => i.id === id);
164
+ if (idx < 0) return false;
165
+ this.items.splice(idx, 1);
166
+ return true;
167
+ }
168
+ }
169
+ `;
170
+ await writeFile(join(projectRoot, 'src/services/resource-service.ts'), serviceContent.trim() + '\n');
171
+ files.push('src/services/resource-service.ts');
172
+ // ── src/repositories/resource-repo.ts (if DB) ───────
173
+ if (decisions.database !== 'in-memory') {
174
+ const repoContent = `/**
175
+ * Resource Repository — data access layer
176
+ * TODO: Replace with real ${decisions.database} queries
177
+ */
178
+
179
+ interface Resource { id: string; [key: string]: unknown; }
180
+
181
+ export class ResourceRepository {
182
+ private items: Resource[] = [];
183
+ private counter = 0;
184
+
185
+ findAll(): Resource[] { return this.items; }
186
+ findById(id: string): Resource | undefined { return this.items.find(i => i.id === id); }
187
+ create(data: Record<string, unknown>): Resource {
188
+ const item = { ...data, id: String(++this.counter) };
189
+ this.items.push(item);
190
+ return item;
191
+ }
192
+ update(id: string, data: Record<string, unknown>): Resource | undefined {
193
+ const idx = this.items.findIndex(i => i.id === id);
194
+ if (idx < 0) return undefined;
195
+ this.items[idx] = { ...this.items[idx]!, ...data, id };
196
+ return this.items[idx];
197
+ }
198
+ delete(id: string): boolean {
199
+ const idx = this.items.findIndex(i => i.id === id);
200
+ if (idx < 0) return false;
201
+ this.items.splice(idx, 1);
202
+ return true;
203
+ }
204
+ }
205
+ `;
206
+ await writeFile(join(projectRoot, 'src/repositories/resource-repo.ts'), repoContent);
207
+ files.push('src/repositories/resource-repo.ts');
208
+ }
209
+ // ── Auth routes + middleware (if auth enabled) ───────
210
+ if (decisions.auth !== 'none') {
211
+ // Auth route
212
+ const authRouteContent = `import { Router } from 'express';
213
+ import { AuthService } from '../services/auth-service.js';
214
+
215
+ export const authRouter = Router();
216
+ const auth = new AuthService();
217
+
218
+ authRouter.post('/register', (req, res) => {
219
+ const result = auth.register(req.body);
220
+ res.status(201).json(result);
221
+ });
222
+
223
+ authRouter.post('/login', (req, res) => {
224
+ const result = auth.login(req.body);
225
+ if (!result) { res.status(401).json({ error: 'Invalid credentials' }); return; }
226
+ res.json(result);
227
+ });
228
+ `;
229
+ await writeFile(join(projectRoot, 'src/routes/auth.ts'), authRouteContent);
230
+ files.push('src/routes/auth.ts');
231
+ routes.push('POST /auth/register', 'POST /auth/login');
232
+ // Auth service
233
+ const authServiceContent = `${decisions.auth === 'jwt' ? "import { config } from '../config/index.js';" : ''}
234
+
235
+ interface User { id: string; email: string; password: string; }
236
+
237
+ export class AuthService {
238
+ private users: User[] = [];
239
+ private counter = 0;
240
+
241
+ register(data: { email: string; password: string }): { id: string; email: string } {
242
+ const user: User = { id: String(++this.counter), email: data.email, password: data.password };
243
+ this.users.push(user);
244
+ return { id: user.id, email: user.email };
245
+ }
246
+
247
+ login(data: { email: string; password: string }): { token: string } | null {
248
+ const user = this.users.find(u => u.email === data.email && u.password === data.password);
249
+ if (!user) return null;
250
+ return { token: \`token-\${user.id}-\${Date.now()}\` };
251
+ }
252
+ }
253
+ `;
254
+ await writeFile(join(projectRoot, 'src/services/auth-service.ts'), authServiceContent);
255
+ files.push('src/services/auth-service.ts');
256
+ // Auth middleware
257
+ const middlewareContent = `import type { Request, Response, NextFunction } from 'express';
258
+
259
+ export function authMiddleware(req: Request, res: Response, next: NextFunction): void {
260
+ const token = req.headers.authorization?.replace('Bearer ', '');
261
+ if (!token) {
262
+ res.status(401).json({ error: 'Authentication required' });
263
+ return;
264
+ }
265
+ // TODO: Validate token properly
266
+ next();
267
+ }
268
+ `;
269
+ await writeFile(join(projectRoot, 'src/middleware/auth.ts'), middlewareContent);
270
+ files.push('src/middleware/auth.ts');
271
+ }
272
+ return { files, routes };
273
+ }
274
+ //# sourceMappingURL=scaffold.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scaffold.js","sourceRoot":"","sources":["../../src/orchestrator/scaffold.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@barissozen/csns",
3
- "version": "0.6.0",
3
+ "version": "0.7.0",
4
4
  "description": "CSNS — Code-aware Self-correcting Never-forgetting System",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",