@indigoai-us/hq-cloud 6.15.19 → 6.15.21
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/bin/sync-runner.d.ts +2 -2
- package/dist/bin/sync-runner.d.ts.map +1 -1
- package/dist/bin/sync-runner.js +43 -8
- package/dist/bin/sync-runner.js.map +1 -1
- package/dist/bin/sync-runner.test.js +77 -4
- package/dist/bin/sync-runner.test.js.map +1 -1
- package/dist/cli/conflict.d.ts +25 -2
- package/dist/cli/conflict.d.ts.map +1 -1
- package/dist/cli/conflict.js +29 -4
- package/dist/cli/conflict.js.map +1 -1
- package/dist/cli/share.d.ts.map +1 -1
- package/dist/cli/share.js +90 -6
- package/dist/cli/share.js.map +1 -1
- package/dist/cli/share.test.js +434 -104
- package/dist/cli/share.test.js.map +1 -1
- package/dist/cli/sync.d.ts.map +1 -1
- package/dist/cli/sync.js +9 -1
- package/dist/cli/sync.js.map +1 -1
- package/dist/cli/sync.test.js +95 -46
- package/dist/cli/sync.test.js.map +1 -1
- package/dist/journal-delta-writes.test.d.ts +2 -0
- package/dist/journal-delta-writes.test.d.ts.map +1 -0
- package/dist/journal-delta-writes.test.js +140 -0
- package/dist/journal-delta-writes.test.js.map +1 -0
- package/dist/journal.d.ts.map +1 -1
- package/dist/journal.js +151 -24
- package/dist/journal.js.map +1 -1
- package/dist/journal.test.js +29 -11
- package/dist/journal.test.js.map +1 -1
- package/dist/outcome-telemetry.d.ts +7 -1
- package/dist/outcome-telemetry.d.ts.map +1 -1
- package/dist/outcome-telemetry.js +15 -9
- package/dist/outcome-telemetry.js.map +1 -1
- package/dist/outcome-telemetry.test.js +15 -0
- package/dist/outcome-telemetry.test.js.map +1 -1
- package/dist/skill-telemetry.d.ts +6 -1
- package/dist/skill-telemetry.d.ts.map +1 -1
- package/dist/skill-telemetry.js +14 -8
- package/dist/skill-telemetry.js.map +1 -1
- package/dist/skill-telemetry.test.js +43 -0
- package/dist/skill-telemetry.test.js.map +1 -1
- package/dist/telemetry.d.ts +7 -1
- package/dist/telemetry.d.ts.map +1 -1
- package/dist/telemetry.js +67 -60
- package/dist/telemetry.js.map +1 -1
- package/dist/telemetry.test.js +12 -0
- package/dist/telemetry.test.js.map +1 -1
- package/package.json +1 -1
package/dist/cli/conflict.d.ts
CHANGED
|
@@ -64,7 +64,25 @@ export declare function acknowledgeCreatorCandidate(recovery: CreatorCandidateRe
|
|
|
64
64
|
* candidate retention with a monotonic acknowledgement.
|
|
65
65
|
*/
|
|
66
66
|
export declare function preserveRealtimeConflict(input: PreserveRealtimeConflictInput): Promise<PreservedRealtimeConflict>;
|
|
67
|
-
|
|
67
|
+
/**
|
|
68
|
+
* `publish-local` is the fenced middle ground between `keep` and `overwrite`.
|
|
69
|
+
*
|
|
70
|
+
* A pull-keep stamps the peer's etag on the journal entry while the kept local
|
|
71
|
+
* body never matched it (`localDiverges`, #137). That combination is terminal
|
|
72
|
+
* under the other strategies: push refuses the divergent local, pull sees the
|
|
73
|
+
* remote unchanged so it never replaces the entry, and `keep` re-arms the flag
|
|
74
|
+
* on every pass — the file can never be published, and the only documented
|
|
75
|
+
* escape (a genuine download) discards the local edit.
|
|
76
|
+
*
|
|
77
|
+
* `overwrite` does unstick it, but it is unconditional: on a 412 it retries the
|
|
78
|
+
* PUT with no precondition, so a remote that legitimately advanced is clobbered.
|
|
79
|
+
*
|
|
80
|
+
* `publish-local` elects the local body as the new authority ONLY while the
|
|
81
|
+
* remote still sits at the etag the keep recorded. If the remote moved, consent
|
|
82
|
+
* was given against a version that no longer exists, so the write fails closed
|
|
83
|
+
* and the operator is asked again rather than silently overruling a peer.
|
|
84
|
+
*/
|
|
85
|
+
export type ConflictStrategy = "overwrite" | "keep" | "abort" | "publish-local";
|
|
68
86
|
export interface ConflictInfo {
|
|
69
87
|
path: string;
|
|
70
88
|
localHash?: string;
|
|
@@ -73,7 +91,7 @@ export interface ConflictInfo {
|
|
|
73
91
|
remoteModified?: Date;
|
|
74
92
|
direction: "push" | "pull";
|
|
75
93
|
}
|
|
76
|
-
export type ConflictResolution = "overwrite" | "keep" | "skip" | "diff" | "abort";
|
|
94
|
+
export type ConflictResolution = "overwrite" | "keep" | "skip" | "diff" | "abort" | "publish-local";
|
|
77
95
|
/**
|
|
78
96
|
* Resolve a conflict interactively or via strategy flag.
|
|
79
97
|
*
|
|
@@ -81,8 +99,13 @@ export type ConflictResolution = "overwrite" | "keep" | "skip" | "diff" | "abort
|
|
|
81
99
|
* overwrite → "overwrite"
|
|
82
100
|
* keep → "keep"
|
|
83
101
|
* abort → "abort"
|
|
102
|
+
* publish-local → "publish-local"
|
|
84
103
|
*
|
|
85
104
|
* In interactive mode (strategy undefined), prompts the user.
|
|
105
|
+
*
|
|
106
|
+
* Every strategy is mapped explicitly. The previous form passed any non-`abort`
|
|
107
|
+
* value straight through, so an unrecognised string became a "resolution" that
|
|
108
|
+
* no call site handled and silently fell through to the unfenced write path.
|
|
86
109
|
*/
|
|
87
110
|
export declare function resolveConflict(conflict: ConflictInfo, strategy?: ConflictStrategy): Promise<ConflictResolution>;
|
|
88
111
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conflict.d.ts","sourceRoot":"","sources":["../../src/cli/conflict.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,EACL,iBAAiB,EACjB,KAAK,cAAc,EACnB,KAAK,+BAA+B,EAErC,MAAM,+BAA+B,CAAC;AAMvC,qBAAa,qBAAsB,SAAQ,KAAK;IAE5C,QAAQ,CAAC,IAAI,EAAE,cAAc,GAAG,gBAAgB,GAAG,yBAAyB,GAAG,uBAAuB;gBAA7F,IAAI,EAAE,cAAc,GAAG,gBAAgB,GAAG,yBAAyB,GAAG,uBAAuB,EACtG,OAAO,GAAE,MAAa,EACtB,OAAO,CAAC,EAAE,YAAY;CAKzB;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,+BAA+B,CAAC;IAC/C,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,gFAAgF;IAChF,eAAe,CAAC,EAAE,IAAI,CAAC,iBAAiB,EAAE,eAAe,CAAC,CAAC;CAC5D;AAED,MAAM,WAAW,6BAA8B,SAAQ,yBAAyB;IAC9E,8EAA8E;IAC9E,IAAI,EAAE,MAAM,CAAC;IACb,kFAAkF;IAClF,cAAc,EAAE,UAAU,MAAM,EAAE,CAAC;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,yEAAyE;IACzE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iFAAiF;IACjF,gBAAgB,CAAC,EAAE,wBAAwB,CAAC;IAC5C,0EAA0E;IAC1E,yBAAyB,EAAE,OAAO,CAAC;IACnC,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;IACrC;;;OAGG;IACH,uBAAuB,CAAC,MAAM,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3E;AAED,MAAM,WAAW,yBAAyB;IACxC,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,UAAU,MAAM,EAAE,CAAC;IAC3B,MAAM,EAAE,qBAAqB,GAAG,mBAAmB,CAAC;CACrD;AA4BD,+FAA+F;AAC/F,wBAAgB,gCAAgC,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAcxE;AAED,4EAA4E;AAC5E,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAclE;AAoBD;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,yBAAyB,GAAG,MAAM,CAmBpF;AAuID,iGAAiG;AACjG,wBAAsB,2BAA2B,CAC/C,QAAQ,EAAE,wBAAwB,EAClC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,UAAU,MAAM,EAAE,GAC3B,OAAO,CAAC,IAAI,CAAC,CAkCf;AAED;;;;GAIG;AACH,wBAAsB,wBAAwB,CAAC,KAAK,EAAE,6BAA6B,GAAG,OAAO,CAAC,yBAAyB,CAAC,CA+CvH;AAED,MAAM,MAAM,gBAAgB,GAAG,WAAW,GAAG,MAAM,GAAG,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"conflict.d.ts","sourceRoot":"","sources":["../../src/cli/conflict.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/conflict.js
CHANGED
|
@@ -346,14 +346,31 @@ export async function preserveRealtimeConflict(input) {
|
|
|
346
346
|
* overwrite → "overwrite"
|
|
347
347
|
* keep → "keep"
|
|
348
348
|
* abort → "abort"
|
|
349
|
+
* publish-local → "publish-local"
|
|
349
350
|
*
|
|
350
351
|
* In interactive mode (strategy undefined), prompts the user.
|
|
352
|
+
*
|
|
353
|
+
* Every strategy is mapped explicitly. The previous form passed any non-`abort`
|
|
354
|
+
* value straight through, so an unrecognised string became a "resolution" that
|
|
355
|
+
* no call site handled and silently fell through to the unfenced write path.
|
|
351
356
|
*/
|
|
352
357
|
export async function resolveConflict(conflict, strategy) {
|
|
353
|
-
|
|
354
|
-
|
|
358
|
+
switch (strategy) {
|
|
359
|
+
case "abort":
|
|
360
|
+
return "abort";
|
|
361
|
+
case "keep":
|
|
362
|
+
return "keep";
|
|
363
|
+
case "overwrite":
|
|
364
|
+
return "overwrite";
|
|
365
|
+
case "publish-local":
|
|
366
|
+
return "publish-local";
|
|
367
|
+
case undefined:
|
|
368
|
+
return promptConflict(conflict);
|
|
369
|
+
default: {
|
|
370
|
+
const exhaustive = strategy;
|
|
371
|
+
throw new Error(`unknown conflict strategy: ${String(exhaustive)}`);
|
|
372
|
+
}
|
|
355
373
|
}
|
|
356
|
-
return promptConflict(conflict);
|
|
357
374
|
}
|
|
358
375
|
async function promptConflict(conflict) {
|
|
359
376
|
const rl = readline.createInterface({
|
|
@@ -371,8 +388,10 @@ async function promptConflict(conflict) {
|
|
|
371
388
|
if (conflict.remoteModified) {
|
|
372
389
|
console.error(` Remote modified: ${conflict.remoteModified.toISOString()}`);
|
|
373
390
|
}
|
|
391
|
+
// `publish-local` is offered only on the push leg: it means "send my body up",
|
|
392
|
+
// which has no meaning while deciding what to do with an incoming download.
|
|
374
393
|
const options = conflict.direction === "push"
|
|
375
|
-
? "[o]verwrite remote / [k]eep remote / [d]iff / [a]bort"
|
|
394
|
+
? "[o]verwrite remote / [k]eep remote / [p]ublish local (fenced) / [d]iff / [a]bort"
|
|
376
395
|
: "[o]verwrite local / [k]eep local / [d]iff / [s]kip";
|
|
377
396
|
const answer = await new Promise((resolve) => {
|
|
378
397
|
rl.question(` ${options}: `, (ans) => {
|
|
@@ -393,6 +412,12 @@ async function promptConflict(conflict) {
|
|
|
393
412
|
case "s":
|
|
394
413
|
case "skip":
|
|
395
414
|
return "skip";
|
|
415
|
+
case "p":
|
|
416
|
+
case "publish":
|
|
417
|
+
case "publish-local":
|
|
418
|
+
// Push-only; on the pull leg there is nothing to publish, so fall back to
|
|
419
|
+
// the safe option rather than emitting a resolution the puller ignores.
|
|
420
|
+
return conflict.direction === "push" ? "publish-local" : "keep";
|
|
396
421
|
case "a":
|
|
397
422
|
case "abort":
|
|
398
423
|
return "abort";
|
package/dist/cli/conflict.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conflict.js","sourceRoot":"","sources":["../../src/cli/conflict.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"conflict.js","sourceRoot":"","sources":["../../src/cli/conflict.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/share.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"share.d.ts","sourceRoot":"","sources":["../../src/cli/share.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAe,MAAM,aAAa,CAAC;AAkBlF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AA8B7C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAEL,KAAK,gBAAgB,EACtB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAGL,KAAK,gBAAgB,EACtB,MAAM,uBAAuB,CAAC;AA2E/B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,eAAO,MAAM,sBAAsB,QACmD,CAAC;AAEvF;;;;;;;;;GASG;AACH;;;;;;;;;;GAUG;AACH,eAAO,MAAM,kBAAkB,QAAqB,CAAC;AAErD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAExD;AAED,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAElD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAExD;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,GAAG,OAAO,CAEtF;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,QAAQ;;;;;;;;CAQpB,CAAC;AAEF;;;;;;;;;GASG;AACH,KAAK,YAAY,GACb;IACE,MAAM,EAAE,QAAQ,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;CACd,GACD;IACE,MAAM,EAAE,QAAQ,CAAC;IACjB,IAAI,EAAE,SAAS,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IAIrB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,CAAC,CAAC;CACT,GACD;IACE,MAAM,EAAE,iBAAiB,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;CACtB,GACD;IACE,MAAM,EAAE,gBAAgB,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IAKrB,OAAO,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CAC7C,CAAC;
|
|
1
|
+
{"version":3,"file":"share.d.ts","sourceRoot":"","sources":["../../src/cli/share.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAe,MAAM,aAAa,CAAC;AAkBlF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AA8B7C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAEL,KAAK,gBAAgB,EACtB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAGL,KAAK,gBAAgB,EACtB,MAAM,uBAAuB,CAAC;AA2E/B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,eAAO,MAAM,sBAAsB,QACmD,CAAC;AAEvF;;;;;;;;;GASG;AACH;;;;;;;;;;GAUG;AACH,eAAO,MAAM,kBAAkB,QAAqB,CAAC;AAErD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAExD;AAED,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAElD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAExD;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,GAAG,OAAO,CAEtF;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,QAAQ;;;;;;;;CAQpB,CAAC;AAEF;;;;;;;;;GASG;AACH,KAAK,YAAY,GACb;IACE,MAAM,EAAE,QAAQ,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;CACd,GACD;IACE,MAAM,EAAE,QAAQ,CAAC;IACjB,IAAI,EAAE,SAAS,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IAIrB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,CAAC,CAAC;CACT,GACD;IACE,MAAM,EAAE,iBAAiB,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;CACtB,GACD;IACE,MAAM,EAAE,gBAAgB,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IAKrB,OAAO,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CAC7C,CAAC;AAsIN,MAAM,WAAW,YAAY;IAC3B,8CAA8C;IAC9C,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,mEAAmE;IACnE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mDAAmD;IACnD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,wCAAwC;IACxC,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC;;;;;;;;;;;;;;;;;;OAkBG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,wBAAwB;IACxB,MAAM,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC7C;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB;;;;;;;;;OASG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;;;;;;;;;;;;;;OAgBG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAyCG;IACH,qBAAqB,CAAC,EAAE,gBAAgB,GAAG,YAAY,GAAG,KAAK,CAAC;IAChE;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAChC;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB;;;;;;;;OAQG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;;;;;;;;OAYG;IACH,SAAS,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC/B;;;;;;;;;;;OAWG;IACH,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAC/C;;;;;;;;;;;;;;;;;;;OAmBG;IACH,qBAAqB,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;CAC1C;AAED,8DAA8D;AAC9D,MAAM,MAAM,qBAAqB,GAAG,SAAS,GAAG,iBAAiB,GAAG,iBAAiB,CAAC;AAEtF;;;;;GAKG;AACH,qBAAa,yBAA0B,SAAQ,KAAK;IAClD,6EAA6E;IAC7E,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;IACzB,4DAA4D;IAC5D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;gBAE5C,WAAW,EAAE,WAAW,CAAC,MAAM,EAAE,qBAAqB,CAAC,EAAE,QAAQ,EAAE,MAAM;CAuBtF;AAED,MAAM,WAAW,WAAW;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB;;;;;;;OAOG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB;;;;;;OAMG;IACH,eAAe,EAAE,MAAM,CAAC;IACxB;;;;;;;;;OASG;IACH,iBAAiB,EAAE,MAAM,CAAC;IAC1B;;;;;;;;OAQG;IACH,sBAAsB,EAAE,MAAM,EAAE,CAAC;IACjC;;;;;;;OAOG;IACH,0BAA0B,EAAE,MAAM,CAAC;IACnC;;;;;;;OAOG;IACH,qBAAqB,EAAE,MAAM,CAAC;IAC9B;;;;;;;;OAQG;IACH,oBAAoB,EAAE,MAAM,CAAC;IAC7B;;;;;OAKG;IACH,qBAAqB,EAAE,MAAM,CAAC;IAC9B;;;;;;;;;;;;;;;;;OAiBG;IACH,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B;;;;;;;OAOG;IACH,wBAAwB,EAAE,MAAM,EAAE,CAAC;IACnC;;;;OAIG;IACH,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,4EAA4E;IAC5E,WAAW,CAAC,EAAE,eAAe,EAAE,CAAC;IAChC,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,MAAM,wBAAwB,GAChC,YAAY,GACZ,gBAAgB,GAChB,gBAAgB,GAChB,iBAAiB,GACjB,uBAAuB,GACvB,gBAAgB,GAChB,mBAAmB,GACnB,iBAAiB,GACjB,gBAAgB,CAAC;AAErB,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,UAAU,GAAG,SAAS,CAAC;IAC/B,SAAS,EAAE,QAAQ,GAAG,WAAW,CAAC;IAClC,MAAM,CAAC,EAAE,wBAAwB,CAAC;CACnC;AAmDD;;;;;;GAMG;AACH,wBAAgB,8BAA8B,CAC5C,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,KAAK,OAAO,EACzD,MAAM,EAAE,MAAM,EACd,gBAAgB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,EAC3C,aAAa,CAAC,EAAE,MAAM,IAAI,GACzB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,KAAK,OAAO,CAW/C;AAED;;GAEG;AACH,wBAAsB,KAAK,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAsDvE;AAID,KAAK,cAAc,GAAG,OAAO,CAAC,YAAY,EAAE;IAAE,MAAM,EAAE,QAAQ,CAAA;CAAE,CAAC,CAAC;AAGlE;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,CAO/D;AA48CD;;;GAGG;AACH,iBAAS,oBAAoB,CAAC,KAAK,EAAE,iBAAiB,GAAG,IAAI,CAqI5D;AAED;;;;;;;;;GASG;AACH,KAAK,cAAc,GACf;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,GAC5D;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAEpF;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,UAAU,YAAY;IACpB,iBAAiB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,qBAAqB,KAAK,IAAI,CAAC;IAC/E,eAAe,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;CAC1B;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,iBAAS,gBAAgB,CACvB,CAAC,EAAE,MAAM,EACT,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,GAAG,GAAE,MAAsB,GAC1B,MAAM,CAuBR;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,iBAAS,qBAAqB,CAC5B,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,gBAAgB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GACvC,OAAO,CAwBT;AA8HD;;;;;;;;;;;GAWG;AACH,iBAAS,YAAY,CACnB,KAAK,EAAE,MAAM,EAAE,EACf,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,KAAK,OAAO,EAC/C,KAAK,GAAE,YAAiB,GACvB,cAAc,EAAE,CAkGlB"}
|
package/dist/cli/share.js
CHANGED
|
@@ -264,7 +264,10 @@ function computePushPlan(filesToShare, journal, skipUnchanged, onHeartbeat) {
|
|
|
264
264
|
const localHash = hashSymlinkTarget(entry.target);
|
|
265
265
|
if (skipUnchanged) {
|
|
266
266
|
const existing = journal.files[relativePath];
|
|
267
|
-
|
|
267
|
+
// `!localDiverges`: see the regular-file gate below — a divergent entry
|
|
268
|
+
// stores the current LOCAL hash, so hash equality here proves only that
|
|
269
|
+
// local has not moved since the pull-keep, never that it matches remote.
|
|
270
|
+
if (existing && existing.hash === localHash && !existing.localDiverges) {
|
|
268
271
|
items.push({ action: "skip-unchanged", absolutePath, relativePath });
|
|
269
272
|
continue;
|
|
270
273
|
}
|
|
@@ -290,7 +293,15 @@ function computePushPlan(filesToShare, journal, skipUnchanged, onHeartbeat) {
|
|
|
290
293
|
const localHash = hashFile(absolutePath);
|
|
291
294
|
if (skipUnchanged) {
|
|
292
295
|
const existing = journal.files[relativePath];
|
|
293
|
-
|
|
296
|
+
// A `localDiverges` entry records the hash of the KEPT LOCAL body, so
|
|
297
|
+
// `existing.hash === localHash` is true for every such file by
|
|
298
|
+
// construction. Skipping on that equality asserts "local matches remote",
|
|
299
|
+
// which is precisely the claim the flag exists to deny — and it would
|
|
300
|
+
// strand the file: the runner's push leg always passes skipUnchanged,
|
|
301
|
+
// so the conflict path that could publish it never runs, and the pull leg
|
|
302
|
+
// sees an unchanged remote and re-arms the flag. Route these to the HEAD
|
|
303
|
+
// + conflict path instead and let the resolution decide.
|
|
304
|
+
if (existing && existing.hash === localHash && !existing.localDiverges) {
|
|
294
305
|
// The hash proved the bytes are unchanged — a no-op skip. Capture the
|
|
295
306
|
// current (mtimeMs, size) so the journal metadata stays accurate. Only
|
|
296
307
|
// attach when the stored stat actually differs (avoid a needless
|
|
@@ -874,6 +885,10 @@ async function executeUploads(run, pushPlan, counters, conflictPaths) {
|
|
|
874
885
|
if (aborted)
|
|
875
886
|
return;
|
|
876
887
|
const { absolutePath, relativePath, localHash } = item;
|
|
888
|
+
// Set when `publish-local` was chosen for a FRESH two-sided conflict rather
|
|
889
|
+
// than for the `localDiverges` recovery. The two cases need different write
|
|
890
|
+
// fences — see the precondition block below.
|
|
891
|
+
let fenceOnObservedRemote = false;
|
|
877
892
|
// Cloud-authoritative paths (server-regenerated: company-brief.md, board.json,
|
|
878
893
|
// ontology/ signals/ sources/) are PULL-WINS and server-owned. The push leg must
|
|
879
894
|
// NEVER upload the local copy over them — not just on a two-sided conflict, but on
|
|
@@ -910,6 +925,38 @@ async function executeUploads(run, pushPlan, counters, conflictPaths) {
|
|
|
910
925
|
// silently LWW-overwritten by a journaled stale local body (Ace-shaped
|
|
911
926
|
// vault regression 2026-08-03).
|
|
912
927
|
const journalEntry = run.journal.files[relativePath];
|
|
928
|
+
// A `localDiverges` entry whose remote object is GONE (HEAD null — peer
|
|
929
|
+
// delete, or an operator purge with no tombstone) must not fall through to
|
|
930
|
+
// the ordinary recreation path below. That path fences with
|
|
931
|
+
// `If-None-Match: *`, which succeeds precisely because the object is absent,
|
|
932
|
+
// so the divergent local body would resurrect a key the peer deliberately
|
|
933
|
+
// removed — the exact opposite of this strategy's promise that local is
|
|
934
|
+
// promoted ONLY while the remote still sits at the recorded etag. A missing
|
|
935
|
+
// object is the strongest possible statement that it does not.
|
|
936
|
+
//
|
|
937
|
+
// Scoped to divergent entries: `keep`'s recreate-once behaviour for an
|
|
938
|
+
// ordinary journaled key whose remote was deleted is unchanged.
|
|
939
|
+
if (!remoteMeta && journalEntry?.localDiverges) {
|
|
940
|
+
conflictPaths.push(relativePath);
|
|
941
|
+
const resolution = await resolveConflictSerialized({
|
|
942
|
+
path: relativePath,
|
|
943
|
+
localHash,
|
|
944
|
+
direction: "push",
|
|
945
|
+
});
|
|
946
|
+
run.emit({ type: "conflict", path: relativePath, direction: "push", resolution });
|
|
947
|
+
if (resolution === "abort") {
|
|
948
|
+
aborted = true;
|
|
949
|
+
abortFlightConflictPaths = [...conflictPaths];
|
|
950
|
+
return;
|
|
951
|
+
}
|
|
952
|
+
if (resolution !== "overwrite") {
|
|
953
|
+
// `publish-local`, `keep` and `skip` all decline to resurrect. Only an
|
|
954
|
+
// explicit `overwrite` — consent given with the deletion in view — falls
|
|
955
|
+
// through to the create below.
|
|
956
|
+
counters.filesSkipped++;
|
|
957
|
+
return;
|
|
958
|
+
}
|
|
959
|
+
}
|
|
913
960
|
if (remoteMeta) {
|
|
914
961
|
const localChanged = !!journalEntry && journalEntry.hash !== localHash;
|
|
915
962
|
const remoteChanged = !!journalEntry && hasRemoteChanged(remoteMeta, journalEntry);
|
|
@@ -980,7 +1027,26 @@ async function executeUploads(run, pushPlan, counters, conflictPaths) {
|
|
|
980
1027
|
counters.filesSkipped++;
|
|
981
1028
|
return;
|
|
982
1029
|
}
|
|
983
|
-
//
|
|
1030
|
+
// `publish-local` on a FRESH two-sided conflict must fence on the etag
|
|
1031
|
+
// just observed by HEAD, not on the journal's. Here `remoteChanged` is
|
|
1032
|
+
// true, which means the journal etag is stale BY DEFINITION — fencing on
|
|
1033
|
+
// it would 412 every time and the file could never publish, leaving the
|
|
1034
|
+
// operator's explicit choice permanently unhonoured. Consent given at
|
|
1035
|
+
// this prompt is consent against the remote they were just shown.
|
|
1036
|
+
//
|
|
1037
|
+
// The `divergentLocalHonesty` recovery keeps the JOURNAL etag: there the
|
|
1038
|
+
// recorded etag is exactly the version the operator saw when they chose
|
|
1039
|
+
// to keep, and a mismatch is the signal to fail closed.
|
|
1040
|
+
fenceOnObservedRemote =
|
|
1041
|
+
resolution === "publish-local" && !divergentLocalHonesty;
|
|
1042
|
+
// `overwrite` falls through to the conditional PUT and, on 412, retries
|
|
1043
|
+
// with no precondition — unconditional by design.
|
|
1044
|
+
//
|
|
1045
|
+
// `publish-local` falls through to the SAME conditional PUT but stops
|
|
1046
|
+
// there: see the 412 handler below, which fails it closed instead of
|
|
1047
|
+
// retrying unfenced. That fence is the whole point of the strategy — it
|
|
1048
|
+
// promotes the divergent local body only while the remote is still the
|
|
1049
|
+
// version the operator saw when they chose to keep it.
|
|
984
1050
|
}
|
|
985
1051
|
}
|
|
986
1052
|
if (aborted)
|
|
@@ -994,9 +1060,11 @@ async function executeUploads(run, pushPlan, counters, conflictPaths) {
|
|
|
994
1060
|
// If-Match against a missing object cannot succeed and false-conflicts.
|
|
995
1061
|
// Legacy entries without remoteEtag fall back to live HEAD (prior behavior).
|
|
996
1062
|
const precondition = remoteMeta
|
|
997
|
-
?
|
|
998
|
-
? { ifMatch:
|
|
999
|
-
:
|
|
1063
|
+
? fenceOnObservedRemote
|
|
1064
|
+
? { ifMatch: normalizeEtag(remoteMeta.etag) }
|
|
1065
|
+
: journalEntry?.remoteEtag
|
|
1066
|
+
? { ifMatch: journalEntry.remoteEtag }
|
|
1067
|
+
: { ifMatch: remoteMeta.etag }
|
|
1000
1068
|
: { ifNoneMatch: "*" };
|
|
1001
1069
|
const performUpload = async (pc) => {
|
|
1002
1070
|
const isSymlinkUpload = item.kind === "symlink";
|
|
@@ -1055,6 +1123,22 @@ async function executeUploads(run, pushPlan, counters, conflictPaths) {
|
|
|
1055
1123
|
abortFlightConflictPaths = [...conflictPaths];
|
|
1056
1124
|
return;
|
|
1057
1125
|
}
|
|
1126
|
+
// A 412 here means the remote advanced between the plan and the PUT.
|
|
1127
|
+
// `publish-local` consented to replacing ONE specific version; that
|
|
1128
|
+
// version is gone, so the consent no longer covers what is there now.
|
|
1129
|
+
// Fail closed — mirror the remote and skip — rather than inheriting
|
|
1130
|
+
// `overwrite`'s unfenced retry, which would clobber the peer's write.
|
|
1131
|
+
//
|
|
1132
|
+
// Keyed off the FRESH resolution above, not the earlier one: an
|
|
1133
|
+
// interactive operator re-prompted at this point may legitimately
|
|
1134
|
+
// escalate to `overwrite`, and that is new consent against the remote
|
|
1135
|
+
// as it stands now. Only a repeated `publish-local` — which is what the
|
|
1136
|
+
// non-interactive strategy returns — stays fenced.
|
|
1137
|
+
if (resolution === "publish-local") {
|
|
1138
|
+
await writePushConflictMirror(run, item, remoteMeta ? normalizeEtag(remoteMeta.etag) : "");
|
|
1139
|
+
counters.filesSkipped++;
|
|
1140
|
+
return;
|
|
1141
|
+
}
|
|
1058
1142
|
if (resolution === "overwrite") {
|
|
1059
1143
|
try {
|
|
1060
1144
|
await performUpload(undefined);
|