@hongmaple0820/scale-engine 0.49.0 → 0.50.2

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 (183) hide show
  1. package/README.en.md +2 -2
  2. package/README.md +2 -2
  3. package/dist/api/DashboardHttpConfig.d.ts +28 -0
  4. package/dist/api/DashboardHttpConfig.js +110 -0
  5. package/dist/api/DashboardHttpConfig.js.map +1 -0
  6. package/dist/api/cli.js +102 -11
  7. package/dist/api/cli.js.map +1 -1
  8. package/dist/api/http.d.ts +1 -0
  9. package/dist/api/http.js +52 -0
  10. package/dist/api/http.js.map +1 -0
  11. package/dist/artifact/types.d.ts +5 -0
  12. package/dist/artifact/types.js.map +1 -1
  13. package/dist/bootstrap/DependencyBootstrap.d.ts +1 -0
  14. package/dist/bootstrap/DependencyBootstrap.js +14 -3
  15. package/dist/bootstrap/DependencyBootstrap.js.map +1 -1
  16. package/dist/cli/cortexApplyCommand.d.ts +26 -0
  17. package/dist/cli/cortexApplyCommand.js +74 -0
  18. package/dist/cli/cortexApplyCommand.js.map +1 -0
  19. package/dist/cli/cortexCandidateCommands.d.ts +42 -0
  20. package/dist/cli/cortexCandidateCommands.js +119 -0
  21. package/dist/cli/cortexCandidateCommands.js.map +1 -0
  22. package/dist/cli/cortexCommands.d.ts +31 -0
  23. package/dist/cli/cortexCommands.js +102 -17
  24. package/dist/cli/cortexCommands.js.map +1 -1
  25. package/dist/cli/engineBootstrap.d.ts +1 -1
  26. package/dist/cli/engineBootstrap.js +2 -0
  27. package/dist/cli/engineBootstrap.js.map +1 -1
  28. package/dist/cli/evalCommands.js +1 -0
  29. package/dist/cli/evalCommands.js.map +1 -1
  30. package/dist/cli/phaseCommands.d.ts +28 -0
  31. package/dist/cli/phaseCommands.js +148 -9
  32. package/dist/cli/phaseCommands.js.map +1 -1
  33. package/dist/cli/runtimeSkillCommands.js +12 -2
  34. package/dist/cli/runtimeSkillCommands.js.map +1 -1
  35. package/dist/cli/shieldCommands.d.ts +1 -0
  36. package/dist/cli/shieldCommands.js +20 -7
  37. package/dist/cli/shieldCommands.js.map +1 -1
  38. package/dist/cli/workflowEvidenceCommands.d.ts +120 -0
  39. package/dist/cli/workflowEvidenceCommands.js +228 -2
  40. package/dist/cli/workflowEvidenceCommands.js.map +1 -1
  41. package/dist/cortex/AutoFixEventObservations.d.ts +11 -0
  42. package/dist/cortex/AutoFixEventObservations.js +72 -0
  43. package/dist/cortex/AutoFixEventObservations.js.map +1 -0
  44. package/dist/cortex/GateEvidenceObservations.d.ts +22 -0
  45. package/dist/cortex/GateEvidenceObservations.js +179 -0
  46. package/dist/cortex/GateEvidenceObservations.js.map +1 -0
  47. package/dist/cortex/GovernanceMetrics.d.ts +2 -0
  48. package/dist/cortex/GovernanceMetrics.js +112 -22
  49. package/dist/cortex/GovernanceMetrics.js.map +1 -1
  50. package/dist/cortex/InstinctApplicationRecorder.d.ts +28 -0
  51. package/dist/cortex/InstinctApplicationRecorder.js +145 -0
  52. package/dist/cortex/InstinctApplicationRecorder.js.map +1 -0
  53. package/dist/cortex/InstinctCandidateAudit.d.ts +3 -0
  54. package/dist/cortex/InstinctCandidateAudit.js +39 -0
  55. package/dist/cortex/InstinctCandidateAudit.js.map +1 -0
  56. package/dist/cortex/InstinctCandidateReview.d.ts +32 -0
  57. package/dist/cortex/InstinctCandidateReview.js +125 -0
  58. package/dist/cortex/InstinctCandidateReview.js.map +1 -0
  59. package/dist/cortex/InstinctExtractor.d.ts +1 -0
  60. package/dist/cortex/InstinctExtractor.js +24 -17
  61. package/dist/cortex/InstinctExtractor.js.map +1 -1
  62. package/dist/cortex/InstinctRuntimeEvidence.d.ts +14 -0
  63. package/dist/cortex/InstinctRuntimeEvidence.js +120 -0
  64. package/dist/cortex/InstinctRuntimeEvidence.js.map +1 -0
  65. package/dist/cortex/InstinctStore.d.ts +31 -4
  66. package/dist/cortex/InstinctStore.js +120 -20
  67. package/dist/cortex/InstinctStore.js.map +1 -1
  68. package/dist/cortex/SessionInjector.d.ts +1 -0
  69. package/dist/cortex/SessionInjector.js +54 -4
  70. package/dist/cortex/SessionInjector.js.map +1 -1
  71. package/dist/dashboard/DashboardServer.d.ts +237 -0
  72. package/dist/dashboard/DashboardServer.js +1083 -19
  73. package/dist/dashboard/DashboardServer.js.map +1 -1
  74. package/dist/dashboard/spa/assets/index-VYBCLBje.js +11 -0
  75. package/dist/dashboard/spa/assets/index-VhwY_ac1.css +1 -0
  76. package/dist/dashboard/spa/assets/naive-ui-BQy2AJkt.js +3340 -0
  77. package/dist/dashboard/spa/assets/vendor-BPU6aOYA.js +3 -0
  78. package/dist/dashboard/spa/assets/vue-CQQMb5Wi.js +17 -0
  79. package/dist/dashboard/spa/index.html +16 -0
  80. package/dist/env/EnvironmentDoctor.js +12 -7
  81. package/dist/env/EnvironmentDoctor.js.map +1 -1
  82. package/dist/eval/WorkflowEval.d.ts +9 -0
  83. package/dist/eval/WorkflowEval.js +348 -2
  84. package/dist/eval/WorkflowEval.js.map +1 -1
  85. package/dist/memory/MemoryBrain.d.ts +13 -0
  86. package/dist/memory/MemoryBrain.js +47 -0
  87. package/dist/memory/MemoryBrain.js.map +1 -1
  88. package/dist/memory/MemoryFabric.d.ts +14 -1
  89. package/dist/memory/MemoryFabric.js +72 -8
  90. package/dist/memory/MemoryFabric.js.map +1 -1
  91. package/dist/memory/MemoryLearning.d.ts +1 -0
  92. package/dist/memory/MemoryLearning.js +6 -3
  93. package/dist/memory/MemoryLearning.js.map +1 -1
  94. package/dist/memory/MemoryProviders.d.ts +8 -1
  95. package/dist/memory/MemoryProviders.js +143 -29
  96. package/dist/memory/MemoryProviders.js.map +1 -1
  97. package/dist/runtime/AiOsRuntime.d.ts +14 -1
  98. package/dist/runtime/AiOsRuntime.js +59 -3
  99. package/dist/runtime/AiOsRuntime.js.map +1 -1
  100. package/dist/runtime/RuntimeDoctor.js +3 -1
  101. package/dist/runtime/RuntimeDoctor.js.map +1 -1
  102. package/dist/runtime/RuntimeEvidenceLedger.d.ts +6 -0
  103. package/dist/runtime/RuntimeEvidenceLedger.js +52 -1
  104. package/dist/runtime/RuntimeEvidenceLedger.js.map +1 -1
  105. package/dist/runtime/SessionLedger.d.ts +2 -0
  106. package/dist/runtime/SessionLedger.js +4 -0
  107. package/dist/runtime/SessionLedger.js.map +1 -1
  108. package/dist/setup/SetupVerification.js +53 -5
  109. package/dist/setup/SetupVerification.js.map +1 -1
  110. package/dist/shield/PolicyCompiler.js +73 -12
  111. package/dist/shield/PolicyCompiler.js.map +1 -1
  112. package/dist/shield/ProtectedPaths.js +4 -2
  113. package/dist/shield/ProtectedPaths.js.map +1 -1
  114. package/dist/skills/SkillCatalog.d.ts +2 -0
  115. package/dist/skills/SkillCatalog.js +8 -0
  116. package/dist/skills/SkillCatalog.js.map +1 -1
  117. package/dist/skills/SkillDoctor.d.ts +19 -2
  118. package/dist/skills/SkillDoctor.js +163 -13
  119. package/dist/skills/SkillDoctor.js.map +1 -1
  120. package/dist/tools/SafeCommandRunner.d.ts +1 -0
  121. package/dist/tools/SafeCommandRunner.js +1 -0
  122. package/dist/tools/SafeCommandRunner.js.map +1 -1
  123. package/dist/tools/ToolCapabilityRegistry.js +25 -3
  124. package/dist/tools/ToolCapabilityRegistry.js.map +1 -1
  125. package/dist/tools/ToolOrchestrator.js +21 -0
  126. package/dist/tools/ToolOrchestrator.js.map +1 -1
  127. package/dist/version.d.ts +1 -1
  128. package/dist/version.js +1 -1
  129. package/dist/workflow/AgentLoopReadiness.d.ts +103 -0
  130. package/dist/workflow/AgentLoopReadiness.js +371 -0
  131. package/dist/workflow/AgentLoopReadiness.js.map +1 -0
  132. package/dist/workflow/EcosystemReadinessGate.d.ts +46 -0
  133. package/dist/workflow/EcosystemReadinessGate.js +126 -0
  134. package/dist/workflow/EcosystemReadinessGate.js.map +1 -0
  135. package/dist/workflow/EngineeringStandards.js +48 -3
  136. package/dist/workflow/EngineeringStandards.js.map +1 -1
  137. package/dist/workflow/GateCatalog.js +9 -0
  138. package/dist/workflow/GateCatalog.js.map +1 -1
  139. package/dist/workflow/GovernanceTemplatePacks.js +2 -26
  140. package/dist/workflow/GovernanceTemplatePacks.js.map +1 -1
  141. package/dist/workflow/GovernanceTemplates.js +8 -1
  142. package/dist/workflow/GovernanceTemplates.js.map +1 -1
  143. package/dist/workflow/ReleaseDeploymentLedger.d.ts +63 -0
  144. package/dist/workflow/ReleaseDeploymentLedger.js +154 -0
  145. package/dist/workflow/ReleaseDeploymentLedger.js.map +1 -0
  146. package/dist/workflow/ReviewAnalyzer.js +50 -3
  147. package/dist/workflow/ReviewAnalyzer.js.map +1 -1
  148. package/dist/workflow/SessionPreamble.d.ts +7 -0
  149. package/dist/workflow/SessionPreamble.js +48 -9
  150. package/dist/workflow/SessionPreamble.js.map +1 -1
  151. package/dist/workflow/VerificationCommands.d.ts +1 -0
  152. package/dist/workflow/VerificationCommands.js.map +1 -1
  153. package/dist/workflow/VerificationProfile.d.ts +5 -0
  154. package/dist/workflow/VerificationProfile.js +26 -0
  155. package/dist/workflow/VerificationProfile.js.map +1 -1
  156. package/dist/workflow/VerificationSchema.d.ts +3 -0
  157. package/dist/workflow/VerificationSchema.js +6 -0
  158. package/dist/workflow/VerificationSchema.js.map +1 -1
  159. package/dist/workflow/WorkflowEffectiveness.d.ts +97 -0
  160. package/dist/workflow/WorkflowEffectiveness.js +302 -0
  161. package/dist/workflow/WorkflowEffectiveness.js.map +1 -0
  162. package/dist/workflow/WorkflowEffectivenessRenderer.d.ts +2 -0
  163. package/dist/workflow/WorkflowEffectivenessRenderer.js +67 -0
  164. package/dist/workflow/WorkflowEffectivenessRenderer.js.map +1 -0
  165. package/dist/workflow/WorkflowEffectivenessScoring.d.ts +6 -0
  166. package/dist/workflow/WorkflowEffectivenessScoring.js +243 -0
  167. package/dist/workflow/WorkflowEffectivenessScoring.js.map +1 -0
  168. package/dist/workflow/gates/GateSystem.d.ts +16 -0
  169. package/dist/workflow/gates/GateSystem.js +208 -41
  170. package/dist/workflow/gates/GateSystem.js.map +1 -1
  171. package/dist/workflow/gates/MetaGovernanceGates.js +269 -8
  172. package/dist/workflow/gates/MetaGovernanceGates.js.map +1 -1
  173. package/docs/reference/cli.md +2 -1
  174. package/docs/start/agent-governance-demo.md +1 -1
  175. package/docs/workflow/ASSESSMENT_INDEX.md +326 -0
  176. package/docs/workflow/COMPARATIVE_ANALYSIS.md +422 -0
  177. package/docs/workflow/EXECUTIVE_SUMMARY.md +310 -0
  178. package/docs/workflow/IMPROVEMENT_CHECKLIST.md +518 -0
  179. package/docs/workflow/IMPROVEMENT_ROADMAP.md +707 -0
  180. package/docs/workflow/README.md +9 -1
  181. package/docs/workflow/templates/github-actions-scale-preflight.yml +4 -1
  182. package/package.json +10 -3
  183. package/scripts/workflow/run-vitest.mjs +123 -0
