instar 1.3.345 → 1.3.347
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 +8 -1
- package/dist/commands/server.js.map +1 -1
- package/dist/core/PostUpdateMigrator.d.ts.map +1 -1
- package/dist/core/PostUpdateMigrator.js +21 -0
- package/dist/core/PostUpdateMigrator.js.map +1 -1
- package/dist/monitoring/PresenceProxy.d.ts +8 -0
- package/dist/monitoring/PresenceProxy.d.ts.map +1 -1
- package/dist/monitoring/PresenceProxy.js +28 -9
- package/dist/monitoring/PresenceProxy.js.map +1 -1
- package/dist/monitoring/RateLimitSentinel.d.ts +5 -2
- package/dist/monitoring/RateLimitSentinel.d.ts.map +1 -1
- package/dist/monitoring/RateLimitSentinel.js.map +1 -1
- package/dist/monitoring/StuckSignatureClassifier.d.ts +52 -0
- package/dist/monitoring/StuckSignatureClassifier.d.ts.map +1 -0
- package/dist/monitoring/StuckSignatureClassifier.js +133 -0
- package/dist/monitoring/StuckSignatureClassifier.js.map +1 -0
- package/dist/monitoring/sentinelWiring.d.ts +13 -4
- package/dist/monitoring/sentinelWiring.d.ts.map +1 -1
- package/dist/monitoring/sentinelWiring.js +10 -8
- package/dist/monitoring/sentinelWiring.js.map +1 -1
- package/package.json +1 -1
- package/src/data/builtin-manifest.json +19 -19
- package/upgrades/1.3.347.md +76 -0
- package/upgrades/honest-turn-receipts.eli16.md +47 -0
- package/upgrades/rate-limit-resume-nudge-internal-channel.eli16.md +35 -0
- package/upgrades/side-effects/honest-turn-receipts.md +90 -0
- package/upgrades/side-effects/rate-limit-resume-nudge-internal-channel.md +102 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/commands/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AA6SH,UAAU,YAAY;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;2DACuD;IACvD,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAuxDD,wBAAsB,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/commands/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AA6SH,UAAU,YAAY;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;2DACuD;IACvD,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAuxDD,wBAAsB,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAulStE;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"}
|
package/dist/commands/server.js
CHANGED
|
@@ -5856,7 +5856,9 @@ export async function startServer(options) {
|
|
|
5856
5856
|
const { buildRateLimitRecoveryDeps } = await import('../monitoring/sentinelWiring.js');
|
|
5857
5857
|
const { resumeFn: rateLimitResume, notifyFn: rateLimitNotify } = buildRateLimitRecoveryDeps({
|
|
5858
5858
|
isSessionAlive: (name) => sessionManager.isSessionAlive(name),
|
|
5859
|
-
|
|
5859
|
+
// Resume nudge is infrastructure, never a user message — it goes through
|
|
5860
|
+
// the internal recovery channel ONLY (no `[telegram:N]` prefix), so the
|
|
5861
|
+
// agent can't mistake it for the user and relay a contradictory reply.
|
|
5860
5862
|
injectInternalNudge: (name, text) => sessionManager.injectInternalMessage(name, text, 'sentinel-recovery'),
|
|
5861
5863
|
getTopicForSession: (name) => telegram?.getTopicForSession(name),
|
|
5862
5864
|
getLifelineTopicId: () => telegram?.getLifelineTopicId?.(),
|
|
@@ -6559,6 +6561,11 @@ export async function startServer(options) {
|
|
|
6559
6561
|
: telegram.getSessionForTopic(topicId);
|
|
6560
6562
|
return sessionName ? rateLimitSentinel.isRecoveryActive(sessionName) : false;
|
|
6561
6563
|
},
|
|
6564
|
+
// Honest turn-receipts: when any recovery sentinel already owns this
|
|
6565
|
+
// session's stuck-state recovery (it is messaging the user), the
|
|
6566
|
+
// honest classifier must stay silent so the user hears one voice.
|
|
6567
|
+
// Reuses the same composed checker the SessionReaper uses for its veto.
|
|
6568
|
+
isStuckRecoveryActive: (sessionName) => wedgeRecoveryActive?.(sessionName) ?? false,
|
|
6562
6569
|
// Shared LLM queue (interactive lane) — cross-monitor concurrency
|
|
6563
6570
|
// and daily-spend-cap with PromiseBeacon.
|
|
6564
6571
|
sharedLlmQueue,
|