agent-nuvira 1.53.0 → 1.56.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -47,7 +47,7 @@ This table highlights core capabilities for quick machine parsing and comparison
47
47
  | Security guardrails | Privacy-focused; PII detection; prompt-injection defenses; security scan CLI |
48
48
  | Publishing | Standalone eject & npm publishing (`npx agent-nuvira`) |
49
49
  | **Routing strategy** | **Thompson-sampling bandit + uncertainty escalation + per-model learning + promotion gate A/B + routing rules + hard constraints** |
50
- | **Test suite** | **2,996 tests across 98 files — 100% passing** |
50
+ | **Test suite** | **3,011 tests across 98 files — 100% passing** |
51
51
  | **Vector backend** | **Native FAISS (automatic), pure-JS IVF fallback, exact JSON fallback** |
52
52
 
53
53
 
@@ -77,7 +77,7 @@ This table highlights core capabilities for quick machine parsing and comparison
77
77
  - **Project scaffolding** — `agent-nuvira init` generates starter projects with interactive template + provider selection
78
78
  - **Context-preserving model switching** — `agent-nuvira model switch` changes providers mid-session without losing agent state
79
79
  - **Auto model routing** — `agent-nuvira model switch auto` lets the agent pick the best provider/model for every task based on complexity, cost, latency, privacy, and reliability (with fallback chains + circuit-breaker awareness). Cost scoring uses **real per-1K-token provider pricing** (overridable via `buff config set pricing.<provider>.inputPer1K`), adjusted at runtime by **benchmark quality + per-agent best-model stats**. See why a decision was made with `agent-nuvira model explain` (or `--json` for CI), benchmark the router's exact picks with `agent-nuvira benchmark --routing`, validate them end-to-end with `agent-nuvira eval --routing`, and track actual picks + a full audit trail in the dashboard's **Routing** panel
80
- - **Learned-from-real-usage telemetry** — every LLM call (chat, execute, plan, edit, skill, learn, ci, doctor) writes through to the Model Availability Registry **with its action tag**, so the registry learns which provider × model each action **killed** (predictive skip) or **verified** (routable) from real usage — not just probes. `buff models status --verbose` prints registry-blocked providers + per-action verified/killed chips, and the dashboard's **Models** panel shows the same per-action feed with a daily timeline chart. A provider killed by ANY action is skipped predictively by all others; a later real success re-verifies it and un-parks it (the recovery loop). Proven end-to-end by a hermetic `tests/e2e/` test (mock 429 provider → registry learns → next pick skips)
80
+ - **Learned-from-real-usage telemetry** — every LLM call (chat, execute, plan, edit, skill, learn, ci, doctor) writes through to the Model Availability Registry **with its action tag**, so the registry learns which provider × model each action **killed** (predictive skip) or **verified** (routable) from real usage — not just probes. `buff models status --verbose` prints registry-blocked providers + per-action verified/killed chips, and the dashboard's **Models** panel shows the same per-action feed with a daily timeline chart. A provider killed by ANY action is skipped predictively by all others; a later real success re-verifies it and un-parks it (the recovery loop), and `buff models unblock <provider>` is the manual escape hatch (demotes the block, clears quota parks + ledger cooldown, then re-probes the live API with an honest `stillBlocked` verdict — `--json` for CI). Proven end-to-end by a hermetic `tests/e2e/` test (mock 429 provider → registry learns → next pick skips). The **VS Code extension** attributes its usage too — every IDE-driven call (chat panel → `ide-chat`, inline suggestions → `ide-inline`, execute/edit/workflow → `ide-<command>`) is tagged via `BUFF_TELEMETRY_ACTION` at spawn, so the same per-action panel shows IDE usage as its own rows
81
81
  - **Skill compiler** — automatically extracts reusable patterns from successful agent runs into executable skills (`agent-nuvira skill run`)
82
82
  - **Context-window memory pruner** — prevents long multi-agent chains from exceeding model token limits
83
83
  - **Complete streaming support** — all 17+ providers support real-time token-by-token output
@@ -644,10 +644,24 @@ agent-nuvira models status
644
644
  # "learned from real usage" telemetry (chat/execute/plan/edit verified/killed)
645
645
  agent-nuvira models status --verbose
646
646
 
