nexus-prime 4.0.0 → 4.1.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 (130) hide show
  1. package/README.md +11 -0
  2. package/dist/architects/bootstrap.d.ts.map +1 -1
  3. package/dist/architects/bootstrap.js +1 -0
  4. package/dist/architects/bootstrap.js.map +1 -1
  5. package/dist/architects/types.d.ts +1 -0
  6. package/dist/architects/types.d.ts.map +1 -1
  7. package/dist/dashboard/index.html +126 -48
  8. package/dist/dashboard/server.d.ts +6 -0
  9. package/dist/dashboard/server.d.ts.map +1 -1
  10. package/dist/dashboard/server.js +98 -84
  11. package/dist/dashboard/server.js.map +1 -1
  12. package/dist/engines/embedder.d.ts +15 -2
  13. package/dist/engines/embedder.d.ts.map +1 -1
  14. package/dist/engines/embedder.js +101 -51
  15. package/dist/engines/embedder.js.map +1 -1
  16. package/dist/engines/event-bus.d.ts +28 -0
  17. package/dist/engines/event-bus.d.ts.map +1 -1
  18. package/dist/engines/federation.d.ts +5 -1
  19. package/dist/engines/federation.d.ts.map +1 -1
  20. package/dist/engines/federation.js +54 -12
  21. package/dist/engines/federation.js.map +1 -1
  22. package/dist/engines/memory.d.ts +14 -2
  23. package/dist/engines/memory.d.ts.map +1 -1
  24. package/dist/engines/memory.js +174 -14
  25. package/dist/engines/memory.js.map +1 -1
  26. package/dist/engines/orchestrator.d.ts.map +1 -1
  27. package/dist/engines/orchestrator.js +55 -27
  28. package/dist/engines/orchestrator.js.map +1 -1
  29. package/dist/engines/specialist-roster.js +14 -0
  30. package/dist/engines/specialist-roster.js.map +1 -1
  31. package/dist/engines/token-supremacy.js +1 -1
  32. package/dist/engines/token-supremacy.js.map +1 -1
  33. package/dist/index.d.ts +1 -0
  34. package/dist/index.d.ts.map +1 -1
  35. package/dist/index.js +28 -7
  36. package/dist/index.js.map +1 -1
  37. package/dist/phantom/index.js +1 -1
  38. package/dist/phantom/index.js.map +1 -1
  39. package/dist/phantom/runtime.d.ts.map +1 -1
  40. package/dist/phantom/runtime.js +2 -2
  41. package/dist/phantom/runtime.js.map +1 -1
  42. package/dist/synapse/bootstrap.d.ts +2 -1
  43. package/dist/synapse/bootstrap.d.ts.map +1 -1
  44. package/dist/synapse/bootstrap.js +11 -0
  45. package/dist/synapse/bootstrap.js.map +1 -1
  46. package/dist/synapse/index.d.ts +1 -0
  47. package/dist/synapse/index.d.ts.map +1 -1
  48. package/dist/synapse/index.js.map +1 -1
  49. package/dist/synapse/mandate/intent-parser.d.ts.map +1 -1
  50. package/dist/synapse/mandate/intent-parser.js +29 -5
  51. package/dist/synapse/mandate/intent-parser.js.map +1 -1
  52. package/dist/synapse/mandate/pipeline.d.ts.map +1 -1
  53. package/dist/synapse/mandate/pipeline.js +24 -0
  54. package/dist/synapse/mandate/pipeline.js.map +1 -1
  55. package/dist/synapse/sorties/runner.d.ts.map +1 -1
  56. package/dist/synapse/sorties/runner.js +69 -1
  57. package/dist/synapse/sorties/runner.js.map +1 -1
  58. package/dist/synapse/types.d.ts +19 -0
  59. package/dist/synapse/types.d.ts.map +1 -1
  60. package/dist/verify-token-scoring.js +4 -1
  61. package/dist/verify-token-scoring.js.map +1 -1
  62. package/package.json +4 -2
  63. package/dist/architects/__tests__/blueprint-instantiate.test.d.ts +0 -2
  64. package/dist/architects/__tests__/blueprint-instantiate.test.d.ts.map +0 -1
  65. package/dist/architects/__tests__/blueprint-instantiate.test.js +0 -24
  66. package/dist/architects/__tests__/blueprint-instantiate.test.js.map +0 -1
  67. package/dist/architects/__tests__/construction-locks.test.d.ts +0 -2
  68. package/dist/architects/__tests__/construction-locks.test.d.ts.map +0 -1
  69. package/dist/architects/__tests__/construction-locks.test.js +0 -22
  70. package/dist/architects/__tests__/construction-locks.test.js.map +0 -1
  71. package/dist/architects/__tests__/convergence-queue.test.d.ts +0 -2
  72. package/dist/architects/__tests__/convergence-queue.test.d.ts.map +0 -1
  73. package/dist/architects/__tests__/convergence-queue.test.js +0 -22
  74. package/dist/architects/__tests__/convergence-queue.test.js.map +0 -1
  75. package/dist/architects/__tests__/dispatch-governor.test.d.ts +0 -2
  76. package/dist/architects/__tests__/dispatch-governor.test.d.ts.map +0 -1
  77. package/dist/architects/__tests__/dispatch-governor.test.js +0 -37
  78. package/dist/architects/__tests__/dispatch-governor.test.js.map +0 -1
  79. package/dist/architects/__tests__/helpers.d.ts +0 -9
  80. package/dist/architects/__tests__/helpers.d.ts.map +0 -1
  81. package/dist/architects/__tests__/helpers.js +0 -67
  82. package/dist/architects/__tests__/helpers.js.map +0 -1
  83. package/dist/architects/__tests__/mcp-tools.test.d.ts +0 -2
  84. package/dist/architects/__tests__/mcp-tools.test.d.ts.map +0 -1
  85. package/dist/architects/__tests__/mcp-tools.test.js +0 -27
  86. package/dist/architects/__tests__/mcp-tools.test.js.map +0 -1
  87. package/dist/architects/__tests__/relay-messenger.test.d.ts +0 -2
  88. package/dist/architects/__tests__/relay-messenger.test.d.ts.map +0 -1
  89. package/dist/architects/__tests__/relay-messenger.test.js +0 -29
  90. package/dist/architects/__tests__/relay-messenger.test.js.map +0 -1
  91. package/dist/architects/__tests__/run.d.ts +0 -2
  92. package/dist/architects/__tests__/run.d.ts.map +0 -1
  93. package/dist/architects/__tests__/run.js +0 -15
  94. package/dist/architects/__tests__/run.js.map +0 -1
  95. package/dist/synapse/__tests__/approvals.test.d.ts +0 -2
  96. package/dist/synapse/__tests__/approvals.test.d.ts.map +0 -1
  97. package/dist/synapse/__tests__/approvals.test.js +0 -39
  98. package/dist/synapse/__tests__/approvals.test.js.map +0 -1
  99. package/dist/synapse/__tests__/budgets.test.d.ts +0 -2
  100. package/dist/synapse/__tests__/budgets.test.d.ts.map +0 -1
  101. package/dist/synapse/__tests__/budgets.test.js +0 -21
  102. package/dist/synapse/__tests__/budgets.test.js.map +0 -1
  103. package/dist/synapse/__tests__/field-report-ledger.test.d.ts +0 -2
  104. package/dist/synapse/__tests__/field-report-ledger.test.d.ts.map +0 -1
  105. package/dist/synapse/__tests__/field-report-ledger.test.js +0 -36
  106. package/dist/synapse/__tests__/field-report-ledger.test.js.map +0 -1
  107. package/dist/synapse/__tests__/helpers.d.ts +0 -24
  108. package/dist/synapse/__tests__/helpers.d.ts.map +0 -1
  109. package/dist/synapse/__tests__/helpers.js +0 -48
  110. package/dist/synapse/__tests__/helpers.js.map +0 -1
  111. package/dist/synapse/__tests__/mandate-pipeline.test.d.ts +0 -2
  112. package/dist/synapse/__tests__/mandate-pipeline.test.d.ts.map +0 -1
  113. package/dist/synapse/__tests__/mandate-pipeline.test.js +0 -35
  114. package/dist/synapse/__tests__/mandate-pipeline.test.js.map +0 -1
  115. package/dist/synapse/__tests__/mcp-tools.test.d.ts +0 -2
  116. package/dist/synapse/__tests__/mcp-tools.test.d.ts.map +0 -1
  117. package/dist/synapse/__tests__/mcp-tools.test.js +0 -25
  118. package/dist/synapse/__tests__/mcp-tools.test.js.map +0 -1
  119. package/dist/synapse/__tests__/run.d.ts +0 -2
  120. package/dist/synapse/__tests__/run.d.ts.map +0 -1
  121. package/dist/synapse/__tests__/run.js +0 -16
  122. package/dist/synapse/__tests__/run.js.map +0 -1
  123. package/dist/synapse/__tests__/sortie-runner.test.d.ts +0 -2
  124. package/dist/synapse/__tests__/sortie-runner.test.d.ts.map +0 -1
  125. package/dist/synapse/__tests__/sortie-runner.test.js +0 -89
  126. package/dist/synapse/__tests__/sortie-runner.test.js.map +0 -1
  127. package/dist/synapse/__tests__/watchdog-patrol.test.d.ts +0 -2
  128. package/dist/synapse/__tests__/watchdog-patrol.test.d.ts.map +0 -1
  129. package/dist/synapse/__tests__/watchdog-patrol.test.js +0 -74
  130. package/dist/synapse/__tests__/watchdog-patrol.test.js.map +0 -1
