instar 1.3.589 → 1.3.590
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 +14 -2
- package/dist/commands/server.js.map +1 -1
- package/dist/core/durableOwnershipActivation.d.ts +29 -0
- package/dist/core/durableOwnershipActivation.d.ts.map +1 -0
- package/dist/core/durableOwnershipActivation.js +41 -0
- package/dist/core/durableOwnershipActivation.js.map +1 -0
- package/package.json +1 -1
- package/src/data/builtin-manifest.json +2 -2
- package/upgrades/1.3.590.md +21 -0
- package/upgrades/side-effects/pool-consistent-multimachine-activation.md +39 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/commands/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAmCH,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;AAkH7D,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;AAg4CD,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;AAmCH,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;AAkH7D,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;AAg4CD,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,CA2ndtE;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
|
@@ -13982,7 +13982,19 @@ export async function startServer(options) {
|
|
|
13982
13982
|
// swap in the DURABLE per-session store; the OwnershipApplier (wired below)
|
|
13983
13983
|
// materializes ownership on the target from the REPLICATED placement journal,
|
|
13984
13984
|
// so a seat genuinely moves. Off → InMemory (today's exact behavior).
|
|
13985
|
-
|
|
13985
|
+
// Pool-consistent activation (docs/specs/pool-consistent-multimachine-activation.md):
|
|
13986
|
+
// gating PURELY on the per-machine dev flag left the durable store DARK on a non-dev
|
|
13987
|
+
// pool machine (the Mini), so a transferred seat's ownership was never materialized
|
|
13988
|
+
// there → the seat died on arrival (caught by the live Laptop↔Mini proof, 2026-06-16).
|
|
13989
|
+
// The durable store MUST run on every machine that CONSUMES replicated placement
|
|
13990
|
+
// journals. So activate ALSO on the explicit, pool-consistent
|
|
13991
|
+
// `coherenceJournal.replication.enabled === true` signal — the SAME one that gates the
|
|
13992
|
+
// journalSyncApplier (~server.ts:16588). Invariant: a machine running the placement-
|
|
13993
|
+
// replication applier runs the ownership applier + durable store too (same placements).
|
|
13994
|
+
// Single-machine agents (no replication) stay on InMemory — strict no-op.
|
|
13995
|
+
const { shouldActivateDurableOwnership, isPlacementReplicationEnabled } = await import('../core/durableOwnershipActivation.js');
|
|
13996
|
+
const _replicationOn = isPlacementReplicationEnabled(config);
|
|
13997
|
+
const durableOwnershipOn = shouldActivateDurableOwnership(config, resolveDevAgentGate);
|
|
13986
13998
|
let durableOwnershipStore = null;
|
|
13987
13999
|
let ownershipStore;
|
|
13988
14000
|
if (durableOwnershipOn) {
|
|
@@ -13992,7 +14004,7 @@ export async function startServer(options) {
|
|
|
13992
14004
|
logger: (m) => console.log(pc.dim(` ${m}`)),
|
|
13993
14005
|
});
|
|
13994
14006
|
ownershipStore = durableOwnershipStore;
|
|
13995
|
-
console.log(pc.dim(
|
|
14007
|
+
console.log(pc.dim(` [ownership] durable LocalSessionOwnershipStore active (${_replicationOn ? 'pool: replication-on' : 'dev-gate'}) — transfer-fix §7.2`));
|
|
13996
14008
|
}
|
|
13997
14009
|
else {
|
|
13998
14010
|
ownershipStore = new ownMod.InMemorySessionOwnershipStore();
|