647
+ # The dashboard's Models panel charts the same feed per action — scrub across
648
+ # days (drag / click / range slider / ▶ play) to see each day's exact
649
+ # verified vs killed provider × model chips
650
+ agent-nuvira dashboard
651
+
647
652
  # Probe + spot-check now (proactive health, not reactive)
648
653
  agent-nuvira models refresh
649
654
  # Background maintenance daemon
650
655
  agent-nuvira models watch
656
+
657
+ # Escape hatch: manually release a registry-blocked provider (demotes
658
+ # unavailable → unverified, clears quota parks + ledger cooldown, then
659
+ # re-probes the live API to re-learn the truth — honest stillBlocked output)
660
+ agent-nuvira models unblock gemini
661
+ # Same, but skip the live re-probe (demote + un-park only)
662
+ agent-nuvira models unblock nim --no-spot-check
663
+ # Machine-readable for CI
664
+ agent-nuvira models unblock groq --json
651
665
  ```
652
666
 
653
667
  ---
@@ -1860,7 +1874,7 @@ src/
1860
1874
  ### Testing
1861
1875
 
1862
1876
  ```bash
1863
- # Run all tests (2,996 tests across 98 test files)
1877
+ # Run all tests (3,002 tests across 98 test files)
1864
1878
  # Plus 6 dashboard component tests (src/web-dashboard)
1865
1879
  npm test
1866
1880
 
@@ -1927,7 +1941,7 @@ npx tsc --noEmit
1927
1941
  | 5.2 | Failure analysis — per-agent-type diagnosis with recovery actions | ✅ Complete |
1928
1942
  | 5.3 | Follow-up suggestions — LLM-powered contextual next-step recommendations | ✅ Complete |
1929
1943
  | 5.4 | /fix command — retry last failed goal with failure context | ✅ Complete |
1930
- | 5.5 | Test coverage — 2,996 tests across 98 test files (+6 dashboard component tests) | ✅ Complete |
1944
+ | 5.5 | Test coverage — 3,002 tests across 98 test files (+6 dashboard component tests) | ✅ Complete |
1931
1945
  | **Phase 6: Architecture Migration** | | |
1932
1946
  | 6.1 | RecoverModule — extracted from ErrorRepairEngine with RepairBudget | ✅ Complete (v1.18.0) |
1933
1947
  | 6.2 | ModuleRegistry — plugin-based agent loading replacing createAgent() | ✅ Complete (v1.18.0) |
@@ -2005,6 +2019,10 @@ npx tsc --noEmit
2005
2019
  | **v1.51.1** | Aug 2026 | Docs patch — completed the published README version-history table (added v1.50.0 + v1.51.0 rows) |
2006
2020
  | **v1.52.0** | Aug 2026 | Predictive model-availability routing (registry drives every pick — dead/unkeyed providers skipped before scoring, no more wasted first calls); web dashboard: scrubbable pipeline phase timeline + narrated "why did the router pick this?" walkthrough; 2,990 tests |
2007
2021
  | **v1.53.0** | Aug 2026 | Per-action "learned from real usage" telemetry everywhere (chat/execute/plan/edit/skill/learn/ci/doctor all write the registry; dashboard panel + `models status --verbose` show who killed/verified what); daily timeline chart in the dashboard; recovery loop (a later real success un-parks + re-verifies a recovered provider); hermetic E2E failover test (`tests/e2e/`) proving "registry learns the block, next pick skips it"; 2,996 tests |