package/README.md CHANGED
@@ -632,6 +632,17 @@ Inventory Snapshot: 109 skills · 64 workflows · 9 hooks · 5 automations · 7
632
632
  ## 📜 Release History
633
633
 
634
634
  <details open>
635
+ <summary><b>v4.1.0</b> · 2026-03-23 · Control-plane hardening, dashboard truth, and coordinated execution</summary>
636
+
637
+ - **Dashboard responsiveness and truth**: Hot endpoints now use bounded caching, the client avoids broad refresh fan-out while SSE is healthy, catalog refresh stays canonical to runtime assets, and degraded states surface as explicit partial/stale conditions instead of silent fallback.
638
+ - **Engineering-first routing**: Broad dashboard/control-plane reviews now stay on engineering lanes with meaningful frontend/review secondary intent instead of drifting into blocked PM, marketing, or data routes.
639
+ - **Explicit Synapse ↔ Architects coordination**: Work-item claim/complete handoffs are now bootstrapped through a typed bridge with shared correlation IDs across missions, sorties, field reports, dashboard entities, and POD telemetry.
640
+ - **Bootstrap-path regression coverage**: Added end-to-end mandate → worklist → sortie → convergence coverage plus dashboard and routing regressions to keep control-plane behavior release-safe.
641
+
642
+ Full notes: [releases/v4.1.0.md](./releases/v4.1.0.md) · Full history: [CHANGELOG.md](./CHANGELOG.md)
643
+ </details>
644
+
645
+ <details>
635
646
  <summary><b>v4.0.0</b> · 2026-03-22 · Engine stabilization, release hardening, and roster light-loading</summary>
