instar 1.3.828 → 1.3.830
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 +51 -32
- package/dist/commands/server.js.map +1 -1
- package/dist/core/PostUpdateMigrator.d.ts.map +1 -1
- package/dist/core/PostUpdateMigrator.js +29 -1
- package/dist/core/PostUpdateMigrator.js.map +1 -1
- package/dist/core/RopeRecoveryProber.d.ts +9 -1
- package/dist/core/RopeRecoveryProber.d.ts.map +1 -1
- package/dist/core/RopeRecoveryProber.js +4 -4
- package/dist/core/RopeRecoveryProber.js.map +1 -1
- package/dist/messaging/TelegramAdapter.d.ts +10 -1
- package/dist/messaging/TelegramAdapter.d.ts.map +1 -1
- package/dist/messaging/TelegramAdapter.js +6 -4
- package/dist/messaging/TelegramAdapter.js.map +1 -1
- package/dist/monitoring/MachineCoherenceSentinel.d.ts +49 -0
- package/dist/monitoring/MachineCoherenceSentinel.d.ts.map +1 -1
- package/dist/monitoring/MachineCoherenceSentinel.js +73 -5
- package/dist/monitoring/MachineCoherenceSentinel.js.map +1 -1
- package/dist/monitoring/RopeHealthMonitor.d.ts.map +1 -1
- package/dist/monitoring/RopeHealthMonitor.js +12 -0
- package/dist/monitoring/RopeHealthMonitor.js.map +1 -1
- package/dist/monitoring/machineCoherenceAnchors.d.ts +152 -0
- package/dist/monitoring/machineCoherenceAnchors.d.ts.map +1 -0
- package/dist/monitoring/machineCoherenceAnchors.js +296 -0
- package/dist/monitoring/machineCoherenceAnchors.js.map +1 -0
- package/dist/monitoring/machineCoherenceEffectsExecutor.d.ts +50 -0
- package/dist/monitoring/machineCoherenceEffectsExecutor.d.ts.map +1 -0
- package/dist/monitoring/machineCoherenceEffectsExecutor.js +56 -0
- package/dist/monitoring/machineCoherenceEffectsExecutor.js.map +1 -0
- package/dist/monitoring/machineCoherenceEpisode.d.ts +30 -0
- package/dist/monitoring/machineCoherenceEpisode.d.ts.map +1 -1
- package/dist/monitoring/machineCoherenceEpisode.js.map +1 -1
- package/dist/monitoring/machineCoherenceEpisodeManager.d.ts +65 -3
- package/dist/monitoring/machineCoherenceEpisodeManager.d.ts.map +1 -1
- package/dist/monitoring/machineCoherenceEpisodeManager.js +275 -15
- package/dist/monitoring/machineCoherenceEpisodeManager.js.map +1 -1
- package/dist/monitoring/ropeSinkRouter.d.ts +60 -0
- package/dist/monitoring/ropeSinkRouter.d.ts.map +1 -0
- package/dist/monitoring/ropeSinkRouter.js +66 -0
- package/dist/monitoring/ropeSinkRouter.js.map +1 -0
- package/dist/scaffold/templates.js +2 -2
- package/package.json +1 -1
- package/src/data/builtin-manifest.json +19 -19
- package/src/scaffold/templates.ts +2 -2
- package/upgrades/1.3.829.md +26 -0
- package/upgrades/1.3.830.md +16 -0
- package/upgrades/side-effects/calm-transient-episode-alerting.md +57 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"machineCoherenceEpisodeManager.d.ts","sourceRoot":"","sources":["../../src/monitoring/machineCoherenceEpisodeManager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAOH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"machineCoherenceEpisodeManager.d.ts","sourceRoot":"","sources":["../../src/monitoring/machineCoherenceEpisodeManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,6 +31,7 @@ function getFlagByKey(key) {
|
|
|
31
31
|
return COHERENCE_CRITICAL_FLAGS.find((f) => f.key === key);
|
|
32
32
|
}
|
|
33
33
|
import { emptyRecurrence, mintEpisodeId, readEpisodeFile, writeEpisodeFile, } from './machineCoherenceEpisode.js';
|
|
34
|
+
import { emptyAnchors, reconcileAnchors, recordConfirmTransition, decidePatchSkew, tryArmDerivedLatch, flapBrakeEligible, recordCalmOnsetAndCheckWave, anchorKey as mkAnchorKey, } from './machineCoherenceAnchors.js';
|
|
34
35
|
/**
|
|
35
36
|
* The two row classes §4.2.1-iii NEVER auto-proposes: `developmentAgent` (the F4
|
|
36
37
|
* root switch — flipping it flips every omitted dev-gated resolution) and the
|
|
@@ -93,6 +94,26 @@ export class MachineCoherenceEpisodeManager {
|
|
|
93
94
|
const { now } = input;
|
|
94
95
|
this.lastSelfMachineId = input.selfMachineId;
|
|
95
96
|
this.lastNicknameOf = input.nicknameOf;
|
|
97
|
+
// ── calm-alerting M-P0: the anchor layer reconciles FIRST (identity-
|
|
98
|
+
// independent clocks over the raw rows), on EVERY machine (speaks() gates
|
|
99
|
+
// only narration, never computation). Dark gate ⇒ zero anchor writes —
|
|
100
|
+
// bit-identical to legacy including the durable file. ──
|
|
101
|
+
if (this.cfg.calmEnabled && input.rawRows && input.versionsByMachine && input.tickMs) {
|
|
102
|
+
const anchors = (this.file.anchors ??= emptyAnchors());
|
|
103
|
+
const { changed } = reconcileAnchors(anchors, {
|
|
104
|
+
nowMs: now,
|
|
105
|
+
tickMs: input.tickMs,
|
|
106
|
+
kTicks: 4,
|
|
107
|
+
rows: input.rawRows,
|
|
108
|
+
comparedMachines: [...input.comparedMachineIds],
|
|
109
|
+
versionsByMachine: input.versionsByMachine,
|
|
110
|
+
resolveTicks: this.cfg.resolveTicks,
|
|
111
|
+
retireAfterMs: 86_400_000,
|
|
112
|
+
});
|
|
113
|
+
this.lastVersionsByMachine = input.versionsByMachine;
|
|
114
|
+
if (changed)
|
|
115
|
+
this.persist();
|
|
116
|
+
}
|
|
96
117
|
const rowById = new Map(input.confirmedRows.map((r) => [r.identity, r]));
|
|
97
118
|
const confirmedIds = new Set(rowById.keys());
|
|
98
119
|
// ── No open episode: REOPEN a recently-closed one whose row set intersects
|
|
@@ -157,8 +178,117 @@ export class MachineCoherenceEpisodeManager {
|
|
|
157
178
|
// ── §4.4 escalation: open past escalateAfterMs (unsuspended clock), once,
|
|
158
179
|
// suppressed by the operator "leave it" ack. ──
|
|
159
180
|
this.maybeEscalate(input, ep, effects);
|
|
181
|
+
// ── calm-alerting M-P2: derived escalations (stall ceiling / flap brake) —
|
|
182
|
+
// NEW notifying HIGH raises under derived ids, cap-EXEMPT, latched per
|
|
183
|
+
// key per 24 h in the durable anchors. ──
|
|
184
|
+
if (this.cfg.calmEnabled)
|
|
185
|
+
this.maybeDerivedEscalations(input, ep, effects);
|
|
160
186
|
return effects;
|
|
161
187
|
}
|
|
188
|
+
/** The last raw versions seen (derived-raise laggard naming + calm decisions). */
|
|
189
|
+
lastVersionsByMachine = {};
|
|
190
|
+
// ── calm-alerting public API (the sentinel's confirmation engine reads these) ──
|
|
191
|
+
/** M-P1 patch-only confirmation decision over the durable anchors. */
|
|
192
|
+
decidePatchSkewConfirmation(key, nowMs, versionsByMachine) {
|
|
193
|
+
if (!this.cfg.calmEnabled || !this.file.anchors)
|
|
194
|
+
return { confirm: false, reason: 'no-anchor' };
|
|
195
|
+
return decidePatchSkew(this.file.anchors, key, {
|
|
196
|
+
graceMs: this.cfg.versionSkewGraceMs,
|
|
197
|
+
progressWindowMs: this.cfg.versionSkewProgressWindowMs,
|
|
198
|
+
ceilingMs: this.cfg.versionSkewStallCeilingMs,
|
|
199
|
+
progressExtensionEnabled: this.cfg.progressExtensionEnabled,
|
|
200
|
+
}, nowMs, versionsByMachine);
|
|
201
|
+
}
|
|
202
|
+
/** Sentinel → flap accounting: a confirm transition on (dimension, key). */
|
|
203
|
+
noteConfirmTransition(dimension, key) {
|
|
204
|
+
if (!this.cfg.calmEnabled || !this.file.anchors)
|
|
205
|
+
return;
|
|
206
|
+
if (recordConfirmTransition(this.file.anchors, dimension, key))
|
|
207
|
+
this.persist();
|
|
208
|
+
}
|
|
209
|
+
/** Read-only anchors view (status route / tests). */
|
|
210
|
+
anchorsView() {
|
|
211
|
+
return this.file.anchors ?? null;
|
|
212
|
+
}
|
|
213
|
+
/** An episode is calm-class iff EVERY row is patch-only version skew (set at
|
|
214
|
+
* open; a joined non-calm row upgrades the episode to loud via joinRows). */
|
|
215
|
+
classifyCalm(rowIds) {
|
|
216
|
+
if (!this.cfg.calmEnabled)
|
|
217
|
+
return false;
|
|
218
|
+
return rowIds.length > 0 && rowIds.every((id) => dimensionOf(id) === 'version');
|
|
219
|
+
}
|
|
220
|
+
/**
|
|
221
|
+
* M-P2 derived escalations on an OPEN episode: the stall ceiling (`:stalled`)
|
|
222
|
+
* and the flap brake (`:recurring`). Both are notifying HIGH raises under
|
|
223
|
+
* derived ids — cap-exempt by construction (≤1 per key per 24 h via the
|
|
224
|
+
* durable anchor latches + ≤1 per class per episode via derivedItemIds).
|
|
225
|
+
* The fail-loud invariant: an armed latch whose raise cannot be emitted
|
|
226
|
+
* (no base item id) increments escalationRaiseFailed and logs.
|
|
227
|
+
*/
|
|
228
|
+
maybeDerivedEscalations(input, ep, effects) {
|
|
229
|
+
const anchors = this.file.anchors;
|
|
230
|
+
if (!anchors || ep.suspended)
|
|
231
|
+
return;
|
|
232
|
+
const derived = (ep.derivedItemIds ??= []);
|
|
233
|
+
// :stalled — a calm episode whose version anchor crossed the stall ceiling.
|
|
234
|
+
if (ep.calmClass && ep.attentionItemId && !derived.some((d) => d.endsWith(':stalled'))) {
|
|
235
|
+
const versionKeys = [...new Set(ep.skewRowIdentities.filter((id) => dimensionOf(id) === 'version').map((id) => keyOf(id)))];
|
|
236
|
+
for (const key of versionKeys) {
|
|
237
|
+
const e = anchors.entries[mkAnchorKey('version', key)];
|
|
238
|
+
if (!e || e.skewOnsetAtMs === 0 || e.activeSkewMs < this.cfg.versionSkewStallCeilingMs)
|
|
239
|
+
continue;
|
|
240
|
+
if (!tryArmDerivedLatch(anchors, 'version', key, 'stalled', input.now))
|
|
241
|
+
continue;
|
|
242
|
+
const stalledId = `${ep.attentionItemId}:stalled`;
|
|
243
|
+
derived.push(stalledId);
|
|
244
|
+
this.countersCalm.ceilingConfirms += 1;
|
|
245
|
+
this.maybeProposeFix(input, ep);
|
|
246
|
+
const body = this.renderBody(input, ep);
|
|
247
|
+
if (this.speaks(input) || ep.attentionItemId) {
|
|
248
|
+
effects.push({
|
|
249
|
+
kind: 'raise', itemId: stalledId, priority: 'HIGH', silent: false,
|
|
250
|
+
title: 'Machine coherence: still drifted — this now needs a look',
|
|
251
|
+
summary: `This began as a calm self-healing notice at ${new Date(ep.openedAtMs).toISOString()} and has stalled past the ceiling.`,
|
|
252
|
+
description: `This began as a calm self-healing notice at ${new Date(ep.openedAtMs).toISOString()} and has stalled past the ceiling.\n\n${body.description}`,
|
|
253
|
+
});
|
|
254
|
+
}
|
|
255
|
+
else {
|
|
256
|
+
this.countersCalm.escalationRaiseFailed += 1;
|
|
257
|
+
}
|
|
258
|
+
this.persist();
|
|
259
|
+
this.log({ t: 'derived-stalled', episodeId: ep.episodeId, key });
|
|
260
|
+
break;
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
// :recurring — the flap brake (any dimension's key, durable cycle history).
|
|
264
|
+
if (this.cfg.flapBrakeEnabled && ep.attentionItemId && !derived.some((d) => d.endsWith(':recurring'))) {
|
|
265
|
+
const keys = ep.skewRowIdentities.map((id) => ({ d: dimensionOf(id), k: keyOf(id) }));
|
|
266
|
+
for (const { d, k } of keys) {
|
|
267
|
+
if (!flapBrakeEligible(anchors, d, k, this.cfg.skewFlapThreshold, input.now))
|
|
268
|
+
continue;
|
|
269
|
+
if (!tryArmDerivedLatch(anchors, d, k, 'recurring', input.now))
|
|
270
|
+
continue;
|
|
271
|
+
const recurringId = `${ep.attentionItemId}:recurring`;
|
|
272
|
+
derived.push(recurringId);
|
|
273
|
+
this.countersCalm.flapBrakeFires += 1;
|
|
274
|
+
effects.push({
|
|
275
|
+
kind: 'raise', itemId: recurringId, priority: 'HIGH', silent: false,
|
|
276
|
+
title: 'Machine coherence: keeps recurring — a recurring transient is a real defect',
|
|
277
|
+
summary: `${k} has drifted and self-healed ${this.cfg.skewFlapThreshold}+ times in 24 h. Something keeps re-introducing this divergence.`,
|
|
278
|
+
description: `${k} has drifted and self-healed ${this.cfg.skewFlapThreshold}+ times in 24 h. Something keeps re-introducing this divergence — worth finding the driver rather than watching the cycle.`,
|
|
279
|
+
});
|
|
280
|
+
this.persist();
|
|
281
|
+
this.log({ t: 'derived-recurring', episodeId: ep.episodeId, key: k });
|
|
282
|
+
break;
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
}
|
|
286
|
+
/** calm-alerting observability counters (surfaced on the status route). */
|
|
287
|
+
countersCalm = {
|
|
288
|
+
progressExtensions: 0, ceilingConfirms: 0, flapBrakeFires: 0,
|
|
289
|
+
calmRaises: 0, calmRaisesSilent: 0, silentResolves: 0,
|
|
290
|
+
resolveNotesSuppressed: 0, waveBackstopFires: 0, escalationRaiseFailed: 0,
|
|
291
|
+
};
|
|
162
292
|
episodeParticipants(ep) {
|
|
163
293
|
const s = new Set();
|
|
164
294
|
for (const id of ep.skewRowIdentities)
|
|
@@ -197,15 +327,54 @@ export class MachineCoherenceEpisodeManager {
|
|
|
197
327
|
this.pruneRecurrence(input.now);
|
|
198
328
|
const itemsToday = this.file.recurrence.newItemTimestamps.length;
|
|
199
329
|
const overCap = itemsToday >= this.cfg.maxEpisodeItemsPerDay;
|
|
330
|
+
// calm-alerting M-P2: classify + decide priority/copy/notification mode.
|
|
331
|
+
ep.calmClass = this.classifyCalm(rowIds) || undefined;
|
|
332
|
+
// An episode already past the stall ceiling AT OPEN raises loud directly
|
|
333
|
+
// (the calm phase never existed for it).
|
|
334
|
+
const stalledAtOpen = ep.calmClass === true && this.anyVersionKeyPastCeiling(rowIds, input.now);
|
|
335
|
+
if (stalledAtOpen)
|
|
336
|
+
ep.calmClass = undefined;
|
|
200
337
|
if (this.speaks(input) && !overCap) {
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
338
|
+
const calm = ep.calmClass === true;
|
|
339
|
+
// Calm copy carries NO fix prompt (self-heal in progress — nothing to decide);
|
|
340
|
+
// the prompt appears only on loud raises (stall/flap/major-minor/flag).
|
|
341
|
+
if (!calm)
|
|
342
|
+
this.maybeProposeFix(input, ep);
|
|
343
|
+
const body = calm ? this.renderCalmBody(input, ep) : this.renderBody(input, ep);
|
|
204
344
|
ep.itemRaisedAt = input.now;
|
|
205
345
|
ep.attentionItemId = this.itemId(episodeId);
|
|
206
346
|
this.counters.itemsRaised += 1;
|
|
207
347
|
this.file.recurrence.newItemTimestamps.push(input.now);
|
|
208
|
-
|
|
348
|
+
const silent = calm && !this.cfg.calmRaiseNotify;
|
|
349
|
+
const priority = calm ? this.cfg.patchSkewPriority : 'HIGH';
|
|
350
|
+
if (calm) {
|
|
351
|
+
this.countersCalm.calmRaises += 1;
|
|
352
|
+
if (silent)
|
|
353
|
+
this.countersCalm.calmRaisesSilent += 1;
|
|
354
|
+
}
|
|
355
|
+
effects.push({ kind: 'raise', itemId: ep.attentionItemId, title: body.title, summary: body.summary, description: body.description, ...(this.cfg.calmEnabled ? { priority, silent } : {}) });
|
|
356
|
+
if (stalledAtOpen && this.file.anchors) {
|
|
357
|
+
// Consume the stalled latch so the derived path can't double inside 24 h.
|
|
358
|
+
for (const key of new Set(rowIds.filter((id) => dimensionOf(id) === 'version').map((id) => keyOf(id)))) {
|
|
359
|
+
tryArmDerivedLatch(this.file.anchors, 'version', key, 'stalled', input.now);
|
|
360
|
+
}
|
|
361
|
+
this.countersCalm.ceilingConfirms += 1;
|
|
362
|
+
}
|
|
363
|
+
// Cross-key wave backstop: NON-reopen calm onsets only (a flapping key
|
|
364
|
+
// feeds the flap brake, never the wave count).
|
|
365
|
+
if (calm && this.cfg.calmEnabled && this.file.anchors) {
|
|
366
|
+
const threshold = this.cfg.calmWaveBackstopEnabled ? this.cfg.calmWaveThreshold : 0;
|
|
367
|
+
if (recordCalmOnsetAndCheckWave(this.file.anchors, input.now, threshold)) {
|
|
368
|
+
this.countersCalm.waveBackstopFires += 1;
|
|
369
|
+
effects.push({
|
|
370
|
+
kind: 'raise', itemId: `machine-coherence-wave:${input.now}`, priority: 'NORMAL', silent: false,
|
|
371
|
+
title: 'Machine coherence: an unusual number of self-healing episodes today',
|
|
372
|
+
summary: `${this.file.anchors.calmOnsetTimestamps.length} self-healing coherence episodes in the last 24 h — routine if updates are rolling; worth a look if not.`,
|
|
373
|
+
description: `${this.file.anchors.calmOnsetTimestamps.length} self-healing coherence episodes in the last 24 h — routine if updates are rolling; worth a look if not. Details: the machine-coherence status surface and jsonl log.`,
|
|
374
|
+
});
|
|
375
|
+
this.log({ t: 'wave-backstop', count: this.file.anchors.calmOnsetTimestamps.length });
|
|
376
|
+
}
|
|
377
|
+
}
|
|
209
378
|
}
|
|
210
379
|
else if (this.speaks(input) && overCap) {
|
|
211
380
|
// Give up LOUDLY, once per window (P19): jsonl-only item, one final note.
|
|
@@ -250,8 +419,19 @@ export class MachineCoherenceEpisodeManager {
|
|
|
250
419
|
effects.push({ kind: 'append', itemId: ep.attentionItemId, text: 'this divergence is flapping — recording silently until it stabilizes' });
|
|
251
420
|
}
|
|
252
421
|
else if (!latch.latched && this.speaks(input) && ep.attentionItemId) {
|
|
253
|
-
//
|
|
254
|
-
|
|
422
|
+
// calm-alerting M-P2 reopen visibility: the legacy raise with a REUSED id
|
|
423
|
+
// was silently swallowed by the createAttentionItem id-dedupe (the operator
|
|
424
|
+
// was never told a divergence returned). A reopen is now a visible APPEND
|
|
425
|
+
// on the existing item, riding the shared budget; calm-class reopens are
|
|
426
|
+
// silent (Near-Silent Notifications), loud-class reopens notify.
|
|
427
|
+
ep.calmClass = this.classifyCalm(rowIds) || undefined;
|
|
428
|
+
if (this.cfg.calmEnabled) {
|
|
429
|
+
effects.push({ kind: 'append', itemId: ep.attentionItemId, text: 'this divergence is back — re-opening', silent: ep.calmClass === true });
|
|
430
|
+
}
|
|
431
|
+
else {
|
|
432
|
+
// Legacy shape preserved bit-identically when the calm gate is dark.
|
|
433
|
+
effects.push({ kind: 'raise', itemId: ep.attentionItemId, title: 'Machine coherence: divergence is back', summary: 'this divergence is back — re-opening', description: 'this divergence is back — re-opening' });
|
|
434
|
+
}
|
|
255
435
|
}
|
|
256
436
|
// else: latched → jsonl-only (no append).
|
|
257
437
|
this.persist();
|
|
@@ -341,6 +521,10 @@ export class MachineCoherenceEpisodeManager {
|
|
|
341
521
|
if (pf.state !== 'proposed')
|
|
342
522
|
return { result: { ok: false, reason: 'already-in-flight' }, effects }; // single-flight (R4-N4)
|
|
343
523
|
pf.approvedAtMs = args.now;
|
|
524
|
+
// calm-alerting M-P2: an approval is an authenticated operator touch — the
|
|
525
|
+
// durable interacted bit (NEVER derived from pendingFix presence, which is
|
|
526
|
+
// auto-created at raise and cleared on every fix path).
|
|
527
|
+
ep.operatorInteracted = true;
|
|
344
528
|
if (pf.targetMachineId === this.lastSelfMachineId) {
|
|
345
529
|
// Divergent == raiser (mechanized): the raiser's own server writes + restarts.
|
|
346
530
|
pf.state = 'executing-verifying';
|
|
@@ -478,19 +662,90 @@ export class MachineCoherenceEpisodeManager {
|
|
|
478
662
|
// Record the close in the recurrence memory (R2-N2 — outlives close; the
|
|
479
663
|
// item id rides along so a §4.5 reopen reuses the SAME item/topic).
|
|
480
664
|
this.file.recurrence.recentlyClosed.push({ rowIdentities: [...ep.skewRowIdentities], closedAtMs: input.now, itemId: ep.attentionItemId });
|
|
481
|
-
if (this.
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
665
|
+
if (!this.cfg.calmEnabled) {
|
|
666
|
+
// Legacy narration, bit-identical when the calm gate is dark.
|
|
667
|
+
if (this.speaks(input) && ep.attentionItemId && reason === 'restored') {
|
|
668
|
+
const keys = ep.skewRowIdentities.map((id) => keyOf(id)).join(', ');
|
|
669
|
+
const nicks = [...this.episodeParticipants(ep)].map((m) => input.nicknameOf(m)).join(', ');
|
|
670
|
+
effects.push({ kind: 'resolve', itemId: ep.attentionItemId, note: `machine-coherence restored — ${keys} now agree across ${nicks}, held for ${this.cfg.resolveTicks} ticks` });
|
|
671
|
+
}
|
|
672
|
+
else if (this.speaks(input) && ep.attentionItemId) {
|
|
673
|
+
effects.push({ kind: 'resolve', itemId: ep.attentionItemId, note: this.closeNote(reason, ep, input) });
|
|
674
|
+
}
|
|
485
675
|
}
|
|
486
|
-
else if (
|
|
487
|
-
|
|
676
|
+
else if (ep.attentionItemId) {
|
|
677
|
+
// ── calm-alerting M-P2 close-out. Orphan self-closeout: item STATUS
|
|
678
|
+
// resolution is decoupled from speaks() — this machine transitions its
|
|
679
|
+
// OWN items on EVERY close reason (episode-scoped: the manager's own
|
|
680
|
+
// all-rows-cleared/expiry/manifest close fired). Note authorship is
|
|
681
|
+
// item-holder voice (the machine closing its own escalated item speaks,
|
|
682
|
+
// whether or not it is the current raiser; ≤2×-per-handoff residual
|
|
683
|
+
// disclosed in the spec). ──
|
|
684
|
+
const derived = ep.derivedItemIds ?? [];
|
|
685
|
+
const escalated = derived.length > 0;
|
|
686
|
+
const interacted = ep.operatorInteracted === true;
|
|
687
|
+
const notifying = interacted || escalated;
|
|
688
|
+
const latched = this.file.recurrence.reopenLatch?.latched === true;
|
|
689
|
+
// Resolve-note bounding: at most ONE note per item per reopenWindowMs;
|
|
690
|
+
// latched-flapping closes are jsonl-only (latched wins toward silence,
|
|
691
|
+
// even over escalated — the derived items still resolve DONE).
|
|
692
|
+
const noteAt = (this.file.recurrence.resolveNoteAtByItem ??= {});
|
|
693
|
+
const lastNote = noteAt[ep.attentionItemId];
|
|
694
|
+
const bounded = lastNote !== undefined && input.now - lastNote < this.cfg.reopenWindowMs;
|
|
695
|
+
const suppressNote = latched || (bounded && !notifying);
|
|
696
|
+
if (!suppressNote) {
|
|
697
|
+
const note = escalated
|
|
698
|
+
? (reason === 'restored'
|
|
699
|
+
? `healed — the earlier ${derived.some((d) => d.endsWith(':stalled')) ? 'stalled' : 'recurring'} alert is withdrawn (${ep.skewRowIdentities.map((id) => keyOf(id)).join(', ')} agree again)`
|
|
700
|
+
: `${this.closeNote(reason, ep, input)} — the earlier escalated alert no longer applies`)
|
|
701
|
+
: (reason === 'restored'
|
|
702
|
+
? `machine-coherence restored — ${ep.skewRowIdentities.map((id) => keyOf(id)).join(', ')} now agree across ${[...this.episodeParticipants(ep)].map((m) => input.nicknameOf(m)).join(', ')}, held for ${this.cfg.resolveTicks} ticks`
|
|
703
|
+
: this.closeNote(reason, ep, input));
|
|
704
|
+
const silent = !notifying && this.cfg.silentResolveNote;
|
|
705
|
+
if (silent)
|
|
706
|
+
this.countersCalm.silentResolves += 1;
|
|
707
|
+
noteAt[ep.attentionItemId] = input.now;
|
|
708
|
+
effects.push({ kind: 'resolve', itemId: ep.attentionItemId, note, silent });
|
|
709
|
+
}
|
|
710
|
+
else {
|
|
711
|
+
this.countersCalm.resolveNotesSuppressed += 1;
|
|
712
|
+
effects.push({ kind: 'resolve-status', itemId: ep.attentionItemId });
|
|
713
|
+
}
|
|
714
|
+
// Every derived item resolves DONE (status-only — the close note carries
|
|
715
|
+
// the withdrawal language; no separate note per derived item).
|
|
716
|
+
for (const d of derived)
|
|
717
|
+
effects.push({ kind: 'resolve-status', itemId: d });
|
|
488
718
|
}
|
|
489
719
|
this.counters.closes[reason] = (this.counters.closes[reason] ?? 0) + 1;
|
|
490
720
|
this.resolveCleanTicks = 0;
|
|
491
721
|
this.file.episode = null;
|
|
492
722
|
this.persist();
|
|
493
|
-
this.log({ t: 'close', episodeId: ep.episodeId, reason });
|
|
723
|
+
this.log({ t: 'close', episodeId: ep.episodeId, reason, escalated: (ep.derivedItemIds?.length ?? 0) > 0, interacted: ep.operatorInteracted === true });
|
|
724
|
+
}
|
|
725
|
+
/** Any version key on these rows already past the stall ceiling (anchors read). */
|
|
726
|
+
anyVersionKeyPastCeiling(rowIds, _now) {
|
|
727
|
+
const anchors = this.file.anchors;
|
|
728
|
+
if (!anchors)
|
|
729
|
+
return false;
|
|
730
|
+
return rowIds.some((id) => {
|
|
731
|
+
if (dimensionOf(id) !== 'version')
|
|
732
|
+
return false;
|
|
733
|
+
const e = anchors.entries[mkAnchorKey('version', keyOf(id))];
|
|
734
|
+
return !!e && e.skewOnsetAtMs !== 0 && e.activeSkewMs >= this.cfg.versionSkewStallCeilingMs;
|
|
735
|
+
});
|
|
736
|
+
}
|
|
737
|
+
/**
|
|
738
|
+
* Calm-copy body (calm-alerting M-P2): the observed skew + self-heal-in-
|
|
739
|
+
* progress + will-escalate-if-stalled. Deliberately NO fix-it/leave-it prompt
|
|
740
|
+
* — a decision prompt on a self-healing notice is the contradictory UX the
|
|
741
|
+
* round-1 review flagged; the prompt arrives with the stall/flap escalation.
|
|
742
|
+
*/
|
|
743
|
+
renderCalmBody(input, ep) {
|
|
744
|
+
const nicks = [...this.episodeParticipants(ep)].map((m) => input.nicknameOf(m));
|
|
745
|
+
const keys = [...new Set(ep.skewRowIdentities.map((id) => keyOf(id)))].join(', ');
|
|
746
|
+
const summary = `My machines are briefly out of step (${keys}) while an update rolls across ${nicks.join(', ')} — self-heal is in progress.`;
|
|
747
|
+
const description = `${summary}\n\nNo action needed: the auto-updater is closing the gap and I'm watching it. If it stalls past the ceiling I'll escalate loudly with a decision prompt; if it keeps recurring I'll flag the pattern.`;
|
|
748
|
+
return { title: 'Machine coherence: syncing across machines (self-healing)', summary, description };
|
|
494
749
|
}
|
|
495
750
|
closeNote(reason, ep, input) {
|
|
496
751
|
switch (reason) {
|
|
@@ -509,12 +764,17 @@ export class MachineCoherenceEpisodeManager {
|
|
|
509
764
|
* the conversational reply path. Suppresses the §4.4 escalation for this
|
|
510
765
|
* episode; cleared on a genuine §4.5 recurrence re-open (b2).
|
|
511
766
|
*/
|
|
512
|
-
setOperatorAck(ack) {
|
|
767
|
+
setOperatorAck(ack, opts) {
|
|
513
768
|
if (!this.file.episode)
|
|
514
769
|
return;
|
|
515
770
|
this.file.episode.operatorAck = ack;
|
|
771
|
+
// calm-alerting M-P2: the interacted bit requires the same evidence shape as
|
|
772
|
+
// approveFix — a caller that cannot assert a verified operator sets the ack
|
|
773
|
+
// (escalation suppression, today's contract) but NOT the interacted bit.
|
|
774
|
+
if (ack && opts?.verifiedOperator === true)
|
|
775
|
+
this.file.episode.operatorInteracted = true;
|
|
516
776
|
this.persist();
|
|
517
|
-
this.log({ t: ack ? 'operator-ack' : 'operator-ack-clear', episodeId: this.file.episode.episodeId });
|
|
777
|
+
this.log({ t: ack ? 'operator-ack' : 'operator-ack-clear', episodeId: this.file.episode.episodeId, verified: opts?.verifiedOperator === true });
|
|
518
778
|
}
|
|
519
779
|
/** A suspended episode past the expiry closes `expired-peer-gone` (§4.3). Called each tick by the sentinel. */
|
|
520
780
|
expireIfStale(now, nicknameOf) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"machineCoherenceEpisodeManager.js","sourceRoot":"","sources":["../../src/monitoring/machineCoherenceEpisodeManager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"machineCoherenceEpisodeManager.js","sourceRoot":"","sources":["../../src/monitoring/machineCoherenceEpisodeManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Rope escalation sink router (calm-transient-episode-alerting M-P3).
|
|
3
|
+
*
|
|
4
|
+
* Routes the prober's escalations on their SOURCE-DECLARED class:
|
|
5
|
+
* - `actionable` (or UNDECLARED — fail-loud) → a hub attention item.
|
|
6
|
+
* - `informational` → demoted to the audit log + digest, but ONLY under the
|
|
7
|
+
* delivery-true conjunction verified LIVE on this machine: rope-health
|
|
8
|
+
* enabled AND digestTopicId set AND the rope-health-digest job RUNNABLE IN
|
|
9
|
+
* THIS PROCESS (a live scheduler handle with the job loaded + enabled — the
|
|
10
|
+
* lease read is NOT the conjunct: a promoted standby holds the lease with no
|
|
11
|
+
* scheduler until restart). Any miss ⇒ fall back to the hub item.
|
|
12
|
+
*
|
|
13
|
+
* Both classes are deduped per (peer, kind) per 24 h with a visible silent
|
|
14
|
+
* "Nth episode" count append — an oscillating rope is a visible recurring
|
|
15
|
+
* defect, not a quiet audit fact. The dedupe is in-memory (restart reset is an
|
|
16
|
+
* accepted bounded consequence: re-tripping needs exhaustAttempts consecutive
|
|
17
|
+
* failures at the floor cadence).
|
|
18
|
+
*
|
|
19
|
+
* No id-string parsing anywhere: class/peer/kind ride the typed payload.
|
|
20
|
+
*/
|
|
21
|
+
import type { MeshEndpoint } from '../core/types.js';
|
|
22
|
+
export interface RopeSinkItem {
|
|
23
|
+
id: string;
|
|
24
|
+
title: string;
|
|
25
|
+
body: string;
|
|
26
|
+
class?: 'informational' | 'actionable';
|
|
27
|
+
peer?: string;
|
|
28
|
+
kind?: MeshEndpoint['kind'];
|
|
29
|
+
}
|
|
30
|
+
export interface RopeSinkDeps {
|
|
31
|
+
telegram: () => {
|
|
32
|
+
createAttentionItem(item: {
|
|
33
|
+
id: string;
|
|
34
|
+
title: string;
|
|
35
|
+
summary: string;
|
|
36
|
+
description: string;
|
|
37
|
+
category: string;
|
|
38
|
+
priority: 'URGENT' | 'HIGH' | 'NORMAL' | 'LOW';
|
|
39
|
+
sourceContext: string;
|
|
40
|
+
}): Promise<unknown>;
|
|
41
|
+
getAttentionItem(id: string): {
|
|
42
|
+
topicId?: number;
|
|
43
|
+
} | undefined;
|
|
44
|
+
sendToTopic(topicId: number, text: string, options?: {
|
|
45
|
+
silent?: boolean;
|
|
46
|
+
}): Promise<unknown>;
|
|
47
|
+
} | null;
|
|
48
|
+
/** LIVE read: rope-health enabled AND digestTopicId configured. */
|
|
49
|
+
digestConfigured: () => boolean;
|
|
50
|
+
/** LIVE read: a JobScheduler instance runs in THIS process with the
|
|
51
|
+
* rope-health-digest job loaded + enabled. */
|
|
52
|
+
digestRunnableHere: () => boolean;
|
|
53
|
+
/** Self nickname for the direction label. */
|
|
54
|
+
selfNickname: () => string;
|
|
55
|
+
/** Append one audit row to the sentinel-events jsonl (metadata only). */
|
|
56
|
+
audit: (row: Record<string, unknown>) => void;
|
|
57
|
+
now?: () => number;
|
|
58
|
+
}
|
|
59
|
+
export declare function makeRopeSinkRouter(deps: RopeSinkDeps): (item: RopeSinkItem) => unknown;
|
|
60
|
+
//# sourceMappingURL=ropeSinkRouter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ropeSinkRouter.d.ts","sourceRoot":"","sources":["../../src/monitoring/ropeSinkRouter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,eAAe,GAAG,YAAY,CAAC;IACvC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;CAC7B;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM;QACd,mBAAmB,CAAC,IAAI,EAAE;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAC;YAAC,WAAW,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;YAAC,aAAa,EAAE,MAAM,CAAA;SAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;QAC1M,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG;YAAE,OAAO,CAAC,EAAE,MAAM,CAAA;SAAE,GAAG,SAAS,CAAC;QAC/D,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;YAAE,MAAM,CAAC,EAAE,OAAO,CAAA;SAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;KAC9F,GAAG,IAAI,CAAC;IACT,mEAAmE;IACnE,gBAAgB,EAAE,MAAM,OAAO,CAAC;IAChC;mDAC+C;IAC/C,kBAAkB,EAAE,MAAM,OAAO,CAAC;IAClC,6CAA6C;IAC7C,YAAY,EAAE,MAAM,MAAM,CAAC;IAC3B,yEAAyE;IACzE,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;IAC9C,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACpB;AAID,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,YAAY,GAAG,CAAC,IAAI,EAAE,YAAY,KAAK,OAAO,CA8CtF"}
|