@@ -130,7 +130,7 @@ export function inspectMemoryProviders(options = {}) {
130
130
  const projectDir = resolve(options.projectDir ?? process.cwd());
131
131
  const loaded = loadMemoryProvidersConfig(projectDir, options.scaleDir);
132
132
  const statuses = loaded.config.providers
133
- .map(provider => providerStatus(provider, loaded.config.routing))
133
+ .map(provider => providerStatus(provider, loaded.config.routing, projectDir))
134
134
  .sort((a, b) => b.priority - a.priority || a.id.localeCompare(b.id));
135
135
  return {
136
136
  projectDir,
@@ -220,7 +220,7 @@ export async function recallMemoryProviders(options) {
220
220
  try {
221
221
  const recalled = provider.kind === 'scale-local'
222
222
  ? recallLocal(projectDir, options.scaleDir, provider, options, limit)
223
- : await recallExternal(provider, options, limit);
223
+ : await recallExternal(provider, options, limit, projectDir);
224
224
  if (recalled.length > 0) {
225
225
  selectedProviders.push(provider.id);
226
226
  items.push(...recalled);
@@ -292,9 +292,9 @@ function recallLocal(projectDir, scaleDir, provider, input, limit) {
292
292
  brain.close();
293
293
  }
294
294
  }
295
- async function recallExternal(provider, input, limit) {
295
+ async function recallExternal(provider, input, limit, projectDir) {
296
296
  if (provider.kind === 'gbrain' && commandExists('gbrain')) {
297
- return recallGbrainCli(input, limit);
297
+ return recallGbrainCli(provider, input, limit, projectDir);
298
298
  }
299
299
  if (provider.kind === 'memos') {
300
300
  return recallMemos(provider, input, limit);
@@ -411,7 +411,7 @@ function nodeToRecall(provider, node) {
411
411
  },
412
412
  };
413
413
  }
414
- function providerStatus(provider, routing) {
414
+ function providerStatus(provider, routing, projectDir) {
415
415
  if (!provider.enabled) {
416
416
  return {
417
417
  ...providerStatusBase(provider, routing),
@@ -427,7 +427,7 @@ function providerStatus(provider, routing) {
427
427
  };
428
428
  }
429
429
  if (provider.kind === 'gbrain' && commandExists('gbrain')) {
430
- const health = inspectGbrainCliHealth();
430
+ const health = inspectGbrainCliHealth({ projectDir, env: providerGbrainEnv(provider, projectDir) });
431
431
  if (health.available) {
432
432
  return {
433
433
  ...providerStatusBase(provider, routing),
@@ -474,24 +474,52 @@ function providerStatus(provider, routing) {
474
474
  reason: `${provider.id} endpoint configured; recall is read-only unless policy enables writes`,
475
475
  };
476
476
  }
477
- export function inspectGbrainCliHealth() {
477
+ export function inspectGbrainCliHealth(options = {}) {
478
478
  const result = runGbrainCommandSync(['doctor', '--json'], {
479
479
  timeout: 10_000,
480
+ cwd: options.projectDir,
481
+ env: options.env,
480
482
  });
481
483
  const output = `${result.stdout}\n${result.stderr}`.trim();
482
484
  const parsed = parseGbrainDoctorReport(output);
483
485
  if (parsed && gbrainCoreRecallReady(parsed)) {
484
486
  return gbrainCoreReadyHealth(parsed);
485
487
  }
488
+ if (parsed) {
489
+ const status = typeof parsed.status === 'string' ? parsed.status : undefined;
490
+ const healthScore = typeof parsed.health_score === 'number' ? parsed.health_score : undefined;
491
+ const issues = gbrainCoreRecallIssues(parsed);
492
+ const issueDetails = gbrainCoreRecallIssueDetails(parsed, issues);
493
+ return {
494
+ available: false,
495
+ degraded: false,
496
+ reason: issueDetails.length > 0
497
+ ? `gbrain doctor reported core recall issue(s): ${issueDetails.join(', ')}`
498
+ : `gbrain doctor did not prove core recall readiness: ${status ?? 'unknown status'}`,
499
+ status,
500
+ healthScore,
501
+ issues,
502
+ recoveryHint: gbrainRecoveryHint(issues),
503
+ nextCommands: gbrainRecoveryCommands(issues),
504
+ };
505
+ }
486
506
  if (result.exitCode === 0) {
487
507
  return { available: true, degraded: false, reason: 'gbrain doctor passed; graph-backed recall is available' };
488
508
  }
509
+ const noBrainConfigured = /no brain configured/i.test(output);
489
510
  return {
490
511
  available: false,
491
512
  degraded: false,
492
- reason: /no brain configured/i.test(output)
513
+ reason: noBrainConfigured
493
514
  ? 'gbrain CLI is installed but no brain is configured; run `gbrain init --pglite` before autonomous recall'
494
515
  : `gbrain CLI is installed but doctor failed: ${firstLine(output)}`,
516
+ issues: noBrainConfigured ? ['no-brain-configured'] : ['doctor-failed'],
517
+ recoveryHint: noBrainConfigured
518
+ ? 'Initialize a local PGLite brain or configure a Postgres-backed gbrain before relying on cross-session recall.'
519
+ : 'Run gbrain doctor --json and repair the reported database or provider issue before relying on cross-session recall.',
520
+ nextCommands: noBrainConfigured
521
+ ? ['gbrain init --pglite --no-embedding', 'gbrain doctor --json', 'scale memory provider status --json']
522
+ : ['gbrain doctor --json', 'scale memory provider status --json'],
495
523
  };
496
524
  }
497
525
  function gbrainCoreReadyHealth(report) {
@@ -513,7 +541,7 @@ function gbrainCoreReadyHealth(report) {
513
541
  }
514
542
  return {
515
543
  available: true,
516
- degraded: false,
544
+ degraded: true,
517
545
  reason: `gbrain core recall is available; optional doctor warnings: ${optionalIssues.slice(0, 3).join(', ')}`,
518
546
  status,
519
547
  healthScore,
@@ -524,7 +552,7 @@ function inspectAgentmemoryHealth(endpoint) {
524
552
  try {
525
553
  // Quick TCP check: try to connect to the agentmemory server
526
554
  const { request } = require('node:http');
527
- const req = request(`${url}/health`, { method: 'GET', timeout: 2000 }, (res) => {
555
+ const req = request(`${url}/health`, { method: 'GET', timeout: 2000 }, () => {
528
556
  // just checking connectivity
529
557
  });
530
558
  req.on('error', () => { });
@@ -651,14 +679,69 @@ function extractFirstJsonObject(output) {
651
679
  return null;
652
680
  }
653
681
  function gbrainCoreRecallReady(report) {
654
- const connection = gbrainDoctorCheckStatus(report, 'connection');
655
- const schema = gbrainDoctorCheckStatus(report, 'schema_version');
656
- const brainScore = gbrainDoctorCheckStatus(report, 'brain_score');
657
- return connection === 'ok' && (schema === 'ok' || brainScore === 'ok');
682
+ const checks = gbrainDoctorChecks(report);
683
+ const connection = checks.find(check => check.name === 'connection');
684
+ if (connection) {
685
+ if (connection.status !== 'ok')
686
+ return false;
687
+ const legacyRecallChecks = checks.filter(check => check.name === 'schema_version' || check.name === 'brain_score');
688
+ if (legacyRecallChecks.length > 0)
689
+ return legacyRecallChecks.some(check => check.status === 'ok');
690
+ return true;
691
+ }
692
+ const status = typeof report.status === 'string' ? report.status.toLowerCase() : undefined;
693
+ return status === 'healthy' || status === 'ok';
658
694
  }
659
695
  const GBRAIN_CORE_RECALL_CHECKS = new Set(['connection', 'schema_version', 'brain_score']);
660
- function gbrainDoctorCheckStatus(report, name) {
661
- return gbrainDoctorChecks(report).find(check => check.name === name)?.status;
696
+ function gbrainCoreRecallIssues(report) {
697
+ const checks = gbrainDoctorChecks(report);
698
+ const byName = new Map(checks.map(check => [check.name, check.status]));
699
+ const issues = [];
700
+ const connection = byName.get('connection');
701
+ if (connection && connection !== 'ok')
702
+ issues.push('connection');
703
+ const schema = byName.get('schema_version');
704
+ const brainScore = byName.get('brain_score');
705
+ if ((schema || brainScore) && schema !== 'ok' && brainScore !== 'ok') {
706
+ if (schema && schema !== 'ok')
707
+ issues.push('schema_version');
708
+ if (brainScore && brainScore !== 'ok')
709
+ issues.push('brain_score');
710
+ }
711
+ return issues;
712
+ }
713
+ function gbrainCoreRecallIssueDetails(report, issues) {
714
+ const checks = gbrainDoctorChecks(report);
715
+ return issues.map(issue => {
716
+ const message = checks.find(check => check.name === issue)?.message;
717
+ return message ? `${issue} (${compactText(message)})` : issue;
718
+ });
719
+ }
720
+ function gbrainRecoveryHint(issues) {
721
+ if (issues.includes('connection')) {
722
+ return 'Configured gbrain DB is unreachable. If this is a local PGLite brain, back up the database directory before reinitializing; otherwise configure a reachable Postgres URL.';
723
+ }
724
+ if (issues.includes('schema_version') || issues.includes('brain_score')) {
725
+ return 'gbrain connected but did not prove recall readiness; run doctor/migrations and recheck memory provider status.';
726
+ }
727
+ return undefined;
728
+ }
729
+ function gbrainRecoveryCommands(issues) {
730
+ if (issues.includes('connection')) {
731
+ return [
732
+ 'gbrain doctor --json',
733
+ 'gbrain init --url <postgresql://...> --non-interactive',
734
+ 'scale memory provider status --json',
735
+ ];
736
+ }
737
+ if (issues.includes('schema_version') || issues.includes('brain_score')) {
738
+ return [
739
+ 'gbrain doctor --json',
740
+ 'gbrain init --migrate-only',
741
+ 'scale memory provider status --json',
742
+ ];
743
+ }
744
+ return undefined;
662
745
  }
663
746
  function gbrainDoctorChecks(report) {
664
747
  if (!Array.isArray(report.checks))
@@ -686,7 +769,9 @@ function providerWarnings(statuses, config) {
686
769
  if (!config.routing.allowExternalWrite && statuses.some(status => status.writeMode === 'enabled' && status.kind !== 'scale-local')) {
687
770
  warnings.push('External memory write is configured on a provider while routing.allowExternalWrite is false.');
688
771
  }
689
- if (!statuses.some(status => status.kind === 'scale-local' && status.available)) {
772
+ const expectsScaleLocalFallback = config.providers.some(provider => provider.kind === 'scale-local') ||
773
+ config.routing.defaultOrder.includes('scale-local');
774
+ if (expectsScaleLocalFallback && !statuses.some(status => status.kind === 'scale-local' && status.available)) {
690
775
  warnings.push('scale-local fallback is unavailable; autonomous recall may fail closed.');
691
776
  }
692
777
  for (const status of statuses) {
@@ -696,23 +781,35 @@ function providerWarnings(statuses, config) {
696
781
  }
697
782
  return warnings;
698
783
  }
699
- function recallGbrainCli(input, limit) {
700
- const result = runGbrainCli(['query', input.query], 8_000);
701
- const parsed = parseGbrainResults(result.stdout);
784
+ function recallGbrainCli(provider, input, limit, projectDir) {
785
+ const result = runGbrainCli(['query', input.query], 8_000, provider, projectDir);
786
+ let parsed = parseGbrainResults(result.stdout);
702
787
  if (parsed.length === 0 && result.exitCode !== 0 && !result.timedOut) {
703
788
  throw new Error(firstLine(result.stderr) || `gbrain query failed with exit code ${result.exitCode}`);
704
789
  }
790
+ if (parsed.length === 0 && result.exitCode === 0) {
791
+ const fallback = runGbrainCli(['search', input.query], 8_000, provider, projectDir, { outputMode: 'native' });
792
+ parsed = parseGbrainResults(fallback.stdout);
793
+ if (parsed.length === 0 && fallback.exitCode !== 0 && !fallback.timedOut) {
794
+ throw new Error(firstLine(fallback.stderr) || `gbrain search failed with exit code ${fallback.exitCode}`);
795
+ }
796
+ }
705
797
  return parsed
706
798
  .slice(0, limit)
707
799
  .map((item, index) => externalToRecall('gbrain', item, index));
708
800
  }
709
- function runGbrainCli(args, timeout) {
801
+ function runGbrainCli(args, timeout, provider, projectDir, options = {}) {
802
+ const providerEnv = providerGbrainEnv(provider, projectDir) ?? process.env;
803
+ const outputMode = options.outputMode ?? 'json';
804
+ const env = {
805
+ ...providerEnv,
806
+ ...(outputMode === 'json'
807
+ ? { GBRAIN_OUTPUT_MODE: process.env.GBRAIN_OUTPUT_MODE ?? 'json' }
808
+ : {}),
809
+ };
710
810
  const result = runGbrainCommandSync(args, {
711
811
  timeout,
712
- env: {
713
- ...process.env,
714
- GBRAIN_OUTPUT_MODE: process.env.GBRAIN_OUTPUT_MODE ?? 'json',
715
- },
812
+ env,
716
813
  });
717
814
  return {
718
815
  stdout: result.stdout,
@@ -740,6 +837,8 @@ function parseGbrainTextResults(stdout) {
740
837
  const line = rawLine.trim();
741
838
  if (!line)
742
839
  continue;
840
+ if (/^\[last-retrieved\]\s+write-back failed/i.test(line))
841
+ continue;
743
842
  const ranked = line.match(/^(\d+)\.\s+(.*)$/);
744
843
  if (ranked) {
745
844
  if (current)
@@ -775,6 +874,10 @@ function parseGbrainTextResults(stdout) {
775
874
  function firstLine(value) {
776
875
  return value.split(/\r?\n/).map(line => line.trim()).find(Boolean) ?? 'unknown error';
777
876
  }
877
+ function compactText(value, maxLength = 200) {
878
+ const compact = value.replace(/\s+/g, ' ').trim();
879
+ return compact.length <= maxLength ? compact : `${compact.slice(0, maxLength - 1)}…`;
880
+ }
778
881
  function estimateTokens(text) {
779
882
  // Rough estimate: ~4 chars per token for English text
780
883
  return Math.ceil(text.length / 4);
@@ -796,17 +899,28 @@ function normalizeProviders(input, defaults) {
796
899
  kind: normalizeKind(item.kind, base?.kind),
797
900
  enabled: item.enabled !== false && Boolean(item.enabled ?? base?.enabled ?? false),
798
901
  priority: positiveInt(item.priority, base?.priority ?? 0),
902
+ homeDir: typeof item.homeDir === 'string' ? item.homeDir : base?.homeDir,
799
903
  capabilities: arrayOfStrings(item.capabilities),
800
904
  safetyLevel: normalizeSafety(item.safetyLevel, base?.safetyLevel),
801
905
  writeMode: normalizeWriteMode(item.writeMode, base?.writeMode),
802
906
  };
803
907
  }).filter(provider => provider.id);
804
- for (const defaultProvider of defaults) {
805
- if (!providers.some(provider => provider.id === defaultProvider.id))
806
- providers.push(defaultProvider);
807
- }
808
908
  return providers;
809
909
  }
910
+ function providerGbrainEnv(provider, projectDir) {
911
+ const configuredHome = provider.homeDir?.trim();
912
+ if (!configuredHome)
913
+ return undefined;
914
+ const homeDir = resolveProviderPath(configuredHome, projectDir);
915
+ return {
916
+ ...process.env,
917
+ GBRAIN_HOME: homeDir,
918
+ GBRAIN_AUDIT_DIR: process.env.GBRAIN_AUDIT_DIR ?? join(homeDir, 'audit'),
919
+ };
920
+ }
921
+ function resolveProviderPath(value, projectDir) {
922
+ return isAbsolute(value) ? value : resolve(projectDir, value);
923
+ }
810
924
  function normalizeKind(value, fallback = 'generic-http') {
811
925
  return ['scale-local', 'agentmemory', 'gbrain', 'memos', 'generic-http'].includes(String(value))
812
926
  ? value
@@ -1 +1 @@
1
- {"version":3,"file":"MemoryProviders.js","sourceRoot":"","sources":["../../src/memory/MemoryProviders.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MemoryProviders.js","sourceRoot":"","sources":["../../src/memory/MemoryProviders.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@ import { type GovernanceRoiSummary } from '../workflow/GovernanceRoi.js';
9
9
  import { type EvolutionShadowReport } from '../workflow/EvolutionShadowPromoter.js';
10
10
  import { type LearningEntry } from '../evolution/SessionLearnings.js';
11
11
  import { type SessionPreamble } from '../workflow/SessionPreamble.js';
12
+ import { type AgentLoopReadinessReport } from '../workflow/AgentLoopReadiness.js';
12
13
  export interface AiOsRuntimeInput {
13
14
  projectDir?: string;
14
15
  scaleDir?: string;
@@ -412,7 +413,7 @@ export interface AiOsStatusReport {
412
413
  nextActions: string[];
413
414
  warnings: string[];
414
415
  }
415
- export type AiOsIntelligenceSignalId = 'memory-recall' | 'context-savings' | 'skill-routing' | 'evaluator-intelligence' | 'tool-strategy' | 'adaptive-workflow' | 'evolution-shadow' | 'benchmark-intelligence';
416
+ export type AiOsIntelligenceSignalId = 'memory-recall' | 'context-savings' | 'skill-routing' | 'evaluator-intelligence' | 'tool-strategy' | 'adaptive-workflow' | 'evolution-shadow' | 'agent-loop-readiness' | 'benchmark-intelligence';
416
417
  export interface AiOsIntelligenceSignal {
417
418
  id: AiOsIntelligenceSignalId;
418
419
  status: AiOsClosedLoopStatus;
@@ -432,6 +433,7 @@ export interface AiOsIntelligenceReport {
432
433
  contextQuality: AiOsContextQualitySummary;
433
434
  evaluatorQuality: AiOsEvaluatorQualitySummary;
434
435
  toolStrategyQuality: AiOsToolStrategyQualitySummary;
436
+ agentLoopQuality: AiOsAgentLoopQualitySummary;
435
437
  evolutionQuality: AiOsEvolutionQualitySummary;
436
438
  estimatedTokenSavings: number;
437
439
  skillSteps: number;
@@ -467,6 +469,17 @@ export interface AiOsToolStrategyQualitySummary {
467
469
  estimatedCostUnits: number;
468
470
  fallbackCoverage: number;
469
471
  }
472
+ export interface AiOsAgentLoopQualitySummary {
473
+ status: AgentLoopReadinessReport['status'];
474
+ score: number;
475
+ readySignals: number;
476
+ warningSignals: number;
477
+ missingSignals: number;
478
+ loopRecoveryRate: number | null;
479
+ guardrailCoverage: number | null;
480
+ budgetControlled: boolean | null;
481
+ terminationEvidence: boolean | null;
482
+ }
470
483
  export interface AiOsEvolutionQualitySummary {
471
484
  proposals: number;
472
485
  shadowRules: number;
@@ -14,6 +14,7 @@ import { resolveVerificationTargets, } from '../workflow/VerificationProfile.js'
14
14
  import { RuntimeEvidenceLedger } from './RuntimeEvidenceLedger.js';
15
15
  import { loadRelevantLearnings } from '../evolution/SessionLearnings.js';
16
16
  import { collectSessionPreamble } from '../workflow/SessionPreamble.js';
17
+ import { assessAgentLoopReadiness } from '../workflow/AgentLoopReadiness.js';
17
18
  export async function createAiOsPlan(input) {
18
19
  const projectDir = resolve(input.projectDir ?? process.cwd());
19
20
  const scaleDir = input.scaleDir ?? '.scale';
@@ -584,6 +585,12 @@ function buildAiOsIntelligenceReport(input) {
584
585
  const contextQuality = summarizeContextQuality(input.runReports);
585
586
  const evaluatorQuality = summarizeEvaluatorQuality(input.runReports, input.benchmark);
586
587
  const toolStrategyQuality = summarizeToolStrategyQuality(input.runReports, input.benchmark);
588
+ const agentLoop = assessAgentLoopReadiness({
589
+ projectDir: input.projectDir,
590
+ scaleDir: input.scaleDir,
591
+ runReports: input.runReports,
592
+ });
593
+ const agentLoopQuality = summarizeAgentLoopQuality(agentLoop);
587
594
  const evolutionQuality = summarizeEvolutionQuality(input.runReports, input.benchmark);
588
595
  const contextSignalStatus = contextQuality.compressionRisk === 'high'
589
596
  ? 'warning'
@@ -612,6 +619,9 @@ function buildAiOsIntelligenceReport(input) {
612
619
  ...input.runReports.flatMap(report => (report.plan.evolutionShadow?.proposals ?? []).map(p => `${report.artifacts.runReport}:${p.id}:${p.maturity.stage}`)),
613
620
  ...(input.benchmark ? [`${input.benchmarkReport}:evolution-proposals=${input.benchmark.summary.totalEvolutionProposals}`] : []),
614
621
  ];
622
+ const agentLoopEvidence = agentLoop.summary.evidence.length > 0
623
+ ? agentLoop.summary.evidence
624
+ : [resolveScaleRoot(input.projectDir, input.scaleDir)];
615
625
  const benchmarkEvidence = input.benchmark ? [
616
626
  `${input.benchmarkReport}:scenarios=${input.benchmark.summary.scenarios}`,
617
627
  `${input.benchmarkReport}:memory=${input.benchmark.summary.totalMemoryItems}`,
@@ -683,6 +693,15 @@ function buildAiOsIntelligenceReport(input) {
683
693
  ? ['Use tool strategy evidence to review cost, retry, fallback, and side-effect risk before execution.']
684
694
  : ['Create a task that triggers skill routing so the AI OS can build a tool strategy graph.'],
685
695
  },
696
+ {
697
+ id: 'agent-loop-readiness',
698
+ status: agentLoop.status === 'ready' ? 'ready' : 'warning',
699
+ summary: `Agent Loop readiness ${agentLoop.status}; ${agentLoop.summary.readySignals}/6 signal(s) ready; score ${agentLoop.score}/100.`,
700
+ evidence: agentLoopEvidence,
701
+ recommendations: agentLoop.summary.recommendations.length > 0
702
+ ? agentLoop.summary.recommendations
703
+ : ['Keep collecting execution, recovery, guardrail, budget, delegation, and termination evidence for every guarded run.'],
704
+ },
686
705
  {
687
706
  id: 'adaptive-workflow',
688
707
  status: input.runReports.some(r => r.plan.adaptiveWorkflow.profile) ? 'ready' : input.runReports.length > 0 || input.benchmark ? 'warning' : 'blocked',
@@ -732,6 +751,7 @@ function buildAiOsIntelligenceReport(input) {
732
751
  contextQuality,
733
752
  evaluatorQuality,
734
753
  toolStrategyQuality,
754
+ agentLoopQuality,
735
755
  evolutionQuality,
736
756
  estimatedTokenSavings,
737
757
  skillSteps,
@@ -747,12 +767,13 @@ function summarizeContextQuality(runReports) {
747
767
  ...item,
748
768
  category: section?.category,
749
769
  runReport: report.artifacts.runReport,
770
+ report,
750
771
  };
751
772
  }));
752
773
  const totalOmittedTokens = omitted.reduce((sum, item) => sum + item.estimatedTokens, 0);
753
774
  const highestOmittedTokens = omitted.reduce((max, item) => Math.max(max, item.estimatedTokens), 0);
754
775
  const evidenceLossWarnings = omitted
755
- .filter(item => item.category === 'evidence' || item.id.includes('evidence'))
776
+ .filter(item => isHighRiskOmittedEvidence(item.report, item))
756
777
  .map(item => `${item.id} omitted from ${item.runReport} (${item.estimatedTokens} tokens; ${item.reason}).`);
757
778
  const compressionRisk = evidenceLossWarnings.length > 0
758
779
  ? 'high'
@@ -765,6 +786,24 @@ function summarizeContextQuality(runReports) {
765
786
  compressionRisk,
766
787
  };
767
788
  }
789
+ function isHighRiskOmittedEvidence(report, item) {
790
+ const evidenceBearing = item.category === 'evidence' || item.id.includes('evidence');
791
+ if (!evidenceBearing)
792
+ return false;
793
+ if (hasStructuredEvidenceReplacement(report, item.id))
794
+ return false;
795
+ if (report.plan.task.level === 'CRITICAL')
796
+ return true;
797
+ return !report.dryRun;
798
+ }
799
+ function hasStructuredEvidenceReplacement(report, omittedId) {
800
+ if (report.evidence.produced.includes(omittedId))
801
+ return true;
802
+ if (omittedId === 'runtime-evidence' && report.verification.allPassed && report.verification.commands.length > 0) {
803
+ return true;
804
+ }
805
+ return false;
806
+ }
768
807
  function summarizeEvaluatorQuality(runReports, benchmark) {
769
808
  const runEvaluators = runReports.map(resolveRunEvaluator);
770
809
  const runGates = runEvaluators.flatMap(evaluator => evaluator.gates);
@@ -820,6 +859,19 @@ function resolveRunToolStrategy(report) {
820
859
  const plan = report.plan;
821
860
  return plan.toolStrategy ?? createToolStrategyPlan(report.plan.skillPlan);
822
861
  }
862
+ function summarizeAgentLoopQuality(report) {
863
+ return {
864
+ status: report.status,
865
+ score: report.score,
866
+ readySignals: report.summary.readySignals,
867
+ warningSignals: report.summary.warningSignals,
868
+ missingSignals: report.summary.missingSignals,
869
+ loopRecoveryRate: report.metrics.loopRecoveryRate.value,
870
+ guardrailCoverage: report.metrics.guardrailCoverage.value,
871
+ budgetControlled: report.metrics.budgetControlEvidence.value,
872
+ terminationEvidence: report.metrics.terminationEvidence.value,
873
+ };
874
+ }
823
875
  function summarizeEvolutionQuality(runReports, benchmark) {
824
876
  const runProposals = runReports.flatMap(r => r.plan.evolutionShadow?.proposals ?? []);
825
877
  const benchmarkProposals = benchmark?.summary.totalEvolutionProposals ?? 0;
@@ -1230,8 +1282,12 @@ function buildVerificationRecommendations(projectDir, scaleDir, lang) {
1230
1282
  }
1231
1283
  }
1232
1284
  }
1233
- catch {
1234
- // Best effort only. Status should not fail just because verification config is invalid.
1285
+ catch (error) {
1286
+ add({
1287
+ command: 'scale verify --profile default',
1288
+ source: 'fallback',
1289
+ reason: `Verification profile could not be read for recommendations (${error instanceof Error ? error.message : String(error)}). Run the default verification profile before promotion.`,
1290
+ });
1235
1291
  }
1236
1292
  if (recommendations.length > 0)
1237
1293
  return recommendations;