@hongmaple0820/scale-engine 0.21.1 → 0.23.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 (89) hide show
  1. package/README.en.md +39 -13
  2. package/README.md +61 -31
  3. package/dist/api/cli.js +291 -4
  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 +25 -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/hooks/BugPatternDetector.d.ts +36 -0
  28. package/dist/hooks/BugPatternDetector.js +207 -0
  29. package/dist/hooks/BugPatternDetector.js.map +1 -0
  30. package/dist/hooks/HookGeneratorEnhanced.js +301 -5
  31. package/dist/hooks/HookGeneratorEnhanced.js.map +1 -1
  32. package/dist/hooks/WorkflowHooksManager.js +24 -0
  33. package/dist/hooks/WorkflowHooksManager.js.map +1 -1
  34. package/dist/index.d.ts +4 -0
  35. package/dist/index.js +2 -0
  36. package/dist/index.js.map +1 -1
  37. package/dist/knowledge/CerebrumManager.d.ts +25 -0
  38. package/dist/knowledge/CerebrumManager.js +127 -0
  39. package/dist/knowledge/CerebrumManager.js.map +1 -0
  40. package/dist/knowledge/SQLiteKnowledgeBase.d.ts +1 -0
  41. package/dist/knowledge/SQLiteKnowledgeBase.js +31 -3
  42. package/dist/knowledge/SQLiteKnowledgeBase.js.map +1 -1
  43. package/dist/knowledge/TfidfIndex.d.ts +50 -0
  44. package/dist/knowledge/TfidfIndex.js +177 -0
  45. package/dist/knowledge/TfidfIndex.js.map +1 -0
  46. package/dist/skills/SkillDiscovery.js +1 -1
  47. package/dist/skills/SkillDiscovery.js.map +1 -1
  48. package/dist/tools/CommandOutputCompressor.d.ts +28 -0
  49. package/dist/tools/CommandOutputCompressor.js +242 -0
  50. package/dist/tools/CommandOutputCompressor.js.map +1 -0
  51. package/dist/tools/CommandRunLedger.d.ts +77 -0
  52. package/dist/tools/CommandRunLedger.js +111 -0
  53. package/dist/tools/CommandRunLedger.js.map +1 -0
  54. package/dist/tools/index.d.ts +2 -0
  55. package/dist/tools/index.js +2 -0
  56. package/dist/tools/index.js.map +1 -1
  57. package/dist/workflow/EngineeringStandards.js +91 -2
  58. package/dist/workflow/EngineeringStandards.js.map +1 -1
  59. package/dist/workflow/GovernanceTemplatePacks.js +2 -2
  60. package/dist/workflow/GovernanceTemplates.js +90 -89
  61. package/dist/workflow/GovernanceTemplates.js.map +1 -1
  62. package/dist/workflow/TaskLevelDetector.d.ts +41 -0
  63. package/dist/workflow/TaskLevelDetector.js +219 -0
  64. package/dist/workflow/TaskLevelDetector.js.map +1 -0
  65. package/dist/workflow/WorkflowOrchestrator.d.ts +59 -0
  66. package/dist/workflow/WorkflowOrchestrator.js +326 -0
  67. package/dist/workflow/WorkflowOrchestrator.js.map +1 -0
  68. package/dist/workflow/WorkspaceLifecycle.d.ts +19 -1
  69. package/dist/workflow/WorkspaceLifecycle.js +119 -3
  70. package/dist/workflow/WorkspaceLifecycle.js.map +1 -1
  71. package/dist/workflow/WorkspaceTopology.d.ts +6 -0
  72. package/dist/workflow/WorkspaceTopology.js +17 -6
  73. package/dist/workflow/WorkspaceTopology.js.map +1 -1
  74. package/dist/workflow/gates/GateSystem.d.ts +23 -6
  75. package/dist/workflow/gates/GateSystem.js +114 -25
  76. package/dist/workflow/gates/GateSystem.js.map +1 -1
  77. package/dist/workflow/gates/MetaGovernanceGates.d.ts +70 -0
  78. package/dist/workflow/gates/MetaGovernanceGates.js +617 -0
  79. package/dist/workflow/gates/MetaGovernanceGates.js.map +1 -0
  80. package/dist/workflow/types.d.ts +6 -1
  81. package/docs/GITLAB_FLOW.md +125 -0
  82. package/docs/README.md +3 -0
  83. package/docs/start/README.md +29 -3
  84. package/docs/start/artifact-lifecycle.md +326 -0
  85. package/docs/start/workflow-upgrade.md +150 -0
  86. package/image/wechat-public.jpg +0 -0
  87. package/image/wxPay.jpg +0 -0
  88. package/image/zfb.jpg +0 -0
  89. package/package.json +10 -8
