instar 1.3.369 → 1.3.371
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 +40 -1
- package/dist/commands/server.js.map +1 -1
- package/dist/config/ConfigDefaults.d.ts.map +1 -1
- package/dist/config/ConfigDefaults.js +3 -0
- package/dist/config/ConfigDefaults.js.map +1 -1
- package/dist/core/CoherenceJournal.d.ts +12 -1
- package/dist/core/CoherenceJournal.d.ts.map +1 -1
- package/dist/core/CoherenceJournal.js +38 -2
- package/dist/core/CoherenceJournal.js.map +1 -1
- package/dist/core/JournalSyncApplier.d.ts.map +1 -1
- package/dist/core/JournalSyncApplier.js +16 -0
- package/dist/core/JournalSyncApplier.js.map +1 -1
- package/dist/core/PoolActivityView.d.ts +87 -0
- package/dist/core/PoolActivityView.d.ts.map +1 -0
- package/dist/core/PoolActivityView.js +146 -0
- package/dist/core/PoolActivityView.js.map +1 -0
- package/dist/core/PostUpdateMigrator.d.ts.map +1 -1
- package/dist/core/PostUpdateMigrator.js +16 -0
- package/dist/core/PostUpdateMigrator.js.map +1 -1
- package/dist/scaffold/templates.d.ts.map +1 -1
- package/dist/scaffold/templates.js +4 -0
- package/dist/scaffold/templates.js.map +1 -1
- package/dist/server/routes.d.ts.map +1 -1
- package/dist/server/routes.js +56 -1
- package/dist/server/routes.js.map +1 -1
- package/dist/threadline/ConversationMeshView.d.ts +50 -0
- package/dist/threadline/ConversationMeshView.d.ts.map +1 -0
- package/dist/threadline/ConversationMeshView.js +78 -0
- package/dist/threadline/ConversationMeshView.js.map +1 -0
- package/dist/threadline/ConversationStore.d.ts +17 -0
- package/dist/threadline/ConversationStore.d.ts.map +1 -1
- package/dist/threadline/ConversationStore.js +52 -0
- package/dist/threadline/ConversationStore.js.map +1 -1
- package/package.json +1 -1
- package/src/data/builtin-manifest.json +63 -63
- package/src/scaffold/templates.ts +4 -0
- package/upgrades/1.3.370.md +38 -0
- package/upgrades/1.3.371.md +62 -0
- package/upgrades/side-effects/pool-activity-view-p4.md +54 -0
- package/upgrades/side-effects/reflex-placement-fallback.md +57 -0
- package/upgrades/side-effects/threadline-conversation-kind-p3.md +83 -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,CA4iTtE;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
|
@@ -7481,6 +7481,15 @@ export async function startServer(options) {
|
|
|
7481
7481
|
// (below), upstream of all three routing branches, with turn/novelty state
|
|
7482
7482
|
// living on the Conversation (the one-shot worker can't self-police a loop).
|
|
7483
7483
|
const conversationStore = new ConversationStore(config.stateDir);
|
|
7484
|
+
// P3 (THREADLINE-CONVERSATION-COHERENCE-SPEC §3.1): the lifecycle
|
|
7485
|
+
// emission seam — the store's commit() transition-diff drives the
|
|
7486
|
+
// journal's 4th kind. Harmless when the journal is absent/locked-out
|
|
7487
|
+
// (emit drops + counts); replication of the kind rides the existing
|
|
7488
|
+
// gate like every other kind.
|
|
7489
|
+
if (coherenceJournal) {
|
|
7490
|
+
const cj = coherenceJournal;
|
|
7491
|
+
conversationStore.setCoherenceJournalSeam((d) => cj.emitThreadlineConversation(d));
|
|
7492
|
+
}
|
|
7484
7493
|
const warrantsReplyGate = new WarrantsReplyGate({ intelligence: sharedIntelligence });
|
|
7485
7494
|
// CMT-509 §2: surface PARENTLESS Threadline conversations into a single
|
|
7486
7495
|
// dedicated topic so a peer reaching out cold is visible (not an invisible
|
|
@@ -10113,6 +10122,27 @@ export async function startServer(options) {
|
|
|
10113
10122
|
if (pin?.pinned && pin.preferredMachine === wsSelf) {
|
|
10114
10123
|
return { owner: wsSelf, epoch: 0 };
|
|
10115
10124
|
}
|
|
10125
|
+
// Issue #930 (live, v1.3.369): the pin store is ROUTER-local —
|
|
10126
|
+
// on the pinned-TO machine it is empty, so #926's fallback
|
|
10127
|
+
// never fires there. Second fallback: the newest
|
|
10128
|
+
// topic-placement JOURNAL entry (own + replica — the entry is
|
|
10129
|
+
// emitted at the router's CAS chokepoint, the strongest
|
|
10130
|
+
// placement evidence reachable here). Admitting a READ-ONLY,
|
|
10131
|
+
// jailed, hash-verified, never-clobber pull off it is not the
|
|
10132
|
+
// kill/spawn/move class the journal-actuation ban guards, and
|
|
10133
|
+
// nomination already runs on replica evidence by design; the
|
|
10134
|
+
// per-write stillCurrent recheck still aborts on a real claim.
|
|
10135
|
+
try {
|
|
10136
|
+
const placement = wsReader2
|
|
10137
|
+
.query({ kind: 'topic-placement', topic, limit: 1 })
|
|
10138
|
+
.entries[0];
|
|
10139
|
+
const pd = placement?.data;
|
|
10140
|
+
if (pd?.owner === wsSelf && typeof pd.epoch === 'number') {
|
|
10141
|
+
return { owner: wsSelf, epoch: pd.epoch };
|
|
10142
|
+
}
|
|
10143
|
+
}
|
|
10144
|
+
catch { /* @silent-fallback-ok: missing placement evidence simply means no fallback ownership — the reflex answers not-owner honestly (WORKING-SET-HANDOFF-SPEC §3.3) */
|
|
10145
|
+
}
|
|
10116
10146
|
return { owner: null, epoch: null };
|
|
10117
10147
|
};
|
|
10118
10148
|
workingSetPullCoordinator = new wscMod.WorkingSetPullCoordinator({
|
|
@@ -10473,7 +10503,16 @@ export async function startServer(options) {
|
|
|
10473
10503
|
if (res.ok && res.result && typeof res.result === 'object') {
|
|
10474
10504
|
const cap = res.result;
|
|
10475
10505
|
const journalAdvert = _unwrapPeerJournalAdvert(machineId, cap.journalAdvert);
|
|
10476
|
-
|
|
10506
|
+
// #930 sibling (live, v1.3.369): the commitments advert was
|
|
10507
|
+
// parsed AWAY here — served by the peer, dropped by this
|
|
10508
|
+
// narrowing return — so driveCommitmentsSync never fired and
|
|
10509
|
+
// zero replicas ever landed. Pass it through.
|
|
10510
|
+
return {
|
|
10511
|
+
selfReportedLastSeen: cap.selfReportedLastSeen,
|
|
10512
|
+
loadAvg: cap.loadAvg,
|
|
10513
|
+
journalAdvert,
|
|
10514
|
+
...(cap.commitmentsAdvert ? { commitmentsAdvert: cap.commitmentsAdvert } : {}),
|
|
10515
|
+
};
|
|
10477
10516
|
}
|
|
10478
10517
|
return null;
|
|
10479
10518
|
},
|