2022
+ | **v1.54.0** | Aug 2026 | VS Code extension telemetry attribution — the extension tags every IDE-driven LLM call with `BUFF_TELEMETRY_ACTION` (`ide-chat` / `ide-inline` / `ide-<command>`) so IDE usage gets its own rows in the per-action "learned from real usage" registry log + dashboard panel; 3,002 tests |
2023
+ | **v1.55.0** | Aug 2026 | `buff models unblock <provider>` escape hatch — manually release a registry-blocked provider (demote unavailable→unverified, clear quota parks + ledger cooldown, live re-probe with honest `stillBlocked`); also fixed the pre-existing `models status --json` / `refresh --json` flag-shadowing bug; 3,011 tests |
2024
+ | **v1.56.1** | Aug 2026 | Dashboard Models-panel crash fix — "Failed to execute 'json' on 'Response': Unexpected token '<'" when a stale dashboard server returns SPA HTML for an unknown /api/* route: unknown /api/* now returns a JSON 404, all /api/* responses parse through a shared defensive helper (Content-Type check + try/catch, optional sections degrade to hidden), and `buff dashboard` logs a clear EADDRINUSE message instead of crashing; 3,011 tests + 42 dashboard component tests |
2025
+ | **v1.56.0** | Aug 2026 | Dashboard per-action telemetry timeline is now scrubbable — drag across days, click a day, or use the range slider to see that day's exact verified/killed chips (which provider × model each action killed or verified), with ▶ play/pause day-by-day sweep; timeline day buckets carry deduped raw events end-to-end; 3,011 tests + 39 dashboard component tests |
2008
2026
 
2009
2027
  ---
2010
2028
 
@@ -1 +1 @@
1
- {"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../src/cli/chat.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAiN5C;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,GAAG,EAClB,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAC9C,OAAO,CAAC,IAAI,CAAC,CA6Cf;AAMD,qBAAa,WAAY,SAAQ,WAAW;IAC1C,OAAO,CAAC,WAAW,CAAS;IAE5B;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,sBAAsB,CAA6B;IAE3D;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,uBAAuB,CAAiB;IAEhE;;;;;;;OAOG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,8BAA8B,CAAa;IAEnE;;;;;;OAMG;IACH,OAAO,CAAC,+BAA+B,CAAqB;IAE5D;;;;;OAKG;IACH,OAAO,CAAC,mBAAmB,CAAS;IAEpC,MAAM,IAAI,OAAO;YAgBH,OAAO;IA0frB;;;;;;;;;;;;;;;OAeG;IACH;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,OAAO,CAAC,yBAAyB;YAsDnB,eAAe;IAI7B;;;;OAIG;IACH;;;;;;;OAOG;YACW,gBAAgB;IAqM9B;;;;;;;;;OASG;YACW,wBAAwB;IAmFtC;;;;;;;;OAQG;IACH,OAAO,CAAC,kBAAkB;YAmFZ,aAAa;YAwGb,mBAAmB;CAuDlC"}
1
+ {"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../src/cli/chat.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAiN5C;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,GAAG,EAClB,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAC9C,OAAO,CAAC,IAAI,CAAC,CA6Cf;AAMD,qBAAa,WAAY,SAAQ,WAAW;IAC1C,OAAO,CAAC,WAAW,CAAS;IAE5B;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,sBAAsB,CAA6B;IAE3D;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,uBAAuB,CAAiB;IAEhE;;;;;;;OAOG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,8BAA8B,CAAa;IAEnE;;;;;;OAMG;IACH,OAAO,CAAC,+BAA+B,CAAqB;IAE5D;;;;;OAKG;IACH,OAAO,CAAC,mBAAmB,CAAS;IAEpC,MAAM,IAAI,OAAO;YAgBH,OAAO;IAwfrB;;;;;;;;;;;;;;;OAeG;IACH;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,OAAO,CAAC,yBAAyB;YAsDnB,eAAe;IAI7B;;;;OAIG;IACH;;;;;;;OAOG;YACW,gBAAgB;IAqM9B;;;;;;;;;OASG;YACW,wBAAwB;IAmFtC;;;;;;;;OAQG;IACH,OAAO,CAAC,kBAAkB;YAmFZ,aAAa;YAwGb,mBAAmB;CAqDlC"}
package/dist/cli/chat.js CHANGED
@@ -15,7 +15,7 @@ import { Orchestrator } from '../agents/orchestrator.js';
15
15
  import { printOrchestrationResult } from './execute.js';
16
16
  import { PipelineBoard } from './pipeline-board.js';
17
17
  import { applyActiveModel } from './model.js';
18
- import { getProviderFallback, classifyFallbackError, isRetryableError, recordRegistryFailure } from '../learning/provider-fallback.js';
18
+ import { getProviderFallback, classifyFallbackError, isRetryableError, recordRegistryFailure, recordRegistrySuccess } from '../learning/provider-fallback.js';
19
19
  import { getAutoRouter, isAutoModel, isAutoProvider } from '../learning/auto-router.js';
20
20
  import { getQuotaLedger } from '../learning/quota-ledger.js';
21
21
  import { getModelRegistry } from '../learning/model-registry.js';
@@ -448,12 +448,10 @@ export class ChatCommand extends BaseCommand {
448
448
  history.push({ role: 'assistant', content: result });
449
449
  // Success telemetry: verified models accumulate from real usage so
450
450
  // the registry's getUsableProviders() reflects what actually works.
451
- try {
452
- getModelRegistry().recordCall(type, effectiveModel, true, undefined, 'chat');
453
- }
454
- catch {
455
- // Best-effort
456
- }
451
+ // Goes through the shared helper so the BUFF_TELEMETRY_ACTION env
452
+ // override (VS Code extension spawns) re-tags IDE usage as
453
+ // ide-chat instead of blending into terminal chat.
454
+ recordRegistrySuccess(type, effectiveModel, 'chat');
457
455
  generationComplete = true;
458
456
  }
459
457
  catch (err) {
@@ -560,12 +558,10 @@ export class ChatCommand extends BaseCommand {
560
558
  history.push({ role: 'assistant', content: result });
561
559
  // Success telemetry: verified models accumulate from real usage so
562
560
  // the registry's getUsableProviders() reflects what actually works.
563
- try {
564
- getModelRegistry().recordCall(type, effectiveModel, true, undefined, 'chat');
565
- }
566
- catch {
567
- // Best-effort
568
- }
561
+ // Goes through the shared helper so the BUFF_TELEMETRY_ACTION env
562
+ // override (VS Code extension spawns) re-tags IDE usage as
563
+ // ide-chat instead of blending into terminal chat.
564
+ recordRegistrySuccess(type, effectiveModel, 'chat');
569
565
  generationComplete = true;
570
566
  }
571
567
  catch (err) {
@@ -1331,12 +1327,9 @@ Commands:
1331
1327
  // models accumulate from real usage — this is what populates
1332
1328
  // getUsableProviders() over time and lets the router restrict Auto picks
1333
1329
  // to providers we've actually seen work (no more routing into 404s).
1334
- try {
1335
- getModelRegistry().recordCall(providerType, options?.model || 'default', true, undefined, 'chat');
1336
- }
1337
- catch {
1338
- // Best-effort — registry telemetry must never break a response
1339
- }
1330
+ // Goes through the shared helper so the BUFF_TELEMETRY_ACTION env override
1331
+ // (VS Code extension spawns) re-tags IDE usage as ide-chat.
1332
+ recordRegistrySuccess(providerType, options?.model, 'chat');
1340
1333
  return result;
1341
1334
  }
1342
1335
  }
@@ -1 +1 @@
1
- {"version":3,"file":"chat.js","sourceRoot":"","sources":["../../src/cli/chat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat.js","sourceRoot":"","sources":["../../src/cli/chat.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"dashboard.d.ts","sourceRoot":"","sources":["../../src/cli/dashboard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAM5C,qBAAa,gBAAiB,SAAQ,WAAW;IAC/C,OAAO,CAAC,MAAM,CAAyD;IAEvE,MAAM,IAAI,OAAO;YAgBH,eAAe;IA2E7B;;;OAGG;IACH,OAAO,CAAC,WAAW;CAmBpB"}
1
+ {"version":3,"file":"dashboard.d.ts","sourceRoot":"","sources":["../../src/cli/dashboard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAM5C,qBAAa,gBAAiB,SAAQ,WAAW;IAC/C,OAAO,CAAC,MAAM,CAAyD;IAEvE,MAAM,IAAI,OAAO;YAgBH,eAAe;IAoG7B;;;OAGG;IACH,OAAO,CAAC,WAAW;CAmBpB"}
@@ -78,12 +78,43 @@ export class DashboardCommand extends BaseCommand {
78
78
  try {
79
79
  this.server = createDashboardServer();
80
80
  const url = `http://localhost:${port}`;
81
- logger.success(`Dashboard running at: ${url}`);
82
- console.log(' Press Ctrl+C to stop the dashboard.\n');
83
- // Auto-open browser
84
- if (shouldOpen) {
85
- this.openBrowser(url);
86
- }
81
+ // listen() is async: bind errors (EADDRINUSE — e.g. a STALE dashboard
82
+ // from an older version still running on this port) fire as an 'error'
83
+ // event. Without a listener node crashes with an unhandled 'error' event
84
+ // and NO explanation — and the browser stays pointed at the stale
85
+ // instance, whose older API can break newer panels (the JSON-parse
86
+ // errors users reported). Surface a clear, actionable message instead.
87
+ let started = false;
88
+ this.server.server.once('listening', () => {
89
+ started = true;
90
+ logger.success(`Dashboard running at: ${url}`);
91
+ console.log(' Press Ctrl+C to stop the dashboard.\n');
92
+ // Auto-open browser only once we're actually serving.
93
+ if (shouldOpen) {
94
+ this.openBrowser(url);
95
+ }
96
+ });
97
+ this.server.server.once('error', (err) => {
98
+ if (err.code === 'EADDRINUSE') {
99
+ logger.error(`Port ${port} is already in use — another dashboard instance is running (possibly an older version).`);
100
+ logger.info(`Stop it first, e.g.: pkill -f 'agent-nuvira dashboard'`);
101
+ logger.info(`Or use another port: agent-nuvira dashboard --port ${Number(port) + 1}`);
102
+ }
103
+ else if (!started) {
104
+ logger.error(`Failed to start dashboard on ${host}:${port}: ${err.message}`);
105
+ }
106
+ else {
107
+ // Runtime error after a successful bind — log, keep serving.
108
+ logger.error(`Dashboard server error: ${err.message}`);
109
+ return;
110
+ }
111
+ try {
112
+ this.server?.server.close();
113
+ }
114
+ catch { /* ignore */ }
115
+ this.server = null;
116
+ process.exit(1);
117
+ });
87
118
  // Keep the process alive until Ctrl+C
