instar 1.3.638 → 1.3.640

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.
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/commands/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAoCH,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAS3D,OAAO,EAAE,eAAe,EAAiC,MAAM,iCAAiC,CAAC;AAwBjG,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAGvD,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAsH7D,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AA+EtD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,gBAAgB,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAC1C,OAAO,CAUT;AAyID,UAAU,YAAY;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;2DACuD;IACvD,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAy4CD,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,eAAe,EACzB,cAAc,EAAE,cAAc,EAC9B,YAAY,CAAC,EAAE,YAAY,EAC3B,WAAW,CAAC,EAAE,WAAW,EACzB,WAAW,CAAC,EAAE,WAAW,EACzB,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,EAGvE,UAAU,CAAC,EAAE,MAAM,OAAO,8BAA8B,EAAE,WAAW,GAAG,IAAI,EAK5E,qBAAqB,CAAC,EAAE,MAAM,OAAO,gCAAgC,EAAE,kBAAkB,GAAG,IAAI,EAKhG,mBAAmB,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,GAAG,SAAS,GACpD,IAAI,CA8eN;AA2lBD,wBAAsB,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAukftE;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE;IAAE,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAsDzE;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE;IAAE,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAuD5E"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/commands/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAoCH,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAS3D,OAAO,EAAE,eAAe,EAAiC,MAAM,iCAAiC,CAAC;AAwBjG,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAGvD,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAsH7D,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AA+EtD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,gBAAgB,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAC1C,OAAO,CAUT;AAyID,UAAU,YAAY;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;2DACuD;IACvD,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAy4CD,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,eAAe,EACzB,cAAc,EAAE,cAAc,EAC9B,YAAY,CAAC,EAAE,YAAY,EAC3B,WAAW,CAAC,EAAE,WAAW,EACzB,WAAW,CAAC,EAAE,WAAW,EACzB,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,EAGvE,UAAU,CAAC,EAAE,MAAM,OAAO,8BAA8B,EAAE,WAAW,GAAG,IAAI,EAK5E,qBAAqB,CAAC,EAAE,MAAM,OAAO,gCAAgC,EAAE,kBAAkB,GAAG,IAAI,EAKhG,mBAAmB,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,GAAG,SAAS,GACpD,IAAI,CA8eN;AA2lBD,wBAAsB,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAwnftE;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE;IAAE,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAsDzE;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE;IAAE,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAuD5E"}
@@ -4665,6 +4665,27 @@ export async function startServer(options) {
4665
4665
  // §4.5: per-attempt swap timeout, inline-defaulted to 5s (no ConfigDefaults
4666
4666
  // entry — codexExecJson precedent; absent ⇒ 5s, present ⇒ operator's value).
4667
4667
  swapAttemptTimeoutMs: config.intelligence?.swapAttemptTimeoutMs ?? 5000,
4668
+ // Resilient Degradation Ladder (docs/specs/resilient-degradation-ladder.md), v1.
4669
+ // Dev-gated: the backoff rung's `enabled` is OMITTED in config so resolveDevAgentGate
4670
+ // resolves it (live-on-dev / dark-on-fleet); the gating budget rides the ladder's
4671
+ // activation. Absent (fleet, unconfigured) ⇒ undefined ⇒ EXACTLY today's behavior.
4672
+ ladder: (() => {
4673
+ const dl = config.intelligence?.degradationLadder;
4674
+ const backoffEnabled = resolveDevAgentGate(dl?.backoff?.enabled, config);
4675
+ if (!backoffEnabled)
4676
+ return undefined;
4677
+ return {
4678
+ gatingLadderBudgetMs: dl?.gatingLadderBudgetMs ?? 6000,
4679
+ backoffEnabled,
4680
+ backoff: {
4681
+ baseMs: dl?.backoff?.baseMs ?? 500,
4682
+ factor: dl?.backoff?.factor ?? 2,
4683
+ maxAttempts: dl?.backoff?.maxAttempts ?? 3,
4684
+ ceilingMs: dl?.backoff?.ceilingMs ?? 8000,
4685
+ maxWaitMs: dl?.backoff?.maxWaitMs ?? 60000,
4686
+ },
4687
+ };
4688
+ })(),
4668
4689
  // Each non-default framework gets its OWN breaker (built once, from the
4669
4690
  // shared probe-cache so the active-set probe doesn't double-build).
4670
4691
  buildProvider: (fw) => cachedBuild(fw),
@@ -4680,6 +4701,21 @@ export async function startServer(options) {
4680
4701
  }
4681
4702
  catch { /* never break the LLM path on a degradation report */ }
4682
4703
  },
4704
+ // Never-silent tracking (Resilient Degradation Ladder §4): a non-gating call that
4705
+ // exhausts the ladder (→ caller heuristic) opens a tracked degradation; a successful
4706
+ // real-LLM answer auto-resolves it. No-ops downstream when neverSilent is disabled.
4707
+ onHeuristicFallthrough: (component, framework) => {
4708
+ try {
4709
+ DegradationReporter.getInstance().openDegradation(component, framework);
4710
+ }
4711
+ catch { /* @silent-fallback-ok: a never-silent tracking hook must NEVER throw into the LLM call path; a failed open just skips this tracking tick (the next fallthrough re-opens). */ }
4712
+ },
4713
+ onResolved: (component, framework) => {
4714
+ try {
4715
+ DegradationReporter.getInstance().resolveDegradation(component, framework);
4716
+ }
4717
+ catch { /* @silent-fallback-ok: a never-silent tracking hook must NEVER throw into the LLM call path; a failed resolve just leaves the open degradation for the next success/sweep. */ }
4718
+ },
4683
4719
  });
4684
4720
  }
4685
4721
  catch (err) {
@@ -17683,6 +17719,26 @@ export async function startServer(options) {
17683
17719
  // ops-pager output. See upgrades/side-effects/agent-health-alert-authority-routing.md.
17684
17720
  toneGate: messagingToneGate ?? null,
17685
17721
  });
17722
+ // Never-silent degradation tracking (Resilient Degradation Ladder §4): dev-gated
17723
+ // (live-on-dev / dark-on-fleet via resolveDevAgentGate). When enabled, a timer drives the
17724
+ // level-triggered sweep that escalates a genuinely-stuck heuristic-fallback and TTL-closes an
17725
+ // idle one. The sweep NEVER calls report() — reentrancy-safe (the 2026-06-21 wedge).
17726
+ const nsCfg = config.intelligence?.degradationLadder?.neverSilent;
17727
+ const nsEnabled = resolveDevAgentGate(nsCfg?.enabled, config);
17728
+ degradationReporter.configureNeverSilent({
17729
+ enabled: nsEnabled,
17730
+ escalateMs: nsCfg?.escalateMs,
17731
+ maxOpen: nsCfg?.maxOpen,
17732
+ });
17733
+ if (nsEnabled) {
17734
+ const nsSweepTimer = setInterval(() => {
17735
+ try {
17736
+ degradationReporter.sweepOpenDegradations();
17737
+ }
17738
+ catch { /* @silent-fallback-ok: the never-silent sweep is best-effort level-triggered housekeeping; a single failed tick must not stall the timer (the next tick re-sweeps the same open map). */ }
17739
+ }, 60_000);
17740
+ nsSweepTimer.unref?.();
17741
+ }
17686
17742
  }
17687
17743
  // Tier-2 live-mode wire-up (SELF-HEALING-REMEDIATOR-V2-SPEC §A57).
17688
17744
  //