instar 1.3.1325 → 1.3.1326

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.
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Serializes overlapping invocations of an async tick without dropping any.
3
+ *
4
+ * Contract: every caller receives the result of an evaluation that STARTED
5
+ * AT OR AFTER its call. At most one evaluation runs at a time and at most one
6
+ * more is queued behind it; callers that arrive while one is already queued
7
+ * share that queued evaluation (it has not started yet, so it still satisfies
8
+ * the contract). A failed in-flight evaluation does not reject the queued
9
+ * callers — they get their own evaluation's outcome.
10
+ *
11
+ * This replaces a "skip if already ticking, return the last snapshot" guard,
12
+ * which handed an explicit caller a stale mid-flight read (null before the
13
+ * first durable save) whenever a background tick happened to be running.
14
+ */
15
+ export declare class TickSerializer<T> {
16
+ private inFlight;
17
+ private queued;
18
+ run(evaluate: () => Promise<T>): Promise<T>;
19
+ private start;
20
+ }
21
+ //# sourceMappingURL=TickSerializer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TickSerializer.d.ts","sourceRoot":"","sources":["../../src/core/TickSerializer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,qBAAa,cAAc,CAAC,CAAC;IAC3B,OAAO,CAAC,QAAQ,CAA2B;IAC3C,OAAO,CAAC,MAAM,CAA2B;IAEzC,GAAG,CAAC,QAAQ,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAY3C,OAAO,CAAC,KAAK;CAcd"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Serializes overlapping invocations of an async tick without dropping any.
3
+ *
4
+ * Contract: every caller receives the result of an evaluation that STARTED
5
+ * AT OR AFTER its call. At most one evaluation runs at a time and at most one
6
+ * more is queued behind it; callers that arrive while one is already queued
7
+ * share that queued evaluation (it has not started yet, so it still satisfies
8
+ * the contract). A failed in-flight evaluation does not reject the queued
9
+ * callers — they get their own evaluation's outcome.
10
+ *
11
+ * This replaces a "skip if already ticking, return the last snapshot" guard,
12
+ * which handed an explicit caller a stale mid-flight read (null before the
13
+ * first durable save) whenever a background tick happened to be running.
14
+ */
15
+ export class TickSerializer {
16
+ inFlight = null;
17
+ queued = null;
18
+ run(evaluate) {
19
+ if (this.queued)
20
+ return this.queued;
21
+ if (!this.inFlight)
22
+ return this.start(evaluate);
23
+ const prior = this.inFlight;
24
+ const queued = prior.then(() => undefined, () => undefined).then(() => {
25
+ this.queued = null;
26
+ return this.start(evaluate);
27
+ });
28
+ this.queued = queued;
29
+ return queued;
30
+ }
31
+ start(evaluate) {
32
+ let current;
33
+ try {
34
+ current = evaluate();
35
+ }
36
+ catch (error) {
37
+ // @silent-fallback-ok — not a fallback: a synchronous throw is surfaced to the caller as the returned rejection.
38
+ current = Promise.reject(error);
39
+ }
40
+ const tracked = current.finally(() => {
41
+ if (this.inFlight === tracked)
42
+ this.inFlight = null;
43
+ });
44
+ this.inFlight = tracked;
45
+ return tracked;
46
+ }
47
+ }
48
+ //# sourceMappingURL=TickSerializer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TickSerializer.js","sourceRoot":"","sources":["../../src/core/TickSerializer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,MAAM,OAAO,cAAc;IACjB,QAAQ,GAAsB,IAAI,CAAC;IACnC,MAAM,GAAsB,IAAI,CAAC;IAEzC,GAAG,CAAC,QAA0B;QAC5B,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC,MAAM,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAChD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC5B,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;YACpE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;YACnB,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,KAAK,CAAC,QAA0B;QACtC,IAAI,OAAmB,CAAC;QACxB,IAAI,CAAC;YACH,OAAO,GAAG,QAAQ,EAAE,CAAC;QACvB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,iHAAiH;YACjH,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAClC,CAAC;QACD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE;YACnC,IAAI,IAAI,CAAC,QAAQ,KAAK,OAAO;gBAAE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACtD,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,OAAO,OAAO,CAAC;IACjB,CAAC;CACF"}
@@ -150,7 +150,7 @@ export declare class WindowRunCadenceExecutor {
150
150
  private readonly store;
151
151
  private readonly deps;
152
152
  private readonly cfg;
153
- private ticking;
153
+ private readonly ticks;
154
154
  constructor(store: WindowRunCadenceStore, deps: WindowRunCadenceDeps, config?: WindowRunCadenceConfig);
155
155
  status(): {
156
156
  enabled: boolean;
@@ -159,6 +159,7 @@ export declare class WindowRunCadenceExecutor {
159
159
  state: WindowRunCadenceDocument | null;
160
160
  };
161
161
  tick(): Promise<WindowRunCadenceDocument | null>;
162
+ private tickOnce;
162
163
  private initialize;
163
164
  private maybeRequestCheckpoint;
164
165
  private materializeDueIntervals;
@@ -1 +1 @@
1
- {"version":3,"file":"WindowRunCadenceExecutor.d.ts","sourceRoot":"","sources":["../../src/core/WindowRunCadenceExecutor.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,yBAAyB,EAAwB,MAAM,iCAAiC,CAAC;AAIvG,eAAO,MAAM,0BAA0B,EAAG,CAAU,CAAC;AACrD,eAAO,MAAM,2BAA2B;;;;;;;;;CAS9B,CAAC;AAEX,MAAM,WAAW,sBAAsB;IACrC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,uEAAuE;IACvE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,4BAA4B;IAC3C,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,8BAA8B;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,eAAe,GAAG,YAAY,GAAG,WAAW,GAAG,QAAQ,CAAC;IACjE,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,eAAe,GAAG,YAAY,GAAG,WAAW,GAAG,QAAQ,CAAC;IAChE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iFAAiF;IACjF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,yEAAyE;IACzE,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,CAAC,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,SAAS,EAAE,4BAA4B,EAAE,CAAC;IAC1C,WAAW,EAAE,8BAA8B,EAAE,CAAC;IAC9C,OAAO,EAAE,0BAA0B,EAAE,CAAC;IACtC,OAAO,CAAC,EAAE;QACR,EAAE,EAAE,MAAM,CAAC;QACX,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,OAAO,CAAC;QAClB,cAAc,EAAE,MAAM,CAAC;QACvB,wBAAwB,EAAE,MAAM,CAAC;QACjC,yBAAyB,CAAC,EAAE,MAAM,CAAC;QACnC,qBAAqB,CAAC,EAAE,MAAM,CAAC;KAChC,CAAC;IACF,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,MAAM,yBAAyB,GAAG,IAAI,CAAC;IACpD,iFAAiF;IACjF,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,yBAAyB,CAAC,KAAK,OAAO,CAAC;IACjE,2BAA2B,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,yBAAyB,CAAC,KAAK,MAAM,GAAG,IAAI,CAAC;IAC3F,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE;QAC5B,KAAK,EAAE,QAAQ,CAAC,yBAAyB,CAAC,CAAC;QAC3C,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;KACjB,KAAK,OAAO,CAAC;QAAE,SAAS,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvD,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE;QAC3B,KAAK,EAAE,QAAQ,CAAC,yBAAyB,CAAC,CAAC;QAC3C,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;KACd,KAAK,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACrC,yEAAyE;IACzE,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE;QACxB,KAAK,EAAE,QAAQ,CAAC,yBAAyB,CAAC,CAAC;QAC3C,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;KAClB,KAAK,MAAM,CAAC;IACb,+FAA+F;IAC/F,sBAAsB,CAAC,EAAE,CAAC,OAAO,EAAE;QACjC,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,QAAQ,CAAC,0BAA0B,CAAC,CAAC;QAC7C,YAAY,EAAE,MAAM,CAAC;KACtB,KAAK;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACnC,gCAAgC,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;IAC9F,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,yBAAyB,CAAC,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAChH,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACpB;AAkBD,wBAAgB,4BAA4B,CAAC,KAAK,EAAE;IAClD,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB,GAAG,MAAM,CAWT;AAED,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAKxG;AAMD,qBAAa,qBAAqB;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;gBAE5B,QAAQ,EAAE,MAAM;IAK5B,IAAI,IAAI,wBAAwB,GAAG,IAAI;IAWvC,IAAI,CAAC,KAAK,EAAE,wBAAwB,GAAG,IAAI;IAarC,YAAY,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAUvD,OAAO,CAAC,QAAQ;CAMjB;AAGD,qBAAa,wBAAwB;IAKjC,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,IAAI;IALvB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAmC;IACvD,OAAO,CAAC,OAAO,CAAS;gBAGL,KAAK,EAAE,qBAAqB,EAC5B,IAAI,EAAE,oBAAoB,EAC3C,MAAM,GAAE,sBAA2B;IAkBrC,MAAM,IAAI;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC,CAAC;QAAC,KAAK,EAAE,wBAAwB,GAAG,IAAI,CAAA;KAAE;IAkBvJ,IAAI,IAAI,OAAO,CAAC,wBAAwB,GAAG,IAAI,CAAC;IAkDtD,OAAO,CAAC,UAAU;YAqBJ,sBAAsB;IA+BpC,OAAO,CAAC,uBAAuB;YA4BjB,qBAAqB;YA2ErB,aAAa;IA4B3B,OAAO,CAAC,IAAI;IAWZ,OAAO,CAAC,SAAS;IAiBjB,OAAO,CAAC,WAAW;IAOnB,OAAO,CAAC,GAAG;CAKZ"}
1
+ {"version":3,"file":"WindowRunCadenceExecutor.d.ts","sourceRoot":"","sources":["../../src/core/WindowRunCadenceExecutor.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import fs from 'node:fs';
3
3
  import path from 'node:path';
4
4
  import lockfile from 'proper-lockfile';
5
5
  import { SafeFsExecutor } from './SafeFsExecutor.js';
6
+ import { TickSerializer } from './TickSerializer.js';
6
7
  import { sign as signEd25519, verify as verifyEd25519 } from '../threadline/ThreadlineCrypto.js';
7
8
  export const WINDOW_RUN_CADENCE_VERSION = 1;
8
9
  export const WINDOW_RUN_CADENCE_DEFAULTS = {
@@ -123,7 +124,7 @@ export class WindowRunCadenceExecutor {
123
124
  store;
124
125
  deps;
125
126
  cfg;
126
- ticking = false;
127
+ ticks = new TickSerializer();
127
128
  constructor(store, deps, config = {}) {
128
129
  this.store = store;
129
130
  this.deps = deps;
@@ -160,56 +161,57 @@ export class WindowRunCadenceExecutor {
160
161
  };
161
162
  }
162
163
  async tick() {
163
- if (!this.cfg.enabled || this.ticking)
164
+ if (!this.cfg.enabled)
164
165
  return this.store.load();
165
- this.ticking = true;
166
- try {
167
- return await this.store.withMutation(async () => {
168
- const liveness = this.deps.getLiveness();
169
- if (!liveness)
170
- return this.store.load();
171
- const now = this.now();
172
- let state = this.store.load();
173
- // Registration/preparation is not window execution. Do not start a
174
- // clock, prompt, miss an interval, or report until the five-predicate
175
- // authority has actually promoted the run and stamped activation.
176
- if (!state && (liveness.status !== 'active' || !liveness.activatedAt))
177
- return null;
178
- if (this.deps.canAct && !this.deps.canAct(liveness))
179
- return state;
180
- if (!state || !this.sameBinding(state, liveness)) {
181
- if (state && state.status !== 'closed')
182
- throw new Error('window-run-cadence-active-binding-exists');
183
- state = this.initialize(liveness);
184
- this.store.save(state);
185
- }
186
- if (livenessTerminal(liveness.status)) {
187
- state.status = 'closed';
188
- state.closedAt ??= now;
189
- state.lastTickAt = now;
190
- this.store.save(state);
191
- return state;
192
- }
193
- // A verified authority rebind changes only the executor identity, not
194
- // the cadence binding or its elapsed clock/history.
195
- state.executorId = liveness.executorId;
196
- if (state.status === 'failed') {
197
- await this.notifyFailure(state, liveness);
198
- state.lastTickAt = now;
199
- this.store.save(state);
200
- return state;
201
- }
202
- await this.maybeRequestCheckpoint(state, liveness, now);
203
- this.materializeDueIntervals(state, liveness, now);
204
- await this.materializeDueReports(state, liveness, now);
166
+ // A tick requested while another is in flight (e.g. the HTTP tick racing the
167
+ // server's initial background tick) waits for a fresh evaluation instead of
168
+ // returning a mid-flight snapshot — which, before the first save, is null
169
+ // and surfaced as a false "not registered" 404.
170
+ return this.ticks.run(() => this.tickOnce());
171
+ }
172
+ tickOnce() {
173
+ return this.store.withMutation(async () => {
174
+ const liveness = this.deps.getLiveness();
175
+ if (!liveness)
176
+ return this.store.load();
177
+ const now = this.now();
178
+ let state = this.store.load();
179
+ // Registration/preparation is not window execution. Do not start a
180
+ // clock, prompt, miss an interval, or report until the five-predicate
181
+ // authority has actually promoted the run and stamped activation.
182
+ if (!state && (liveness.status !== 'active' || !liveness.activatedAt))
183
+ return null;
184
+ if (this.deps.canAct && !this.deps.canAct(liveness))
185
+ return state;
186
+ if (!state || !this.sameBinding(state, liveness)) {
187
+ if (state && state.status !== 'closed')
188
+ throw new Error('window-run-cadence-active-binding-exists');
189
+ state = this.initialize(liveness);
190
+ this.store.save(state);
191
+ }
192
+ if (livenessTerminal(liveness.status)) {
193
+ state.status = 'closed';
194
+ state.closedAt ??= now;
205
195
  state.lastTickAt = now;
206
196
  this.store.save(state);
207
197
  return state;
208
- });
209
- }
210
- finally {
211
- this.ticking = false;
212
- }
198
+ }
199
+ // A verified authority rebind changes only the executor identity, not
200
+ // the cadence binding or its elapsed clock/history.
201
+ state.executorId = liveness.executorId;
202
+ if (state.status === 'failed') {
203
+ await this.notifyFailure(state, liveness);
204
+ state.lastTickAt = now;
205
+ this.store.save(state);
206
+ return state;
207
+ }
208
+ await this.maybeRequestCheckpoint(state, liveness, now);
209
+ this.materializeDueIntervals(state, liveness, now);
210
+ await this.materializeDueReports(state, liveness, now);
211
+ state.lastTickAt = now;
212
+ this.store.save(state);
213
+ return state;
214
+ });
213
215
  }
214
216
  initialize(liveness) {
215
217
  const startedAt = liveness.activatedAt;
@@ -1 +1 @@
1
- {"version":3,"file":"WindowRunCadenceExecutor.js","sourceRoot":"","sources":["../../src/core/WindowRunCadenceExecutor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WindowRunCadenceExecutor.js","sourceRoot":"","sources":["../../src/core/WindowRunCadenceExecutor.ts"],"names":[],"mappings":"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"}
@@ -201,7 +201,7 @@ export declare class WindowRunLivenessAuthority {
201
201
  private readonly store;
202
202
  private readonly deps;
203
203
  private readonly cfg;
204
- private ticking;
204
+ private readonly ticks;
205
205
  constructor(store: WindowRunLivenessStore, deps: WindowRunLivenessDeps, config?: WindowRunLivenessConfig);
206
206
  status(): {
207
207
  enabled: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"WindowRunLivenessAuthority.d.ts","sourceRoot":"","sources":["../../src/core/WindowRunLivenessAuthority.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WindowRunLivenessAuthority.d.ts","sourceRoot":"","sources":["../../src/core/WindowRunLivenessAuthority.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import fs from 'node:fs';
3
3
  import path from 'node:path';
4
4
  import lockfile from 'proper-lockfile';
5
5
  import { SafeFsExecutor } from './SafeFsExecutor.js';
6
+ import { TickSerializer } from './TickSerializer.js';
6
7
  export const WINDOW_RUN_LIVENESS_VERSION = 1;
7
8
  export const WINDOW_RUN_LIVENESS_DEFAULTS = {
8
9
  heartbeatMaxAgeMs: 90_000,
@@ -140,7 +141,7 @@ export class WindowRunLivenessAuthority {
140
141
  store;
141
142
  deps;
142
143
  cfg;
143
- ticking = false;
144
+ ticks = new TickSerializer();
144
145
  constructor(store, deps, config = {}) {
145
146
  this.store = store;
146
147
  this.deps = deps;
@@ -245,27 +246,23 @@ export class WindowRunLivenessAuthority {
245
246
  });
246
247
  }
247
248
  async tick() {
248
- if (!this.cfg.enabled || this.ticking)
249
+ if (!this.cfg.enabled)
249
250
  return this.store.load();
250
- this.ticking = true;
251
- try {
252
- return await this.store.withMutationAsync(async () => {
253
- const state = this.store.load();
254
- if (!state)
255
- return state;
256
- if (isTerminal(state.status)) {
257
- if (state.status === 'failed' || state.status === 'stalled') {
258
- const reason = state.finalSnapshot?.reason ?? state.transitions.at(-1)?.reason ?? state.status;
259
- await this.notifyOnce(state, `Window ${state.windowId} ${state.status}: ${reason}. Active has been revoked.`);
260
- }
261
- return state;
251
+ // An overlapping tick (HTTP vs. the server's background tick) waits for a
252
+ // fresh evaluation rather than returning a stale mid-flight snapshot.
253
+ return this.ticks.run(() => this.store.withMutationAsync(async () => {
254
+ const state = this.store.load();
255
+ if (!state)
256
+ return state;
257
+ if (isTerminal(state.status)) {
258
+ if (state.status === 'failed' || state.status === 'stalled') {
259
+ const reason = state.finalSnapshot?.reason ?? state.transitions.at(-1)?.reason ?? state.status;
260
+ await this.notifyOnce(state, `Window ${state.windowId} ${state.status}: ${reason}. Active has been revoked.`);
262
261
  }
263
- return await this.evaluateAndMaybeRecover(state);
264
- });
265
- }
266
- finally {
267
- this.ticking = false;
268
- }
262
+ return state;
263
+ }
264
+ return await this.evaluateAndMaybeRecover(state);
265
+ }));
269
266
  }
270
267
  freeze(reason, terminalStatus = 'closed') {
271
268
  return this.store.withMutation(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"WindowRunLivenessAuthority.js","sourceRoot":"","sources":["../../src/core/WindowRunLivenessAuthority.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WindowRunLivenessAuthority.js","sourceRoot":"","sources":["../../src/core/WindowRunLivenessAuthority.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  "schemaVersion": 1,
3
3
  "generatedFrom": "source-tree",
4
4
  "registrySha256": "35448db940d659661ebdfb09761439033f93a15157540ee2f6eecf825488e1e6",
5
- "packageVersion": "1.3.1325",
5
+ "packageVersion": "1.3.1326",
6
6
  "guards": [
7
7
  {
8
8
  "ref": "docs/audits/phase-b/f10-triage.md",
@@ -1,5 +1,5 @@
1
1
  {
2
- "sha256": "7faf6000f0311cb1b5b18d6de5459e09aeb39e8dcb601e51cea7268c2fff7ceb",
2
+ "sha256": "d90d07c2c5a5b6c959f248775815d7944bcd627cf49466514e7718abeecfc879",
3
3
  "registrySha256": "35448db940d659661ebdfb09761439033f93a15157540ee2f6eecf825488e1e6",
4
- "packageVersion": "1.3.1325"
4
+ "packageVersion": "1.3.1326"
5
5
  }
@@ -2,5 +2,5 @@
2
2
  "sha256": "35448db940d659661ebdfb09761439033f93a15157540ee2f6eecf825488e1e6",
3
3
  "articleCount": 92,
4
4
  "generatedFrom": "docs/STANDARDS-REGISTRY.md",
5
- "packageVersion": "1.3.1325"
5
+ "packageVersion": "1.3.1326"
6
6
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "instar",
3
- "version": "1.3.1325",
3
+ "version": "1.3.1326",
4
4
  "description": "Coherence infrastructure for self-evolving AI agents — on the Claude Code or Codex subscription you already have.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -27,6 +27,70 @@ from pathlib import Path
27
27
 
28
28
  DEFAULT_STATE_DIR = os.path.expanduser("~/.instar/telemetry")
29
29
 
30
+ SPIKE_THRESHOLD = 2.0 # Alert if current is > 2x previous
31
+
32
+
33
+ def send_telegram_alert(message: str) -> bool:
34
+ """Send a Telegram alert to Justin via Dawn Server. Returns True if successful."""
35
+ try:
36
+ result = subprocess.run(
37
+ ["python3", os.path.expanduser(".claude/scripts/telegram-send.py"), message, "--silent"],
38
+ cwd=os.path.expanduser("~/Documents/Projects/the-portal"),
39
+ capture_output=True,
40
+ text=True,
41
+ timeout=15,
42
+ )
43
+ return result.returncode == 0
44
+ except Exception as e:
45
+ print(f"Warning: Failed to send Telegram alert: {e}", file=sys.stderr)
46
+ return False
47
+
48
+
49
+ def detect_significant_changes(current_snapshot: dict, state_dir: str) -> dict:
50
+ """Compare current metrics to previous snapshot and detect significant changes."""
51
+ changes = {}
52
+
53
+ history_file = Path(state_dir) / "telemetry.jsonl"
54
+ if not history_file.exists():
55
+ return changes
56
+
57
+ # Read last entry (previous snapshot)
58
+ try:
59
+ lines = history_file.read_text().strip().split("\n")
60
+ if not lines:
61
+ return changes
62
+ prev_snapshot = json.loads(lines[-1])
63
+ except (json.JSONDecodeError, IndexError):
64
+ return changes
65
+
66
+ # Check if npm data is stale (not published for today/yesterday)
67
+ current_end_date = current_snapshot.get("npm", {}).get("end_date")
68
+ prev_end_date = prev_snapshot.get("npm", {}).get("end_date")
69
+
70
+ # Skip spike detection if data hasn't changed since last run
71
+ if current_end_date and prev_end_date and current_end_date == prev_end_date:
72
+ changes["npm_stale"] = {
73
+ "end_date": current_end_date,
74
+ "message": f"npm data unpublished since {current_end_date}; skipping spike comparison",
75
+ }
76
+ return changes
77
+
78
+ # Compare npm downloads only if data is fresh
79
+ current_npm = current_snapshot.get("npm", {}).get("last_day")
80
+ prev_npm = prev_snapshot.get("npm", {}).get("last_day")
81
+
82
+ if current_npm and prev_npm and prev_npm > 0:
83
+ ratio = current_npm / prev_npm
84
+ if ratio > SPIKE_THRESHOLD:
85
+ changes["npm_spike"] = {
86
+ "previous": prev_npm,
87
+ "current": current_npm,
88
+ "ratio": round(ratio, 2),
89
+ "end_date": current_end_date,
90
+ }
91
+
92
+ return changes
93
+
30
94
 
31
95
  def run_cmd(cmd, timeout=30):
32
96
  """Run a shell command and return stdout, or None on failure."""
@@ -50,17 +114,24 @@ def fetch_npm_downloads():
50
114
  }
51
115
 
52
116
  stats = {}
117
+ npm_end_date = None # Track when npm data is published up to
53
118
  for key, period in ranges.items():
54
119
  raw = run_cmd(["curl", "-sf", f"https://api.npmjs.org/downloads/point/{period}/instar"])
55
120
  if raw:
56
121
  try:
57
122
  data = json.loads(raw)
58
123
  stats[key] = data.get("downloads", 0)
124
+ # Capture end date from the API response
125
+ if key == "last_day" and "end" in data:
126
+ npm_end_date = data["end"]
59
127
  except json.JSONDecodeError:
60
128
  stats[key] = None
61
129
  else:
62
130
  stats[key] = None
63
131
 
132
+ # Store the end date so we can detect stale data
133
+ stats["end_date"] = npm_end_date
134
+
64
135
  # Also get daily breakdown for last 7 days
65
136
  week_ago = (datetime.now(timezone.utc) - timedelta(days=7)).strftime("%Y-%m-%d")
66
137
  raw = run_cmd(["curl", "-sf", f"https://api.npmjs.org/downloads/range/{week_ago}:{today}/instar"])
@@ -141,13 +212,18 @@ def compute_trends(state_dir):
141
212
  if len(recent) < 2:
142
213
  return None
143
214
 
144
- prev = recent[-2] if len(recent) >= 2 else None
215
+ # recent[-1] is the most recent snapshot (previous day)
216
+ # recent[0] is the oldest of the 7 (approximately 1 week ago)
217
+ prev = recent[-1] if len(recent) >= 2 else None
145
218
  week_ago = recent[0] if len(recent) >= 7 else recent[0]
146
219
 
147
220
  trends = {}
148
221
  if prev:
149
222
  prev_npm = prev.get("npm", {}).get("last_day")
223
+ prev_npm_end = prev.get("npm", {}).get("end_date")
150
224
  trends["npm_day_prev"] = prev_npm
225
+ if prev_npm_end:
226
+ trends["npm_day_prev_end_date"] = prev_npm_end
151
227
 
152
228
  if week_ago:
153
229
  week_npm = week_ago.get("npm", {}).get("last_week")
@@ -184,6 +260,8 @@ def format_summary(snapshot):
184
260
  lines.append(f" Last 24h: {npm.get('last_day', '?'):>8,}")
185
261
  lines.append(f" Last 7d: {npm.get('last_week', '?'):>8,}")
186
262
  lines.append(f" Last 30d: {npm.get('last_month', '?'):>8,}")
263
+ if npm.get("end_date"):
264
+ lines.append(f" Data published through: {npm.get('end_date')}")
187
265
 
188
266
  gh = snapshot.get("github", {})
189
267
  repo = gh.get("repo", {})
@@ -219,6 +297,7 @@ def main():
219
297
  parser.add_argument("--state-dir", default=DEFAULT_STATE_DIR, help="Directory for telemetry data")
220
298
  parser.add_argument("--json", action="store_true", help="Output JSON instead of human-readable")
221
299
  parser.add_argument("--quiet", action="store_true", help="No stdout output (just save)")
300
+ parser.add_argument("--no-alerts", action="store_true", help="Skip Telegram alerts (dryrun mode)")
222
301
  args = parser.parse_args()
223
302
 
224
303
  snapshot = {
@@ -231,6 +310,28 @@ def main():
231
310
  snapshot["github"] = fetch_github_metrics()
232
311
  snapshot["trends"] = compute_trends(args.state_dir)
233
312
 
313
+ # Detect significant changes (before saving)
314
+ changes = detect_significant_changes(snapshot, args.state_dir)
315
+ snapshot["alerts_sent"] = []
316
+ snapshot["change_notes"] = []
317
+
318
+ # Track stale data
319
+ if "npm_stale" in changes:
320
+ snapshot["change_notes"].append(f"⚠️ {changes['npm_stale']['message']}")
321
+
322
+ # Send alerts for significant changes
323
+ if changes and not args.no_alerts:
324
+ if "npm_spike" in changes:
325
+ spike = changes["npm_spike"]
326
+ alert_msg = (
327
+ f"🎯 Instar npm spike detected!\n"
328
+ f"Previous 24h: {spike['previous']} downloads\n"
329
+ f"Current 24h: {spike['current']} downloads\n"
330
+ f"Change: +{(spike['ratio'] - 1) * 100:.0f}% ({spike['ratio']}x)"
331
+ )
332
+ if send_telegram_alert(alert_msg):
333
+ snapshot["alerts_sent"].append("npm_spike_telegram")
334
+
234
335
  # Save
235
336
  save_snapshot(snapshot, args.state_dir)
236
337
 
@@ -239,7 +340,10 @@ def main():
239
340
  if args.json:
240
341
  print(json.dumps(snapshot, indent=2))
241
342
  else:
242
- print(format_summary(snapshot))
343
+ summary = format_summary(snapshot)
344
+ if snapshot.get("alerts_sent"):
345
+ summary += f"\n\n✅ Alerts sent: {', '.join(snapshot['alerts_sent'])}"
346
+ print(summary)
243
347
 
244
348
  return 0
245
349
 
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "$schema": "./builtin-manifest.schema.json",
3
3
  "schemaVersion": 1,
4
- "generatedAt": "2026-10-08T09:38:49.514Z",
5
- "instarVersion": "1.3.1325",
4
+ "generatedAt": "2026-10-08T19:18:31.246Z",
5
+ "instarVersion": "1.3.1326",
6
6
  "entryCount": 203,
7
7
  "entries": {
8
8
  "hook:session-start": {
@@ -2,7 +2,7 @@
2
2
  "schemaVersion": 1,
3
3
  "generatedFrom": "source-tree",
4
4
  "registrySha256": "35448db940d659661ebdfb09761439033f93a15157540ee2f6eecf825488e1e6",
5
- "packageVersion": "1.3.1325",
5
+ "packageVersion": "1.3.1326",
6
6
  "guards": [
7
7
  {
8
8
  "ref": "docs/audits/phase-b/f10-triage.md",
@@ -1,5 +1,5 @@
1
1
  {
2
- "sha256": "7faf6000f0311cb1b5b18d6de5459e09aeb39e8dcb601e51cea7268c2fff7ceb",
2
+ "sha256": "d90d07c2c5a5b6c959f248775815d7944bcd627cf49466514e7718abeecfc879",
3
3
  "registrySha256": "35448db940d659661ebdfb09761439033f93a15157540ee2f6eecf825488e1e6",
4
- "packageVersion": "1.3.1325"
4
+ "packageVersion": "1.3.1326"
5
5
  }
@@ -2,5 +2,5 @@
2
2
  "sha256": "35448db940d659661ebdfb09761439033f93a15157540ee2f6eecf825488e1e6",
3
3
  "articleCount": 92,
4
4
  "generatedFrom": "docs/STANDARDS-REGISTRY.md",
5
- "packageVersion": "1.3.1325"
5
+ "packageVersion": "1.3.1326"
6
6
  }
@@ -0,0 +1,40 @@
1
+ # Upgrade Guide — vNEXT
2
+
3
+ <!-- assembled-by: assemble-next-md -->
4
+ <!-- bump: patch -->
5
+
6
+ ## What Changed
7
+
8
+ `WindowRunLivenessAuthority.tick()` and `WindowRunCadenceExecutor.tick()` each had an
9
+ in-process "already ticking" flag. A tick that arrived while another was running skipped
10
+ the work and returned the last saved state. The server starts a background tick of both at
11
+ boot and every 60 seconds, so an HTTP `POST /window-run-liveness/cadence/tick` (or
12
+ `/window-run-liveness/tick`) that landed during one got a mid-flight read. Before the
13
+ cadence's first save that read is `null`, which the route reported as `404 window run
14
+ cadence is not registered`, although the cadence was being created at that moment.
15
+
16
+ Both classes now go through a small `TickSerializer` (`src/core/TickSerializer.ts`): an
17
+ overlapping caller waits and gets an evaluation that started after its call. At most one
18
+ tick runs and one more is queued; callers arriving while one is queued share it. A failed
19
+ running tick does not fail the queued caller. The cross-process file lock is unchanged.
20
+
21
+ ## What to Tell Your User
22
+
23
+ Nothing changes in normal use. A manual "tick now" on a window run could, by bad timing,
24
+ report that the run was not registered while it was being set up; it now waits a moment
25
+ and returns the real state.
26
+
27
+ ## Summary of New Capabilities
28
+
29
+ - A window-run tick requested while a background tick is running returns the fresh
30
+ result instead of a stale or empty one.
31
+
32
+ ## Evidence
33
+
34
+ - Reproduced the e2e failure ("identity keypair is mismatched" case, 404 instead of 200)
35
+ in 1 of 8 runs of `tests/e2e/window-run-liveness-production-wiring.test.ts` under a
36
+ 24-process CPU burn on a 16-core machine. With the fix: 25 of 25 runs passed under the
37
+ same burn plus a parallel e2e run.
38
+ - New unit tests reproduce the overlap deterministically for both classes (they fail on
39
+ the old code and pass on the new) and cover the serializer's ordering, coalescing and
40
+ failure isolation.
@@ -0,0 +1,138 @@
1
+ # Side-Effects Review — window-run ticks serialize instead of returning a stale snapshot
2
+
3
+ **Version / slug:** `window-run-tick-serialize`
4
+ **Date:** `2026-10-05`
5
+ **Author:** `Echo`
6
+ **Second-pass reviewer:** `independent reviewer subagent (see below)`
7
+
8
+ ## Summary of the change
9
+
10
+ `WindowRunLivenessAuthority.tick()` and `WindowRunCadenceExecutor.tick()` replaced an
11
+ in-process `ticking` boolean ("if already ticking, return `store.load()`") with a shared
12
+ `TickSerializer` (`src/core/TickSerializer.ts`). An overlapping caller now waits and gets
13
+ an evaluation that started at or after its call; at most one evaluation runs and one is
14
+ queued, and callers arriving while one is queued share it. The old guard handed an
15
+ explicit HTTP caller a mid-flight read whenever the server's own background tick (boot +
16
+ every 60s, `AgentServer.ts` `tickWindowRun`) was running; for the cadence executor before
17
+ its first save that read is `null`, which `POST /window-run-liveness/cadence/tick` returns
18
+ as `404 not registered`. That is the root cause of the
19
+ `tests/e2e/window-run-liveness-production-wiring.test.ts` "identity keypair is mismatched"
20
+ flake (404 vs 200 under load, passes in isolation). Files: the two classes, the new
21
+ helper, three unit test files.
22
+
23
+ ## Decision-point inventory
24
+
25
+ - `WindowRunLivenessAuthority.tick` — modify (scheduling only) — when two ticks overlap, the second now runs after the first instead of being skipped. The liveness decision logic inside the tick is untouched.
26
+ - `WindowRunCadenceExecutor.tick` — modify (scheduling only) — same; checkpoint/interval/report/failure-notice logic untouched.
27
+
28
+ ---
29
+
30
+ ## 1. Over-block
31
+
32
+ No block/allow surface — over-block not applicable. Callers are delayed by at most one
33
+ in-flight tick, never refused.
34
+
35
+ ---
36
+
37
+ ## 2. Under-block
38
+
39
+ No block/allow surface. Residual: a caller still receives `null`/404 when there is
40
+ genuinely no cadence yet (run not active) — that is the correct answer, not a stale one.
41
+
42
+ ---
43
+
44
+ ## 3. Level-of-abstraction fit
45
+
46
+ Right layer. Overlap is an in-process scheduling concern of the object that owns the
47
+ tick; the cross-process concern is already owned by the proper-lockfile mutation lock,
48
+ which is unchanged. Fixing it in the route (retry on 404) would have hidden the stale
49
+ read for one caller and left the liveness route and future callers exposed. The helper
50
+ is shared because both classes had the identical guard (class fix, not instance fix).
51
+
52
+ ---
53
+
54
+ ## 4. Signal vs authority compliance
55
+
56
+ - [x] No — this change has no block/allow surface.
57
+
58
+ It changes when an existing authority evaluates, not what it decides.
59
+
60
+ ---
61
+
62
+ ## 4b. Judgment-point check (Judgment Within Floors standard)
63
+
64
+ No new static heuristic at a competing-signals decision point. "One running + one
65
+ queued" is an invariant on concurrency, not a judgment.
66
+
67
+ ---
68
+
69
+ ## 5. Interactions
70
+
71
+ - **Shadowing:** none — no check is added.
72
+ - **Double-fire:** previously an overlapping tick was dropped; now it runs afterwards. Could a second evaluation repeat a side effect? Every side effect inside a tick is already idempotent across ticks because ticks run every 60s anyway: checkpoints are keyed by `dueAt` and skip `delivered`/`would-request` or a pending backoff; reports are keyed by `reportId` and re-query delivered history; failure notices check `failure.notified` and the stable marker; liveness recovery is a durable single-attempt record (`recoveryAttempt`). The new unit test asserts the overlapped cadence tick requests the checkpoint exactly once.
73
+ - **Races:** the in-process serialization sits outside the file lock, so a tick never waits on the lock while another tick from the same process holds it (previously the flag already prevented that). `register()` / `recordWorkAdvance()` / `freeze()` still take the lock directly and are unaffected; the existing "concurrent tick and work receipt" test still passes.
74
+ - **Feedback loops:** none. Queue depth is bounded at one, so a slow or hung tick cannot accumulate periodic ticks; later periodic callers share the queued one.
75
+ - **Hang behavior:** if a tick hangs, an explicit caller now waits behind it instead of returning instantly. The route is under the server's request timeout (`requestTimeoutMs`), and the inner work is already bounded (lock retries, delivery attempts), so this does not create an unbounded wait the old code avoided in practice.
76
+
77
+ ---
78
+
79
+ ## 6. External surfaces
80
+
81
+ - HTTP: `POST /window-run-liveness/tick` and `POST /window-run-liveness/cadence/tick` may take slightly longer when a background tick is in flight and return fresh state; the 404 "not registered" during first creation no longer occurs. Response shapes unchanged.
82
+ - No persistent state format change, no config, no messages to users, no operator-facing actions.
83
+
84
+ ---
85
+
86
+ ## 6b. Operator-surface quality
87
+
88
+ No operator surface — not applicable.
89
+
90
+ ---
91
+
92
+ ## 7. Multi-machine posture (Cross-Machine Coherence)
93
+
94
+ Machine-local by design: the serializer is per-process scheduling around per-machine
95
+ window-run state that is already gated by session ownership (`canAct`) and the file
96
+ lock. No notices, durable state, or URLs are added.
97
+
98
+ ---
99
+
100
+ ## 8. Rollback cost
101
+
102
+ Pure code revert of three source files; no state, config, or migration. Rollback
103
+ re-introduces only the stale-read race.
104
+
105
+ ---
106
+
107
+ ## Conclusion
108
+
109
+ Root cause found and fixed at the owning layer in both classes that shared it; the e2e
110
+ test needed no change. Reproduced at 1/8 under CPU load before, 0/25 after. Clear to ship
111
+ pending the second-pass review.
112
+
113
+ ---
114
+
115
+ ## Second-pass review (if required)
116
+
117
+ **Reviewer:** independent general-purpose reviewer subagent (read-only)
118
+ **Independent read of the artifact: concur**
119
+
120
+ Concur with the review: the serializer always settles its queue (a synchronous throw becomes a rejection and a failed tick cannot leak an unhandled rejection to the queued caller); nothing inside either tick calls `tick()` re-entrantly (the AgentServer deps use only `status()` and `sendInput`); the only callers are the background tick and the two routes, none relying on the old skip; and every action an overlapped re-run could repeat is already guarded by durable state (`failure.notified`, the single `recoveryAttempt`, `notifyOnce`, checkpoints keyed by due time).
121
+
122
+ ---
123
+
124
+ ## Evidence pointers
125
+
126
+ - Pre-fix under a 24-process CPU burn (16 cores): 7 pass / 1 fail; failure log shows `expected 200 "OK", got 404 "Not Found"` at the keypair-mismatch test, line 247.
127
+ - Post-fix under the same burn plus a parallel `vitest --config vitest.e2e.config.ts` run of two other e2e files: 25 pass / 0 fail.
128
+ - `tests/unit/window-run-cadence-executor.test.ts` and `tests/unit/window-run-liveness-authority.test.ts` overlap tests: fail on the old code (verified via `git stash`), pass on the new. `tests/unit/tick-serializer.test.ts`: 5 tests. Integration `window-run-liveness-routes` + `window-run-cadence-lifecycle-proof`: pass. `tests/unit/self-action-convergence.test.ts`: 213 pass.
129
+
130
+ ---
131
+
132
+ ## Class-Closure Declaration (display-only mirror)
133
+
134
+ No agent-authored-artifact defect — not applicable (a TypeScript concurrency defect).
135
+ The cadence executor is a registered self-action controller; this change does not add
136
+ or widen any action it takes — it bounds overlapping ticks to one running plus one
137
+ queued, and every action remains behind its existing durable per-key dedupe. The
138
+ `tests/unit/self-action-convergence.test.ts` ratchet passes unchanged.
@@ -0,0 +1,43 @@
1
+ # Window-run ticks wait for each other — plain-English overview
2
+
3
+ ## What this is
4
+
5
+ When Echo runs a long autonomous "window", two pieces of the server keep an eye on it.
6
+ One checks that the run is really alive (the liveness authority). The other keeps the
7
+ run's clock: it asks for a progress receipt every half hour and posts a summary every
8
+ few hours (the cadence executor). Each of them does its work in a "tick". The server
9
+ ticks both of them by itself when it starts and then once a minute, and there is also an
10
+ HTTP route that lets a caller ask for a tick right now.
11
+
12
+ ## What was wrong
13
+
14
+ Each piece had a simple rule: "if I am already in the middle of a tick, don't start
15
+ another; just hand back whatever is saved on disk." That sounds harmless, but it means a
16
+ caller who asks for a tick at the wrong moment gets an old answer. The worst case was
17
+ right after the server started. The background tick had begun creating the cadence
18
+ record but had not saved it yet. A caller who asked at that instant got "nothing saved",
19
+ and the route turned that into "404 — this cadence is not registered", which was false.
20
+
21
+ On a quiet machine the background tick always finished first, so the problem never
22
+ showed. On a busy machine (for example while the full test suite runs) it showed up as a
23
+ test that failed about one time in eight and passed when run by itself.
24
+
25
+ ## What changes
26
+
27
+ The "skip and hand back the old answer" rule is replaced by "wait your turn". A caller
28
+ who arrives while a tick is running waits for it to finish and then gets a tick that
29
+ started after it asked. Only one tick runs at a time, and at most one more waits behind
30
+ it; anyone else who arrives in the meantime shares that waiting tick, so ticks can never
31
+ pile up. If the running tick fails, the waiting caller still gets its own result.
32
+
33
+ ## What stays the same
34
+
35
+ The file lock that keeps two processes from writing the same state at once is unchanged.
36
+ What a tick decides (alive or at risk, receipts, summaries, failure notices) is
37
+ unchanged. The only difference is that callers no longer receive a stale snapshot.
38
+
39
+ ## What you need to decide
40
+
41
+ Nothing. This is a correctness fix with no settings and no visible change in normal use.
42
+ It was found because a test failed under load, and it was confirmed by reproducing the
43
+ failure under a CPU burn and showing it no longer happens.