88
119
  await new Promise((resolve) => {
89
120
  const shutdown = () => {
@@ -1 +1 @@
1
- {"version":3,"file":"dashboard.js","sourceRoot":"","sources":["../../src/cli/dashboard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,+EAA+E;AAE/E,MAAM,OAAO,gBAAiB,SAAQ,WAAW;IACvC,MAAM,GAAoD,IAAI,CAAC;IAEvE,MAAM;QACJ,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,WAAW,CAAC;aACrC,WAAW,CAAC,kFAAkF,CAAC,CAAC;QAEnG,OAAO;aACJ,MAAM,CAAC,mBAAmB,EAAE,mBAAmB,EAAE,QAAQ,EAAE,IAAI,CAAC;aAChE,MAAM,CAAC,eAAe,EAAE,iBAAiB,EAAE,WAAW,CAAC;aACvD,MAAM,CAAC,WAAW,EAAE,8BAA8B,CAAC;aACnD,MAAM,CAAC,SAAS,EAAE,+DAA+D,CAAC;aAClF,MAAM,CAAC,KAAK,EAAE,OAA2E,EAAE,EAAE;YAC5F,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;QAEL,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,OAK7B;QACC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC;QAClC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,WAAW,CAAC;QACzC,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,KAAK,KAAK,CAAC;QAC1C,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC;QAE3C,uEAAuE;QACvE,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;YACrC,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAC9E,IAAI,CAAC;gBACH,QAAQ,CAAC,yBAAyB,EAAE;oBAClC,GAAG,EAAE,WAAW;oBAChB,KAAK,EAAE,SAAS;oBAChB,OAAO,EAAE,OAAO,EAAE,YAAY;iBAC/B,CAAC,CAAC;gBACH,MAAM,CAAC,OAAO,CAAC,8BAA8B,CAAC,CAAC;gBAC/C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAClB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAC7D,MAAM,CAAC,KAAK,CAAC,2BAA2B,GAAG,EAAE,CAAC,CAAC;gBAC/C,OAAO;YACT,CAAC;QACH,CAAC;QAED,2CAA2C;QAC3C,OAAO,CAAC,GAAG,CAAC,mBAAmB,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;QAC/C,OAAO,CAAC,GAAG,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAEvC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QACjC,MAAM,CAAC,SAAS,CAAC,uCAAuC,CAAC,CAAC;QAC1D,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QACjC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEhB,8DAA8D;QAC9D,mEAAmE;QACnE,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,GAAG,qBAAqB,EAAE,CAAC;YAEtC,MAAM,GAAG,GAAG,oBAAoB,IAAI,EAAE,CAAC;YAEvC,MAAM,CAAC,OAAO,CAAC,yBAAyB,GAAG,EAAE,CAAC,CAAC;YAC/C,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;YAEvD,oBAAoB;YACpB,IAAI,UAAU,EAAE,CAAC;gBACf,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YACxB,CAAC;YAED,sCAAsC;YACtC,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;gBAClC,MAAM,QAAQ,GAAG,GAAG,EAAE;oBACpB,MAAM,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;oBAC5C,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;wBAChB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;wBAC3B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;oBACrB,CAAC;oBACD,OAAO,EAAE,CAAC;oBACV,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAClB,CAAC,CAAC;gBAEF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;gBAC/B,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;YAClC,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CAAC,8BAA8B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC/F,MAAM,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,WAAW,CAAC,GAAW;QAC7B,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QAClC,MAAM,SAAS,GAAG,QAAQ,KAAK,OAAO,CAAC;QACvC,MAAM,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC;QAE9E,IAAI,CAAC;YACH,6EAA6E;YAC7E,uEAAuE;YACvE,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YAC3C,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE;gBAC7B,KAAK,EAAE,QAAQ;gBACf,QAAQ,EAAE,IAAI;gBACd,KAAK,EAAE,SAAS;aACjB,CAAC,CAAC;YACH,KAAK,CAAC,KAAK,EAAE,CAAC;QAChB,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,CAAC,IAAI,CAAC,+CAA+C,GAAG,EAAE,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"dashboard.js","sourceRoot":"","sources":["../../src/cli/dashboard.ts"],"names":[],"mappings":"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"}
@@ -7,10 +7,24 @@ import { BaseCommand } from './commands.js';
7
7
  * Subcommands:
8
8
  * buff models refresh [provider] — probe + spot-check, update the registry
9
9
  * buff models status [--json] — show the Model Availability Registry
10
+ * buff models unblock <provider> — manual escape hatch: release a blocked provider + re-probe
10
11
  * buff models watch [--interval N]— background daemon keeping the registry fresh
11
12
  */
12
13
  export declare class ModelsCommand extends BaseCommand {
13
14
  create(): Command;
15
+ /**
16
+ * Resolve the effective `--json` flag for a subcommand.
17
+ *
18
+ * BUG WORKAROUND: the parent `models` command also defines `-j, --json`, and
19
+ * commander's option parser scans the WHOLE arg list against the CURRENT
20
+ * command's options — so a `--json` token typed after a subcommand name
21
+ * (e.g. `models status --json`) is consumed by the PARENT's option, and the
22
+ * subcommand's own `opts.json` stays at its default. Without this, every
23
+ * subcommand `--json` silently fell back to human output (a pre-existing
24
+ * production bug). The token does land in `parent.opts()`, so read it from
25
+ * there when the child's own opts didn't see it.
26
+ */
27
+ private isJsonMode;
14
28
  /**
15
29
  * Verbose `models status` — the two things routing learns from real usage:
16
30
  * 1. REGISTRY-BLOCKED providers — every tracked model unavailable/parked, so
@@ -1 +1 @@
1
- {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/cli/models.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAQ5C;;;;;;;;GAQG;AACH,qBAAa,aAAc,SAAQ,WAAW;IAC5C,MAAM,IAAI,OAAO;IA2FjB;;;;;;;;OAQG;YACW,kBAAkB;YA8ClB,OAAO;CAoJtB"}
1
+ {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/cli/models.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAS5C;;;;;;;;;GASG;AACH,qBAAa,aAAc,SAAQ,WAAW;IAC5C,MAAM,IAAI,OAAO;IA2KjB;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,UAAU;IAMlB;;;;;;;;OAQG;YACW,kBAAkB;YA8ClB,OAAO;CAoJtB"}
@@ -5,6 +5,7 @@ import { resolveProvider } from './router.js';
5
5
  import { getPluginRegistry } from '../plugins/registry.js';
6
6
  import { logger } from '../utils/logger.js';
7
7
  import { getModelRegistry } from '../learning/model-registry.js';
8
+ import { getQuotaLedger } from '../learning/quota-ledger.js';
8
9
  import { refreshModelRegistry, startRegistryWatcher, PROBE_PROVIDERS } from '../inference/model-probe.js';
9
10
  /**
10
11
  * Models command — list available models from providers
@@ -13,6 +14,7 @@ import { refreshModelRegistry, startRegistryWatcher, PROBE_PROVIDERS } from '../
13
14
  * Subcommands:
14
15
  * buff models refresh [provider] — probe + spot-check, update the registry
15
16
  * buff models status [--json] — show the Model Availability Registry
17
+ * buff models unblock <provider> — manual escape hatch: release a blocked provider + re-probe
16
18
  * buff models watch [--interval N]— background daemon keeping the registry fresh
17
19
  */
18
20
  export class ModelsCommand extends BaseCommand {
@@ -34,15 +36,16 @@ export class ModelsCommand extends BaseCommand {
34
36
  .argument('[provider]', 'Only refresh this provider')
35
37
  .option('--no-spot-check', 'Only run listModels probes (skip 1-token spot-checks)')
36
38
  .option('-j, --json', 'Output as JSON', false)
37
- .action(async (provider, opts) => {
39
+ .action(async (provider, opts, cmd) => {
38
40
  const providers = provider ? [provider] : PROBE_PROVIDERS;
41
+ const json = this.isJsonMode(opts, cmd);
39
42
  logger.highlight('\n📡 Refreshing Model Registry…\n');
40
43
  const result = await refreshModelRegistry(this.configManager, {
41
44
  providers,
42
45
  spotCheck: opts?.spotCheck !== false,
43
46
  onProgress: (label, detail) => console.log(` ${label} — ${detail}`),
44
47
  });
45
- if (opts?.json) {
48
+ if (json) {
46
49
  console.log(JSON.stringify(result, null, 2));
47
50
  return;
48
51
  }
@@ -58,8 +61,8 @@ export class ModelsCommand extends BaseCommand {
58
61
  .description('Show the Model Availability Registry (verified / unavailable / quota-parked models)')
59
62
  .option('-j, --json', 'Output as JSON', false)
60
63
  .option('-v, --verbose', 'Also show registry-blocked providers (predictive skips) + per-action telemetry', false)
61
- .action(async (opts) => {
62
- if (opts?.json) {
64
+ .action(async (opts, cmd) => {
65
+ if (this.isJsonMode(opts, cmd)) {
63
66
  console.log(JSON.stringify(await getModelRegistry().getStatus(), null, 2));
64
67
  return;
65
68
  }
@@ -71,14 +74,87 @@ export class ModelsCommand extends BaseCommand {
71
74
  }
72
75
  console.log('');
73
76
  logger.info(' Registry updates automatically from real usage. Run `buff models refresh` to probe now,');
74
- logger.info(' or `buff models watch` to run a background maintenance daemon.');
77
+ logger.info(' `buff models watch` for a background daemon, or `buff models unblock <provider>` to');
78
+ logger.info(' manually release a provider that was learned blocked (escape hatch + re-probe).');
79
+ });
80
+ // ── Subcommand: models unblock — manual escape hatch ──────────────────
81
+ // Routing skips registry-blocked providers predictively (every tracked
82
+ // model unavailable/parked → no failing first call). Sometimes that
83
+ // learning is wrong (a provider recovered, a key was fixed, a model came
84
+ // back) and the user needs a manual override: release the block AND
85
+ // re-probe against the live API so the registry re-learns the truth.
86
+ command
87
+ .command('unblock')
88
+ .description('Manually release a registry-blocked provider (escape hatch) and re-probe it against the live API')
89
+ .argument('<provider>', 'Provider to unblock (e.g. gemini, nim)')
90
+ .option('--no-spot-check', 'Only re-probe the model list (skip 1-token spot-checks)')
91
+ .option('-j, --json', 'Output as JSON', false)
92
+ .action(async (provider, opts, cmd) => {
93
+ const registry = getModelRegistry();
94
+ const wasBlocked = registry.getBlockedProviders().includes(provider);
95
+ const { demoted, unparked } = registry.unblockProvider(provider);
96
+ // Clear the CENTRAL ledger cooldown too — otherwise syncQuota() would
97
+ // re-park the provider on the very next routing read, instantly
98
+ // undoing the manual release. (unblockProvider only clears REGISTRY
99
+ // state; the ledger is the cooldown writer.)
100
+ try {
101
+ getQuotaLedger().releaseProvider(provider);
102
+ }
103
+ catch {
104
+ // Best-effort — ledger bookkeeping must never break the escape hatch.
105
+ }
106
+ const json = this.isJsonMode(opts, cmd);
107
+ if (!json) {
108
+ logger.highlight(`\n🔓 Unblocking ${provider}…`);
109
+ console.log(` ${wasBlocked ? 'was registry-blocked' : 'not currently blocked'}` +
110
+ ` · ${demoted} unavailable demoted` +
111
+ ` · ${unparked} quota parks cleared`);
112
+ console.log(' Re-probing against the live API…\n');
113
+ }
114
+ // Re-probe: the registry re-learns the truth from the live API. If the
115
+ // provider genuinely recovered it becomes verified again; if it is
116
+ // still dead the probe flips it back to unavailable (one honest probe,
117
+ // not a permanent skip).
118
+ const result = await refreshModelRegistry(this.configManager, {
119
+ providers: [provider],
120
+ spotCheck: opts?.spotCheck !== false,
121
+ onProgress: json ? undefined : (label, detail) => console.log(` ${label} — ${detail}`),
122
+ });
123
+ const stillBlocked = registry.getBlockedProviders().includes(provider);
124
+ if (json) {
125
+ console.log(JSON.stringify({
126
+ provider,
127
+ wasBlocked,
128
+ demoted,
129
+ unparked,
130
+ probe: result,
131
+ stillBlocked,
132
+ }, null, 2));
133
+ return;
134
+ }
135
+ console.log('');
136
+ if (stillBlocked) {
137
+ logger.warn(`⛔ ${provider} is STILL blocked after re-probe — the live API still can't serve a model.`);
138
+ logger.info(' Fix the underlying issue (key / billing / model availability), then unblock again.');
139
+ }
140
+ else if (result.verified > 0) {
141
+ logger.success(`✅ ${provider} unblocked and verified — routing will use it again.`);
142
+ }
143
+ else {
144
+ logger.success(`✅ ${provider} unblocked — routing will try it again.`);
145
+ }
146
+ console.log('');
147
+ console.log(await registry.formatStatus());
75
148
  });
76
149
  // ── Subcommand: models watch — background maintenance daemon ──────────
77
150
  command
78
151
  .command('watch')
79
152
  .description('Run the model-registry maintenance daemon: probe + spot-check on a schedule')
80
153
  .option('--interval <seconds>', 'Refresh interval in seconds (default: 600)', '600')
81
- .option('--no-spot-check', 'Only run listModels probes (skip spot-checks)', false)
154
+ // NOTE: no third arg — commander's negated option must default `spotCheck`
155
+ // to true (passing `--no-spot-check` flips it false). A `false` third arg
156
+ // would permanently disable spot-checks (the same bug `unblock` had).
157
+ .option('--no-spot-check', 'Only run listModels probes (skip spot-checks)')
82
158
  .action(async (opts) => {
83
159
  const intervalMs = Math.max(60, parseInt(opts?.interval || '600', 10) || 600) * 1000;
84
160
  logger.highlight('\n👁️ Model Registry Watch started — keeping availability fresh…');
@@ -100,6 +176,23 @@ export class ModelsCommand extends BaseCommand {
100
176
  });
101
177
  return command;
102
178
  }
179
+ /**
180
+ * Resolve the effective `--json` flag for a subcommand.
181
+ *
182
+ * BUG WORKAROUND: the parent `models` command also defines `-j, --json`, and
183
+ * commander's option parser scans the WHOLE arg list against the CURRENT
184
+ * command's options — so a `--json` token typed after a subcommand name
185
+ * (e.g. `models status --json`) is consumed by the PARENT's option, and the
186
+ * subcommand's own `opts.json` stays at its default. Without this, every
187
+ * subcommand `--json` silently fell back to human output (a pre-existing
188
+ * production bug). The token does land in `parent.opts()`, so read it from
189
+ * there when the child's own opts didn't see it.
190
+ */
191
+ isJsonMode(opts, cmd) {
192
+ // optsWithGlobals() merges this command's options with every parent's — the
193
+ // framework's own answer to reading a token consumed higher in the chain.
194
+ return !!(opts?.json || cmd?.optsWithGlobals().json);
195
+ }
103
196
  /**
104
197
  * Verbose `models status` — the two things routing learns from real usage:
105
198
  * 1. REGISTRY-BLOCKED providers — every tracked model unavailable/parked, so