instar 1.3.178 → 1.3.180
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/dist/commands/server.d.ts.map +1 -1
- package/dist/commands/server.js +3 -0
- package/dist/commands/server.js.map +1 -1
- package/dist/core/AutoUpdater.d.ts +12 -0
- package/dist/core/AutoUpdater.d.ts.map +1 -1
- package/dist/core/AutoUpdater.js +21 -2
- package/dist/core/AutoUpdater.js.map +1 -1
- package/dist/core/CircuitBreakingIntelligenceProvider.d.ts +26 -0
- package/dist/core/CircuitBreakingIntelligenceProvider.d.ts.map +1 -1
- package/dist/core/CircuitBreakingIntelligenceProvider.js +56 -5
- package/dist/core/CircuitBreakingIntelligenceProvider.js.map +1 -1
- package/dist/core/CoherenceGate.d.ts.map +1 -1
- package/dist/core/CoherenceGate.js +21 -1
- package/dist/core/CoherenceGate.js.map +1 -1
- package/dist/core/CoherenceReviewer.d.ts +6 -0
- package/dist/core/CoherenceReviewer.d.ts.map +1 -1
- package/dist/core/CoherenceReviewer.js +3 -0
- package/dist/core/CoherenceReviewer.js.map +1 -1
- package/dist/core/LlmCircuitBreaker.d.ts +52 -2
- package/dist/core/LlmCircuitBreaker.d.ts.map +1 -1
- package/dist/core/LlmCircuitBreaker.js +134 -11
- package/dist/core/LlmCircuitBreaker.js.map +1 -1
- package/dist/core/MessagingToneGate.d.ts.map +1 -1
- package/dist/core/MessagingToneGate.js +7 -0
- package/dist/core/MessagingToneGate.js.map +1 -1
- package/dist/core/PostUpdateMigrator.d.ts.map +1 -1
- package/dist/core/PostUpdateMigrator.js +17 -0
- package/dist/core/PostUpdateMigrator.js.map +1 -1
- package/dist/core/UnjustifiedStopGate.d.ts.map +1 -1
- package/dist/core/UnjustifiedStopGate.js +9 -0
- package/dist/core/UnjustifiedStopGate.js.map +1 -1
- package/dist/core/UpdateGate.d.ts +17 -0
- package/dist/core/UpdateGate.d.ts.map +1 -1
- package/dist/core/UpdateGate.js +23 -0
- package/dist/core/UpdateGate.js.map +1 -1
- package/dist/core/types.d.ts +14 -0
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js.map +1 -1
- package/dist/monitoring/FeatureMetricsLedger.d.ts +101 -0
- package/dist/monitoring/FeatureMetricsLedger.d.ts.map +1 -0
- package/dist/monitoring/FeatureMetricsLedger.js +185 -0
- package/dist/monitoring/FeatureMetricsLedger.js.map +1 -0
- package/dist/scaffold/templates.d.ts.map +1 -1
- package/dist/scaffold/templates.js +5 -0
- package/dist/scaffold/templates.js.map +1 -1
- package/dist/server/AgentServer.d.ts +1 -0
- package/dist/server/AgentServer.d.ts.map +1 -1
- package/dist/server/AgentServer.js +27 -0
- package/dist/server/AgentServer.js.map +1 -1
- package/dist/server/CapabilityIndex.d.ts.map +1 -1
- package/dist/server/CapabilityIndex.js +11 -0
- package/dist/server/CapabilityIndex.js.map +1 -1
- package/dist/server/routes.d.ts +1 -0
- package/dist/server/routes.d.ts.map +1 -1
- package/dist/server/routes.js +18 -0
- package/dist/server/routes.js.map +1 -1
- package/dist/threadline/TopicLinkageHandler.d.ts.map +1 -1
- package/dist/threadline/TopicLinkageHandler.js +9 -4
- package/dist/threadline/TopicLinkageHandler.js.map +1 -1
- package/package.json +1 -1
- package/src/data/builtin-manifest.json +64 -64
- package/src/scaffold/templates.ts +5 -0
- package/upgrades/1.3.179.md +68 -0
- package/upgrades/1.3.180.md +133 -0
- package/upgrades/side-effects/llm-feature-metrics-phase1b.md +83 -0
- package/upgrades/side-effects/llm-feature-metrics.md +82 -0
- package/upgrades/side-effects/llm-ratelimit-bounded-wait.md +46 -0
- package/upgrades/side-effects/restart-immediately.md +96 -0
|
@@ -63,6 +63,16 @@ export interface AutoUpdaterConfig {
|
|
|
63
63
|
* are NOT dampened. Default: 900_000 (15 minutes). Set to 0 to disable.
|
|
64
64
|
*/
|
|
65
65
|
restartCascadeDampenerWindowMs?: number;
|
|
66
|
+
/**
|
|
67
|
+
* Primary-developer mode (per-agent opt-in via `updates.restartImmediately`).
|
|
68
|
+
* When true, update restarts are NEVER deferred for active sessions OR the
|
|
69
|
+
* restart window — the agent always rolls onto the latest version as soon as
|
|
70
|
+
* it is downloaded. A server restart does not kill the agent's tmux sessions
|
|
71
|
+
* (they resume via CONTINUATION), so the only cost is a brief restart blip.
|
|
72
|
+
* Default false: the fleet keeps its session-aware + window-aware deferral.
|
|
73
|
+
* Spec: docs/specs/restart-immediately-spec.md.
|
|
74
|
+
*/
|
|
75
|
+
restartImmediately?: boolean;
|
|
66
76
|
}
|
|
67
77
|
export interface AutoUpdaterStatus {
|
|
68
78
|
/** Whether the auto-updater is running */
|
|
@@ -91,6 +101,8 @@ export interface AutoUpdaterStatus {
|
|
|
91
101
|
maxDeferralHours: number;
|
|
92
102
|
/** Persisted restart deferral details, surfaced for "installed but not active" diagnosis */
|
|
93
103
|
restartDeferral: RestartDeferralState | null;
|
|
104
|
+
/** Primary-developer mode: restarts roll onto latest immediately, never deferred for sessions/window */
|
|
105
|
+
restartImmediately: boolean;
|
|
94
106
|
}
|
|
95
107
|
export interface RestartDeferralState {
|
|
96
108
|
active: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AutoUpdater.d.ts","sourceRoot":"","sources":["../../src/core/AutoUpdater.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAIH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAG1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAI9E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAE1E,MAAM,WAAW,iBAAiB;IAChC,8DAA8D;IAC9D,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,mDAAmD;IACnD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,mFAAmF;IACnF,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B;;;;;;OAMG;IACH,gBAAgB,CAAC,EAAE,sBAAsB,CAAC;IAC1C,sEAAsE;IACtE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,sGAAsG;IACtG,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qGAAqG;IACrG,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B;;;;;OAKG;IACH,aAAa,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACtD;;;;;;;OAOG;IACH,8BAA8B,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"AutoUpdater.d.ts","sourceRoot":"","sources":["../../src/core/AutoUpdater.ts"],"names":[],"mappings":"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"}
|
package/dist/core/AutoUpdater.js
CHANGED
|
@@ -85,12 +85,15 @@ export class AutoUpdater {
|
|
|
85
85
|
preRestartDelaySecs: config?.preRestartDelaySecs ?? 60,
|
|
86
86
|
restartWindow: config?.restartWindow ?? null,
|
|
87
87
|
restartCascadeDampenerWindowMs: config?.restartCascadeDampenerWindowMs ?? 15 * 60_000,
|
|
88
|
+
restartImmediately: config?.restartImmediately ?? false,
|
|
88
89
|
// codex-instar audit Item 4 — Required<T> demands every field, so we
|
|
89
90
|
// coerce undefined to undefined explicitly; consumers branch on
|
|
90
91
|
// truthiness in gatedRestart.
|
|
91
92
|
restartHandshake: config?.restartHandshake,
|
|
92
93
|
};
|
|
93
|
-
|
|
94
|
+
// Primary-developer mode: the gate inherits restartImmediately so it never
|
|
95
|
+
// defers behind active sessions (default false → fleet behavior unchanged).
|
|
96
|
+
this.gate = new UpdateGate({ alwaysRestartImmediately: this.config.restartImmediately });
|
|
94
97
|
this.dampener = new RestartCascadeDampener(this.config.restartCascadeDampenerWindowMs);
|
|
95
98
|
// npx cache detection is no longer needed — updates install to a local
|
|
96
99
|
// shadow directory ({stateDir}/shadow-install/) instead of globally.
|
|
@@ -153,6 +156,7 @@ export class AutoUpdater {
|
|
|
153
156
|
deferralElapsedMinutes: gateStatus.deferralElapsedMinutes,
|
|
154
157
|
maxDeferralHours: gateStatus.maxDeferralHours,
|
|
155
158
|
restartDeferral: this.restartDeferral ? { ...this.restartDeferral } : null,
|
|
159
|
+
restartImmediately: gateStatus.alwaysRestartImmediately,
|
|
156
160
|
};
|
|
157
161
|
}
|
|
158
162
|
/**
|
|
@@ -185,6 +189,12 @@ export class AutoUpdater {
|
|
|
185
189
|
console.log(`[AutoUpdater] Config changed: autoApply ${this.config.autoApply} → ${diskValue}`);
|
|
186
190
|
this.config.autoApply = diskValue;
|
|
187
191
|
}
|
|
192
|
+
const diskRestartImmediately = this.liveConfig.get('updates.restartImmediately', false);
|
|
193
|
+
if (diskRestartImmediately !== this.config.restartImmediately) {
|
|
194
|
+
console.log(`[AutoUpdater] Config changed: restartImmediately ${this.config.restartImmediately} → ${diskRestartImmediately}`);
|
|
195
|
+
this.config.restartImmediately = diskRestartImmediately;
|
|
196
|
+
this.gate.setAlwaysRestartImmediately(diskRestartImmediately);
|
|
197
|
+
}
|
|
188
198
|
return;
|
|
189
199
|
}
|
|
190
200
|
// Fallback: direct file read (for callers that haven't adopted LiveConfig yet)
|
|
@@ -197,6 +207,12 @@ export class AutoUpdater {
|
|
|
197
207
|
console.log(`[AutoUpdater] Config changed on disk: autoApply ${this.config.autoApply} → ${diskValue}`);
|
|
198
208
|
this.config.autoApply = diskValue;
|
|
199
209
|
}
|
|
210
|
+
const diskRestartImmediately = raw?.updates?.restartImmediately;
|
|
211
|
+
if (typeof diskRestartImmediately === 'boolean' && diskRestartImmediately !== this.config.restartImmediately) {
|
|
212
|
+
console.log(`[AutoUpdater] Config changed on disk: restartImmediately ${this.config.restartImmediately} → ${diskRestartImmediately}`);
|
|
213
|
+
this.config.restartImmediately = diskRestartImmediately;
|
|
214
|
+
this.gate.setAlwaysRestartImmediately(diskRestartImmediately);
|
|
215
|
+
}
|
|
200
216
|
}
|
|
201
217
|
catch {
|
|
202
218
|
// @silent-fallback-ok — config read failure shouldn't break update cycle
|
|
@@ -478,7 +494,10 @@ export class AutoUpdater {
|
|
|
478
494
|
// path already does). So only defer to the window when active sessions are
|
|
479
495
|
// present; when idle, fall through and restart now. The probe is pure
|
|
480
496
|
// (getBlockingSessions) — it does NOT start the deferral clock.
|
|
481
|
-
|
|
497
|
+
// Primary-developer mode also skips the restart-window wait — always-latest
|
|
498
|
+
// means no "wait until 02:00". The session gate is short-circuited inside
|
|
499
|
+
// UpdateGate.canRestart (alwaysRestartImmediately), so the restart proceeds.
|
|
500
|
+
if (!bypassWindow && !this.config.restartImmediately && !this.isInRestartWindow()) {
|
|
482
501
|
const blockers = this.sessionManager
|
|
483
502
|
? this.gate.getBlockingSessions(this.sessionManager, this.sessionMonitor)
|
|
484
503
|
: [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AutoUpdater.js","sourceRoot":"","sources":["../../src/core/AutoUpdater.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AutoUpdater.js","sourceRoot":"","sources":["../../src/core/AutoUpdater.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,10 +25,36 @@
|
|
|
25
25
|
*/
|
|
26
26
|
import type { IntelligenceProvider, IntelligenceOptions } from './types.js';
|
|
27
27
|
import { LlmCircuitBreaker } from './LlmCircuitBreaker.js';
|
|
28
|
+
/**
|
|
29
|
+
* Minimal structural recorder the funnel writes per-call metrics to. Kept as a
|
|
30
|
+
* local interface (not an import of FeatureMetricsLedger) so core/ never depends
|
|
31
|
+
* on monitoring/ — the concrete ledger is injected at runtime via
|
|
32
|
+
* setFeatureMetricsRecorder(). FeatureMetricsLedger.record() satisfies this.
|
|
33
|
+
*/
|
|
34
|
+
export interface FeatureMetricsRecorder {
|
|
35
|
+
record(entry: {
|
|
36
|
+
feature: string;
|
|
37
|
+
kind?: 'llm' | 'event';
|
|
38
|
+
outcome: 'fired' | 'noop' | 'error';
|
|
39
|
+
latencyMs?: number;
|
|
40
|
+
waited?: boolean;
|
|
41
|
+
waitMs?: number;
|
|
42
|
+
}): void;
|
|
43
|
+
}
|
|
44
|
+
export declare function setFeatureMetricsRecorder(recorder: FeatureMetricsRecorder | null): void;
|
|
45
|
+
export declare function getFeatureMetricsRecorder(): FeatureMetricsRecorder | null;
|
|
28
46
|
export declare class CircuitBreakingIntelligenceProvider implements IntelligenceProvider {
|
|
29
47
|
private readonly inner;
|
|
30
48
|
private readonly breaker;
|
|
31
49
|
constructor(inner: IntelligenceProvider, breaker?: LlmCircuitBreaker);
|
|
50
|
+
/**
|
|
51
|
+
* Record one funnel call to the per-feature metrics ledger (Phase 1b). Pure
|
|
52
|
+
* side-channel: it MUST never throw into the LLM path (observability must not
|
|
53
|
+
* break what it observes — the Close the Loop principle applied to itself).
|
|
54
|
+
* outcome here is funnel-level: 'noop' = the call completed (the fired-vs-noop
|
|
55
|
+
* VERDICT is the caller's interpretation → Phase 2); 'error' = it failed.
|
|
56
|
+
*/
|
|
57
|
+
private recordMetric;
|
|
32
58
|
evaluate(prompt: string, options?: IntelligenceOptions): Promise<string>;
|
|
33
59
|
}
|
|
34
60
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CircuitBreakingIntelligenceProvider.d.ts","sourceRoot":"","sources":["../../src/core/CircuitBreakingIntelligenceProvider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAC5E,OAAO,EACL,iBAAiB,EAKlB,MAAM,wBAAwB,CAAC;AAEhC,qBAAa,mCAAoC,YAAW,oBAAoB;IAE5E,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBADP,KAAK,EAAE,oBAAoB,EAC3B,OAAO,GAAE,iBAA0C;
|
|
1
|
+
{"version":3,"file":"CircuitBreakingIntelligenceProvider.d.ts","sourceRoot":"","sources":["../../src/core/CircuitBreakingIntelligenceProvider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAC5E,OAAO,EACL,iBAAiB,EAKlB,MAAM,wBAAwB,CAAC;AAEhC;;;;;GAKG;AACH,MAAM,WAAW,sBAAsB;IACrC,MAAM,CAAC,KAAK,EAAE;QACZ,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC;QACvB,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC;QACpC,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,GAAG,IAAI,CAAC;CACV;AAOD,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,sBAAsB,GAAG,IAAI,GAAG,IAAI,CAEvF;AACD,wBAAgB,yBAAyB,IAAI,sBAAsB,GAAG,IAAI,CAEzE;AAED,qBAAa,mCAAoC,YAAW,oBAAoB;IAE5E,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBADP,KAAK,EAAE,oBAAoB,EAC3B,OAAO,GAAE,iBAA0C;IAGtE;;;;;;OAMG;IACH,OAAO,CAAC,YAAY;IAgBd,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC;CA8C/E;AAED;;;;GAIG;AACH,wBAAgB,kCAAkC,CAChD,QAAQ,EAAE,oBAAoB,GAAG,IAAI,GAAG,SAAS,GAChD,oBAAoB,GAAG,IAAI,CAI7B"}
|
|
@@ -23,7 +23,18 @@
|
|
|
23
23
|
* desired behaviour: skip the LLM step while the breaker is open and fall back
|
|
24
24
|
* to heuristics, at zero subprocess cost.
|
|
25
25
|
*/
|
|
26
|
-
import { LlmCircuitOpenError, RateLimitError, getLlmCircuitBreaker,
|
|
26
|
+
import { LlmCircuitOpenError, RateLimitError, getLlmCircuitBreaker, classifyRateLimit, } from './LlmCircuitBreaker.js';
|
|
27
|
+
// Module-level recorder — set once by AgentServer at startup. Every wrapped
|
|
28
|
+
// provider reads it, so a single injection point instruments ALL LLM features
|
|
29
|
+
// (the same single-funnel pattern the breaker itself uses). Null = no recording
|
|
30
|
+
// (e.g. CLI commands without a server), which is a clean no-op.
|
|
31
|
+
let _featureMetricsRecorder = null;
|
|
32
|
+
export function setFeatureMetricsRecorder(recorder) {
|
|
33
|
+
_featureMetricsRecorder = recorder;
|
|
34
|
+
}
|
|
35
|
+
export function getFeatureMetricsRecorder() {
|
|
36
|
+
return _featureMetricsRecorder;
|
|
37
|
+
}
|
|
27
38
|
export class CircuitBreakingIntelligenceProvider {
|
|
28
39
|
inner;
|
|
29
40
|
breaker;
|
|
@@ -31,20 +42,60 @@ export class CircuitBreakingIntelligenceProvider {
|
|
|
31
42
|
this.inner = inner;
|
|
32
43
|
this.breaker = breaker;
|
|
33
44
|
}
|
|
45
|
+
/**
|
|
46
|
+
* Record one funnel call to the per-feature metrics ledger (Phase 1b). Pure
|
|
47
|
+
* side-channel: it MUST never throw into the LLM path (observability must not
|
|
48
|
+
* break what it observes — the Close the Loop principle applied to itself).
|
|
49
|
+
* outcome here is funnel-level: 'noop' = the call completed (the fired-vs-noop
|
|
50
|
+
* VERDICT is the caller's interpretation → Phase 2); 'error' = it failed.
|
|
51
|
+
*/
|
|
52
|
+
recordMetric(feature, outcome, latencyMs, waited, waitMs) {
|
|
53
|
+
const rec = _featureMetricsRecorder;
|
|
54
|
+
if (!rec)
|
|
55
|
+
return;
|
|
56
|
+
try {
|
|
57
|
+
rec.record({ feature, kind: 'llm', outcome, latencyMs, waited, waitMs: waited ? waitMs : undefined });
|
|
58
|
+
}
|
|
59
|
+
catch {
|
|
60
|
+
/* never break the LLM path on a metrics write */
|
|
61
|
+
}
|
|
62
|
+
}
|
|
34
63
|
async evaluate(prompt, options) {
|
|
35
|
-
const
|
|
64
|
+
const feature = options?.attribution?.component ?? 'unlabeled';
|
|
65
|
+
const startedAt = Date.now();
|
|
66
|
+
let waited = false;
|
|
67
|
+
let gate = this.breaker.acquire();
|
|
36
68
|
if (!gate.allow) {
|
|
37
|
-
|
|
69
|
+
// Coherence-critical callers set rateLimitWaitMs: wait (bounded) for the
|
|
70
|
+
// window to clear instead of failing open immediately. Best-effort callers
|
|
71
|
+
// omit it — behavior is byte-identical to the instant throw below.
|
|
72
|
+
const waitMs = options?.rateLimitWaitMs;
|
|
73
|
+
if (typeof waitMs === 'number' && waitMs > 0) {
|
|
74
|
+
waited = true;
|
|
75
|
+
gate = await this.breaker.acquireOrWait(waitMs);
|
|
76
|
+
}
|
|
77
|
+
if (!gate.allow) {
|
|
78
|
+
// Circuit open, no LLM call ran (no cost) — but the throttle itself is a
|
|
79
|
+
// signal worth measuring per feature (how often a gate hits the open
|
|
80
|
+
// window). Recorded as a no-op; `waited` marks whether a bounded wait was engaged.
|
|
81
|
+
this.recordMetric(feature, 'noop', Date.now() - startedAt, waited, options?.rateLimitWaitMs);
|
|
82
|
+
throw new LlmCircuitOpenError(gate.retryAfterMs);
|
|
83
|
+
}
|
|
38
84
|
}
|
|
39
85
|
try {
|
|
40
86
|
const result = await this.inner.evaluate(prompt, options);
|
|
41
87
|
this.breaker.onResolved();
|
|
88
|
+
this.recordMetric(feature, 'noop', Date.now() - startedAt, waited, options?.rateLimitWaitMs);
|
|
42
89
|
return result;
|
|
43
90
|
}
|
|
44
91
|
catch (err) {
|
|
45
92
|
const message = err instanceof Error ? err.message : String(err);
|
|
46
|
-
|
|
47
|
-
|
|
93
|
+
const parsed = classifyRateLimit(message);
|
|
94
|
+
this.recordMetric(feature, 'error', Date.now() - startedAt, waited, options?.rateLimitWaitMs);
|
|
95
|
+
if (err instanceof RateLimitError || parsed.isLimit) {
|
|
96
|
+
// Pass the parsed retry-after hint through so the breaker can shorten
|
|
97
|
+
// the open window when the provider told us when it resets.
|
|
98
|
+
this.breaker.onRateLimited(message, parsed.retryAfterMs);
|
|
48
99
|
if (err instanceof RateLimitError)
|
|
49
100
|
throw err;
|
|
50
101
|
throw new RateLimitError(message, err);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CircuitBreakingIntelligenceProvider.js","sourceRoot":"","sources":["../../src/core/CircuitBreakingIntelligenceProvider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAGH,OAAO,EAEL,mBAAmB,EACnB,cAAc,EACd,oBAAoB,EACpB,
|
|
1
|
+
{"version":3,"file":"CircuitBreakingIntelligenceProvider.js","sourceRoot":"","sources":["../../src/core/CircuitBreakingIntelligenceProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CoherenceGate.d.ts","sourceRoot":"","sources":["../../src/core/CoherenceGate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAQH,OAAO,EAAgB,KAAK,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAW7E,OAAO,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAKpE,OAAO,KAAK,EAAE,oBAAoB,EAAuB,MAAM,YAAY,CAAC;AAI5E,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,OAAO,CAAC;IACxB,OAAO,EAAE;QACP,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,aAAa,CAAC,EAAE,cAAc,GAAG,gBAAgB,GAAG,OAAO,GAAG,kBAAkB,CAAC;QACjF,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,gBAAgB,CAAC,EAAE,OAAO,CAAC;QAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;QACxC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;QAC5C,aAAa,CAAC,EAAE,UAAU,GAAG,YAAY,GAAG,eAAe,GAAG,YAAY,CAAC;QAC3E,iBAAiB,CAAC,EAAE,OAAO,CAAC;KAC7B,CAAC;CACH;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kEAAkE;IAClE,gBAAgB,CAAC,EAAE,cAAc,EAAE,CAAC;IACpC,6CAA6C;IAC7C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,4BAA4B;IAC5B,WAAW,CAAC,EAAE,UAAU,CAAC;IACzB,qDAAqD;IACrD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,uDAAuD;IACvD,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,OAAO,GAAG,MAAM,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AASD,MAAM,WAAW,sBAAsB;IACrC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,oBAAoB,CAAC;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB;;;;;OAKG;IACH,YAAY,EAAE,OAAO,YAAY,EAAE,oBAAoB,CAAC;IACxD,aAAa,CAAC,EAAE;QAAE,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC;IAC1E,aAAa,CAAC,EAAE;QAAE,UAAU,IAAI,GAAG,CAAA;KAAE,GAAG,IAAI,CAAC;IAC7C,gFAAgF;IAChF,mBAAmB,CAAC,EAAE,CAAC,OAAO,EAAE,sBAAsB,KAAK,IAAI,CAAC;CACjE;
|
|
1
|
+
{"version":3,"file":"CoherenceGate.d.ts","sourceRoot":"","sources":["../../src/core/CoherenceGate.ts"],"names":[],"mappings":"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"}
|
|
@@ -46,6 +46,21 @@ const REVIEWER_CATEGORY_MAP = {
|
|
|
46
46
|
};
|
|
47
47
|
/** Violation types for retry exhaustion handling */
|
|
48
48
|
const HIGH_STAKES_CATEGORIES = new Set(['ACCURACY ISSUE', 'ALIGNMENT ISSUE']);
|
|
49
|
+
/**
|
|
50
|
+
* Reviewers whose checks are coherence-critical (high criticality / high-stakes
|
|
51
|
+
* categories: value-alignment, claim-provenance, capability-accuracy,
|
|
52
|
+
* information-leakage). When the shared LLM circuit breaker is open, these wait
|
|
53
|
+
* up to HIGH_STAKES_RATE_LIMIT_WAIT_MS (bounded) for the window to clear rather
|
|
54
|
+
* than fail open and let a dangerous leak/false-claim through. All other
|
|
55
|
+
* reviewers omit the wait (instant fail-open, shedding load).
|
|
56
|
+
*/
|
|
57
|
+
const HIGH_STAKES_REVIEWERS = new Set([
|
|
58
|
+
'value-alignment',
|
|
59
|
+
'claim-provenance',
|
|
60
|
+
'capability-accuracy',
|
|
61
|
+
'information-leakage',
|
|
62
|
+
]);
|
|
63
|
+
const HIGH_STAKES_RATE_LIMIT_WAIT_MS = 60_000;
|
|
49
64
|
const VALUE_DOC_CACHE_TTL_MS = 60 * 60 * 1000; // 60 minutes
|
|
50
65
|
export class CoherenceGate {
|
|
51
66
|
config;
|
|
@@ -459,7 +474,12 @@ export class CoherenceGate {
|
|
|
459
474
|
const model = overrides[name] ?? defaultModel;
|
|
460
475
|
const mode = reviewerConfig?.mode ?? 'block';
|
|
461
476
|
const timeoutMs = config.timeoutMs ?? 8_000;
|
|
462
|
-
|
|
477
|
+
// High-stakes reviewers wait (bounded) for a rate-limit window rather than
|
|
478
|
+
// fail open; best-effort reviewers omit it.
|
|
479
|
+
const rateLimitWaitMs = HIGH_STAKES_REVIEWERS.has(name)
|
|
480
|
+
? HIGH_STAKES_RATE_LIMIT_WAIT_MS
|
|
481
|
+
: undefined;
|
|
482
|
+
this.reviewers.set(name, new cls({ model, mode, timeoutMs, intelligence, rateLimitWaitMs }));
|
|
463
483
|
}
|
|
464
484
|
}
|
|
465
485
|
loadCustomReviewers(intelligence) {
|