636
647
 
637
648
  - **Memory vault hardening**: SQLite pragmas, access-count parameterization, entropy clamping, graph failure telemetry, debounced vault writes, and recursive-CTE lineage now stabilize memory behavior under real runtime load.
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../src/architects/bootstrap.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAuB,iBAAiB,EAAkB,MAAM,YAAY,CAAC;AAEzF,UAAU,qBAAqB;IAC7B,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,iBAAiB,GAAG,IAAI,CA+IvF"}
1
+ {"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../src/architects/bootstrap.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAuB,iBAAiB,EAAkB,MAAM,YAAY,CAAC;AAEzF,UAAU,qBAAqB;IAC7B,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,iBAAiB,GAAG,IAAI,CAgJvF"}
@@ -110,6 +110,7 @@ export function initArchitects(options) {
110
110
  worklist: getWorklist(db, worklistId),
111
111
  items: getWorkItemsForWorklist(db, worklistId),
112
112
  }),
113
+ getWorklistForStrikeTeam: (strikeTeamId) => implicitWorklistByTeam.get(strikeTeamId) ?? `implicit-worklist:${strikeTeamId}`,
113
114
  claimWorkItem: async (workItemId, operativeId) => {
114
115
  dispatchGovernor.dispatch(operativeId, workItemId);
115
116
  return acquireConstructionLock(operativeId, workItemId, db, providers);
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../../src/architects/bootstrap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../../src/architects/bootstrap.ts"],"names":[],"mappings":"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"}
@@ -100,6 +100,7 @@ export interface ArchitectsRuntime {
100
100
  worklist: Worklist | null;
101
101
  items: WorkItem[];
102
102
  };
103
+ getWorklistForStrikeTeam(strikeTeamId: string): string | null;
103
104
  claimWorkItem(workItemId: string, operativeId: string): Promise<ConstructionLock | null>;
104
105
  completeWorkItem(workItemId: string, operativeId: string, status: WorkItemStatus, branch?: string | null): Promise<WorkItem | null>;
105
106
  sendRelay(input: {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/architects/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/architects/types.ts"],"names":[],"mappings":"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"}
@@ -2076,7 +2076,7 @@
2076
2076
  const REQUIRED_CAPABILITIES = ['runs', 'memory', 'pod', 'clients', 'events', 'stream', 'specialists', 'crews', 'planner', 'hooks', 'automations', 'federation', 'orchestration', 'tokens', 'tokenSources', 'clientPrimary', 'instructionPacket', 'orchestrationLedger', 'knowledgeFabric', 'ragCollections', 'patterns', 'modelTiers', 'workerPlan', 'artifactOutcomes', 'memoryTrace', 'memoryShared', 'worktreeHealth', 'featureRegistry', 'synapse', 'architects'];
2077
2077
 
2078
2078
  function createResourceState() {
2079
- return { status: 'idle', error: '' };
2079
+ return { status: 'idle', error: '', fetchedAt: 0, lastSource: 'idle' };
2080
2080
  }
2081
2081
 
2082
2082
  const state = {
@@ -2299,6 +2299,7 @@
2299
2299
  },
2300
2300
  featureRegistry: {
2301
2301
  url: '/api/feature-registry',
2302
+ ttlMs: 30000,
2302
2303
  assign(value) {
2303
2304
  state.featureRegistry = value || null;
2304
2305
  },
@@ -2361,12 +2362,14 @@
2361
2362
  },
2362
2363
  backends: {
2363
2364
  url: '/api/backends',
2365
+ ttlMs: 30000,
2364
2366
  assign(value) {
2365
2367
  state.backends = value || state.backends;
2366
2368
  },
2367
2369
  },
2368
2370
  health: {
2369
2371
  url: '/api/health',
2372
+ ttlMs: 15000,
2370
2373
  assign(value) {
2371
2374
  state.health = value || state.health;
2372
2375
  },
@@ -2411,6 +2414,7 @@
2411
2414
  },
2412
2415
  repoTree: {
2413
2416
  url: '/api/repo-tree',
2417
+ ttlMs: 45000,
2414
2418
  assign(value) {
2415
2419
  state.repoTree = value || null;
2416
2420
  },
@@ -2437,6 +2441,7 @@
2437
2441
  },
2438
2442
  federation: {
2439
2443
  url: '/api/federation',
2444
+ ttlMs: 15000,
2440
2445
  assign(value) {
2441
2446
  state.federation = value || state.federation;
2442
2447
  },
@@ -2453,6 +2458,7 @@
2453
2458
  },
2454
2459
  events: {
2455
2460
  url: '/api/events?limit=80',
2461
+ skipWhenStreamHealthy: true,
2456
2462
  assign(value) {
2457
2463
  if (!Array.isArray(value)) return;
2458
2464
  const seen = new Set();
@@ -2735,8 +2741,14 @@
2735
2741
  .filter(Boolean);
2736
2742
  }
2737
2743
 
2738
- function setResourceStatus(name, status, error = '') {
2739
- state.resources[name] = { status, error };
2744
+ function setResourceStatus(name, status, error = '', meta = {}) {
2745
+ const previous = state.resources[name] || createResourceState();
2746
+ state.resources[name] = {
2747
+ status,
2748
+ error,
2749
+ fetchedAt: meta.fetchedAt ?? ((status === 'ready' || status === 'stale') ? Date.now() : previous.fetchedAt || 0),
2750
+ lastSource: meta.source || previous.lastSource || 'idle',
2751
+ };
2740
2752
  }
2741
2753
 
2742
2754
  function getResourceStatus(name) {
@@ -2796,7 +2808,7 @@
2796
2808
  }
2797
2809
 
2798
2810
  function resourcesForEventCategory(category) {
2799
- return CATEGORY_RESOURCE_MAP[category] || [];
2811
+ return (CATEGORY_RESOURCE_MAP[category] || []).filter((name) => !(name === 'events' && state.streamConnected));
2800
2812
  }
2801
2813
 
2802
2814
  function normalizeLegacyCategory(type) {
@@ -3028,44 +3040,28 @@
3028
3040
  }
3029
3041
  }
3030
3042
 
3031
- async function refreshAll(resourceNames = null) {
3043
+ async function refreshAll(resourceNames = null, options = {}) {
3032
3044
  const bar = $('refresh-bar');
3033
3045
  bar.classList.remove('done');
3034
3046
  bar.classList.add('active');
3035
3047
  const targets = resourceNames?.length
3036
3048
  ? resourceNames.filter((name, index, list) => RESOURCE_LOADERS[name] && list.indexOf(name) === index)
3037
3049
  : Object.keys(RESOURCE_LOADERS);
3038
- const staticTargets = [
3039
- ...targets.filter((name) => name === 'runtimes'),
3040
- ...targets.filter((name) => name !== 'runtimes' && !RESOURCE_LOADERS[name].dynamic),
3041
- ];
3042
- const dynamicTargets = targets.filter((name) => RESOURCE_LOADERS[name].dynamic);
3043
- const resources = staticTargets.map((name) => [name, RESOURCE_LOADERS[name]]);
3044
- const results = await Promise.allSettled(resources.map(([name, config]) => fetchJson(buildLoaderUrl(name, config))));
3045
- let refreshed = false;
3046
-
3047
- results.forEach((result, index) => {
3048
- const [name, config] = resources[index];
3049
- if (result.status === 'fulfilled') {
3050
- config.assign(result.value);
3051
- setResourceStatus(name, 'ready');
3052
- refreshed = true;
3053
- } else {
3054
- setResourceStatus(name, 'error', normalizeError(result.reason));
3055
- }
3056
- });
3050
+ const force = Boolean(options.force);
3051
+ const refreshedTargets = [];
3057
3052
 
3058
- for (const name of dynamicTargets) {
3059
- try {
3060
- const value = await fetchJson(buildLoaderUrl(name, RESOURCE_LOADERS[name]));
3061
- RESOURCE_LOADERS[name].assign(value);
3062
- setResourceStatus(name, 'ready');
3063
- refreshed = true;
3064
- } catch (error) {
3065
- setResourceStatus(name, 'error', normalizeError(error));
3066
- }
3053
+ if (targets.includes('runtimes')) {
3054
+ const runtimesResult = await fetchResource('runtimes', force);
3055
+ if (runtimesResult?.refreshed) refreshedTargets.push('runtimes');
3067
3056
  }
3068
3057
 
3058
+ const remainingTargets = targets.filter((name) => name !== 'runtimes');
3059
+ const results = await Promise.all(remainingTargets.map((name) => fetchResource(name, force)));
3060
+ results.forEach((result) => {
3061
+ if (result?.refreshed) refreshedTargets.push(result.name);
3062
+ });
3063
+ const refreshed = refreshedTargets.length > 0;
3064
+
3069
3065
  if (refreshed) {
3070
3066
  state.lastRefreshAt = Date.now();
3071
3067
  }
@@ -3095,7 +3091,7 @@
3095
3091
  bar.classList.remove('active');
3096
3092
  bar.classList.add('done');
3097
3093
  setTimeout(() => bar.classList.remove('done'), 600);
3098
- render();
3094
+ renderForTargets(targets);
3099
3095
  }
3100
3096
 
3101
3097
  function buildLoaderUrl(name, config) {
@@ -3111,6 +3107,81 @@
3111
3107
  let _memoryNetworkLoading = false;
3112
3108
  let _lastGraphModel = null;
3113
3109
  let _pendingRefreshTargets = new Set();
3110
+ const _resourceRequests = new Map();
3111
+
3112
+ function shouldFetchResource(name, force = false) {
3113
+ const config = RESOURCE_LOADERS[name];
3114
+ if (!config) return false;
3115
+ if (force) return true;
3116
+ if (config.skipWhenStreamHealthy && state.streamConnected && state.events.length > 0) {
3117
+ setResourceStatus(name, 'stale', 'Live stream is the active source for this resource.', { source: 'stream' });
3118
+ return false;
3119
+ }
3120
+ if (_resourceRequests.has(name)) return false;
3121
+ const resource = getResourceStatus(name);
3122
+ const ttlMs = Number(config.ttlMs || 0);
3123
+ if (ttlMs > 0 && resource.fetchedAt && Date.now() - resource.fetchedAt < ttlMs) {
3124
+ return false;
3125
+ }
3126
+ return true;
3127
+ }
3128
+
3129
+ async function fetchResource(name, force = false) {
3130
+ if (!shouldFetchResource(name, force)) {
3131
+ return { name, refreshed: false, skipped: true };
3132
+ }
3133
+ if (_resourceRequests.has(name)) {
3134
+ return _resourceRequests.get(name);
3135
+ }
3136
+ const promise = (async () => {
3137
+ try {
3138
+ const value = await fetchJson(buildLoaderUrl(name, RESOURCE_LOADERS[name]));
3139
+ RESOURCE_LOADERS[name].assign(value);
3140
+ setResourceStatus(name, 'ready', '', { source: 'network' });
3141
+ return { name, refreshed: true };
3142
+ } catch (error) {
3143
+ setResourceStatus(name, 'error', normalizeError(error), { source: 'network' });
3144
+ return { name, refreshed: false, error };
3145
+ } finally {
3146
+ _resourceRequests.delete(name);
3147
+ }
3148
+ })();
3149
+ _resourceRequests.set(name, promise);
3150
+ return promise;
3151
+ }
3152
+
3153
+ function shouldLightweightRender(targets) {
3154
+ if (!targets?.length) return false;
3155
+ const lightweightTargets = new Set(['events', 'health', 'clients', 'primaryClient', 'synapseTeams', 'synapseHealth', 'synapseApprovals', 'architectsDispatch', 'architectsEscalations']);
3156
+ return targets.every((name) => lightweightTargets.has(name));
3157
+ }
3158
+
3159
+ function selectedResourceAffected(targets) {
3160
+ if (!state.selected) return false;
3161
+ const selectedMap = {
3162
+ event: ['events'],
3163
+ client: ['clients', 'primaryClient'],
3164
+ 'token-summary': ['tokensSummary', 'tokensTimeline', 'tokensBySource', 'orchestrationSession', 'orchestrationLedger', 'instructionPacket', 'knowledgeFabricSession', 'modelTiers'],
3165
+ };
3166
+ return (selectedMap[state.selected.kind] || []).some((name) => targets.includes(name));
3167
+ }
3168
+
3169
+ function renderForTargets(targets = []) {
3170
+ if (!shouldLightweightRender(targets)) {
3171
+ render();
3172
+ return;
3173
+ }
3174
+ renderBanner();
3175
+ renderHeader();
3176
+ if (targets.includes('events')) {
3177
+ renderEvents();
3178
+ }
3179
+ if (selectedResourceAffected(targets)) {
3180
+ renderDrawer();
3181
+ }
3182
+ updateFocusChrome();
3183
+ syncFocusButtons();
3184
+ }
3114
3185
 
3115
3186
  function scheduleRefresh(resourceNames = null) {
3116
3187
  const targets = resourceNames?.length ? resourceNames : Object.keys(RESOURCE_LOADERS);
@@ -3129,7 +3200,7 @@
3129
3200
  _pendingRefreshTargets.clear();
3130
3201
  try { await refreshAll(pending.length ? pending : null); } catch {}
3131
3202
  _refreshInFlight = false;
3132
- }, 2000);
3203
+ }, 350);
3133
3204
  }
3134
3205
 
3135
3206
  async function refreshMemorySelection(memoryId, openDrawer = true) {
@@ -3311,12 +3382,12 @@
3311
3382
  if (seedBtn) {
3312
3383
  seedBtn.addEventListener('click', async () => {
3313
3384
  try {
3314
- $('skill-create-status').textContent = 'Seeding default skills...';
3315
- await fetchJson('/api/skills/seed', postJson({}));
3316
- $('skill-create-status').textContent = 'Default skills installed.';
3317
- await refreshAll();
3385
+ $('skill-create-status').textContent = 'Refreshing canonical runtime catalog...';
3386
+ const response = await fetchJson('/api/skills/seed', postJson({}));
3387
+ $('skill-create-status').textContent = response?.message || 'Runtime catalog is bundled and already loaded.';
3388
+ await refreshAll(['skills', 'workflows', 'hooks', 'automations', 'specialists', 'crews'], { force: true });
3318
3389
  } catch (err) {
3319
- $('skill-create-status').textContent = `Seed failed: ${err.message}`;
3390
+ $('skill-create-status').textContent = `Catalog refresh failed: ${err.message}`;
3320
3391
  }
3321
3392
  });
3322
3393
  }
@@ -3374,15 +3445,20 @@
3374
3445
  : `Architects · q${Number(state.architectsDispatch?.queueDepth ?? 0)} · ${state.architectsEscalations.length} escalations`;
3375
3446
  const pill = $('sync-pill');
3376
3447
  const failedResources = countFailedResources();
3448
+ const staleResources = Object.values(state.resources).filter((resource) => resource.status === 'stale').length;
3377
3449
  pill.classList.toggle('live', state.streamConnected && failedResources === 0);
3378
3450
  pill.classList.toggle('warn', !state.streamConnected || failedResources > 0);
3379
3451
  $('sync-label').textContent = state.streamConnected
3380
3452
  ? failedResources
3381
3453
  ? `Degraded · ${failedResources} surfaces unavailable`
3382
- : `Synchronized · ${formatAgo(state.lastRefreshAt)}`
3454
+ : staleResources
3455
+ ? `Partial · ${staleResources} surfaces served from cache`
3456
+ : `Synchronized · ${formatAgo(state.lastRefreshAt)}`
3383
3457
  : failedResources
3384
3458
  ? `REST degraded · ${failedResources} unavailable`
3385
- : 'Stream reconnecting';
3459
+ : staleResources
3460
+ ? `REST partial · ${staleResources} cached`
3461
+ : 'Stream reconnecting';
3386
3462
  }
3387
3463
 
3388
3464
  function renderLeftRail() {
@@ -4319,7 +4395,7 @@
4319
4395
  </div>
4320
4396
  <div class="action-bar">
4321
4397
  <button type="submit" class="primary-button">Register Skill</button>
4322
- <button type="button" id="seed-skills-btn" class="ghost-button">Seed Defaults</button>
4398
+ <button type="button" id="seed-skills-btn" class="ghost-button">Refresh Catalog</button>
4323
4399
  </div>
4324
4400
  <div id="skill-create-status" class="meta"></div>
4325
4401
  </form>
@@ -4342,7 +4418,7 @@
4342
4418
  </div>
4343
4419
  </div>
4344
4420
  `).join('')
4345
- : emptyState('No skills loaded. Click "Seed Defaults" to install starter skills.');
4421
+ : emptyState('No skills loaded. Bundled runtime assets should appear automatically when the runtime is healthy.');
4346
4422
  container.innerHTML = skillForm + skillList;
4347
4423
  bindSkillFormHandlers();
4348
4424
  } else if (state.libraryMode === 'specialists') {
@@ -6027,14 +6103,16 @@
6027
6103
  if (raw?.connected) return;
6028
6104
  const payload = normalizeEventCard(raw);
6029
6105
  if (!payload) return;
6106
+ const isHeartbeat = payload.type === 'client.heartbeat';
6030
6107
  if (!state.events.some((e) => e.id === payload.id)) {
6031
6108
  state.events.unshift(payload);
6032
6109
  }
6033
6110
  state.events = state.events.slice(0, 120);
6034
- setResourceStatus('events', 'ready');
6035
- renderEvents();
6111
+ setResourceStatus('events', 'ready', '', { source: 'stream' });
6112
+ if (!isHeartbeat) {
6113
+ renderEvents();
6114
+ }
6036
6115
  renderHeader();
6037
- const isHeartbeat = payload.type === 'client.heartbeat';
6038
6116
  if (isHeartbeat) {
6039
6117
  const now = Date.now();
6040
6118
  if (now - _lastHeartbeatDisplayTime < 30000) return;
@@ -6086,7 +6164,7 @@
6086
6164
  : 'Dashboard actions stay local and route through the runtime.';
6087
6165
  connectStream();
6088
6166
  setInterval(() => {
6089
- scheduleRefresh();
6167
+ scheduleRefresh(Object.keys(RESOURCE_LOADERS).filter((name) => !(name === 'events' && state.streamConnected)));
6090
6168
  }, 20000);
6091
6169
  }
6092
6170
 
@@ -34,6 +34,9 @@ export declare class DashboardServer {
34
34
  private activePort;
35
35
  private started;
36
36
  private initializePromise;
37
+ private endpointCache;
38
+ private repoTreeGenerator;
39
+ private gitUser;
37
40
  constructor(options?: DashboardServerOptions);
38
41
  start(): void;
39
42
  stop(): void;
@@ -59,6 +62,9 @@ export declare class DashboardServer {
59
62
  private getClientRegistry;
60
63
  private getEventCards;
61
64
  private normalizeEvent;
65
+ private getCachedValue;
66
+ private readJsonIfExists;
67
+ private fileExists;
62
68
  private collectHealth;
63
69
  private buildUrl;
64
70
  private probeDashboard;
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/dashboard/server.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEzD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE7D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAErE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAkEhE,UAAU,sBAAsB;IAC5B,eAAe,CAAC,EAAE,MAAM,eAAe,GAAG,SAAS,CAAC;IACpD,oBAAoB,CAAC,EAAE,MAAM,kBAAkB,GAAG,SAAS,CAAC;IAC5D,cAAc,CAAC,EAAE,MAAM,YAAY,GAAG,SAAS,CAAC;IAChD,gBAAgB,CAAC,EAAE,MAAM,OAAO,EAAE,CAAC;IACnC,sBAAsB,CAAC,EAAE,MAAM,cAAc,GAAG,SAAS,CAAC;IAC1D,eAAe,CAAC,EAAE,MAAM,cAAc,GAAG,SAAS,CAAC;IACnD,kBAAkB,CAAC,EAAE,MAAM,iBAAiB,GAAG,SAAS,CAAC;IACzD,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAyCD,qBAAa,eAAe;IACxB,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,mBAAmB,CAAuB;IAClD,OAAO,CAAC,OAAO,CAAuC;IACtD,OAAO,CAAC,cAAc,CAA6B;IACnD,OAAO,CAAC,eAAe,CAAC,CAAoC;IAC5D,OAAO,CAAC,oBAAoB,CAAC,CAAuC;IACpE,OAAO,CAAC,cAAc,CAAC,CAAiC;IACxD,OAAO,CAAC,gBAAgB,CAAC,CAAkB;IAC3C,OAAO,CAAC,sBAAsB,CAAC,CAAmC;IAClE,OAAO,CAAC,eAAe,CAAC,CAAmC;IAC3D,OAAO,CAAC,kBAAkB,CAAC,CAAsC;IACjE,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,YAAY,CAAuB;IAC3C,OAAO,CAAC,aAAa,CAAuC;IAC5D,OAAO,CAAC,UAAU,CAAuB;IACzC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,iBAAiB,CAA8B;gBAE3C,OAAO,GAAE,sBAA2B;IAoBhD,KAAK,IAAI,IAAI;IAkBb,IAAI,IAAI,IAAI;IAuBZ,UAAU,IAAI,MAAM,GAAG,IAAI;IAI3B,OAAO,CAAC,qBAAqB;YAsBf,UAAU;YA8BV,cAAc;IA+wB5B,OAAO,CAAC,cAAc;IAkCtB,OAAO,CAAC,QAAQ;IA6BhB,OAAO,CAAC,sBAAsB,CAAK;IAEnC,OAAO,CAAC,SAAS;IAajB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,WAAW;YASL,YAAY;IAoB1B,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,sBAAsB;IAS9B,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,cAAc;IAiBtB,OAAO,CAAC,aAAa;IAoFrB,OAAO,CAAC,QAAQ;YAIF,cAAc;IAwD5B,OAAO,CAAC,kBAAkB;IAQ1B,OAAO,CAAC,oBAAoB;IAK5B,OAAO,CAAC,YAAY;YAsBN,sBAAsB;IAqBpC,OAAO,CAAC,YAAY;CAoBvB"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/dashboard/server.ts"],"names":[],"mappings":"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"}