instar 1.3.504 → 1.3.505
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 +46 -0
- package/dist/commands/server.js.map +1 -1
- package/dist/core/AutonomousSessions.d.ts +19 -0
- package/dist/core/AutonomousSessions.d.ts.map +1 -1
- package/dist/core/AutonomousSessions.js +71 -0
- package/dist/core/AutonomousSessions.js.map +1 -1
- package/dist/core/PostUpdateMigrator.d.ts.map +1 -1
- package/dist/core/PostUpdateMigrator.js +13 -0
- package/dist/core/PostUpdateMigrator.js.map +1 -1
- package/dist/core/TransferByNickname.d.ts +11 -0
- package/dist/core/TransferByNickname.d.ts.map +1 -1
- package/dist/core/TransferByNickname.js +29 -6
- package/dist/core/TransferByNickname.js.map +1 -1
- package/dist/monitoring/SessionReaper.d.ts +27 -0
- package/dist/monitoring/SessionReaper.d.ts.map +1 -1
- package/dist/monitoring/SessionReaper.js +41 -2
- package/dist/monitoring/SessionReaper.js.map +1 -1
- package/dist/scaffold/templates.d.ts.map +1 -1
- package/dist/scaffold/templates.js +2 -1
- package/dist/scaffold/templates.js.map +1 -1
- package/dist/server/routes.d.ts.map +1 -1
- package/dist/server/routes.js +50 -2
- package/dist/server/routes.js.map +1 -1
- package/package.json +1 -1
- package/src/data/builtin-manifest.json +63 -63
- package/src/scaffold/templates.ts +2 -1
- package/upgrades/1.3.505.md +57 -0
- package/upgrades/side-effects/multi-machine-seamlessness-ws12-ws14.md +197 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/commands/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAgCH,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAS3D,OAAO,EAAE,eAAe,EAAiC,MAAM,iCAAiC,CAAC;AAuBjG,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAGvD,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAyG7D,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAsBtD;;;;;;;;;;;;;;;;;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;AA4zCD,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,
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/commands/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAgCH,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAS3D,OAAO,EAAE,eAAe,EAAiC,MAAM,iCAAiC,CAAC;AAuBjG,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAGvD,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAyG7D,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAsBtD;;;;;;;;;;;;;;;;;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;AA4zCD,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,CAgqYtE;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
|
@@ -11413,6 +11413,27 @@ export async function startServer(options) {
|
|
|
11413
11413
|
return false; /* @silent-fallback-ok — no pin signal → hold not applied, closeout behaves as before */
|
|
11414
11414
|
}
|
|
11415
11415
|
},
|
|
11416
|
+
// WS1.2 P19 breaker escalation: ONE deduped attention item when the
|
|
11417
|
+
// post-transfer closeout gives up on a permanently-vetoing session.
|
|
11418
|
+
// The attention store dedupes on id, so a re-opening breaker within
|
|
11419
|
+
// the same episode never floods (P17). Best-effort — the audit row in
|
|
11420
|
+
// sentinel-events.jsonl is the durable record either way.
|
|
11421
|
+
raiseAttention: (item) => {
|
|
11422
|
+
try {
|
|
11423
|
+
if (!telegram)
|
|
11424
|
+
return;
|
|
11425
|
+
void telegram.createAttentionItem({
|
|
11426
|
+
id: item.id,
|
|
11427
|
+
title: item.title,
|
|
11428
|
+
summary: item.summary,
|
|
11429
|
+
description: item.description,
|
|
11430
|
+
category: 'sessions',
|
|
11431
|
+
priority: 'NORMAL',
|
|
11432
|
+
sourceContext: 'session-reaper:closeout-breaker',
|
|
11433
|
+
}).catch(() => { });
|
|
11434
|
+
}
|
|
11435
|
+
catch { /* @silent-fallback-ok — telegram not wired yet (TDZ window) → audit-only */ }
|
|
11436
|
+
},
|
|
11416
11437
|
audit: reaperAuditSink(config.stateDir),
|
|
11417
11438
|
},
|
|
11418
11439
|
// developmentAgent gate (standard_development_agent_dark_feature_gate):
|
|
@@ -13605,6 +13626,7 @@ export async function startServer(options) {
|
|
|
13605
13626
|
// Inert unless the rollout stage is past 'dark' (gated at the call site).
|
|
13606
13627
|
const nickMod = await import('../core/NicknameCommand.js');
|
|
13607
13628
|
const transferMod = await import('../core/TransferByNickname.js');
|
|
13629
|
+
const autonomousSessionsModule = await import('../core/AutonomousSessions.js');
|
|
13608
13630
|
const pinMod = await import('../core/TopicPlacementPinStore.js');
|
|
13609
13631
|
const relocSetMod = await import('../core/RelocationNicknameSet.js');
|
|
13610
13632
|
const nickAssignMod = await import('../core/NicknameAssigner.js');
|
|
@@ -13665,6 +13687,30 @@ export async function startServer(options) {
|
|
|
13665
13687
|
currentPinOf: (sk) => _topicPinStore?.get(sk)?.preferredMachine ?? null,
|
|
13666
13688
|
lastPlacementUpdateAt: (sk) => _topicPinStore?.lastUpdatedAtMs(sk) ?? null,
|
|
13667
13689
|
now: () => Date.now(),
|
|
13690
|
+
// WS1.4 consent gate: a LIVE local autonomous run on this topic
|
|
13691
|
+
// requires explicit confirmation before a move. The confirmed
|
|
13692
|
+
// move goes through POST /pool/transfer with confirm:true
|
|
13693
|
+
// (which performs the turn-boundary suspend); this NL arm only
|
|
13694
|
+
// ever needs to ASK. Local-registry evidence only — a run on a
|
|
13695
|
+
// remote owner is covered when the WS1.2 drain verb lands.
|
|
13696
|
+
autonomousRunActive: (sk) => {
|
|
13697
|
+
try {
|
|
13698
|
+
const autoMod = autonomousSessionsModule;
|
|
13699
|
+
const job = autoMod?.listAutonomousJobs(config.stateDir).find((j) => j.topic === sk && j.active && !j.paused);
|
|
13700
|
+
if (!job)
|
|
13701
|
+
return null;
|
|
13702
|
+
let remainingMinutes = null;
|
|
13703
|
+
if (job.startedAt && job.durationSeconds != null) {
|
|
13704
|
+
const endMs = Date.parse(job.startedAt) + job.durationSeconds * 1000;
|
|
13705
|
+
if (Number.isFinite(endMs))
|
|
13706
|
+
remainingMinutes = Math.max(0, Math.round((endMs - Date.now()) / 60_000));
|
|
13707
|
+
}
|
|
13708
|
+
return { goal: job.goal, remainingMinutes };
|
|
13709
|
+
}
|
|
13710
|
+
catch {
|
|
13711
|
+
return null; /* @silent-fallback-ok — unreadable run registry → veto not applied; the NL move behaves as before WS1.4 */
|
|
13712
|
+
}
|
|
13713
|
+
},
|
|
13668
13714
|
}, sessionKey);
|
|
13669
13715
|
if (plan.action === 'transfer' || plan.action === 'noop') {
|
|
13670
13716
|
const target = plan.targetMachine;
|