@hongmaple0820/scale-engine 0.21.2 → 0.24.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/README.en.md +35 -11
- package/README.md +54 -23
- package/dist/api/cli.js +476 -5
- package/dist/api/cli.js.map +1 -1
- package/dist/api/doctor.d.ts +1 -0
- package/dist/api/doctor.js +83 -0
- package/dist/api/doctor.js.map +1 -1
- package/dist/artifact/types.d.ts +1 -1
- package/dist/artifact/types.js.map +1 -1
- package/dist/cli/phaseCommands.js +22 -6
- package/dist/cli/phaseCommands.js.map +1 -1
- package/dist/cli/runCommand.d.ts +39 -0
- package/dist/cli/runCommand.js +113 -0
- package/dist/cli/runCommand.js.map +1 -0
- package/dist/config/profiles.d.ts +52 -0
- package/dist/config/profiles.js +162 -0
- package/dist/config/profiles.js.map +1 -0
- package/dist/context/ContextBudget.d.ts +25 -1
- package/dist/context/ContextBudget.js +72 -7
- package/dist/context/ContextBudget.js.map +1 -1
- package/dist/context/ProjectAnatomy.d.ts +18 -0
- package/dist/context/ProjectAnatomy.js +287 -0
- package/dist/context/ProjectAnatomy.js.map +1 -0
- package/dist/dashboard/DashboardServer.d.ts +3 -0
- package/dist/dashboard/DashboardServer.js +114 -0
- package/dist/dashboard/DashboardServer.js.map +1 -1
- package/dist/dashboard/MetricsAggregator.d.ts +38 -0
- package/dist/dashboard/MetricsAggregator.js +99 -0
- package/dist/dashboard/MetricsAggregator.js.map +1 -0
- package/dist/dashboard/index.d.ts +2 -0
- package/dist/dashboard/index.js +1 -0
- package/dist/dashboard/index.js.map +1 -1
- package/dist/dashboard/server.js +1 -1
- package/dist/dashboard/server.js.map +1 -1
- package/dist/evolution/AutoDefectCreator.d.ts +11 -2
- package/dist/evolution/AutoDefectCreator.js +46 -2
- package/dist/evolution/AutoDefectCreator.js.map +1 -1
- package/dist/evolution/EvolutionEngine.d.ts +3 -0
- package/dist/evolution/EvolutionEngine.js +18 -2
- package/dist/evolution/EvolutionEngine.js.map +1 -1
- package/dist/evolution/RuleMaturity.d.ts +39 -0
- package/dist/evolution/RuleMaturity.js +70 -0
- package/dist/evolution/RuleMaturity.js.map +1 -0
- package/dist/guardrails/ActiveRedTeam.d.ts +46 -0
- package/dist/guardrails/ActiveRedTeam.js +203 -0
- package/dist/guardrails/ActiveRedTeam.js.map +1 -0
- package/dist/guardrails/DependencyAuditor.d.ts +68 -0
- package/dist/guardrails/DependencyAuditor.js +331 -0
- package/dist/guardrails/DependencyAuditor.js.map +1 -0
- package/dist/hooks/BugPatternDetector.d.ts +36 -0
- package/dist/hooks/BugPatternDetector.js +207 -0
- package/dist/hooks/BugPatternDetector.js.map +1 -0
- package/dist/hooks/HookGeneratorEnhanced.js +301 -5
- package/dist/hooks/HookGeneratorEnhanced.js.map +1 -1
- package/dist/hooks/WorkflowHooksManager.js +24 -0
- package/dist/hooks/WorkflowHooksManager.js.map +1 -1
- package/dist/index.d.ts +10 -0
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -1
- package/dist/knowledge/CerebrumManager.d.ts +25 -0
- package/dist/knowledge/CerebrumManager.js +127 -0
- package/dist/knowledge/CerebrumManager.js.map +1 -0
- package/dist/knowledge/SQLiteKnowledgeBase.d.ts +1 -0
- package/dist/knowledge/SQLiteKnowledgeBase.js +31 -3
- package/dist/knowledge/SQLiteKnowledgeBase.js.map +1 -1
- package/dist/knowledge/TfidfIndex.d.ts +50 -0
- package/dist/knowledge/TfidfIndex.js +177 -0
- package/dist/knowledge/TfidfIndex.js.map +1 -0
- package/dist/output/GovernanceDashboard.d.ts +2 -0
- package/dist/output/GovernanceDashboard.js +31 -0
- package/dist/output/GovernanceDashboard.js.map +1 -1
- package/dist/routing/PromptCachePolicy.d.ts +37 -0
- package/dist/routing/PromptCachePolicy.js +97 -0
- package/dist/routing/PromptCachePolicy.js.map +1 -0
- package/dist/runtime/ModelUsageLedger.d.ts +50 -0
- package/dist/runtime/ModelUsageLedger.js +92 -0
- package/dist/runtime/ModelUsageLedger.js.map +1 -0
- package/dist/runtime/index.d.ts +1 -0
- package/dist/runtime/index.js +1 -0
- package/dist/runtime/index.js.map +1 -1
- package/dist/skills/SkillDiscovery.js +1 -1
- package/dist/skills/SkillDiscovery.js.map +1 -1
- package/dist/tools/CommandOutputCompressor.d.ts +28 -0
- package/dist/tools/CommandOutputCompressor.js +242 -0
- package/dist/tools/CommandOutputCompressor.js.map +1 -0
- package/dist/tools/CommandRunLedger.d.ts +77 -0
- package/dist/tools/CommandRunLedger.js +111 -0
- package/dist/tools/CommandRunLedger.js.map +1 -0
- package/dist/tools/index.d.ts +2 -0
- package/dist/tools/index.js +2 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/workflow/EngineeringStandards.js +91 -2
- package/dist/workflow/EngineeringStandards.js.map +1 -1
- package/dist/workflow/GovernanceTemplatePacks.js +2 -2
- package/dist/workflow/GovernanceTemplates.js +93 -92
- package/dist/workflow/GovernanceTemplates.js.map +1 -1
- package/dist/workflow/TaskLevelDetector.d.ts +41 -0
- package/dist/workflow/TaskLevelDetector.js +219 -0
- package/dist/workflow/TaskLevelDetector.js.map +1 -0
- package/dist/workflow/WorkflowOrchestrator.d.ts +59 -0
- package/dist/workflow/WorkflowOrchestrator.js +326 -0
- package/dist/workflow/WorkflowOrchestrator.js.map +1 -0
- package/dist/workflow/autonomous/BackgroundHunter.d.ts +74 -0
- package/dist/workflow/autonomous/BackgroundHunter.js +220 -0
- package/dist/workflow/autonomous/BackgroundHunter.js.map +1 -0
- package/dist/workflow/autonomous/index.d.ts +1 -0
- package/dist/workflow/autonomous/index.js +1 -0
- package/dist/workflow/autonomous/index.js.map +1 -1
- package/dist/workflow/gates/GateSystem.d.ts +33 -6
- package/dist/workflow/gates/GateSystem.js +176 -25
- package/dist/workflow/gates/GateSystem.js.map +1 -1
- package/dist/workflow/gates/MetaGovernanceGates.d.ts +70 -0
- package/dist/workflow/gates/MetaGovernanceGates.js +617 -0
- package/dist/workflow/gates/MetaGovernanceGates.js.map +1 -0
- package/dist/workflow/gates/VisualGate.d.ts +41 -0
- package/dist/workflow/gates/VisualGate.js +174 -0
- package/dist/workflow/gates/VisualGate.js.map +1 -0
- package/dist/workflow/index.d.ts +1 -0
- package/dist/workflow/index.js +1 -0
- package/dist/workflow/index.js.map +1 -1
- package/dist/workflow/types.d.ts +6 -1
- package/docs/ACTIVE_SECURITY_VISUAL_GATES.md +87 -0
- package/docs/BACKGROUND_HUNTER.md +62 -0
- package/docs/CONTEXT_BUDGET.md +32 -6
- package/docs/DEPENDENCY_AUDIT.md +89 -0
- package/docs/EVOLUTION_SHADOW_MODE.md +63 -0
- package/docs/GOVERNANCE_DASHBOARD.md +21 -5
- package/docs/README.md +24 -12
- package/docs/start/README.md +29 -3
- package/docs/start/artifact-lifecycle.md +326 -0
- package/docs/start/workflow-upgrade.md +150 -0
- package/image/wechat-public.jpg +0 -0
- package/image/wxPay.jpg +0 -0
- package/image/zfb.jpg +0 -0
- package/package.json +7 -2
|
@@ -3,16 +3,20 @@
|
|
|
3
3
|
import { EvidenceStore } from '../EvidenceStore.js';
|
|
4
4
|
import { WorkflowArtifactWriter } from '../WorkflowArtifactWriter.js';
|
|
5
5
|
import { detectVerificationCommands } from '../VerificationCommands.js';
|
|
6
|
+
import { registerMetaGovernanceGates } from './MetaGovernanceGates.js';
|
|
6
7
|
import { execa } from 'execa';
|
|
7
8
|
import { createHash } from 'node:crypto';
|
|
8
9
|
import { RuntimeEvidenceLedger } from '../../runtime/RuntimeEvidenceLedger.js';
|
|
10
|
+
import { compressCommandOutput } from '../../tools/CommandOutputCompressor.js';
|
|
11
|
+
import { CommandRunLedger } from '../../tools/CommandRunLedger.js';
|
|
12
|
+
import { auditDependencies } from '../../guardrails/DependencyAuditor.js';
|
|
9
13
|
function tail(value, maxLength = 1000) {
|
|
10
14
|
return value.length > maxLength ? value.slice(-maxLength) : value;
|
|
11
15
|
}
|
|
12
16
|
function sha256(value) {
|
|
13
17
|
return createHash('sha256').update(value).digest('hex');
|
|
14
18
|
}
|
|
15
|
-
export async function runShellCommand(command, timeout, cwd = process.cwd()) {
|
|
19
|
+
export async function runShellCommand(command, timeout, cwd = process.cwd(), options = {}) {
|
|
16
20
|
const start = Date.now();
|
|
17
21
|
try {
|
|
18
22
|
const result = await execa(command, {
|
|
@@ -22,28 +26,67 @@ export async function runShellCommand(command, timeout, cwd = process.cwd()) {
|
|
|
22
26
|
reject: false,
|
|
23
27
|
all: false,
|
|
24
28
|
});
|
|
25
|
-
|
|
29
|
+
const end = Date.now();
|
|
30
|
+
return finalizeCommandResult(command, {
|
|
26
31
|
code: result.exitCode ?? 1,
|
|
27
32
|
stdout: result.stdout ?? '',
|
|
28
33
|
stderr: result.stderr ?? '',
|
|
29
|
-
durationMs:
|
|
34
|
+
durationMs: end - start,
|
|
30
35
|
startedAt: start,
|
|
31
|
-
endedAt:
|
|
36
|
+
endedAt: end,
|
|
32
37
|
cwd,
|
|
33
|
-
};
|
|
38
|
+
}, options);
|
|
34
39
|
}
|
|
35
40
|
catch (error) {
|
|
36
|
-
|
|
41
|
+
const end = Date.now();
|
|
42
|
+
return finalizeCommandResult(command, {
|
|
37
43
|
code: 1,
|
|
38
44
|
stdout: '',
|
|
39
45
|
stderr: error instanceof Error ? error.message : String(error),
|
|
40
|
-
durationMs:
|
|
46
|
+
durationMs: end - start,
|
|
41
47
|
startedAt: start,
|
|
42
|
-
endedAt:
|
|
48
|
+
endedAt: end,
|
|
43
49
|
cwd,
|
|
44
|
-
};
|
|
50
|
+
}, options);
|
|
45
51
|
}
|
|
46
52
|
}
|
|
53
|
+
function finalizeCommandResult(command, result, options) {
|
|
54
|
+
if (options.compressOutput !== false) {
|
|
55
|
+
result.outputCompression = compressCommandOutput({
|
|
56
|
+
command,
|
|
57
|
+
stdout: result.stdout,
|
|
58
|
+
stderr: result.stderr,
|
|
59
|
+
exitCode: result.code,
|
|
60
|
+
maxChars: options.compressionMaxChars,
|
|
61
|
+
maxLines: options.compressionMaxLines,
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
if (options.commandRunEvidence) {
|
|
65
|
+
try {
|
|
66
|
+
const ledger = new CommandRunLedger({
|
|
67
|
+
projectDir: options.commandRunEvidence.projectDir ?? result.cwd,
|
|
68
|
+
scaleDir: options.commandRunEvidence.scaleDir,
|
|
69
|
+
});
|
|
70
|
+
const record = ledger.record({
|
|
71
|
+
...options.commandRunEvidence,
|
|
72
|
+
command,
|
|
73
|
+
cwd: result.cwd,
|
|
74
|
+
exitCode: result.code,
|
|
75
|
+
durationMs: result.durationMs,
|
|
76
|
+
startedAt: result.startedAt,
|
|
77
|
+
endedAt: result.endedAt,
|
|
78
|
+
stdout: result.stdout,
|
|
79
|
+
stderr: result.stderr,
|
|
80
|
+
compression: result.outputCompression,
|
|
81
|
+
});
|
|
82
|
+
result.commandRunEvidenceId = record.id;
|
|
83
|
+
}
|
|
84
|
+
catch (error) {
|
|
85
|
+
result.commandRunEvidenceError = error instanceof Error ? error.message : String(error);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
return result;
|
|
89
|
+
}
|
|
47
90
|
function createEvidence(input) {
|
|
48
91
|
return {
|
|
49
92
|
id: `EVID-${Date.now()}-${Math.random().toString(36).slice(2, 8)}`,
|
|
@@ -95,6 +138,15 @@ export class GateSystem {
|
|
|
95
138
|
this.persistEvidence(result);
|
|
96
139
|
this.recordCompletedGate(stage, result);
|
|
97
140
|
this.eventBus.emit('gate.executed', { stage, passed: result.passed });
|
|
141
|
+
if (!result.passed) {
|
|
142
|
+
this.eventBus.emit('gate.failed', {
|
|
143
|
+
stage,
|
|
144
|
+
status: result.status,
|
|
145
|
+
blockers: result.blockers,
|
|
146
|
+
evidence: result.evidence,
|
|
147
|
+
evidenceRecordId: result.evidenceRecordId,
|
|
148
|
+
});
|
|
149
|
+
}
|
|
98
150
|
return result;
|
|
99
151
|
}
|
|
100
152
|
catch (e) {
|
|
@@ -116,6 +168,14 @@ export class GateSystem {
|
|
|
116
168
|
};
|
|
117
169
|
this.results.set(stage, result);
|
|
118
170
|
this.persistEvidence(result);
|
|
171
|
+
this.eventBus.emit('gate.executed', { stage, passed: false });
|
|
172
|
+
this.eventBus.emit('gate.failed', {
|
|
173
|
+
stage,
|
|
174
|
+
status: result.status,
|
|
175
|
+
blockers: result.blockers,
|
|
176
|
+
evidence: result.evidence,
|
|
177
|
+
evidenceRecordId: result.evidenceRecordId,
|
|
178
|
+
});
|
|
119
179
|
return result;
|
|
120
180
|
}
|
|
121
181
|
}
|
|
@@ -151,6 +211,19 @@ export class GateSystem {
|
|
|
151
211
|
}
|
|
152
212
|
return results;
|
|
153
213
|
}
|
|
214
|
+
registerMetaGates(scaleDir = '.scale') {
|
|
215
|
+
registerMetaGovernanceGates(this, scaleDir);
|
|
216
|
+
}
|
|
217
|
+
async executeMetaGovernance(scaleDir = '.scale') {
|
|
218
|
+
this.registerMetaGates(scaleDir);
|
|
219
|
+
const metaStages = ['G9', 'G10', 'G11', 'G12', 'G13', 'G14', 'G15'];
|
|
220
|
+
const results = [];
|
|
221
|
+
for (const stage of metaStages) {
|
|
222
|
+
const result = await this.executeGate(stage);
|
|
223
|
+
results.push(result);
|
|
224
|
+
}
|
|
225
|
+
return results;
|
|
226
|
+
}
|
|
154
227
|
getResult(stage) {
|
|
155
228
|
return this.results.get(stage);
|
|
156
229
|
}
|
|
@@ -161,10 +234,10 @@ export class GateSystem {
|
|
|
161
234
|
this.registerGate(new ExplorationGate(this.artifactWriter));
|
|
162
235
|
this.registerGate(new PlanningGate(this.artifactWriter));
|
|
163
236
|
this.registerGate(new TDDGate(this.commands.tddEvidence, this.commands.tddStrict, this.artifactWriter));
|
|
164
|
-
this.registerGate(new BuildGate(this.commands.build));
|
|
165
|
-
this.registerGate(new LintGate(this.commands.lint));
|
|
166
|
-
this.registerGate(new TestGate(this.commands.test));
|
|
167
|
-
this.registerGate(new CoverageGate(this.commands.coverage));
|
|
237
|
+
this.registerGate(new BuildGate(this.commands.build, this.commands.runtimeEvidence));
|
|
238
|
+
this.registerGate(new LintGate(this.commands.lint, this.commands.runtimeEvidence));
|
|
239
|
+
this.registerGate(new TestGate(this.commands.test, this.commands.runtimeEvidence));
|
|
240
|
+
this.registerGate(new CoverageGate(this.commands.coverage, this.commands.runtimeEvidence));
|
|
168
241
|
this.registerGate(new SecurityGate());
|
|
169
242
|
this.registerGate(new ProductSmokeGate(this.commands.smoke, this.commands.runtimeEvidence));
|
|
170
243
|
}
|
|
@@ -190,6 +263,16 @@ function missingCommandResult(stage, label, command) {
|
|
|
190
263
|
}
|
|
191
264
|
function commandEvidence(label, command, passed, commandResult, fallbackDetail = 'command did not complete') {
|
|
192
265
|
const output = commandResult ? `${commandResult.stdout}\n${commandResult.stderr}` : '';
|
|
266
|
+
const compression = commandResult?.outputCompression;
|
|
267
|
+
const outputDetail = compression
|
|
268
|
+
? `${compression.summary}\n${tail(compression.compressedOutput, 1500)}`
|
|
269
|
+
: tail(commandResult?.stdout || commandResult?.stderr || `exit code ${commandResult?.code}`, 500);
|
|
270
|
+
const compressionSuffix = compression
|
|
271
|
+
? `\nEstimated tokens: ${compression.rawEstimatedTokens} -> ${compression.compressedEstimatedTokens} (saved ${compression.savedEstimatedTokens})`
|
|
272
|
+
: '';
|
|
273
|
+
const ledgerSuffix = commandResult?.commandRunEvidenceId
|
|
274
|
+
? `\nCommand run evidence: ${commandResult.commandRunEvidenceId}`
|
|
275
|
+
: '';
|
|
193
276
|
return createEvidence({
|
|
194
277
|
kind: 'command',
|
|
195
278
|
label,
|
|
@@ -200,15 +283,35 @@ function commandEvidence(label, command, passed, commandResult, fallbackDetail =
|
|
|
200
283
|
cwd: commandResult?.cwd,
|
|
201
284
|
startedAt: commandResult?.startedAt,
|
|
202
285
|
endedAt: commandResult?.endedAt,
|
|
203
|
-
stdoutTail: commandResult ? tail(commandResult.stdout) : undefined,
|
|
204
|
-
stderrTail: commandResult ? tail(commandResult.stderr) : undefined,
|
|
286
|
+
stdoutTail: commandResult ? tail(commandResult.stdout, compression ? 500 : 1000) : undefined,
|
|
287
|
+
stderrTail: commandResult ? tail(commandResult.stderr, compression ? 500 : 1000) : undefined,
|
|
205
288
|
outputHash: output ? sha256(output) : undefined,
|
|
289
|
+
rawEstimatedTokens: compression?.rawEstimatedTokens,
|
|
290
|
+
compressedEstimatedTokens: compression?.compressedEstimatedTokens,
|
|
291
|
+
savedEstimatedTokens: compression?.savedEstimatedTokens,
|
|
292
|
+
compressionRatio: compression?.compressionRatio,
|
|
293
|
+
commandRunEvidenceId: commandResult?.commandRunEvidenceId,
|
|
206
294
|
source: command.source,
|
|
207
295
|
detail: commandResult
|
|
208
|
-
? `${command.reason}\n${
|
|
296
|
+
? `${command.reason}\n${outputDetail}${compressionSuffix}${ledgerSuffix}`
|
|
209
297
|
: fallbackDetail,
|
|
210
298
|
});
|
|
211
299
|
}
|
|
300
|
+
function gateCommandOptions(stage, command, runtimeEvidence) {
|
|
301
|
+
if (!runtimeEvidence)
|
|
302
|
+
return {};
|
|
303
|
+
return {
|
|
304
|
+
commandRunEvidence: {
|
|
305
|
+
projectDir: runtimeEvidence.projectDir ?? command.cwd ?? process.cwd(),
|
|
306
|
+
scaleDir: runtimeEvidence.scaleDir,
|
|
307
|
+
taskId: runtimeEvidence.taskId,
|
|
308
|
+
sessionId: runtimeEvidence.sessionId,
|
|
309
|
+
profile: runtimeEvidence.profile,
|
|
310
|
+
gate: stage,
|
|
311
|
+
source: command.source,
|
|
312
|
+
},
|
|
313
|
+
};
|
|
314
|
+
}
|
|
212
315
|
export class ExplorationGate {
|
|
213
316
|
constructor(artifactWriter) {
|
|
214
317
|
this.stage = 'G1';
|
|
@@ -530,8 +633,9 @@ export class TDDGate {
|
|
|
530
633
|
}
|
|
531
634
|
}
|
|
532
635
|
export class BuildGate {
|
|
533
|
-
constructor(command) {
|
|
636
|
+
constructor(command, runtimeEvidence) {
|
|
534
637
|
this.command = command;
|
|
638
|
+
this.runtimeEvidence = runtimeEvidence;
|
|
535
639
|
this.stage = 'G0';
|
|
536
640
|
this.name = 'Build';
|
|
537
641
|
this.description = 'Run configured build or typecheck command';
|
|
@@ -544,7 +648,7 @@ export class BuildGate {
|
|
|
544
648
|
const blockers = [];
|
|
545
649
|
let commandResult = null;
|
|
546
650
|
try {
|
|
547
|
-
commandResult = await runShellCommand(this.command.command, 120000, this.command.cwd);
|
|
651
|
+
commandResult = await runShellCommand(this.command.command, 120000, this.command.cwd, gateCommandOptions(this.stage, this.command, this.runtimeEvidence));
|
|
548
652
|
if (commandResult.code !== 0) {
|
|
549
653
|
blockers.push(`Build failed: ${commandResult.stderr}`);
|
|
550
654
|
}
|
|
@@ -567,8 +671,9 @@ export class BuildGate {
|
|
|
567
671
|
}
|
|
568
672
|
}
|
|
569
673
|
export class LintGate {
|
|
570
|
-
constructor(command) {
|
|
674
|
+
constructor(command, runtimeEvidence) {
|
|
571
675
|
this.command = command;
|
|
676
|
+
this.runtimeEvidence = runtimeEvidence;
|
|
572
677
|
this.stage = 'G4';
|
|
573
678
|
this.name = 'Lint';
|
|
574
679
|
this.description = 'Run configured lint command';
|
|
@@ -581,7 +686,7 @@ export class LintGate {
|
|
|
581
686
|
const blockers = [];
|
|
582
687
|
let commandResult = null;
|
|
583
688
|
try {
|
|
584
|
-
commandResult = await runShellCommand(this.command.command, 60000, this.command.cwd);
|
|
689
|
+
commandResult = await runShellCommand(this.command.command, 60000, this.command.cwd, gateCommandOptions(this.stage, this.command, this.runtimeEvidence));
|
|
585
690
|
if (commandResult.code !== 0) {
|
|
586
691
|
blockers.push(`Lint failed: ${commandResult.stderr}`);
|
|
587
692
|
}
|
|
@@ -604,8 +709,9 @@ export class LintGate {
|
|
|
604
709
|
}
|
|
605
710
|
}
|
|
606
711
|
export class TestGate {
|
|
607
|
-
constructor(command) {
|
|
712
|
+
constructor(command, runtimeEvidence) {
|
|
608
713
|
this.command = command;
|
|
714
|
+
this.runtimeEvidence = runtimeEvidence;
|
|
609
715
|
this.stage = 'G5';
|
|
610
716
|
this.name = 'Test';
|
|
611
717
|
this.description = 'Run configured test command';
|
|
@@ -618,7 +724,7 @@ export class TestGate {
|
|
|
618
724
|
const blockers = [];
|
|
619
725
|
let commandResult = null;
|
|
620
726
|
try {
|
|
621
|
-
commandResult = await runShellCommand(this.command.command, 120000, this.command.cwd);
|
|
727
|
+
commandResult = await runShellCommand(this.command.command, 120000, this.command.cwd, gateCommandOptions(this.stage, this.command, this.runtimeEvidence));
|
|
622
728
|
if (commandResult.code !== 0) {
|
|
623
729
|
blockers.push(`Tests failed: ${commandResult.stderr}`);
|
|
624
730
|
}
|
|
@@ -641,8 +747,9 @@ export class TestGate {
|
|
|
641
747
|
}
|
|
642
748
|
}
|
|
643
749
|
export class CoverageGate {
|
|
644
|
-
constructor(command) {
|
|
750
|
+
constructor(command, runtimeEvidence) {
|
|
645
751
|
this.command = command;
|
|
752
|
+
this.runtimeEvidence = runtimeEvidence;
|
|
646
753
|
this.stage = 'G6';
|
|
647
754
|
this.name = 'Coverage';
|
|
648
755
|
this.description = 'Run configured coverage command';
|
|
@@ -656,7 +763,7 @@ export class CoverageGate {
|
|
|
656
763
|
let detail = '';
|
|
657
764
|
let commandResult = null;
|
|
658
765
|
try {
|
|
659
|
-
commandResult = await runShellCommand(this.command.command, 120000, this.command.cwd);
|
|
766
|
+
commandResult = await runShellCommand(this.command.command, 120000, this.command.cwd, gateCommandOptions(this.stage, this.command, this.runtimeEvidence));
|
|
660
767
|
if (commandResult.code !== 0) {
|
|
661
768
|
blockers.push(`Coverage command failed: ${commandResult.stderr}`);
|
|
662
769
|
}
|
|
@@ -704,12 +811,23 @@ export class SecurityGate {
|
|
|
704
811
|
this.maxFileBytes = options.maxFileBytes ?? 300_000;
|
|
705
812
|
this.maxFindings = options.maxFindings ?? 50;
|
|
706
813
|
this.strict = options.strict ?? false;
|
|
814
|
+
this.scaleDir = options.scaleDir ?? '.scale';
|
|
815
|
+
this.dependencyAudit = options.dependencyAudit ?? true;
|
|
816
|
+
this.dependencyAuditMode = options.dependencyAuditMode;
|
|
817
|
+
this.dependencyAuditChangedPackages = options.dependencyAuditChangedPackages;
|
|
707
818
|
}
|
|
708
819
|
async execute() {
|
|
709
820
|
const findings = await this.scan();
|
|
821
|
+
const dependencyReport = this.dependencyAudit ? auditDependencies({
|
|
822
|
+
projectDir: this.rootDir,
|
|
823
|
+
scaleDir: this.scaleDir,
|
|
824
|
+
mode: this.dependencyAuditMode ?? (this.strict ? 'strict' : undefined),
|
|
825
|
+
changedPackages: this.dependencyAuditChangedPackages,
|
|
826
|
+
}) : null;
|
|
710
827
|
const blockers = findings
|
|
711
828
|
.filter(finding => finding.severity === 'CRITICAL' || (this.strict && finding.severity === 'HIGH'))
|
|
712
829
|
.map(finding => `${finding.severity} ${finding.ruleId} in ${finding.file}:${finding.line} - ${finding.description}`);
|
|
830
|
+
blockers.push(...(dependencyReport?.blockers ?? []));
|
|
713
831
|
const passed = blockers.length === 0;
|
|
714
832
|
const summary = this.summarize(findings);
|
|
715
833
|
const evidenceItems = [
|
|
@@ -731,6 +849,7 @@ export class SecurityGate {
|
|
|
731
849
|
detail: `${finding.severity} line ${finding.line}: ${finding.description}; ${finding.evidence}`,
|
|
732
850
|
source: 'built-in-security-scan',
|
|
733
851
|
})),
|
|
852
|
+
...this.dependencyEvidence(dependencyReport),
|
|
734
853
|
];
|
|
735
854
|
return {
|
|
736
855
|
gate: this.stage,
|
|
@@ -917,6 +1036,38 @@ export class SecurityGate {
|
|
|
917
1036
|
LOW: findings.filter(f => f.severity === 'LOW').length,
|
|
918
1037
|
};
|
|
919
1038
|
}
|
|
1039
|
+
dependencyEvidence(report) {
|
|
1040
|
+
if (!report) {
|
|
1041
|
+
return [
|
|
1042
|
+
createEvidence({
|
|
1043
|
+
kind: 'scan',
|
|
1044
|
+
label: 'G7 dependency audit',
|
|
1045
|
+
passed: true,
|
|
1046
|
+
detail: 'dependency audit disabled',
|
|
1047
|
+
source: 'dependency-audit',
|
|
1048
|
+
}),
|
|
1049
|
+
];
|
|
1050
|
+
}
|
|
1051
|
+
const summary = report.summary;
|
|
1052
|
+
return [
|
|
1053
|
+
createEvidence({
|
|
1054
|
+
kind: 'scan',
|
|
1055
|
+
label: 'G7 dependency audit',
|
|
1056
|
+
passed: report.ok,
|
|
1057
|
+
path: report.lockfilePath,
|
|
1058
|
+
detail: `${summary.packagesAudited} package(s) audited, findings=${summary.totalFindings}, critical=${summary.bySeverity.CRITICAL}, high=${summary.bySeverity.HIGH}, medium=${summary.bySeverity.MEDIUM}, low=${summary.bySeverity.LOW}, mode=${report.mode}`,
|
|
1059
|
+
source: 'dependency-audit',
|
|
1060
|
+
}),
|
|
1061
|
+
...report.findings.slice(0, this.maxFindings).map(finding => createEvidence({
|
|
1062
|
+
kind: 'scan',
|
|
1063
|
+
label: `Dependency finding ${finding.ruleId}`,
|
|
1064
|
+
passed: !report.blockers.some(blocker => blocker.includes(finding.ruleId) && blocker.includes(finding.packageName)),
|
|
1065
|
+
path: finding.path,
|
|
1066
|
+
detail: `${finding.severity} ${finding.packageName}${finding.version ? `@${finding.version}` : ''}: ${finding.message}; ${finding.evidence ?? 'no detail'}`,
|
|
1067
|
+
source: 'dependency-audit',
|
|
1068
|
+
})),
|
|
1069
|
+
];
|
|
1070
|
+
}
|
|
920
1071
|
isTestPath(file) {
|
|
921
1072
|
return /(^|\/)(tests?|__tests__)\//i.test(file) || /\.(test|spec)\.(ts|tsx|js|jsx|mjs|cjs)$/i.test(file);
|
|
922
1073
|
}
|
|
@@ -972,7 +1123,7 @@ export class ProductSmokeGate {
|
|
|
972
1123
|
const blockers = [];
|
|
973
1124
|
let commandResult = null;
|
|
974
1125
|
try {
|
|
975
|
-
commandResult = await runShellCommand(this.command.command, 180000, this.command.cwd);
|
|
1126
|
+
commandResult = await runShellCommand(this.command.command, 180000, this.command.cwd, gateCommandOptions(this.stage, this.command, this.runtimeEvidence));
|
|
976
1127
|
if (commandResult.code !== 0) {
|
|
977
1128
|
blockers.push(`Product smoke failed: ${commandResult.stderr || commandResult.stdout || `exit code ${commandResult.code}`}`);
|
|
978
1129
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GateSystem.js","sourceRoot":"","sources":["../../../src/workflow/gates/GateSystem.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"GateSystem.js","sourceRoot":"","sources":["../../../src/workflow/gates/GateSystem.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import type { GateResult, GateStage } from '../types.js';
|
|
2
|
+
import type { IGate } from './GateSystem.js';
|
|
3
|
+
type RequiredLevel = 'S' | 'M' | 'L' | 'ALWAYS' | 'CRITICAL';
|
|
4
|
+
export declare class KnowledgeUtilizationGate implements IGate {
|
|
5
|
+
private scaleDir;
|
|
6
|
+
stage: GateStage;
|
|
7
|
+
name: string;
|
|
8
|
+
description: string;
|
|
9
|
+
requiredLevel: RequiredLevel;
|
|
10
|
+
constructor(scaleDir?: string);
|
|
11
|
+
execute(): Promise<GateResult>;
|
|
12
|
+
}
|
|
13
|
+
export declare class EvolutionEffectivenessGate implements IGate {
|
|
14
|
+
private scaleDir;
|
|
15
|
+
stage: GateStage;
|
|
16
|
+
name: string;
|
|
17
|
+
description: string;
|
|
18
|
+
requiredLevel: RequiredLevel;
|
|
19
|
+
constructor(scaleDir?: string);
|
|
20
|
+
execute(): Promise<GateResult>;
|
|
21
|
+
}
|
|
22
|
+
export declare class GuardrailEffectivenessGate implements IGate {
|
|
23
|
+
private scaleDir;
|
|
24
|
+
stage: GateStage;
|
|
25
|
+
name: string;
|
|
26
|
+
description: string;
|
|
27
|
+
requiredLevel: RequiredLevel;
|
|
28
|
+
constructor(scaleDir?: string);
|
|
29
|
+
execute(): Promise<GateResult>;
|
|
30
|
+
}
|
|
31
|
+
export declare class WorkflowThoroughnessGate implements IGate {
|
|
32
|
+
private scaleDir;
|
|
33
|
+
stage: GateStage;
|
|
34
|
+
name: string;
|
|
35
|
+
description: string;
|
|
36
|
+
requiredLevel: RequiredLevel;
|
|
37
|
+
constructor(scaleDir?: string);
|
|
38
|
+
execute(): Promise<GateResult>;
|
|
39
|
+
}
|
|
40
|
+
export declare class MultiAgentCoordinationGate implements IGate {
|
|
41
|
+
private scaleDir;
|
|
42
|
+
stage: GateStage;
|
|
43
|
+
name: string;
|
|
44
|
+
description: string;
|
|
45
|
+
requiredLevel: RequiredLevel;
|
|
46
|
+
constructor(scaleDir?: string);
|
|
47
|
+
execute(): Promise<GateResult>;
|
|
48
|
+
}
|
|
49
|
+
export declare class SkillUtilizationGate implements IGate {
|
|
50
|
+
private scaleDir;
|
|
51
|
+
stage: GateStage;
|
|
52
|
+
name: string;
|
|
53
|
+
description: string;
|
|
54
|
+
requiredLevel: RequiredLevel;
|
|
55
|
+
constructor(scaleDir?: string);
|
|
56
|
+
execute(): Promise<GateResult>;
|
|
57
|
+
}
|
|
58
|
+
export declare class SelfImprovementGate implements IGate {
|
|
59
|
+
private scaleDir;
|
|
60
|
+
stage: GateStage;
|
|
61
|
+
name: string;
|
|
62
|
+
description: string;
|
|
63
|
+
requiredLevel: RequiredLevel;
|
|
64
|
+
constructor(scaleDir?: string);
|
|
65
|
+
execute(): Promise<GateResult>;
|
|
66
|
+
}
|
|
67
|
+
export declare function registerMetaGovernanceGates(gateSystem: {
|
|
68
|
+
registerGate(gate: IGate): void;
|
|
69
|
+
}, scaleDir?: string): void;
|
|
70
|
+
export {};
|