@mmnto/totem 1.110.0 → 1.111.0
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/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -1
- package/dist/index.js.map +1 -1
- package/dist/ingest/pipeline.d.ts.map +1 -1
- package/dist/ingest/pipeline.js +41 -4
- package/dist/ingest/pipeline.js.map +1 -1
- package/dist/ingest/pipeline.test.js +62 -3
- package/dist/ingest/pipeline.test.js.map +1 -1
- package/dist/ledger.d.ts +4 -4
- package/dist/lock.d.ts +55 -6
- package/dist/lock.d.ts.map +1 -1
- package/dist/lock.js +180 -39
- package/dist/lock.js.map +1 -1
- package/dist/lock.test.js +201 -1
- package/dist/lock.test.js.map +1 -1
- package/dist/types.d.ts +6 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline.test.js","sourceRoot":"","sources":["../../src/ingest/pipeline.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pipeline.test.js","sourceRoot":"","sources":["../../src/ingest/pipeline.test.ts"],"names":[],"mappings":"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"}
|
package/dist/ledger.d.ts
CHANGED
|
@@ -164,9 +164,9 @@ export declare const LedgerEventSchema: z.ZodEffects<z.ZodObject<{
|
|
|
164
164
|
qbd_correlation_id: z.ZodOptional<z.ZodString>;
|
|
165
165
|
}, "strip", z.ZodTypeAny, {
|
|
166
166
|
type: "suppress" | "corpus_query" | "derive_action" | "override" | "exemption" | "mcp_call" | "tool_call_first_significant" | "hook_fire" | "session_start" | "compile_run" | "claim_discipline_finding" | "compile_cache_decision";
|
|
167
|
+
timestamp: string;
|
|
167
168
|
justification: string;
|
|
168
169
|
source: "lint" | "shield" | "bot";
|
|
169
|
-
timestamp: string;
|
|
170
170
|
immutable?: boolean | undefined;
|
|
171
171
|
file?: string | undefined;
|
|
172
172
|
line?: number | undefined;
|
|
@@ -180,8 +180,8 @@ export declare const LedgerEventSchema: z.ZodEffects<z.ZodObject<{
|
|
|
180
180
|
qbd_correlation_id?: string | undefined;
|
|
181
181
|
}, {
|
|
182
182
|
type: "suppress" | "corpus_query" | "derive_action" | "override" | "exemption" | "mcp_call" | "tool_call_first_significant" | "hook_fire" | "session_start" | "compile_run" | "claim_discipline_finding" | "compile_cache_decision";
|
|
183
|
-
source: "lint" | "shield" | "bot";
|
|
184
183
|
timestamp: string;
|
|
184
|
+
source: "lint" | "shield" | "bot";
|
|
185
185
|
immutable?: boolean | undefined;
|
|
186
186
|
file?: string | undefined;
|
|
187
187
|
line?: number | undefined;
|
|
@@ -196,9 +196,9 @@ export declare const LedgerEventSchema: z.ZodEffects<z.ZodObject<{
|
|
|
196
196
|
qbd_correlation_id?: string | undefined;
|
|
197
197
|
}>, {
|
|
198
198
|
type: "suppress" | "corpus_query" | "derive_action" | "override" | "exemption" | "mcp_call" | "tool_call_first_significant" | "hook_fire" | "session_start" | "compile_run" | "claim_discipline_finding" | "compile_cache_decision";
|
|
199
|
+
timestamp: string;
|
|
199
200
|
justification: string;
|
|
200
201
|
source: "lint" | "shield" | "bot";
|
|
201
|
-
timestamp: string;
|
|
202
202
|
immutable?: boolean | undefined;
|
|
203
203
|
file?: string | undefined;
|
|
204
204
|
line?: number | undefined;
|
|
@@ -212,8 +212,8 @@ export declare const LedgerEventSchema: z.ZodEffects<z.ZodObject<{
|
|
|
212
212
|
qbd_correlation_id?: string | undefined;
|
|
213
213
|
}, {
|
|
214
214
|
type: "suppress" | "corpus_query" | "derive_action" | "override" | "exemption" | "mcp_call" | "tool_call_first_significant" | "hook_fire" | "session_start" | "compile_run" | "claim_discipline_finding" | "compile_cache_decision";
|
|
215
|
-
source: "lint" | "shield" | "bot";
|
|
216
215
|
timestamp: string;
|
|
216
|
+
source: "lint" | "shield" | "bot";
|
|
217
217
|
immutable?: boolean | undefined;
|
|
218
218
|
file?: string | undefined;
|
|
219
219
|
line?: number | undefined;
|
package/dist/lock.d.ts
CHANGED
|
@@ -2,17 +2,66 @@
|
|
|
2
2
|
* Lightweight filesystem lock for preventing concurrent mutations
|
|
3
3
|
* to .totem/lessons/ and .lancedb/ directories.
|
|
4
4
|
*
|
|
5
|
-
* Uses a lockfile with PID + timestamp
|
|
6
|
-
*
|
|
5
|
+
* Uses a lockfile with PID + heartbeat timestamp + per-acquisition holder id.
|
|
6
|
+
* The holder refreshes the timestamp every HEARTBEAT_INTERVAL_MS, so a stale
|
|
7
|
+
* timestamp means many consecutive missed beats — a dead or wedged holder —
|
|
8
|
+
* and the lock is reclaimed (#2564). Every deletion re-reads the file first
|
|
9
|
+
* and removes only the exact lock it judged dead (TOCTOU narrowing,
|
|
10
|
+
* lesson-b813e60b).
|
|
7
11
|
*/
|
|
12
|
+
interface LockData {
|
|
13
|
+
pid: number;
|
|
14
|
+
/** Last heartbeat (the acquisition instant until the first beat). */
|
|
15
|
+
timestamp: number;
|
|
16
|
+
/** Acquisition instant — provenance only. Absent on pre-#2564 locks. */
|
|
17
|
+
createdAt?: number;
|
|
18
|
+
/**
|
|
19
|
+
* Opaque per-acquisition token; heartbeats and every deletion verify
|
|
20
|
+
* against it. Absent on pre-#2564 locks.
|
|
21
|
+
*/
|
|
22
|
+
holderId?: string;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Release handle returned by acquireLock: callable to release, plus a probe
|
|
26
|
+
* for lost mutual exclusion. Callable-with-property keeps the shape
|
|
27
|
+
* assignable to the pre-#2564 `() => void` return type.
|
|
28
|
+
*/
|
|
29
|
+
export interface LockRelease {
|
|
30
|
+
(): void;
|
|
31
|
+
/** True once this hold observably lost the lock to another process. One-way latch. */
|
|
32
|
+
isLost(): boolean;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Acquisition tuning. The timing fields are test seams; `maxRetries` is also
|
|
36
|
+
* a production surface — a caller with its own fallback (MCP add_lesson under
|
|
37
|
+
* a long-held lock, #2564 leg MAJOR-R1) bounds its blocking instead of
|
|
38
|
+
* waiting out the full ~255s default budget.
|
|
39
|
+
*/
|
|
40
|
+
export interface AcquireLockOptions {
|
|
41
|
+
staleThresholdMs?: number;
|
|
42
|
+
heartbeatIntervalMs?: number;
|
|
43
|
+
maxRetries?: number;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Delete the lock only if its content still matches the snapshot we judged
|
|
47
|
+
* dead — a peer that already stole and rewrote the lock must not lose its
|
|
48
|
+
* fresh lock to our stale judgment (lesson-b813e60b). A window between the
|
|
49
|
+
* re-read and the unlink remains; this narrows it from the whole judgment
|
|
50
|
+
* gap to a few instructions. Exported for direct contract tests — same-process
|
|
51
|
+
* tests cannot interleave the synchronous judge→delete sequence.
|
|
52
|
+
*/
|
|
53
|
+
export declare function deleteLockIfUnchanged(filePath: string, snapshot: LockData): void;
|
|
8
54
|
/**
|
|
9
55
|
* Attempt to acquire the sync lock.
|
|
10
|
-
* Returns a release
|
|
56
|
+
* Returns a release handle on success, or throws after retries are exhausted.
|
|
11
57
|
*/
|
|
12
|
-
export declare function acquireLock(totemDir: string, onWarn?: (msg: string) => void): Promise<
|
|
58
|
+
export declare function acquireLock(totemDir: string, onWarn?: (msg: string) => void, opts?: AcquireLockOptions): Promise<LockRelease>;
|
|
13
59
|
/**
|
|
14
60
|
* Execute a function while holding the sync lock.
|
|
15
|
-
* Automatically releases the lock when done (even on error).
|
|
61
|
+
* Automatically releases the lock when done (even on error). The callback
|
|
62
|
+
* receives the release handle so long-running work can probe `isLost()` at
|
|
63
|
+
* its own mutation boundaries (#2564); zero-arg callbacks are unaffected.
|
|
16
64
|
*/
|
|
17
|
-
export declare function withLock<T>(totemDir: string, fn: () => Promise<T>, onWarn?: (msg: string) => void): Promise<T>;
|
|
65
|
+
export declare function withLock<T>(totemDir: string, fn: (lock: LockRelease) => Promise<T>, onWarn?: (msg: string) => void, opts?: AcquireLockOptions): Promise<T>;
|
|
66
|
+
export {};
|
|
18
67
|
//# sourceMappingURL=lock.d.ts.map
|
package/dist/lock.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lock.d.ts","sourceRoot":"","sources":["../src/lock.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"lock.d.ts","sourceRoot":"","sources":["../src/lock.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAkBH,UAAU,QAAQ;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,qEAAqE;IACrE,SAAS,EAAE,MAAM,CAAC;IAClB,wEAAwE;IACxE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;GAIG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,IAAI,CAAC;IACT,sFAAsF;IACtF,MAAM,IAAI,OAAO,CAAC;CACnB;AAED;;;;;GAKG;AACH,MAAM,WAAW,kBAAkB;IACjC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAuDD;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAgBhF;AAED;;;GAGG;AACH,wBAAsB,WAAW,CAC/B,QAAQ,EAAE,MAAM,EAChB,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,EAC9B,IAAI,CAAC,EAAE,kBAAkB,GACxB,OAAO,CAAC,WAAW,CAAC,CAoFtB;AAuHD;;;;;GAKG;AACH,wBAAsB,QAAQ,CAAC,CAAC,EAC9B,QAAQ,EAAE,MAAM,EAChB,EAAE,EAAE,CAAC,IAAI,EAAE,WAAW,KAAK,OAAO,CAAC,CAAC,CAAC,EACrC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,EAC9B,IAAI,CAAC,EAAE,kBAAkB,GACxB,OAAO,CAAC,CAAC,CAAC,CA6CZ"}
|
package/dist/lock.js
CHANGED
|
@@ -2,14 +2,24 @@
|
|
|
2
2
|
* Lightweight filesystem lock for preventing concurrent mutations
|
|
3
3
|
* to .totem/lessons/ and .lancedb/ directories.
|
|
4
4
|
*
|
|
5
|
-
* Uses a lockfile with PID + timestamp
|
|
6
|
-
*
|
|
5
|
+
* Uses a lockfile with PID + heartbeat timestamp + per-acquisition holder id.
|
|
6
|
+
* The holder refreshes the timestamp every HEARTBEAT_INTERVAL_MS, so a stale
|
|
7
|
+
* timestamp means many consecutive missed beats — a dead or wedged holder —
|
|
8
|
+
* and the lock is reclaimed (#2564). Every deletion re-reads the file first
|
|
9
|
+
* and removes only the exact lock it judged dead (TOCTOU narrowing,
|
|
10
|
+
* lesson-b813e60b).
|
|
7
11
|
*/
|
|
12
|
+
import * as crypto from 'node:crypto';
|
|
8
13
|
import * as fs from 'node:fs';
|
|
9
14
|
import * as path from 'node:path';
|
|
10
15
|
import { TotemError } from './errors.js';
|
|
11
16
|
const LOCK_FILE = 'sync.lock';
|
|
12
|
-
|
|
17
|
+
// 8 missed heartbeats. The long in-lock waits that motivated #2564 (gemini
|
|
18
|
+
// ingest pacing, 429 window backoff — #2562) are awaits, so the event loop is
|
|
19
|
+
// idle and beats keep firing through them; only a dead process or a >2min
|
|
20
|
+
// synchronous stall goes stale.
|
|
21
|
+
const STALE_THRESHOLD_MS = 120_000;
|
|
22
|
+
const HEARTBEAT_INTERVAL_MS = 15_000;
|
|
13
23
|
const MAX_RETRIES = 20;
|
|
14
24
|
const BASE_DELAY_MS = 500;
|
|
15
25
|
/**
|
|
@@ -29,8 +39,8 @@ function isProcessAlive(pid) {
|
|
|
29
39
|
function lockPath(totemDir) {
|
|
30
40
|
return path.join(totemDir, LOCK_FILE);
|
|
31
41
|
}
|
|
32
|
-
function isStale(data) {
|
|
33
|
-
return Date.now() - data.timestamp >
|
|
42
|
+
function isStale(data, staleThresholdMs) {
|
|
43
|
+
return Date.now() - data.timestamp > staleThresholdMs;
|
|
34
44
|
}
|
|
35
45
|
const MAX_BACKOFF_EXPONENT = 5;
|
|
36
46
|
function backoffDelay(attempt) {
|
|
@@ -45,7 +55,12 @@ function readLock(filePath) {
|
|
|
45
55
|
typeof data.pid === 'number' &&
|
|
46
56
|
Number.isInteger(data.pid) &&
|
|
47
57
|
typeof data.timestamp === 'number' &&
|
|
48
|
-
data.timestamp > 0
|
|
58
|
+
data.timestamp > 0 &&
|
|
59
|
+
// Optional #2564 fields: a legacy {pid, timestamp} lock parses and ages
|
|
60
|
+
// into staleness exactly as before — no special-casing.
|
|
61
|
+
(data.createdAt === undefined ||
|
|
62
|
+
typeof data.createdAt === 'number') &&
|
|
63
|
+
(data.holderId === undefined || typeof data.holderId === 'string')) {
|
|
49
64
|
return data;
|
|
50
65
|
}
|
|
51
66
|
return null;
|
|
@@ -54,13 +69,40 @@ function readLock(filePath) {
|
|
|
54
69
|
return null;
|
|
55
70
|
}
|
|
56
71
|
}
|
|
72
|
+
/**
|
|
73
|
+
* Delete the lock only if its content still matches the snapshot we judged
|
|
74
|
+
* dead — a peer that already stole and rewrote the lock must not lose its
|
|
75
|
+
* fresh lock to our stale judgment (lesson-b813e60b). A window between the
|
|
76
|
+
* re-read and the unlink remains; this narrows it from the whole judgment
|
|
77
|
+
* gap to a few instructions. Exported for direct contract tests — same-process
|
|
78
|
+
* tests cannot interleave the synchronous judge→delete sequence.
|
|
79
|
+
*/
|
|
80
|
+
export function deleteLockIfUnchanged(filePath, snapshot) {
|
|
81
|
+
const current = readLock(filePath);
|
|
82
|
+
if (current === null ||
|
|
83
|
+
current.pid !== snapshot.pid ||
|
|
84
|
+
current.timestamp !== snapshot.timestamp ||
|
|
85
|
+
current.holderId !== snapshot.holderId) {
|
|
86
|
+
return;
|
|
87
|
+
}
|
|
88
|
+
try {
|
|
89
|
+
fs.unlinkSync(filePath);
|
|
90
|
+
// totem-context: intentional cleanup — the judged-dead lock may already be removed by a peer; the acquisition loop just retries (mmnto-ai/totem#2564)
|
|
91
|
+
}
|
|
92
|
+
catch {
|
|
93
|
+
// Another process may have cleaned it up
|
|
94
|
+
}
|
|
95
|
+
}
|
|
57
96
|
/**
|
|
58
97
|
* Attempt to acquire the sync lock.
|
|
59
|
-
* Returns a release
|
|
98
|
+
* Returns a release handle on success, or throws after retries are exhausted.
|
|
60
99
|
*/
|
|
61
|
-
export async function acquireLock(totemDir, onWarn) {
|
|
100
|
+
export async function acquireLock(totemDir, onWarn, opts) {
|
|
62
101
|
const file = lockPath(totemDir);
|
|
63
|
-
|
|
102
|
+
const staleThresholdMs = opts?.staleThresholdMs ?? STALE_THRESHOLD_MS;
|
|
103
|
+
const heartbeatIntervalMs = opts?.heartbeatIntervalMs ?? HEARTBEAT_INTERVAL_MS;
|
|
104
|
+
const maxRetries = opts?.maxRetries ?? MAX_RETRIES;
|
|
105
|
+
for (let attempt = 0; attempt < maxRetries; attempt++) {
|
|
64
106
|
const existing = readLock(file);
|
|
65
107
|
// Corrupted lockfile (empty, bad JSON) — remove if not mid-write
|
|
66
108
|
if (!existing && fs.existsSync(file)) {
|
|
@@ -83,26 +125,18 @@ export async function acquireLock(totemDir, onWarn) {
|
|
|
83
125
|
continue;
|
|
84
126
|
}
|
|
85
127
|
if (existing) {
|
|
86
|
-
if (isStale(existing)) {
|
|
87
|
-
// Stale timestamp is the final authority — delete regardless of PID
|
|
88
|
-
// Per lesson-5b1929d1: PID checks fail across container
|
|
128
|
+
if (isStale(existing, staleThresholdMs)) {
|
|
129
|
+
// Stale timestamp is the final authority — delete regardless of PID
|
|
130
|
+
// liveness. Per lesson-5b1929d1: PID checks fail across container
|
|
131
|
+
// namespaces. A live holder heartbeats, so stale means many
|
|
132
|
+
// consecutive missed beats — dead or wedged either way (#2564).
|
|
89
133
|
onWarn?.(`Removing stale lock from PID ${existing.pid} (${Math.round((Date.now() - existing.timestamp) / 1000)}s old)`);
|
|
90
|
-
|
|
91
|
-
fs.unlinkSync(file);
|
|
92
|
-
}
|
|
93
|
-
catch {
|
|
94
|
-
// Another process may have cleaned it up
|
|
95
|
-
}
|
|
134
|
+
deleteLockIfUnchanged(file, existing);
|
|
96
135
|
}
|
|
97
136
|
else if (!isProcessAlive(existing.pid)) {
|
|
98
137
|
// Lock is fresh but owning process is dead (e.g., Ctrl+C during sync)
|
|
99
138
|
onWarn?.(`Removing orphaned lock from dead PID ${existing.pid} (${Math.round((Date.now() - existing.timestamp) / 1000)}s old)`);
|
|
100
|
-
|
|
101
|
-
fs.unlinkSync(file);
|
|
102
|
-
}
|
|
103
|
-
catch {
|
|
104
|
-
// Another process may have cleaned it up
|
|
105
|
-
}
|
|
139
|
+
deleteLockIfUnchanged(file, existing);
|
|
106
140
|
}
|
|
107
141
|
else {
|
|
108
142
|
// Lock is held by a live process — wait and retry
|
|
@@ -115,19 +149,16 @@ export async function acquireLock(totemDir, onWarn) {
|
|
|
115
149
|
}
|
|
116
150
|
}
|
|
117
151
|
// Try to acquire (ensure directory exists)
|
|
118
|
-
const
|
|
152
|
+
const now = Date.now();
|
|
153
|
+
const lockData = {
|
|
154
|
+
pid: process.pid,
|
|
155
|
+
timestamp: now,
|
|
156
|
+
createdAt: now,
|
|
157
|
+
holderId: crypto.randomUUID(),
|
|
158
|
+
};
|
|
119
159
|
try {
|
|
120
160
|
fs.mkdirSync(path.dirname(file), { recursive: true });
|
|
121
161
|
fs.writeFileSync(file, JSON.stringify(lockData), { flag: 'wx' });
|
|
122
|
-
// Acquired — return release function
|
|
123
|
-
return () => {
|
|
124
|
-
try {
|
|
125
|
-
fs.unlinkSync(file);
|
|
126
|
-
}
|
|
127
|
-
catch {
|
|
128
|
-
// Already cleaned up
|
|
129
|
-
}
|
|
130
|
-
};
|
|
131
162
|
}
|
|
132
163
|
catch (err) {
|
|
133
164
|
// EEXIST = another process grabbed it between our read and write
|
|
@@ -139,15 +170,125 @@ export async function acquireLock(totemDir, onWarn) {
|
|
|
139
170
|
}
|
|
140
171
|
throw err;
|
|
141
172
|
}
|
|
173
|
+
return startHold(file, lockData, heartbeatIntervalMs, onWarn);
|
|
142
174
|
}
|
|
143
|
-
throw new TotemError('SYNC_FAILED', `Could not acquire sync lock after ${
|
|
175
|
+
throw new TotemError('SYNC_FAILED', `Could not acquire sync lock after ${maxRetries} attempts.`, `Another totem process may be running. A crashed holder's lock clears itself within ~${Math.ceil(staleThresholdMs / 60_000)} minute(s); delete ${file} manually ONLY if its timestamp has stopped advancing — deleting a live-heartbeat lock aborts that process's sync.`);
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* Post-acquisition hold state (#2564). The heartbeat keeps the on-disk
|
|
179
|
+
* timestamp fresh so staleness is a real death signal, self-verifies
|
|
180
|
+
* ownership on every beat, and latches `lost` the moment the file carries
|
|
181
|
+
* someone else's lock. Release is identity-verified for the same reason:
|
|
182
|
+
* an unconditional unlink would delete a thief's valid lock on the way out.
|
|
183
|
+
*/
|
|
184
|
+
function startHold(file, lockData, heartbeatIntervalMs, onWarn) {
|
|
185
|
+
let lost = false;
|
|
186
|
+
let warnedWriteFailure = false;
|
|
187
|
+
// PID-unique temp + atomic rename: a competitor mid-read never sees partial JSON.
|
|
188
|
+
const tmpFile = `${file}.${process.pid}.hb`;
|
|
189
|
+
const markLost = () => {
|
|
190
|
+
if (lost)
|
|
191
|
+
return;
|
|
192
|
+
lost = true;
|
|
193
|
+
clearInterval(timer);
|
|
194
|
+
onWarn?.('sync.lock was taken over by another process — this hold no longer has mutual exclusion.');
|
|
195
|
+
};
|
|
196
|
+
const beat = () => {
|
|
197
|
+
if (lost)
|
|
198
|
+
return;
|
|
199
|
+
const current = readLock(file);
|
|
200
|
+
if (current !== null && current.holderId !== lockData.holderId) {
|
|
201
|
+
markLost();
|
|
202
|
+
return;
|
|
203
|
+
}
|
|
204
|
+
if (current === null && fs.existsSync(file)) {
|
|
205
|
+
// Unreadable content while we believe we hold the lock — never
|
|
206
|
+
// overwrite unknown bytes. The next beat resolves it: a thief's
|
|
207
|
+
// finished write reads as foreign (lost), transient weirdness reads
|
|
208
|
+
// as ours again.
|
|
209
|
+
return;
|
|
210
|
+
}
|
|
211
|
+
lockData.timestamp = Date.now();
|
|
212
|
+
const payload = JSON.stringify(lockData);
|
|
213
|
+
try {
|
|
214
|
+
if (current === null) {
|
|
215
|
+
// File vanished (manual cleanup). Reclaim atomically: wx loses to
|
|
216
|
+
// any competitor that took the open window.
|
|
217
|
+
fs.writeFileSync(file, payload, { flag: 'wx' });
|
|
218
|
+
}
|
|
219
|
+
else {
|
|
220
|
+
// Irreducible residual (#2576 GT round, declined-with-analysis): a
|
|
221
|
+
// peer that deletes-and-wx-reacquires inside this synchronous
|
|
222
|
+
// read→rename gap gets clobbered by the rename. Reaching it requires
|
|
223
|
+
// an already-degraded holder — healthy beats keep the lock present
|
|
224
|
+
// and fresh, and wx cannot succeed over a present file — plus sub-ms
|
|
225
|
+
// cross-process preemption. The clobbered peer's next beat reads a
|
|
226
|
+
// foreign holderId and latches, so double-ownership converges within
|
|
227
|
+
// one beat interval; no filesystem CAS exists to close it fully.
|
|
228
|
+
fs.writeFileSync(tmpFile, payload);
|
|
229
|
+
fs.renameSync(tmpFile, file);
|
|
230
|
+
}
|
|
231
|
+
// totem-context: intentional warn-once on a heartbeat write failure (mmnto-ai/totem#2564) — a beat must never throw; the lock ages toward stealable until a beat succeeds, and theft is caught by the beat self-verify + the pipeline's loud flush-boundary abort
|
|
232
|
+
}
|
|
233
|
+
catch (err) {
|
|
234
|
+
if (err.code === 'EEXIST') {
|
|
235
|
+
markLost();
|
|
236
|
+
return;
|
|
237
|
+
}
|
|
238
|
+
if (!warnedWriteFailure) {
|
|
239
|
+
warnedWriteFailure = true;
|
|
240
|
+
onWarn?.(`sync.lock heartbeat write failed (${err instanceof Error ? err.message : String(err)}) — the lock ages toward stealable until a beat succeeds.`);
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
};
|
|
244
|
+
const timer = setInterval(beat, heartbeatIntervalMs);
|
|
245
|
+
timer.unref();
|
|
246
|
+
const release = (() => {
|
|
247
|
+
clearInterval(timer);
|
|
248
|
+
try {
|
|
249
|
+
fs.rmSync(tmpFile, { force: true });
|
|
250
|
+
// totem-context: intentional cleanup — best-effort heartbeat temp-file removal on release (mmnto-ai/totem#2564)
|
|
251
|
+
}
|
|
252
|
+
catch {
|
|
253
|
+
// Best-effort temp cleanup (e.g. a test replaced it with a directory)
|
|
254
|
+
}
|
|
255
|
+
const current = readLock(file);
|
|
256
|
+
if (current === null && fs.existsSync(file)) {
|
|
257
|
+
// Present but unreadable — a thief's wx-created-not-yet-written file,
|
|
258
|
+
// corrupt junk, or a transient read failure on our OWN file. Never
|
|
259
|
+
// delete bytes we cannot attribute (leg MINOR-1). Named as its own
|
|
260
|
+
// condition, not via markLost, so the warning does not misattribute a
|
|
261
|
+
// transient read failure as theft (leg MINOR-R4): an exited holder's
|
|
262
|
+
// leftover reclaims immediately via the dead-PID arm; a still-alive
|
|
263
|
+
// holder's ages out at the stale threshold.
|
|
264
|
+
lost = true;
|
|
265
|
+
onWarn?.('sync.lock is present but unreadable at release — leaving it in place (an orphaned leftover clears via the dead-PID or staleness arm).');
|
|
266
|
+
return;
|
|
267
|
+
}
|
|
268
|
+
if (current !== null && current.holderId !== lockData.holderId) {
|
|
269
|
+
// Stolen while we ran — the thief's lock is valid; leave it in place.
|
|
270
|
+
markLost();
|
|
271
|
+
return;
|
|
272
|
+
}
|
|
273
|
+
try {
|
|
274
|
+
fs.unlinkSync(file);
|
|
275
|
+
// totem-context: intentional cleanup — the lock may already be removed; release is idempotent (mmnto-ai/totem#2564)
|
|
276
|
+
}
|
|
277
|
+
catch {
|
|
278
|
+
// Already cleaned up
|
|
279
|
+
}
|
|
280
|
+
});
|
|
281
|
+
release.isLost = () => lost;
|
|
282
|
+
return release;
|
|
144
283
|
}
|
|
145
284
|
/**
|
|
146
285
|
* Execute a function while holding the sync lock.
|
|
147
|
-
* Automatically releases the lock when done (even on error).
|
|
286
|
+
* Automatically releases the lock when done (even on error). The callback
|
|
287
|
+
* receives the release handle so long-running work can probe `isLost()` at
|
|
288
|
+
* its own mutation boundaries (#2564); zero-arg callbacks are unaffected.
|
|
148
289
|
*/
|
|
149
|
-
export async function withLock(totemDir, fn, onWarn) {
|
|
150
|
-
const release = await acquireLock(totemDir, onWarn);
|
|
290
|
+
export async function withLock(totemDir, fn, onWarn, opts) {
|
|
291
|
+
const release = await acquireLock(totemDir, onWarn, opts);
|
|
151
292
|
// Best-effort cleanup on process termination (Ctrl+C, kill)
|
|
152
293
|
const removeHandlers = () => {
|
|
153
294
|
process.removeListener('SIGINT', onSigint);
|
|
@@ -184,7 +325,7 @@ export async function withLock(totemDir, fn, onWarn) {
|
|
|
184
325
|
process.on('SIGQUIT', onSigquit);
|
|
185
326
|
}
|
|
186
327
|
try {
|
|
187
|
-
return await fn();
|
|
328
|
+
return await fn(release);
|
|
188
329
|
}
|
|
189
330
|
finally {
|
|
190
331
|
removeHandlers();
|
package/dist/lock.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lock.js","sourceRoot":"","sources":["../src/lock.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"lock.js","sourceRoot":"","sources":["../src/lock.ts"],"names":[],"mappings":"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"}
|