hikoutei 0.8.60 → 0.8.62
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/api/Hikoutei.d.ts.map +1 -1
- package/dist/api/Hikoutei.js +30 -244
- package/dist/api/Hikoutei.js.map +1 -1
- package/dist/api/internalEntityManager.d.ts.map +1 -1
- package/dist/api/internalEntityManager.js +53 -152
- package/dist/api/internalEntityManager.js.map +1 -1
- package/dist/application/sync/outbound/reconciliation/ReconciliationScanner.d.ts.map +1 -1
- package/dist/application/sync/outbound/reconciliation/ReconciliationScanner.js +15 -3
- package/dist/application/sync/outbound/reconciliation/ReconciliationScanner.js.map +1 -1
- package/dist/application/sync/outbound/reconciliation/diff.d.ts +1 -0
- package/dist/application/sync/outbound/reconciliation/diff.d.ts.map +1 -1
- package/dist/application/sync/outbound/reconciliation/diff.js +1 -1
- package/dist/application/sync/outbound/reconciliation/diff.js.map +1 -1
- package/dist/application/sync/outbound/reconciliation/repair.d.ts +1 -1
- package/dist/application/sync/outbound/reconciliation/repair.d.ts.map +1 -1
- package/dist/application/sync/outbound/reconciliation/repair.js +15 -4
- package/dist/application/sync/outbound/reconciliation/repair.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Hikoutei.d.ts","sourceRoot":"","sources":["../../src/api/Hikoutei.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,4CAA4C,CAAC;AAClG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGxD,OAAO,EAEL,cAAc,EACd,KAAK,gCAAgC,EACtC,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"Hikoutei.d.ts","sourceRoot":"","sources":["../../src/api/Hikoutei.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,4CAA4C,CAAC;AAClG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGxD,OAAO,EAEL,cAAc,EACd,KAAK,gCAAgC,EACtC,MAAM,aAAa,CAAC;AAYrB,sDAAsD;AACtD,MAAM,WAAW,wBAAwB;IACvC;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,cAAc,EAAE,CAAC;CAC/C;AAED;;;;;GAKG;AACH,MAAM,WAAW,QAAQ;IACvB,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,EAAE,aAAa,CAAC;IAC3B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AA2CD;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,+BAA+B,EACzC,WAAW,EAAE,WAAW,CAAC,MAAM,EAAE,gCAAgC,CAAC,EAClE,WAAW,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAChC,QAAQ,CAEV;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAClC,GAAG,GAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAe,GAC9D,MAAM,CAMR;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,wBAAwB,GAAG,IAAI,CAmBlF;AAED;;;;;;;;GAQG;AACH,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,wBAAwB,GAChC,OAAO,CAAC,QAAQ,CAAC,CAkBnB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,GAAE,wBAA6B,GACrC,OAAO,CAAC,QAAQ,CAAC,CA8BnB"}
|
package/dist/api/Hikoutei.js
CHANGED
|
@@ -11,36 +11,16 @@ import { createEntityManager } from "./internalEntityManager.js";
|
|
|
11
11
|
import { HIKOUTEI_ERROR_CODES, HikouteiError } from "./errors.js";
|
|
12
12
|
import { getRegisteredEntityTokens, } from "./entity.js";
|
|
13
13
|
import { resolveEntityDescriptors, } from "./internalEntityRegistry.js";
|
|
14
|
-
import { describeErrorForInternalLog, getHikouteiInternalLogger, logHikouteiInternalEvent, } from "../shared/observability/internalLog.js";
|
|
15
|
-
import { HIKOUTEI_LOG_COMPONENTS, HIKOUTEI_LOG_EVENTS, } from "../shared/observability/logEvents.js";
|
|
16
|
-
import { AsyncLocalStorage } from "node:async_hooks";
|
|
17
14
|
/** Environment variable that supplies the default SQLite path. */
|
|
18
15
|
const HIKOUTEI_DB_PATH_ENV = "HIKOUTEI_DB_PATH";
|
|
19
16
|
/** SQLite path used when neither `dbName` nor the env var is set. */
|
|
20
17
|
const DEFAULT_DB_PATH = "./hikoutei.sqlite";
|
|
21
|
-
const beforeCloseHookContext = new AsyncLocalStorage();
|
|
22
18
|
class HikouteiImpl {
|
|
23
19
|
provider;
|
|
24
20
|
beforeClose;
|
|
25
21
|
/** Root entity manager; call `fork()` before request or job-local work. */
|
|
26
22
|
em;
|
|
27
|
-
|
|
28
|
-
/**
|
|
29
|
-
* The single in-flight close attempt. Concurrent close() calls OUTSIDE
|
|
30
|
-
* the active beforeClose hook await this same promise, so cleanup runs
|
|
31
|
-
* exactly once per attempt and every caller observes the same outcome
|
|
32
|
-
* (single-flight). The shared promise represents the FULL close +
|
|
33
|
-
* process-logger-drain operation and settles only AFTER the drain
|
|
34
|
-
* completes (final safe step), so a close() that lands while the first
|
|
35
|
-
* attempt is still draining — including one arriving after
|
|
36
|
-
* performClose() succeeded but before the drain finished — awaits the
|
|
37
|
-
* SAME attempt until the drain is done instead of resolving early on
|
|
38
|
-
* the terminal marker or starting a second cleanup. A close() called
|
|
39
|
-
* from WITHIN the hook resolves immediately instead (MEDIUM 5:
|
|
40
|
-
* awaiting the pending attempt from the hook would self-deadlock). A
|
|
41
|
-
* failed attempt leaves the runtime retryable after the slot release.
|
|
42
|
-
*/
|
|
43
|
-
closeAttempt;
|
|
23
|
+
closed = false;
|
|
44
24
|
constructor(provider, descriptors, beforeClose) {
|
|
45
25
|
this.provider = provider;
|
|
46
26
|
this.beforeClose = beforeClose;
|
|
@@ -48,200 +28,27 @@ class HikouteiImpl {
|
|
|
48
28
|
}
|
|
49
29
|
/** Stops internal service work, then releases the local SQLite connection. */
|
|
50
30
|
async close() {
|
|
51
|
-
|
|
52
|
-
// comes BEFORE the terminal fast path so a caller that arrives after
|
|
53
|
-
// performClose() succeeded but while the final logger drain is still
|
|
54
|
-
// running awaits the SAME attempt (which settles only after drain)
|
|
55
|
-
// instead of resolving early on the closed marker — the shared
|
|
56
|
-
// promise represents the full close + drain operation.
|
|
57
|
-
if (this.closeAttempt !== undefined) {
|
|
58
|
-
// MEDIUM 5: a close awaited from within the ACTIVE beforeClose hook
|
|
59
|
-
// of THIS runtime must not await the pending attempt — the attempt
|
|
60
|
-
// cannot settle until the hook returns, so awaiting it would
|
|
61
|
-
// self-deadlock. The call resolves immediately: the close is already
|
|
62
|
-
// in progress and owned by the outer caller, so the hook must not
|
|
63
|
-
// rely on the reentrant promise for completion. The exemption is
|
|
64
|
-
// scoped to the OWNING runtime (runtime identity in the context) AND
|
|
65
|
-
// to the hook's execution window (`active`): a close() on a
|
|
66
|
-
// DIFFERENT runtime made from inside the hook, or a close() from a
|
|
67
|
-
// DETACHED callback (setImmediate/promise continuation) that runs
|
|
68
|
-
// AFTER the hook's execution window ended, is an ordinary concurrent
|
|
69
|
-
// call and shares that runtime's in-flight attempt, observing its
|
|
70
|
-
// exact outcome (Luna: the flag is cleared in `finally`, so the
|
|
71
|
-
// detached callback cannot bypass the close/drain attempt). Callers
|
|
72
|
-
// OUTSIDE any hook (no context store) keep sharing the attempt too.
|
|
73
|
-
const marker = beforeCloseHookContext.getStore();
|
|
74
|
-
if (marker !== undefined && marker.runtime === this && marker.active) {
|
|
75
|
-
return;
|
|
76
|
-
}
|
|
77
|
-
return this.closeAttempt;
|
|
78
|
-
}
|
|
79
|
-
// A successful close is terminal and idempotent: later calls resolve
|
|
80
|
-
// immediately without touching the provider again.
|
|
81
|
-
if (this.closeState === "closed")
|
|
31
|
+
if (this.closed)
|
|
82
32
|
return;
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
settleAttempt = (outcome) => {
|
|
86
|
-
if (outcome.ok)
|
|
87
|
-
resolve();
|
|
88
|
-
else
|
|
89
|
-
reject(outcome.error);
|
|
90
|
-
};
|
|
91
|
-
});
|
|
92
|
-
this.closeAttempt = attempt;
|
|
93
|
-
// The shared attempt is observed by concurrent callers outside the
|
|
94
|
-
// hook; when none exists, a failed attempt must not surface as an
|
|
95
|
-
// unhandled rejection. The no-op side handler marks the rejection
|
|
96
|
-
// handled for the runtime while those callers still receive the
|
|
97
|
-
// original rejection.
|
|
98
|
-
attempt.catch(() => undefined);
|
|
99
|
-
// The attempt's outcome is decided ONLY after the process logger
|
|
100
|
-
// drain completes (final safe step): the shared promise represents
|
|
101
|
-
// the full close + drain operation, so a concurrent caller awaiting
|
|
102
|
-
// it (including one that arrived while the drain was running) cannot
|
|
103
|
-
// proceed before every final event is on disk.
|
|
104
|
-
let failed = false;
|
|
105
|
-
let failure;
|
|
33
|
+
this.closed = true;
|
|
34
|
+
let beforeCloseError;
|
|
106
35
|
try {
|
|
107
|
-
await this.
|
|
36
|
+
await this.beforeClose?.();
|
|
108
37
|
}
|
|
109
38
|
catch (error) {
|
|
110
|
-
|
|
111
|
-
// that throws `undefined` is still a FAILED attempt and the shared
|
|
112
|
-
// promise must reject, never resolve.
|
|
113
|
-
failed = true;
|
|
114
|
-
failure = error;
|
|
39
|
+
beforeCloseError = error;
|
|
115
40
|
}
|
|
116
41
|
try {
|
|
117
|
-
|
|
118
|
-
// drain the process logger queue so every final event (including
|
|
119
|
-
// RUNTIME_CLOSED and any close-failure line) is on disk before the
|
|
120
|
-
// attempt settles. Drain is fail-open by contract, and even a
|
|
121
|
-
// throwing drain must never mask the close outcome — it is
|
|
122
|
-
// swallowed, never propagated.
|
|
123
|
-
await getHikouteiInternalLogger().drain();
|
|
124
|
-
}
|
|
125
|
-
catch {
|
|
126
|
-
// Fail-open: the drain exists to flush diagnostics, so its failure
|
|
127
|
-
// must not change the close outcome decided above.
|
|
128
|
-
}
|
|
129
|
-
// Settle the shared attempt with the ORIGINAL outcome so every
|
|
130
|
-
// concurrent caller observes exactly the same success or failure.
|
|
131
|
-
if (failed) {
|
|
132
|
-
settleAttempt({ ok: false, error: failure });
|
|
133
|
-
}
|
|
134
|
-
else {
|
|
135
|
-
settleAttempt({ ok: true });
|
|
42
|
+
await this.provider.close();
|
|
136
43
|
}
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
// "open", so the NEXT close() call after the slot release genuinely
|
|
141
|
-
// re-runs the cleanup. The original failure is rethrown unchanged to
|
|
142
|
-
// THIS caller after the slot release; concurrent callers already
|
|
143
|
-
// received it through the shared attempt.
|
|
144
|
-
this.closeAttempt = undefined;
|
|
145
|
-
if (failed)
|
|
146
|
-
throw failure;
|
|
147
|
-
}
|
|
148
|
-
/**
|
|
149
|
-
* Runs one full cleanup attempt (beforeClose + provider close).
|
|
150
|
-
*
|
|
151
|
-
* Marks the runtime terminally closed ONLY after the provider close
|
|
152
|
-
* succeeded. EVERY failure — a throwing beforeClose hook, a throwing
|
|
153
|
-
* provider close, or the aggregate of both — explicitly returns the
|
|
154
|
-
* state to retryable `open` before the original error is rethrown
|
|
155
|
-
* unchanged, so the next close() call genuinely re-runs the full
|
|
156
|
-
* cleanup instead of no-oping on a half-closed runtime.
|
|
157
|
-
*/
|
|
158
|
-
async performClose() {
|
|
159
|
-
this.closeState = "closing";
|
|
160
|
-
try {
|
|
161
|
-
let beforeCloseFailed = false;
|
|
162
|
-
let beforeCloseError;
|
|
163
|
-
try {
|
|
164
|
-
const beforeClose = this.beforeClose;
|
|
165
|
-
if (beforeClose !== undefined) {
|
|
166
|
-
// MEDIUM 5: the hook runs inside the marked async context so a
|
|
167
|
-
// close() called from within it is recognized as reentrant for
|
|
168
|
-
// THIS runtime (and never awaits its own pending attempt). The
|
|
169
|
-
// stored runtime identity scopes the exemption: a cross-runtime
|
|
170
|
-
// close() made from the hook is not reentrant.
|
|
171
|
-
//
|
|
172
|
-
// Luna: the exemption is scoped to the hook's EXECUTION WINDOW.
|
|
173
|
-
// Detached setImmediate/promise callbacks scheduled by the hook
|
|
174
|
-
// retain the AsyncLocalStorage store after run() returns, so the
|
|
175
|
-
// active flag is cleared in `finally` once the hook's execution
|
|
176
|
-
// has ended — those callbacks' close() then awaits the same
|
|
177
|
-
// close/drain attempt instead of bypassing it. The flag is
|
|
178
|
-
// cleared even when the hook throws.
|
|
179
|
-
const marker = { runtime: this, active: true };
|
|
180
|
-
try {
|
|
181
|
-
await beforeCloseHookContext.run(marker, () => beforeClose());
|
|
182
|
-
}
|
|
183
|
-
finally {
|
|
184
|
-
marker.active = false;
|
|
185
|
-
}
|
|
186
|
-
}
|
|
187
|
-
}
|
|
188
|
-
catch (error) {
|
|
189
|
-
// Boolean flag, never `error !== undefined`: a hook that throws
|
|
190
|
-
// `undefined` is still a FAILED hook and must keep the attempt
|
|
191
|
-
// failed and retryable instead of being treated as success.
|
|
192
|
-
beforeCloseFailed = true;
|
|
193
|
-
beforeCloseError = error;
|
|
194
|
-
}
|
|
195
|
-
try {
|
|
196
|
-
await this.provider.close();
|
|
197
|
-
}
|
|
198
|
-
catch (providerError) {
|
|
199
|
-
logHikouteiInternalEvent({
|
|
200
|
-
event: HIKOUTEI_LOG_EVENTS.RUNTIME_CLOSE_FAILED,
|
|
201
|
-
level: "error",
|
|
202
|
-
component: HIKOUTEI_LOG_COMPONENTS.RUNTIME,
|
|
203
|
-
...describeErrorForInternalLog(providerError),
|
|
204
|
-
});
|
|
205
|
-
if (beforeCloseFailed) {
|
|
206
|
-
// Luna: the AggregateError preserves BOTH original failure
|
|
207
|
-
// values as-thrown — including a hook that throws `undefined`
|
|
208
|
-
// or `null`, which are legitimate thrown values. The errors
|
|
209
|
-
// array must never replace the original hook failure with a
|
|
210
|
-
// synthetic Error, so diagnostics can always inspect exactly
|
|
211
|
-
// what each stage threw.
|
|
212
|
-
throw new AggregateError([beforeCloseError, providerError], "Hikoutei failed to stop internal work and close SQLite.");
|
|
213
|
-
}
|
|
214
|
-
throw providerError;
|
|
44
|
+
catch (providerError) {
|
|
45
|
+
if (beforeCloseError !== undefined) {
|
|
46
|
+
throw new AggregateError([beforeCloseError, providerError], "Hikoutei failed to stop internal work and close SQLite.");
|
|
215
47
|
}
|
|
216
|
-
|
|
217
|
-
logHikouteiInternalEvent({
|
|
218
|
-
event: HIKOUTEI_LOG_EVENTS.RUNTIME_CLOSE_FAILED,
|
|
219
|
-
level: "error",
|
|
220
|
-
component: HIKOUTEI_LOG_COMPONENTS.RUNTIME,
|
|
221
|
-
...describeErrorForInternalLog(beforeCloseError),
|
|
222
|
-
});
|
|
223
|
-
// `throw beforeCloseError` is intentional: `undefined` is a
|
|
224
|
-
// legitimate thrown value and the rejection still marks the
|
|
225
|
-
// attempt failed (the caller's catch below returns the state to
|
|
226
|
-
// retryable open).
|
|
227
|
-
throw beforeCloseError;
|
|
228
|
-
}
|
|
229
|
-
this.closeState = "closed";
|
|
230
|
-
logHikouteiInternalEvent({
|
|
231
|
-
event: HIKOUTEI_LOG_EVENTS.RUNTIME_CLOSED,
|
|
232
|
-
level: "info",
|
|
233
|
-
component: HIKOUTEI_LOG_COMPONENTS.RUNTIME,
|
|
234
|
-
});
|
|
235
|
-
}
|
|
236
|
-
catch (error) {
|
|
237
|
-
// Explicit state transition for EVERY failure path (beforeClose or
|
|
238
|
-
// provider): the runtime returns to retryable `open` so the next
|
|
239
|
-
// close() re-runs the cleanup. The original error is rethrown
|
|
240
|
-
// unchanged; the shared-attempt slot was already released by the
|
|
241
|
-
// caller's finally block.
|
|
242
|
-
this.closeState = "open";
|
|
243
|
-
throw error;
|
|
48
|
+
throw providerError;
|
|
244
49
|
}
|
|
50
|
+
if (beforeCloseError !== undefined)
|
|
51
|
+
throw beforeCloseError;
|
|
245
52
|
}
|
|
246
53
|
}
|
|
247
54
|
/**
|
|
@@ -293,44 +100,23 @@ export function validateTypedSheetsOptions(options) {
|
|
|
293
100
|
* `entities` here applies the same defaults as `createTypedSheets()`.
|
|
294
101
|
*/
|
|
295
102
|
export async function createLocalTypedSheetsRuntime(options) {
|
|
296
|
-
const
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
const provider = new providerModule.MikroOrmScalarPersistenceProvider(storage, generated.bindings);
|
|
314
|
-
const hikoutei = createInternalHikoutei(provider, descriptors);
|
|
315
|
-
logHikouteiInternalEvent({
|
|
316
|
-
event: HIKOUTEI_LOG_EVENTS.RUNTIME_OPENED,
|
|
317
|
-
level: "info",
|
|
318
|
-
component: HIKOUTEI_LOG_COMPONENTS.RUNTIME,
|
|
319
|
-
durationMs: Date.now() - startedAt,
|
|
320
|
-
counts: { entities: descriptors.size },
|
|
321
|
-
});
|
|
322
|
-
return hikoutei;
|
|
323
|
-
}
|
|
324
|
-
catch (error) {
|
|
325
|
-
logHikouteiInternalEvent({
|
|
326
|
-
event: HIKOUTEI_LOG_EVENTS.RUNTIME_OPEN_FAILED,
|
|
327
|
-
level: "error",
|
|
328
|
-
component: HIKOUTEI_LOG_COMPONENTS.RUNTIME,
|
|
329
|
-
durationMs: Date.now() - startedAt,
|
|
330
|
-
...describeErrorForInternalLog(error),
|
|
331
|
-
});
|
|
332
|
-
throw error;
|
|
333
|
-
}
|
|
103
|
+
const dbName = options.dbName ?? resolveDefaultDbPath();
|
|
104
|
+
const entities = options.entities ?? getRegisteredEntityTokens();
|
|
105
|
+
const descriptors = resolveEntityDescriptors(entities, throwHikouteiResolutionError);
|
|
106
|
+
// Load the current provider only when a runtime is opened. Importing the
|
|
107
|
+
// root package alone must not require MikroORM or expose its module graph.
|
|
108
|
+
const [engineModule, providerModule, runtimeModule] = await Promise.all([
|
|
109
|
+
import("../adapter/persistence/providers/mikro-orm/engine/MikroOrmScalarStorage.js"),
|
|
110
|
+
import("../adapter/persistence/providers/mikro-orm/api/MikroOrmScalarPersistenceProvider.js"),
|
|
111
|
+
import("../adapter/persistence/providers/mikro-orm/engine/MikroOrmScalarEntityRuntime.js"),
|
|
112
|
+
]);
|
|
113
|
+
const generated = runtimeModule.createMikroOrmScalarEntityRuntime(entities);
|
|
114
|
+
const storage = await engineModule.initializeMikroOrmScalarStorage({
|
|
115
|
+
dbName,
|
|
116
|
+
entities: generated.entities,
|
|
117
|
+
});
|
|
118
|
+
const provider = new providerModule.MikroOrmScalarPersistenceProvider(storage, generated.bindings);
|
|
119
|
+
return createInternalHikoutei(provider, descriptors);
|
|
334
120
|
}
|
|
335
121
|
/**
|
|
336
122
|
* Opens the local SQLite runtime for the declared scalar entities.
|
package/dist/api/Hikoutei.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Hikoutei.js","sourceRoot":"","sources":["../../src/api/Hikoutei.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,EACL,yBAAyB,GAG1B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,wBAAwB,GAEzB,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"Hikoutei.js","sourceRoot":"","sources":["../../src/api/Hikoutei.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"internalEntityManager.d.ts","sourceRoot":"","sources":["../../src/api/internalEntityManager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"internalEntityManager.d.ts","sourceRoot":"","sources":["../../src/api/internalEntityManager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAWxD,OAAO,KAAK,EAEV,+BAA+B,EAKhC,MAAM,4CAA4C,CAAC;AAqSpD,kFAAkF;AAClF,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,+BAA+B,EACzC,WAAW,EAAE,WAAW,CAAC,MAAM,EAAE,gCAAgC,CAAC,GACjE,aAAa,CAEf"}
|
|
@@ -11,8 +11,6 @@
|
|
|
11
11
|
import { getEntityDescriptor } from "./entity.js";
|
|
12
12
|
import { normalizeEntityFindOneQuery, normalizeEntityQuery, } from "./queryNormalization.js";
|
|
13
13
|
import { HIKOUTEI_ERROR_CODES, HikouteiError } from "./errors.js";
|
|
14
|
-
import { describeErrorForInternalLog, logHikouteiInternalEvent, } from "../shared/observability/internalLog.js";
|
|
15
|
-
import { HIKOUTEI_LOG_COMPONENTS, HIKOUTEI_LOG_EVENTS, } from "../shared/observability/logEvents.js";
|
|
16
14
|
import { readEntityValues, ScalarEntityUnitOfWork, } from "../application/orm/persistence/scalar/unitOfWork.js";
|
|
17
15
|
/** Internal Unit-of-Work implementation behind the public interface. */
|
|
18
16
|
class EntityManagerImpl {
|
|
@@ -39,114 +37,70 @@ class EntityManagerImpl {
|
|
|
39
37
|
*/
|
|
40
38
|
create(entity, data) {
|
|
41
39
|
const descriptor = this.requireDescriptor(entity);
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
return instance;
|
|
48
|
-
}
|
|
49
|
-
catch (error) {
|
|
50
|
-
logLifecycleFailure(descriptor.tableName, error);
|
|
51
|
-
throw error;
|
|
52
|
-
}
|
|
40
|
+
const instance = promoteManagedEntity(buildEntityInstance(descriptor, data));
|
|
41
|
+
this.entityDescriptors.set(instance, descriptor);
|
|
42
|
+
this.unitOfWork.manageNew(descriptor, instance);
|
|
43
|
+
this.rememberIdentity(descriptor, instance);
|
|
44
|
+
return instance;
|
|
53
45
|
}
|
|
54
46
|
/** Reads every entity matching one validated local query. */
|
|
55
47
|
async find(entity, where, options) {
|
|
56
48
|
const descriptor = this.requireDescriptor(entity);
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
return this.materializeRows(descriptor, rows);
|
|
62
|
-
}
|
|
63
|
-
catch (error) {
|
|
64
|
-
logQueryFailure(descriptor.tableName, error);
|
|
65
|
-
throw error;
|
|
66
|
-
}
|
|
49
|
+
const query = normalizeEntityQuery(descriptor, effectiveFilter(where), options);
|
|
50
|
+
const reader = this.activeTransaction ?? this.provider;
|
|
51
|
+
const rows = await reader.read(query);
|
|
52
|
+
return this.materializeRows(descriptor, rows);
|
|
67
53
|
}
|
|
68
54
|
/** Reads one entity matching a validated query, or null when none match. */
|
|
69
55
|
async findOne(entity, where, options) {
|
|
70
56
|
const descriptor = this.requireDescriptor(entity);
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
: promoteManagedEntity(this.materialize(descriptor, row));
|
|
79
|
-
}
|
|
80
|
-
catch (error) {
|
|
81
|
-
logQueryFailure(descriptor.tableName, error);
|
|
82
|
-
throw error;
|
|
83
|
-
}
|
|
57
|
+
const query = normalizeEntityFindOneQuery(descriptor, where, options);
|
|
58
|
+
const reader = this.activeTransaction ?? this.provider;
|
|
59
|
+
const rows = await reader.read(query);
|
|
60
|
+
const row = rows[0];
|
|
61
|
+
return row === undefined
|
|
62
|
+
? null
|
|
63
|
+
: promoteManagedEntity(this.materialize(descriptor, row));
|
|
84
64
|
}
|
|
85
65
|
/** Counts all rows matching a validated filter without changing the identity map. */
|
|
86
66
|
async count(entity, where) {
|
|
87
67
|
const descriptor = this.requireDescriptor(entity);
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
return await reader.count(query);
|
|
92
|
-
}
|
|
93
|
-
catch (error) {
|
|
94
|
-
logQueryFailure(descriptor.tableName, error);
|
|
95
|
-
throw error;
|
|
96
|
-
}
|
|
68
|
+
const query = countQuery(normalizeEntityQuery(descriptor, effectiveFilter(where), undefined));
|
|
69
|
+
const reader = this.activeTransaction ?? this.provider;
|
|
70
|
+
return reader.count(query);
|
|
97
71
|
}
|
|
98
72
|
/** Reads one page and its unpaged total from the same SQLite snapshot. */
|
|
99
73
|
async findAndCount(entity, where, options) {
|
|
100
74
|
const descriptor = this.requireDescriptor(entity);
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
const
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
return [this.materializeRows(descriptor, rows), total];
|
|
112
|
-
}
|
|
113
|
-
catch (error) {
|
|
114
|
-
logQueryFailure(descriptor.tableName, error);
|
|
115
|
-
throw error;
|
|
116
|
-
}
|
|
75
|
+
const query = normalizeEntityQuery(descriptor, effectiveFilter(where), options);
|
|
76
|
+
const operation = async (reader) => {
|
|
77
|
+
const rows = await reader.read(query);
|
|
78
|
+
const total = await reader.count(countQuery(query));
|
|
79
|
+
return [rows, total];
|
|
80
|
+
};
|
|
81
|
+
const [rows, total] = this.activeTransaction === undefined
|
|
82
|
+
? await this.provider.readSnapshot(operation)
|
|
83
|
+
: await operation(this.activeTransaction);
|
|
84
|
+
return [this.materializeRows(descriptor, rows), total];
|
|
117
85
|
}
|
|
118
86
|
/** Marks one entity or iterable of entities for insertion or update at flush. */
|
|
119
87
|
persist(input) {
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
this.rememberIdentity(descriptor, entity);
|
|
126
|
-
}
|
|
127
|
-
return this;
|
|
128
|
-
}
|
|
129
|
-
catch (error) {
|
|
130
|
-
logLifecycleFailure(undefined, error);
|
|
131
|
-
throw error;
|
|
88
|
+
for (const entity of toEntities(input)) {
|
|
89
|
+
const descriptor = this.resolveDescriptorFor(entity);
|
|
90
|
+
this.entityDescriptors.set(entity, descriptor);
|
|
91
|
+
this.unitOfWork.persist(descriptor, entity);
|
|
92
|
+
this.rememberIdentity(descriptor, entity);
|
|
132
93
|
}
|
|
94
|
+
return this;
|
|
133
95
|
}
|
|
134
96
|
/** Marks one entity or iterable of entities for removal at the next flush. */
|
|
135
97
|
remove(input) {
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
this.forgetIdentity(entity);
|
|
141
|
-
}
|
|
142
|
-
return this;
|
|
143
|
-
}
|
|
144
|
-
catch (error) {
|
|
145
|
-
// Removal can reject for unmanaged/unknown entities; the public error
|
|
146
|
-
// is rethrown unchanged after the redacted boundary record.
|
|
147
|
-
logLifecycleFailure(undefined, error);
|
|
148
|
-
throw error;
|
|
98
|
+
for (const entity of toEntities(input)) {
|
|
99
|
+
const canceledInsert = this.unitOfWork.remove(entity);
|
|
100
|
+
if (canceledInsert)
|
|
101
|
+
this.forgetIdentity(entity);
|
|
149
102
|
}
|
|
103
|
+
return this;
|
|
150
104
|
}
|
|
151
105
|
/**
|
|
152
106
|
* Commits every pending insert, update, and delete in one provider transaction.
|
|
@@ -157,47 +111,20 @@ class EntityManagerImpl {
|
|
|
157
111
|
* outbox failure leaves the Unit of Work retryable.
|
|
158
112
|
*/
|
|
159
113
|
async flush() {
|
|
160
|
-
const
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
// Flush-plan collection validates every pending change (primary keys,
|
|
169
|
-
// identity conflicts, unmanaged entities); failures are boundary
|
|
170
|
-
// records here, rethrown unchanged.
|
|
171
|
-
plan = this.unitOfWork.collectFlushPlan();
|
|
172
|
-
if (plan.changes.length === 0)
|
|
173
|
-
return;
|
|
174
|
-
changedTableCount = new Set(plan.changes.map((change) => change.row.tableName)).size;
|
|
175
|
-
const flushPlan = plan;
|
|
176
|
-
if (this.activeTransaction !== undefined) {
|
|
177
|
-
await applyFlushPlan(this.activeTransaction, flushPlan);
|
|
178
|
-
await this.activeTransaction.flush();
|
|
179
|
-
this.completeFlush(flushPlan);
|
|
180
|
-
return;
|
|
181
|
-
}
|
|
182
|
-
await this.provider.beginTransaction(async (transaction) => {
|
|
183
|
-
await applyFlushPlan(transaction, flushPlan);
|
|
184
|
-
await transaction.flush();
|
|
185
|
-
});
|
|
186
|
-
this.completeFlush(flushPlan);
|
|
187
|
-
}
|
|
188
|
-
catch (error) {
|
|
189
|
-
if (!joinsActiveTransaction) {
|
|
190
|
-
logHikouteiInternalEvent({
|
|
191
|
-
event: HIKOUTEI_LOG_EVENTS.EM_FLUSH_FAILED,
|
|
192
|
-
level: "error",
|
|
193
|
-
component: HIKOUTEI_LOG_COMPONENTS.ENTITY_MANAGER,
|
|
194
|
-
...describeErrorForInternalLog(error),
|
|
195
|
-
durationMs: Date.now() - startedAt,
|
|
196
|
-
counts: { changes: plan?.changes.length ?? 0, tables: changedTableCount },
|
|
197
|
-
});
|
|
198
|
-
}
|
|
199
|
-
throw error;
|
|
114
|
+
const plan = this.unitOfWork.collectFlushPlan();
|
|
115
|
+
if (plan.changes.length === 0)
|
|
116
|
+
return;
|
|
117
|
+
if (this.activeTransaction !== undefined) {
|
|
118
|
+
await applyFlushPlan(this.activeTransaction, plan);
|
|
119
|
+
await this.activeTransaction.flush();
|
|
120
|
+
this.completeFlush(plan);
|
|
121
|
+
return;
|
|
200
122
|
}
|
|
123
|
+
await this.provider.beginTransaction(async (transaction) => {
|
|
124
|
+
await applyFlushPlan(transaction, plan);
|
|
125
|
+
await transaction.flush();
|
|
126
|
+
});
|
|
127
|
+
this.completeFlush(plan);
|
|
201
128
|
}
|
|
202
129
|
/**
|
|
203
130
|
* Runs entity work in one transaction and flushes pending changes on success.
|
|
@@ -233,12 +160,6 @@ class EntityManagerImpl {
|
|
|
233
160
|
// A provider can reject after an explicit inner flush (for example when
|
|
234
161
|
// the outer callback throws). Restore snapshots, values, and identity
|
|
235
162
|
// keys so entities loaded inside the failed callback remain retryable.
|
|
236
|
-
logHikouteiInternalEvent({
|
|
237
|
-
event: HIKOUTEI_LOG_EVENTS.EM_TRANSACTIONAL_FAILED,
|
|
238
|
-
level: "error",
|
|
239
|
-
component: HIKOUTEI_LOG_COMPONENTS.ENTITY_MANAGER,
|
|
240
|
-
...describeErrorForInternalLog(error),
|
|
241
|
-
});
|
|
242
163
|
this.unitOfWork.restore(checkpoint);
|
|
243
164
|
this.identityMap.clear();
|
|
244
165
|
for (const [key, entity] of identityCheckpoint)
|
|
@@ -319,26 +240,6 @@ class EntityManagerImpl {
|
|
|
319
240
|
export function createEntityManager(provider, descriptors) {
|
|
320
241
|
return new EntityManagerImpl(provider, descriptors);
|
|
321
242
|
}
|
|
322
|
-
/** Logs one read-path failure with a sanitized table scope (fail-open). */
|
|
323
|
-
function logQueryFailure(tableName, error) {
|
|
324
|
-
logHikouteiInternalEvent({
|
|
325
|
-
event: HIKOUTEI_LOG_EVENTS.EM_QUERY_FAILED,
|
|
326
|
-
level: "warn",
|
|
327
|
-
component: HIKOUTEI_LOG_COMPONENTS.ENTITY_MANAGER,
|
|
328
|
-
table: tableName,
|
|
329
|
-
...describeErrorForInternalLog(error),
|
|
330
|
-
});
|
|
331
|
-
}
|
|
332
|
-
/** Logs one lifecycle validation failure (create/persist) (fail-open). */
|
|
333
|
-
function logLifecycleFailure(tableName, error) {
|
|
334
|
-
logHikouteiInternalEvent({
|
|
335
|
-
event: HIKOUTEI_LOG_EVENTS.EM_LIFECYCLE_INVALID,
|
|
336
|
-
level: "warn",
|
|
337
|
-
component: HIKOUTEI_LOG_COMPONENTS.ENTITY_MANAGER,
|
|
338
|
-
...(tableName === undefined ? {} : { table: tableName }),
|
|
339
|
-
...describeErrorForInternalLog(error),
|
|
340
|
-
});
|
|
341
|
-
}
|
|
342
243
|
function buildEntityInstance(descriptor, data) {
|
|
343
244
|
const declared = new Set(descriptor.properties.map((property) => property.name));
|
|
344
245
|
for (const propertyName of Object.keys(data)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"internalEntityManager.js","sourceRoot":"","sources":["../../src/api/internalEntityManager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"internalEntityManager.js","sourceRoot":"","sources":["../../src/api/internalEntityManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReconciliationScanner.d.ts","sourceRoot":"","sources":["../../../../../src/application/sync/outbound/reconciliation/ReconciliationScanner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAeH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kDAAkD,CAAC;AAC1F,OAAO,EAGL,KAAK,kBAAkB,EACxB,MAAM,oCAAoC,CAAC;AAK5C,OAAO,EAML,KAAK,uBAAuB,EAE7B,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"ReconciliationScanner.d.ts","sourceRoot":"","sources":["../../../../../src/application/sync/outbound/reconciliation/ReconciliationScanner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAeH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kDAAkD,CAAC;AAC1F,OAAO,EAGL,KAAK,kBAAkB,EACxB,MAAM,oCAAoC,CAAC;AAK5C,OAAO,EAML,KAAK,uBAAuB,EAE7B,MAAM,aAAa,CAAC;AAerB,YAAY,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAE3D,6DAA6D;AAC7D,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC;IACpC,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,qEAAqE;IACrE,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,uDAAuD;IACvD,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC;;;OAGG;IACH,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC;;;;OAIG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,wEAAwE;IACxE,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,kCAAkC;IAClC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,8DAA8D;IAC9D,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,uBAAuB,CAAC;IAC5C,sDAAsD;IACtD,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,8DAA8D;IAC9D,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,wBAAwB,KAAK,IAAI,CAAC;CAChE;AAED,qDAAqD;AACrD,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;CAChC;AAED;;;;;GAKG;AACH,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,4BAA4B,GACpC,OAAO,CAAC,wBAAwB,CAAC,CAkCnC;AAyQD,eAAO,MAAM,uBAAuB;;;;CAI1B,CAAC"}
|
|
@@ -26,7 +26,7 @@ import { STORAGE_ERROR_CODES, StorageError } from "../../../../infrastructure/st
|
|
|
26
26
|
import { observeSyncSnapshot, } from "../../sheetsContract/syncSheets.js";
|
|
27
27
|
import { SYNC_PROJECTIONS, SYNC_SNAPSHOT_READ_MODES, } from "../../sheetsContract/constants.js";
|
|
28
28
|
import { DEFAULT_RECONCILIATION_LEASE_MS, DEFAULT_RECONCILIATION_ROLE, DEFAULT_SYSTEM_TOMBSTONE_FIELD, readDesiredSystemState, } from "./shared.js";
|
|
29
|
-
import { computeDrifts, countExtraRows, countMatchedRows, } from "./diff.js";
|
|
29
|
+
import { computeDrifts, computeObservedHash, countExtraRows, countMatchedRows, } from "./diff.js";
|
|
30
30
|
import { appendEffectsWithSupersedes, } from "./enqueue.js";
|
|
31
31
|
import { buildCorrectionEffects, } from "./repair.js";
|
|
32
32
|
/**
|
|
@@ -91,7 +91,20 @@ async function scanAndEnqueue(context) {
|
|
|
91
91
|
systemFields: context.systemFields,
|
|
92
92
|
sheet,
|
|
93
93
|
});
|
|
94
|
-
|
|
94
|
+
const plans = await buildCorrectionEffects(context, sheet, drifts, drifts.length === 0
|
|
95
|
+
? desired.map((row) => {
|
|
96
|
+
const observed = snapshot.rows.find((candidate) => candidate.physicalAnchor.kind === "present" &&
|
|
97
|
+
candidate.physicalAnchor.value === row.anchorReference);
|
|
98
|
+
return observed === undefined
|
|
99
|
+
? { kind: "drifted", desired: row }
|
|
100
|
+
: {
|
|
101
|
+
kind: "drifted",
|
|
102
|
+
desired: row,
|
|
103
|
+
observedVisibleHash: computeObservedHash(observed, context.systemFields),
|
|
104
|
+
};
|
|
105
|
+
})
|
|
106
|
+
: undefined);
|
|
107
|
+
if (drifts.length === 0 && plans.length === 0) {
|
|
95
108
|
return freezeReport(context.physicalSheetId, snapshot, desired, {
|
|
96
109
|
matched: countMatchedRows(snapshot, desired, sheet.businessKeyField),
|
|
97
110
|
drifted: 0,
|
|
@@ -112,7 +125,6 @@ async function scanAndEnqueue(context) {
|
|
|
112
125
|
fenceClaimed: false,
|
|
113
126
|
});
|
|
114
127
|
}
|
|
115
|
-
const plans = await buildCorrectionEffects(context, sheet, drifts);
|
|
116
128
|
if (plans.length === 0) {
|
|
117
129
|
return freezeReport(context.physicalSheetId, snapshot, desired, {
|
|
118
130
|
matched: countMatchedRows(snapshot, desired, sheet.businessKeyField),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReconciliationScanner.js","sourceRoot":"","sources":["../../../../../src/application/sync/outbound/reconciliation/ReconciliationScanner.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ReconciliationScanner.js","sourceRoot":"","sources":["../../../../../src/application/sync/outbound/reconciliation/ReconciliationScanner.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,7 @@ export type DriftKind = "drifted" | "missing";
|
|
|
14
14
|
export interface DriftTarget {
|
|
15
15
|
readonly kind: DriftKind;
|
|
16
16
|
readonly desired: DesiredRow;
|
|
17
|
+
readonly observedVisibleHash?: string;
|
|
17
18
|
}
|
|
18
19
|
export declare function computeDrifts(args: {
|
|
19
20
|
readonly snapshot: SyncSheetsSnapshot;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diff.d.ts","sourceRoot":"","sources":["../../../../../src/application/sync/outbound/reconciliation/diff.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAKH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAG3E,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;AAE9C,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"diff.d.ts","sourceRoot":"","sources":["../../../../../src/application/sync/outbound/reconciliation/diff.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAKH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAG3E,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;AAE9C,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;CACvC;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE;IAClC,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,QAAQ,CAAC,OAAO,EAAE,SAAS,UAAU,EAAE,CAAC;IACxC,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,QAAQ,CAAC,KAAK,EAAE;QAAE,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAA;KAAE,CAAC;CACzF,GAAG,SAAS,WAAW,EAAE,CAoDzB;AAED,kFAAkF;AAClF,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,kBAAkB,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,EACvC,aAAa,EAAE,MAAM,GACpB,MAAM,GAAG,SAAS,CAEpB;AAED,8EAA8E;AAC9E,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAE7F;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,cAAc,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAY3F;AAED,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,kBAAkB,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,EACvC,YAAY,EAAE,SAAS,MAAM,EAAE,GAC9B,MAAM,CAOR;AAED,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,kBAAkB,EAC5B,OAAO,EAAE,SAAS,UAAU,EAAE,EAC9B,aAAa,EAAE,MAAM,GACpB,MAAM,CAqCR;AAED,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,kBAAkB,EAC5B,OAAO,EAAE,SAAS,UAAU,EAAE,EAC9B,aAAa,EAAE,MAAM,GACpB,MAAM,CAkDR"}
|
|
@@ -62,7 +62,7 @@ export function computeDrifts(args) {
|
|
|
62
62
|
const observedHash = computeObservedHash(observed, args.systemFields);
|
|
63
63
|
const desiredHash = computeSyncVisibleHash(desiredRow.fields);
|
|
64
64
|
if (observedHash !== desiredHash) {
|
|
65
|
-
drifts.push({ kind: "drifted", desired: desiredRow });
|
|
65
|
+
drifts.push({ kind: "drifted", desired: desiredRow, observedVisibleHash: observedHash });
|
|
66
66
|
}
|
|
67
67
|
}
|
|
68
68
|
return drifts;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diff.js","sourceRoot":"","sources":["../../../../../src/application/sync/outbound/reconciliation/diff.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EACL,wBAAwB,GACzB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AACjF,OAAO,EACL,sBAAsB,GAEvB,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"diff.js","sourceRoot":"","sources":["../../../../../src/application/sync/outbound/reconciliation/diff.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,7 +15,7 @@ import type { DriftTarget } from "./diff.js";
|
|
|
15
15
|
export declare function buildCorrectionEffects(context: ScanContext, sheet: {
|
|
16
16
|
readonly tabName: string;
|
|
17
17
|
readonly registeredRange: string;
|
|
18
|
-
}, drifts: readonly DriftTarget[]): Promise<readonly CorrectionPlan[]>;
|
|
18
|
+
}, drifts: readonly DriftTarget[], cleanCandidates?: readonly DriftTarget[]): Promise<readonly CorrectionPlan[]>;
|
|
19
19
|
/**
|
|
20
20
|
* One reconciliation correction and the durable transition it requires.
|
|
21
21
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repair.d.ts","sourceRoot":"","sources":["../../../../../src/application/sync/outbound/reconciliation/repair.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAQH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAInD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kDAAkD,CAAC;AAIpF,OAAO,EAIL,KAAK,UAAU,EAGf,KAAK,qBAAqB,EAC1B,KAAK,WAAW,EACjB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAE7C,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE;IAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;CAAE,EACrE,MAAM,EAAE,SAAS,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"repair.d.ts","sourceRoot":"","sources":["../../../../../src/application/sync/outbound/reconciliation/repair.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAQH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAInD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kDAAkD,CAAC;AAIpF,OAAO,EAIL,KAAK,UAAU,EAGf,KAAK,qBAAqB,EAC1B,KAAK,WAAW,EACjB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAE7C,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE;IAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;CAAE,EACrE,MAAM,EAAE,SAAS,WAAW,EAAE,EAC9B,eAAe,CAAC,EAAE,SAAS,WAAW,EAAE,GACvC,OAAO,CAAC,SAAS,cAAc,EAAE,CAAC,CAkFpC;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,cAAc;IAC7B;;;;OAIG;IACH,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,uBAAuB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChD,QAAQ,CAAC,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7C;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,uBAAuB,EAAE,MAAM,CAAC;IACzC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC;IAClC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC;;;;;;;OAOG;IACH,QAAQ,CAAC,uBAAuB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChD;;;;;;OAMG;IACH,QAAQ,CAAC,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7C;AAED,wBAAsB,yBAAyB,CAC7C,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE,UAAU,GAClB,OAAO,CAAC,kBAAkB,CAAC,CAI7B;AAED,wBAAsB,gCAAgC,CACpD,GAAG,EAAE,WAAW,EAChB,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE,UAAU,GAClB,OAAO,CAAC,kBAAkB,CAAC,CAmF7B;AA4BD,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,qBAAqB,GAAG,SAAS,EAC1C,cAAc,EAAE,MAAM,GACrB,kBAAkB,CA0BpB;AAED,wBAAgB,wBAAwB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAQpE"}
|
|
@@ -16,11 +16,16 @@ import { computeSyncVisibleHash } from "../../sheetsContract/syncSheets.js";
|
|
|
16
16
|
import { SYNC_PROJECTIONS } from "../../sheetsContract/constants.js";
|
|
17
17
|
import { createSystemProjectionEffect } from "../projection/ProjectionEffectFactory.js";
|
|
18
18
|
import { READ_FAILED_HEAD_SQL, READ_LATEST_EFFECT_SQL, READ_LATEST_VISIBLE_STATE_SQL, } from "./shared.js";
|
|
19
|
-
export async function buildCorrectionEffects(context, sheet, drifts) {
|
|
19
|
+
export async function buildCorrectionEffects(context, sheet, drifts, cleanCandidates) {
|
|
20
20
|
const effects = [];
|
|
21
21
|
const commitId = "reconciliation:" + context.createId();
|
|
22
|
-
|
|
22
|
+
const candidates = drifts.length > 0
|
|
23
|
+
? drifts
|
|
24
|
+
: (cleanCandidates ?? []);
|
|
25
|
+
for (const drift of candidates) {
|
|
23
26
|
const baseline = await resolveCorrectionBaseline(context, drift.desired);
|
|
27
|
+
if (cleanCandidates !== undefined && baseline.supersedeFailedEffectId === null)
|
|
28
|
+
continue;
|
|
24
29
|
if (baseline.skip) {
|
|
25
30
|
// An equivalent correction is already in flight behind a terminal
|
|
26
31
|
// failed head that blocks the stream. No new effect is appended; the
|
|
@@ -41,13 +46,19 @@ export async function buildCorrectionEffects(context, sheet, drifts) {
|
|
|
41
46
|
// a confirmed visible state exists from an earlier lifecycle (a row
|
|
42
47
|
// deleted after it was applied). The confirmed-state baseline would make
|
|
43
48
|
// the provider reject the correction with a guard mismatch forever.
|
|
44
|
-
const createIfMissing = drift.kind === "missing"
|
|
49
|
+
const createIfMissing = drift.kind === "missing"
|
|
50
|
+
? true
|
|
51
|
+
: drift.observedVisibleHash !== undefined
|
|
52
|
+
? false
|
|
53
|
+
: baseline.createIfMissing;
|
|
45
54
|
const expectedVisibleRevision = drift.kind === "missing"
|
|
46
55
|
? 0
|
|
47
56
|
: baseline.expectedVisibleRevision;
|
|
48
57
|
const expectedVisibleHash = drift.kind === "missing"
|
|
49
58
|
? ""
|
|
50
|
-
: baseline.expectedVisibleHash
|
|
59
|
+
: baseline.expectedVisibleHash.length > 0
|
|
60
|
+
? baseline.expectedVisibleHash
|
|
61
|
+
: drift.observedVisibleHash ?? "";
|
|
51
62
|
const effect = createSystemProjectionEffect({
|
|
52
63
|
effectId: "effect:" + context.createId(),
|
|
53
64
|
commitId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repair.js","sourceRoot":"","sources":["../../../../../src/application/sync/outbound/reconciliation/repair.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EACL,mBAAmB,EACnB,cAAc,GACf,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,2CAA2C,CAAC;AAErE,OAAO,EACL,4BAA4B,GAC7B,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,4BAA4B,EAAE,MAAM,0CAA0C,CAAC;AACxF,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,6BAA6B,GAM9B,MAAM,aAAa,CAAC;AAGrB,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,OAAoB,EACpB,KAAqE,EACrE,MAA8B;
|
|
1
|
+
{"version":3,"file":"repair.js","sourceRoot":"","sources":["../../../../../src/application/sync/outbound/reconciliation/repair.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "hikoutei",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.62",
|
|
4
4
|
"description": "Typed repository and safe write layer for Google Sheets-backed MVPs. SQLite-authoritative entity lifecycle with asynchronous Google Sheets projection.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|