@@ -3,16 +3,19 @@
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';
9
12
  function tail(value, maxLength = 1000) {
10
13
  return value.length > maxLength ? value.slice(-maxLength) : value;
11
14
  }
12
15
  function sha256(value) {
13
16
  return createHash('sha256').update(value).digest('hex');
14
17
  }
15
- export async function runShellCommand(command, timeout, cwd = process.cwd()) {
18
+ export async function runShellCommand(command, timeout, cwd = process.cwd(), options = {}) {
16
19
  const start = Date.now();
17
20
  try {
18
21
  const result = await execa(command, {
@@ -22,27 +25,66 @@ export async function runShellCommand(command, timeout, cwd = process.cwd()) {
22
25
  reject: false,
23
26
  all: false,
24
27
  });
25
- return {
28
+ const end = Date.now();
29
+ return finalizeCommandResult(command, {
26
30
  code: result.exitCode ?? 1,
27
31
  stdout: result.stdout ?? '',
28
32
  stderr: result.stderr ?? '',
29
- durationMs: Date.now() - start,
33
+ durationMs: end - start,
30
34
  startedAt: start,
31
- endedAt: Date.now(),
35
+ endedAt: end,
32
36
  cwd,
33
- };
37
+ }, options);
34
38
  }
35
39
  catch (error) {
36
- return {
40
+ const end = Date.now();
41
+ return finalizeCommandResult(command, {
37
42
  code: 1,
38
43
  stdout: '',
39
44
  stderr: error instanceof Error ? error.message : String(error),
40
- durationMs: Date.now() - start,
45
+ durationMs: end - start,
41
46
  startedAt: start,
42
- endedAt: Date.now(),
47
+ endedAt: end,
43
48
  cwd,
44
- };
49
+ }, options);
50
+ }
51
+ }
52
+ function finalizeCommandResult(command, result, options) {
53
+ if (options.compressOutput !== false) {
54
+ result.outputCompression = compressCommandOutput({
55
+ command,
56
+ stdout: result.stdout,
57
+ stderr: result.stderr,
58
+ exitCode: result.code,
59
+ maxChars: options.compressionMaxChars,
60
+ maxLines: options.compressionMaxLines,
61
+ });
62
+ }
63
+ if (options.commandRunEvidence) {
64
+ try {
65
+ const ledger = new CommandRunLedger({
66
+ projectDir: options.commandRunEvidence.projectDir ?? result.cwd,
67
+ scaleDir: options.commandRunEvidence.scaleDir,
68
+ });
69
+ const record = ledger.record({
70
+ ...options.commandRunEvidence,
71
+ command,
72
+ cwd: result.cwd,
73
+ exitCode: result.code,
74
+ durationMs: result.durationMs,
75
+ startedAt: result.startedAt,
76
+ endedAt: result.endedAt,
77
+ stdout: result.stdout,
78
+ stderr: result.stderr,
79
+ compression: result.outputCompression,
80
+ });
81
+ result.commandRunEvidenceId = record.id;
82
+ }
83
+ catch (error) {
84
+ result.commandRunEvidenceError = error instanceof Error ? error.message : String(error);
85
+ }
45
86
  }
87
+ return result;
46
88
  }
47
89
  function createEvidence(input) {
48
90
  return {
@@ -151,6 +193,19 @@ export class GateSystem {
151
193
  }
152
194
  return results;
153
195
  }
196
+ registerMetaGates(scaleDir = '.scale') {
197
+ registerMetaGovernanceGates(this, scaleDir);
198
+ }
199
+ async executeMetaGovernance(scaleDir = '.scale') {
200
+ this.registerMetaGates(scaleDir);
201
+ const metaStages = ['G9', 'G10', 'G11', 'G12', 'G13', 'G14', 'G15'];
202
+ const results = [];
203
+ for (const stage of metaStages) {
204
+ const result = await this.executeGate(stage);
205
+ results.push(result);
206
+ }
207
+ return results;
208
+ }
154
209
  getResult(stage) {
155
210
  return this.results.get(stage);
156
211
  }
@@ -161,10 +216,10 @@ export class GateSystem {
161
216
  this.registerGate(new ExplorationGate(this.artifactWriter));
162
217
  this.registerGate(new PlanningGate(this.artifactWriter));
163
218
  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));
219
+ this.registerGate(new BuildGate(this.commands.build, this.commands.runtimeEvidence));
220
+ this.registerGate(new LintGate(this.commands.lint, this.commands.runtimeEvidence));
221
+ this.registerGate(new TestGate(this.commands.test, this.commands.runtimeEvidence));
222
+ this.registerGate(new CoverageGate(this.commands.coverage, this.commands.runtimeEvidence));
168
223
  this.registerGate(new SecurityGate());
169
224
  this.registerGate(new ProductSmokeGate(this.commands.smoke, this.commands.runtimeEvidence));
170
225
  }
@@ -190,6 +245,16 @@ function missingCommandResult(stage, label, command) {
190
245
  }
191
246
  function commandEvidence(label, command, passed, commandResult, fallbackDetail = 'command did not complete') {
192
247
  const output = commandResult ? `${commandResult.stdout}\n${commandResult.stderr}` : '';
248
+ const compression = commandResult?.outputCompression;
249
+ const outputDetail = compression
250
+ ? `${compression.summary}\n${tail(compression.compressedOutput, 1500)}`
251
+ : tail(commandResult?.stdout || commandResult?.stderr || `exit code ${commandResult?.code}`, 500);
252
+ const compressionSuffix = compression
253
+ ? `\nEstimated tokens: ${compression.rawEstimatedTokens} -> ${compression.compressedEstimatedTokens} (saved ${compression.savedEstimatedTokens})`
254
+ : '';
255
+ const ledgerSuffix = commandResult?.commandRunEvidenceId
256
+ ? `\nCommand run evidence: ${commandResult.commandRunEvidenceId}`
257
+ : '';
193
258
  return createEvidence({
194
259
  kind: 'command',
195
260
  label,
@@ -200,15 +265,35 @@ function commandEvidence(label, command, passed, commandResult, fallbackDetail =
200
265
  cwd: commandResult?.cwd,
201
266
  startedAt: commandResult?.startedAt,
202
267
  endedAt: commandResult?.endedAt,
203
- stdoutTail: commandResult ? tail(commandResult.stdout) : undefined,
204
- stderrTail: commandResult ? tail(commandResult.stderr) : undefined,
268
+ stdoutTail: commandResult ? tail(commandResult.stdout, compression ? 500 : 1000) : undefined,
269
+ stderrTail: commandResult ? tail(commandResult.stderr, compression ? 500 : 1000) : undefined,
205
270
  outputHash: output ? sha256(output) : undefined,
271
+ rawEstimatedTokens: compression?.rawEstimatedTokens,
272
+ compressedEstimatedTokens: compression?.compressedEstimatedTokens,
273
+ savedEstimatedTokens: compression?.savedEstimatedTokens,
274
+ compressionRatio: compression?.compressionRatio,
275
+ commandRunEvidenceId: commandResult?.commandRunEvidenceId,
206
276
  source: command.source,
207
277
  detail: commandResult
208
- ? `${command.reason}\n${tail(commandResult.stdout || commandResult.stderr || `exit code ${commandResult.code}`, 500)}`
278
+ ? `${command.reason}\n${outputDetail}${compressionSuffix}${ledgerSuffix}`
209
279
  : fallbackDetail,
210
280
  });
211
281
  }
282
+ function gateCommandOptions(stage, command, runtimeEvidence) {
283
+ if (!runtimeEvidence)
284
+ return {};
285
+ return {
286
+ commandRunEvidence: {
287
+ projectDir: runtimeEvidence.projectDir ?? command.cwd ?? process.cwd(),
288
+ scaleDir: runtimeEvidence.scaleDir,
289
+ taskId: runtimeEvidence.taskId,
290
+ sessionId: runtimeEvidence.sessionId,
291
+ profile: runtimeEvidence.profile,
292
+ gate: stage,
293
+ source: command.source,
294
+ },
295
+ };
296
+ }
212
297
  export class ExplorationGate {
213
298
  constructor(artifactWriter) {
214
299
  this.stage = 'G1';
@@ -530,8 +615,9 @@ export class TDDGate {
530
615
  }
531
616
  }
532
617
  export class BuildGate {
533
- constructor(command) {
618
+ constructor(command, runtimeEvidence) {
534
619
  this.command = command;
620
+ this.runtimeEvidence = runtimeEvidence;
535
621
  this.stage = 'G0';
536
622
  this.name = 'Build';
537
623
  this.description = 'Run configured build or typecheck command';
@@ -544,7 +630,7 @@ export class BuildGate {
544
630
  const blockers = [];
545
631
  let commandResult = null;
546
632
  try {
547
- commandResult = await runShellCommand(this.command.command, 120000, this.command.cwd);
633
+ commandResult = await runShellCommand(this.command.command, 120000, this.command.cwd, gateCommandOptions(this.stage, this.command, this.runtimeEvidence));
548
634
  if (commandResult.code !== 0) {
549
635
  blockers.push(`Build failed: ${commandResult.stderr}`);
550
636
  }
@@ -567,8 +653,9 @@ export class BuildGate {
567
653
  }
568
654
  }
569
655
  export class LintGate {
570
- constructor(command) {
656
+ constructor(command, runtimeEvidence) {
571
657
  this.command = command;
658
+ this.runtimeEvidence = runtimeEvidence;
572
659
  this.stage = 'G4';
573
660
  this.name = 'Lint';
574
661
  this.description = 'Run configured lint command';
@@ -581,7 +668,7 @@ export class LintGate {
581
668
  const blockers = [];
582
669
  let commandResult = null;
583
670
  try {
584
- commandResult = await runShellCommand(this.command.command, 60000, this.command.cwd);
671
+ commandResult = await runShellCommand(this.command.command, 60000, this.command.cwd, gateCommandOptions(this.stage, this.command, this.runtimeEvidence));
585
672
  if (commandResult.code !== 0) {
586
673
  blockers.push(`Lint failed: ${commandResult.stderr}`);
587
674
  }
@@ -604,8 +691,9 @@ export class LintGate {
604
691
  }
605
692
  }
606
693
  export class TestGate {
607
- constructor(command) {
694
+ constructor(command, runtimeEvidence) {
608
695
  this.command = command;
696
+ this.runtimeEvidence = runtimeEvidence;
609
697
  this.stage = 'G5';
610
698
  this.name = 'Test';
611
699
  this.description = 'Run configured test command';
@@ -618,7 +706,7 @@ export class TestGate {
618
706
  const blockers = [];
619
707
  let commandResult = null;
620
708
  try {
621
- commandResult = await runShellCommand(this.command.command, 120000, this.command.cwd);
709
+ commandResult = await runShellCommand(this.command.command, 120000, this.command.cwd, gateCommandOptions(this.stage, this.command, this.runtimeEvidence));
622
710
  if (commandResult.code !== 0) {
623
711
  blockers.push(`Tests failed: ${commandResult.stderr}`);
624
712
  }
@@ -641,8 +729,9 @@ export class TestGate {
641
729
  }
642
730
  }
643
731
  export class CoverageGate {
644
- constructor(command) {
732
+ constructor(command, runtimeEvidence) {
645
733
  this.command = command;
734
+ this.runtimeEvidence = runtimeEvidence;
646
735
  this.stage = 'G6';
647
736
  this.name = 'Coverage';
648
737
  this.description = 'Run configured coverage command';
@@ -656,7 +745,7 @@ export class CoverageGate {
656
745
  let detail = '';
657
746
  let commandResult = null;
658
747
  try {
659
- commandResult = await runShellCommand(this.command.command, 120000, this.command.cwd);
748
+ commandResult = await runShellCommand(this.command.command, 120000, this.command.cwd, gateCommandOptions(this.stage, this.command, this.runtimeEvidence));
660
749
  if (commandResult.code !== 0) {
661
750
  blockers.push(`Coverage command failed: ${commandResult.stderr}`);
662
751
  }
@@ -972,7 +1061,7 @@ export class ProductSmokeGate {
972
1061
  const blockers = [];
973
1062
  let commandResult = null;
974
1063
  try {
975
- commandResult = await runShellCommand(this.command.command, 180000, this.command.cwd);
1064
+ commandResult = await runShellCommand(this.command.command, 180000, this.command.cwd, gateCommandOptions(this.stage, this.command, this.runtimeEvidence));
976
1065
  if (commandResult.code !== 0) {
977
1066
  blockers.push(`Product smoke failed: ${commandResult.stderr || commandResult.stdout || `exit code ${commandResult.code}`}`);
978
1067
  }
@@ -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 {};