@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.
Files changed (135) hide show
  1. package/README.en.md +35 -11
  2. package/README.md +54 -23
  3. package/dist/api/cli.js +476 -5
  4. package/dist/api/cli.js.map +1 -1
  5. package/dist/api/doctor.d.ts +1 -0
  6. package/dist/api/doctor.js +83 -0
  7. package/dist/api/doctor.js.map +1 -1
  8. package/dist/artifact/types.d.ts +1 -1
  9. package/dist/artifact/types.js.map +1 -1
  10. package/dist/cli/phaseCommands.js +22 -6
  11. package/dist/cli/phaseCommands.js.map +1 -1
  12. package/dist/cli/runCommand.d.ts +39 -0
  13. package/dist/cli/runCommand.js +113 -0
  14. package/dist/cli/runCommand.js.map +1 -0
  15. package/dist/config/profiles.d.ts +52 -0
  16. package/dist/config/profiles.js +162 -0
  17. package/dist/config/profiles.js.map +1 -0
  18. package/dist/context/ContextBudget.d.ts +25 -1
  19. package/dist/context/ContextBudget.js +72 -7
  20. package/dist/context/ContextBudget.js.map +1 -1
  21. package/dist/context/ProjectAnatomy.d.ts +18 -0
  22. package/dist/context/ProjectAnatomy.js +287 -0
  23. package/dist/context/ProjectAnatomy.js.map +1 -0
  24. package/dist/dashboard/DashboardServer.d.ts +3 -0
  25. package/dist/dashboard/DashboardServer.js +114 -0
  26. package/dist/dashboard/DashboardServer.js.map +1 -1
  27. package/dist/dashboard/MetricsAggregator.d.ts +38 -0
  28. package/dist/dashboard/MetricsAggregator.js +99 -0
  29. package/dist/dashboard/MetricsAggregator.js.map +1 -0
  30. package/dist/dashboard/index.d.ts +2 -0
  31. package/dist/dashboard/index.js +1 -0
  32. package/dist/dashboard/index.js.map +1 -1
  33. package/dist/dashboard/server.js +1 -1
  34. package/dist/dashboard/server.js.map +1 -1
  35. package/dist/evolution/AutoDefectCreator.d.ts +11 -2
  36. package/dist/evolution/AutoDefectCreator.js +46 -2
  37. package/dist/evolution/AutoDefectCreator.js.map +1 -1
  38. package/dist/evolution/EvolutionEngine.d.ts +3 -0
  39. package/dist/evolution/EvolutionEngine.js +18 -2
  40. package/dist/evolution/EvolutionEngine.js.map +1 -1
  41. package/dist/evolution/RuleMaturity.d.ts +39 -0
  42. package/dist/evolution/RuleMaturity.js +70 -0
  43. package/dist/evolution/RuleMaturity.js.map +1 -0
  44. package/dist/guardrails/ActiveRedTeam.d.ts +46 -0
  45. package/dist/guardrails/ActiveRedTeam.js +203 -0
  46. package/dist/guardrails/ActiveRedTeam.js.map +1 -0
  47. package/dist/guardrails/DependencyAuditor.d.ts +68 -0
  48. package/dist/guardrails/DependencyAuditor.js +331 -0
  49. package/dist/guardrails/DependencyAuditor.js.map +1 -0
  50. package/dist/hooks/BugPatternDetector.d.ts +36 -0
  51. package/dist/hooks/BugPatternDetector.js +207 -0
  52. package/dist/hooks/BugPatternDetector.js.map +1 -0
  53. package/dist/hooks/HookGeneratorEnhanced.js +301 -5
  54. package/dist/hooks/HookGeneratorEnhanced.js.map +1 -1
  55. package/dist/hooks/WorkflowHooksManager.js +24 -0
  56. package/dist/hooks/WorkflowHooksManager.js.map +1 -1
  57. package/dist/index.d.ts +10 -0
  58. package/dist/index.js +7 -0
  59. package/dist/index.js.map +1 -1
  60. package/dist/knowledge/CerebrumManager.d.ts +25 -0
  61. package/dist/knowledge/CerebrumManager.js +127 -0
  62. package/dist/knowledge/CerebrumManager.js.map +1 -0
  63. package/dist/knowledge/SQLiteKnowledgeBase.d.ts +1 -0
  64. package/dist/knowledge/SQLiteKnowledgeBase.js +31 -3
  65. package/dist/knowledge/SQLiteKnowledgeBase.js.map +1 -1
  66. package/dist/knowledge/TfidfIndex.d.ts +50 -0
  67. package/dist/knowledge/TfidfIndex.js +177 -0
  68. package/dist/knowledge/TfidfIndex.js.map +1 -0
  69. package/dist/output/GovernanceDashboard.d.ts +2 -0
  70. package/dist/output/GovernanceDashboard.js +31 -0
  71. package/dist/output/GovernanceDashboard.js.map +1 -1
  72. package/dist/routing/PromptCachePolicy.d.ts +37 -0
  73. package/dist/routing/PromptCachePolicy.js +97 -0
  74. package/dist/routing/PromptCachePolicy.js.map +1 -0
  75. package/dist/runtime/ModelUsageLedger.d.ts +50 -0
  76. package/dist/runtime/ModelUsageLedger.js +92 -0
  77. package/dist/runtime/ModelUsageLedger.js.map +1 -0
  78. package/dist/runtime/index.d.ts +1 -0
  79. package/dist/runtime/index.js +1 -0
  80. package/dist/runtime/index.js.map +1 -1
  81. package/dist/skills/SkillDiscovery.js +1 -1
  82. package/dist/skills/SkillDiscovery.js.map +1 -1
  83. package/dist/tools/CommandOutputCompressor.d.ts +28 -0
  84. package/dist/tools/CommandOutputCompressor.js +242 -0
  85. package/dist/tools/CommandOutputCompressor.js.map +1 -0
  86. package/dist/tools/CommandRunLedger.d.ts +77 -0
  87. package/dist/tools/CommandRunLedger.js +111 -0
  88. package/dist/tools/CommandRunLedger.js.map +1 -0
  89. package/dist/tools/index.d.ts +2 -0
  90. package/dist/tools/index.js +2 -0
  91. package/dist/tools/index.js.map +1 -1
  92. package/dist/workflow/EngineeringStandards.js +91 -2
  93. package/dist/workflow/EngineeringStandards.js.map +1 -1
  94. package/dist/workflow/GovernanceTemplatePacks.js +2 -2
  95. package/dist/workflow/GovernanceTemplates.js +93 -92
  96. package/dist/workflow/GovernanceTemplates.js.map +1 -1
  97. package/dist/workflow/TaskLevelDetector.d.ts +41 -0
  98. package/dist/workflow/TaskLevelDetector.js +219 -0
  99. package/dist/workflow/TaskLevelDetector.js.map +1 -0
  100. package/dist/workflow/WorkflowOrchestrator.d.ts +59 -0
  101. package/dist/workflow/WorkflowOrchestrator.js +326 -0
  102. package/dist/workflow/WorkflowOrchestrator.js.map +1 -0
  103. package/dist/workflow/autonomous/BackgroundHunter.d.ts +74 -0
  104. package/dist/workflow/autonomous/BackgroundHunter.js +220 -0
  105. package/dist/workflow/autonomous/BackgroundHunter.js.map +1 -0
  106. package/dist/workflow/autonomous/index.d.ts +1 -0
  107. package/dist/workflow/autonomous/index.js +1 -0
  108. package/dist/workflow/autonomous/index.js.map +1 -1
  109. package/dist/workflow/gates/GateSystem.d.ts +33 -6
  110. package/dist/workflow/gates/GateSystem.js +176 -25
  111. package/dist/workflow/gates/GateSystem.js.map +1 -1
  112. package/dist/workflow/gates/MetaGovernanceGates.d.ts +70 -0
  113. package/dist/workflow/gates/MetaGovernanceGates.js +617 -0
  114. package/dist/workflow/gates/MetaGovernanceGates.js.map +1 -0
  115. package/dist/workflow/gates/VisualGate.d.ts +41 -0
  116. package/dist/workflow/gates/VisualGate.js +174 -0
  117. package/dist/workflow/gates/VisualGate.js.map +1 -0
  118. package/dist/workflow/index.d.ts +1 -0
  119. package/dist/workflow/index.js +1 -0
  120. package/dist/workflow/index.js.map +1 -1
  121. package/dist/workflow/types.d.ts +6 -1
  122. package/docs/ACTIVE_SECURITY_VISUAL_GATES.md +87 -0
  123. package/docs/BACKGROUND_HUNTER.md +62 -0
  124. package/docs/CONTEXT_BUDGET.md +32 -6
  125. package/docs/DEPENDENCY_AUDIT.md +89 -0
  126. package/docs/EVOLUTION_SHADOW_MODE.md +63 -0
  127. package/docs/GOVERNANCE_DASHBOARD.md +21 -5
  128. package/docs/README.md +24 -12
  129. package/docs/start/README.md +29 -3
  130. package/docs/start/artifact-lifecycle.md +326 -0
  131. package/docs/start/workflow-upgrade.md +150 -0
  132. package/image/wechat-public.jpg +0 -0
  133. package/image/wxPay.jpg +0 -0
  134. package/image/zfb.jpg +0 -0
  135. 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
- return {
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: Date.now() - start,
34
+ durationMs: end - start,
30
35
  startedAt: start,
31
- endedAt: Date.now(),
36
+ endedAt: end,
32
37
  cwd,
33
- };
38
+ }, options);
34
39
  }
35
40
  catch (error) {
36
- return {
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: Date.now() - start,
46
+ durationMs: end - start,
41
47
  startedAt: start,
42
- endedAt: Date.now(),
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${tail(commandResult.stdout || commandResult.stderr || `exit code ${commandResult.code}`, 500)}`
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 {};