@indigoai-us/hq-cloud 6.18.96 → 6.18.98
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-company.d.ts.map +1 -1
- package/dist/bin/sync-runner-company.js +7 -0
- package/dist/bin/sync-runner-company.js.map +1 -1
- package/dist/bin/sync-runner-watch-loop.d.ts.map +1 -1
- package/dist/bin/sync-runner-watch-loop.js +50 -3
- package/dist/bin/sync-runner-watch-loop.js.map +1 -1
- package/dist/bin/sync-runner.d.ts +3 -0
- package/dist/bin/sync-runner.d.ts.map +1 -1
- package/dist/bin/sync-runner.js +1 -0
- package/dist/bin/sync-runner.js.map +1 -1
- package/dist/cli/rescue-core.d.ts +3 -2
- package/dist/cli/rescue-core.d.ts.map +1 -1
- package/dist/cli/rescue-core.js +144 -21
- package/dist/cli/rescue-core.js.map +1 -1
- package/dist/cli/rescue.d.ts +1 -1
- package/dist/cli/rescue.d.ts.map +1 -1
- package/dist/cli/rescue.js +4 -9
- package/dist/cli/rescue.js.map +1 -1
- package/dist/cli/share.d.ts +5 -0
- package/dist/cli/share.d.ts.map +1 -1
- package/dist/cli/share.js +120 -15
- package/dist/cli/share.js.map +1 -1
- package/dist/cli/sync.d.ts +18 -2
- package/dist/cli/sync.d.ts.map +1 -1
- package/dist/cli/sync.js +55 -4
- package/dist/cli/sync.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/object-io.d.ts +2 -3
- package/dist/object-io.d.ts.map +1 -1
- package/dist/object-io.js +15 -4
- package/dist/object-io.js.map +1 -1
- package/dist/plan-limit-pause.d.ts +19 -3
- package/dist/plan-limit-pause.d.ts.map +1 -1
- package/dist/plan-limit-pause.js +80 -10
- package/dist/plan-limit-pause.js.map +1 -1
- package/dist/plan-limit.d.ts +51 -5
- package/dist/plan-limit.d.ts.map +1 -1
- package/dist/plan-limit.js +79 -5
- package/dist/plan-limit.js.map +1 -1
- package/dist/s3.d.ts +2 -0
- package/dist/s3.d.ts.map +1 -1
- package/dist/s3.js +4 -2
- package/dist/s3.js.map +1 -1
- package/dist/sync-object-events.d.ts +61 -0
- package/dist/sync-object-events.d.ts.map +1 -0
- package/dist/sync-object-events.js +138 -0
- package/dist/sync-object-events.js.map +1 -0
- package/dist/sync-pass-event.d.ts +45 -0
- package/dist/sync-pass-event.d.ts.map +1 -0
- package/dist/sync-pass-event.js +102 -0
- package/dist/sync-pass-event.js.map +1 -0
- package/dist/sync-request-counter.d.ts +13 -0
- package/dist/sync-request-counter.d.ts.map +1 -0
- package/dist/sync-request-counter.js +29 -0
- package/dist/sync-request-counter.js.map +1 -0
- package/dist/test-fixtures/noop-sync-object-events.d.ts +6 -0
- package/dist/test-fixtures/noop-sync-object-events.d.ts.map +1 -0
- package/dist/test-fixtures/noop-sync-object-events.js +22 -0
- package/dist/test-fixtures/noop-sync-object-events.js.map +1 -0
- package/dist/vault-client.d.ts.map +1 -1
- package/dist/vault-client.js +4 -0
- package/dist/vault-client.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rescue-core.d.ts","sourceRoot":"","sources":["../../src/cli/rescue-core.ts"],"names":[],"mappings":"AA+BA,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AAGzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAO7B,OAAO,EAOL,KAAK,gBAAgB,EAEtB,MAAM,oBAAoB,CAAC;AAK5B,OAAO,EAAuB,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAEnF,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,KAAK,mBAAmB,GAAG,CACzB,OAAO,EAAE,MAAM,EAAE,EACjB,oBAAoB,EAAE,MAAM,EAC5B,gBAAgB,CAAC,EAAE,MAAM,EAAE,KACxB,IAAI,CAAC;AA+FV,UAAU,MAAM;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;IACrB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,OAAO,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,eAAe,EAAE,MAAM,CAAC;CACzB;AAkDD,oFAAoF;AACpF,wBAAgB,QAAQ,CACtB,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,IAAI,EAAE,MAAM,GACX,MAAM,GAAG,SAAS,CASpB;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAS3D;AA8CD;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,GACZ,MAAM,CAAC,UAAU,CASnB;AAED;;;;;;;GAOG;AACH,wBAAgB,2BAA2B,CACzC,GAAG,EAAE,MAAM,CAAC,UAAU,GACrB,MAAM,CAAC,UAAU,CAEnB;AA2LD,UAAU,kBAAkB;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,UAAU,aAAa;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AA8BD;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,MAAM,EAAE,EACjB,GAAG,EAAE,MAAM,CAAC,UAAU,GACrB,kBAAkB,GAAG,SAAS,CAyChC;AAmCD,sFAAsF;AACtF,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,GACvB,aAAa,CAiDf;AAgID;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,MAAM,EACd,GAAG,GAAE,MAAM,CAAC,UAAwB,EACpC,WAAW,GAAE,OAAO,EAAE,CAAC,WAA4B,GAClD,MAAM,EAAE,CA6DV;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,SAAS,EAAE,MAAM,EACjB,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,OAAO,CAgBT;AAaD;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAwMtD;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CACvB,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,GAAE;IACJ,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,iFAAiF;IACjF,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,
|
|
1
|
+
{"version":3,"file":"rescue-core.d.ts","sourceRoot":"","sources":["../../src/cli/rescue-core.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/rescue-core.js
CHANGED
|
@@ -2220,6 +2220,25 @@ function recoveryProof(unresolved, cfg, hqRoot, srcDir, srcSha, rsyncLauncher, r
|
|
|
2220
2220
|
}
|
|
2221
2221
|
return { eligible: !hasSkippedSnapshotEntries(newest.entry.manifest), failures };
|
|
2222
2222
|
}
|
|
2223
|
+
function assertClaudeSettingsAdmission(hqRoot, err) {
|
|
2224
|
+
const parent = path.join(hqRoot, ".claude");
|
|
2225
|
+
for (const candidate of [parent, path.join(parent, "settings.local.json")]) {
|
|
2226
|
+
let entry;
|
|
2227
|
+
try {
|
|
2228
|
+
entry = fs.lstatSync(candidate);
|
|
2229
|
+
}
|
|
2230
|
+
catch (error) {
|
|
2231
|
+
if (error.code === "ENOENT")
|
|
2232
|
+
continue;
|
|
2233
|
+
err("error: cannot inspect Claude settings safely; rescue stopped before modifying the install.\n");
|
|
2234
|
+
throw new ExitError(1);
|
|
2235
|
+
}
|
|
2236
|
+
if (candidate === parent && (entry.isSymbolicLink() || !entry.isDirectory())) {
|
|
2237
|
+
err("error: .claude must be a real directory; rescue stopped before modifying the install.\n");
|
|
2238
|
+
throw new ExitError(1);
|
|
2239
|
+
}
|
|
2240
|
+
}
|
|
2241
|
+
}
|
|
2223
2242
|
function doRescue(cfg, env, out, err, setTmp, retainTmp, gitReachabilityProbeTimeoutMs = GIT_REACHABILITY_PROBE_TIMEOUT_MS, stampWriter = writeCoreSourceStamp, restoreOnRsyncFailure = false, setupPathSettingsLocal = false, backupCapacityStatfsSync = fs.statfsSync, backupCapacityCloneProbe, backupCapacityStatSync = fs.statSync, pathSep = path.sep, snapshotClonePlatform = process.platform, snapshotCloneRunner = runDarwinClone) {
|
|
2224
2243
|
const hqRoot = resolveHqRoot(cfg, err);
|
|
2225
2244
|
const RUN_TS = utcStamp(new Date(), "dash");
|
|
@@ -2236,6 +2255,9 @@ function doRescue(cfg, env, out, err, setTmp, retainTmp, gitReachabilityProbeTim
|
|
|
2236
2255
|
const claudeSettingsInScope = cfg.narrowPaths.length === 0 || cfg.narrowPaths.includes(".claude");
|
|
2237
2256
|
let preRescueSettingsJson = null;
|
|
2238
2257
|
if (claudeSettingsInScope) {
|
|
2258
|
+
// Refuse an unsafe parent or unreadable metadata BEFORE capturing settings,
|
|
2259
|
+
// allocating a snapshot, classifying mutations or overlaying release files.
|
|
2260
|
+
assertClaudeSettingsAdmission(hqRoot, err);
|
|
2239
2261
|
const p = path.join(hqRoot, claudeSettingsRel);
|
|
2240
2262
|
if (isFileFollow(p)) {
|
|
2241
2263
|
try {
|
|
@@ -3972,13 +3994,94 @@ function settingsExplicitlyPreserved(preserveSubpaths) {
|
|
|
3972
3994
|
}
|
|
3973
3995
|
return false;
|
|
3974
3996
|
}
|
|
3997
|
+
// Publish settings only after a complete same-directory write. A failed write
|
|
3998
|
+
// must leave the previous local keys (and their permissions) intact.
|
|
3999
|
+
function writeSettingsAtomically(target, contents) {
|
|
4000
|
+
let mode = 0o600;
|
|
4001
|
+
try {
|
|
4002
|
+
const existing = fs.statSync(target);
|
|
4003
|
+
if (!existing.isFile())
|
|
4004
|
+
throw new Error("settings target is not a file");
|
|
4005
|
+
fs.accessSync(target, fs.constants.W_OK);
|
|
4006
|
+
mode = existing.mode & 0o777;
|
|
4007
|
+
}
|
|
4008
|
+
catch (error) {
|
|
4009
|
+
if (error.code !== "ENOENT")
|
|
4010
|
+
throw error;
|
|
4011
|
+
}
|
|
4012
|
+
// Reuse the internal-state prefix already excluded by older sync consumers.
|
|
4013
|
+
// A new suffix alone would upload local settings before those clients update.
|
|
4014
|
+
const temporary = path.join(path.dirname(target), `.hq-${path.basename(target)}.${process.pid}.${crypto.randomUUID()}.tmp`);
|
|
4015
|
+
let descriptor;
|
|
4016
|
+
let created = false;
|
|
4017
|
+
let failed = false;
|
|
4018
|
+
let failure;
|
|
4019
|
+
try {
|
|
4020
|
+
descriptor = fs.openSync(temporary, "wx", 0o600);
|
|
4021
|
+
created = true;
|
|
4022
|
+
fs.writeFileSync(descriptor, contents, "utf8");
|
|
4023
|
+
fs.fchmodSync(descriptor, mode);
|
|
4024
|
+
fs.fsyncSync(descriptor);
|
|
4025
|
+
fs.closeSync(descriptor);
|
|
4026
|
+
descriptor = undefined;
|
|
4027
|
+
fs.renameSync(temporary, target);
|
|
4028
|
+
}
|
|
4029
|
+
catch (error) {
|
|
4030
|
+
failed = true;
|
|
4031
|
+
failure = error;
|
|
4032
|
+
}
|
|
4033
|
+
try {
|
|
4034
|
+
if (descriptor !== undefined)
|
|
4035
|
+
fs.closeSync(descriptor);
|
|
4036
|
+
}
|
|
4037
|
+
catch (error) {
|
|
4038
|
+
if (!failed) {
|
|
4039
|
+
failed = true;
|
|
4040
|
+
failure = error;
|
|
4041
|
+
}
|
|
4042
|
+
}
|
|
4043
|
+
if (created) {
|
|
4044
|
+
try {
|
|
4045
|
+
fs.unlinkSync(temporary);
|
|
4046
|
+
}
|
|
4047
|
+
catch (error) {
|
|
4048
|
+
if (error.code !== "ENOENT" && !failed) {
|
|
4049
|
+
failed = true;
|
|
4050
|
+
failure = error;
|
|
4051
|
+
}
|
|
4052
|
+
}
|
|
4053
|
+
}
|
|
4054
|
+
if (failed)
|
|
4055
|
+
throw failure;
|
|
4056
|
+
}
|
|
4057
|
+
function restorePreRescueSettingsJson(settingsPath, prior, err) {
|
|
4058
|
+
if (prior === null)
|
|
4059
|
+
return true;
|
|
4060
|
+
try {
|
|
4061
|
+
let current;
|
|
4062
|
+
try {
|
|
4063
|
+
current = fs.readFileSync(settingsPath, "utf8");
|
|
4064
|
+
}
|
|
4065
|
+
catch (error) {
|
|
4066
|
+
if (error.code !== "ENOENT")
|
|
4067
|
+
throw error;
|
|
4068
|
+
}
|
|
4069
|
+
if (current !== prior)
|
|
4070
|
+
writeSettingsAtomically(settingsPath, prior);
|
|
4071
|
+
return true;
|
|
4072
|
+
}
|
|
4073
|
+
catch {
|
|
4074
|
+
err(" WARN: could not restore pre-rescue .claude/settings.json after a failed drift relocation\n");
|
|
4075
|
+
return false;
|
|
4076
|
+
}
|
|
4077
|
+
}
|
|
3975
4078
|
/**
|
|
3976
4079
|
* Post-overlay reconcile for the machine-local, generated `.claude/settings.json`.
|
|
3977
4080
|
*
|
|
3978
4081
|
* At entry the overlay has already re-laid the release template (theirs) over
|
|
3979
4082
|
* settings.json, and the user's settings.local.json has been restored from the
|
|
3980
4083
|
* preserve shuttle. This function:
|
|
3981
|
-
* 1. composes env.PATH into
|
|
4084
|
+
* 1. composes machine-specific env.PATH into settings.local.json, and
|
|
3982
4085
|
* 2. extracts ours's drift versus the last-sync floor (base) — excluding
|
|
3983
4086
|
* env.PATH — and merges it into settings.local.json (deliverable 2),
|
|
3984
4087
|
* so the EFFECTIVE merged settings (Project ⊕ Local, per Claude Code's rules)
|
|
@@ -3990,7 +4093,7 @@ function settingsExplicitlyPreserved(preserveSubpaths) {
|
|
|
3990
4093
|
* rescue's posture elsewhere.
|
|
3991
4094
|
*/
|
|
3992
4095
|
export function reconcileClaudeSettings(ctx, preRescueSettingsJson, out, err) {
|
|
3993
|
-
const { hqRoot, srcDir, env, historyFloor, baselineMode, preserveSubpaths,
|
|
4096
|
+
const { hqRoot, srcDir, env, historyFloor, baselineMode, preserveSubpaths, } = ctx;
|
|
3994
4097
|
const settingsPath = path.join(hqRoot, ".claude", "settings.json");
|
|
3995
4098
|
const localPath = path.join(hqRoot, ".claude", "settings.local.json");
|
|
3996
4099
|
// The caller explicitly asked to keep settings.json (via `--preserve-subpath
|
|
@@ -4001,6 +4104,35 @@ export function reconcileClaudeSettings(ctx, preRescueSettingsJson, out, err) {
|
|
|
4001
4104
|
out("==> Skipped .claude/settings.json reconcile (explicitly preserved by --preserve-subpath)\n");
|
|
4002
4105
|
return;
|
|
4003
4106
|
}
|
|
4107
|
+
// The runner checks the parent before overlay. Recheck here to avoid reading
|
|
4108
|
+
// through a replacement; never restore through an unknown or linked parent.
|
|
4109
|
+
const settingsParent = path.dirname(localPath);
|
|
4110
|
+
let safeSettingsParent = false;
|
|
4111
|
+
for (const candidate of [settingsParent, localPath]) {
|
|
4112
|
+
try {
|
|
4113
|
+
const entry = fs.lstatSync(candidate);
|
|
4114
|
+
if (candidate === settingsParent) {
|
|
4115
|
+
if (entry.isSymbolicLink() || !entry.isDirectory()) {
|
|
4116
|
+
err(" WARN: settings parent is not a real directory (symlinks refused); settings reconcile skipped\n");
|
|
4117
|
+
return;
|
|
4118
|
+
}
|
|
4119
|
+
safeSettingsParent = true;
|
|
4120
|
+
}
|
|
4121
|
+
else if (entry.isSymbolicLink()) {
|
|
4122
|
+
err(" WARN: settings.local.json is a symlink; settings reconcile skipped\n");
|
|
4123
|
+
restorePreRescueSettingsJson(settingsPath, preRescueSettingsJson, err);
|
|
4124
|
+
return;
|
|
4125
|
+
}
|
|
4126
|
+
}
|
|
4127
|
+
catch (error) {
|
|
4128
|
+
if (error.code !== "ENOENT") {
|
|
4129
|
+
err(" WARN: could not inspect settings.local.json; settings reconcile skipped\n");
|
|
4130
|
+
if (safeSettingsParent)
|
|
4131
|
+
restorePreRescueSettingsJson(settingsPath, preRescueSettingsJson, err);
|
|
4132
|
+
return;
|
|
4133
|
+
}
|
|
4134
|
+
}
|
|
4135
|
+
}
|
|
4004
4136
|
const overlaidTemplateExists = isFileFollow(settingsPath);
|
|
4005
4137
|
if (!overlaidTemplateExists) {
|
|
4006
4138
|
// The release no longer ships .claude/settings.json, but the overwrite-safe
|
|
@@ -4072,12 +4204,10 @@ export function reconcileClaudeSettings(ctx, preRescueSettingsJson, out, err) {
|
|
|
4072
4204
|
.filter((value) => typeof value === "string")
|
|
4073
4205
|
.join(path.delimiter);
|
|
4074
4206
|
const composedPath = composeSettingsPath(srcDir, hqRoot, basePath, env);
|
|
4075
|
-
|
|
4207
|
+
// The legacy option stays accepted, including explicit false, but machine
|
|
4208
|
+
// PATH must never become release drift when lookup fails or defaults off.
|
|
4209
|
+
const writePathLocally = Boolean(composedPath);
|
|
4076
4210
|
const releaseBaseline = structuredClone(theirs);
|
|
4077
|
-
if (composedPath && !setupPathSettingsLocal) {
|
|
4078
|
-
const envObj = isPlainObject(theirs.env) ? theirs.env : (theirs.env = {});
|
|
4079
|
-
envObj.PATH = composedPath;
|
|
4080
|
-
}
|
|
4081
4211
|
// Relocate genuine user drift into settings.local, and apply user array
|
|
4082
4212
|
// removals to the release baseline.
|
|
4083
4213
|
let drift;
|
|
@@ -4145,7 +4275,7 @@ export function reconcileClaudeSettings(ctx, preRescueSettingsJson, out, err) {
|
|
|
4145
4275
|
}
|
|
4146
4276
|
try {
|
|
4147
4277
|
fs.mkdirSync(path.dirname(localPath), { recursive: true });
|
|
4148
|
-
|
|
4278
|
+
writeSettingsAtomically(localPath, JSON.stringify(localObj, null, 2) + "\n");
|
|
4149
4279
|
}
|
|
4150
4280
|
catch {
|
|
4151
4281
|
relocationFailed = true;
|
|
@@ -4159,20 +4289,15 @@ export function reconcileClaudeSettings(ctx, preRescueSettingsJson, out, err) {
|
|
|
4159
4289
|
// lost; the update simply isn't applied to settings this run (the user can
|
|
4160
4290
|
// retry once settings.local.json is writable).
|
|
4161
4291
|
if (relocationFailed) {
|
|
4162
|
-
|
|
4163
|
-
|
|
4164
|
-
|
|
4165
|
-
}
|
|
4166
|
-
catch {
|
|
4167
|
-
err(" WARN: could not restore pre-rescue .claude/settings.json after a failed drift relocation\n");
|
|
4168
|
-
}
|
|
4292
|
+
const originalPreserved = restorePreRescueSettingsJson(settingsPath, preRescueSettingsJson, err);
|
|
4293
|
+
if (originalPreserved) {
|
|
4294
|
+
err(" WARN: kept your original .claude/settings.json (settings update not applied — settings.local.json was unwritable)\n");
|
|
4169
4295
|
}
|
|
4170
|
-
err(" WARN: kept your original .claude/settings.json (settings update not applied — settings.local.json was unwritable)\n");
|
|
4171
4296
|
return;
|
|
4172
4297
|
}
|
|
4173
|
-
//
|
|
4298
|
+
// Leave the release blob byte-for-byte intact unless
|
|
4174
4299
|
// preserving an intentional user array removal changed its content.
|
|
4175
|
-
const releasedSettingsUnchanged =
|
|
4300
|
+
const releasedSettingsUnchanged = jsonDeepEqual(theirs, releaseBaseline);
|
|
4176
4301
|
try {
|
|
4177
4302
|
if (!releasedSettingsUnchanged) {
|
|
4178
4303
|
fs.writeFileSync(settingsPath, JSON.stringify(theirs, null, 2) + "\n");
|
|
@@ -4182,9 +4307,7 @@ export function reconcileClaudeSettings(ctx, preRescueSettingsJson, out, err) {
|
|
|
4182
4307
|
err(" WARN: could not write re-composed .claude/settings.json during reconcile\n");
|
|
4183
4308
|
return;
|
|
4184
4309
|
}
|
|
4185
|
-
const pathTarget =
|
|
4186
|
-
? ".claude/settings.local.json"
|
|
4187
|
-
: ".claude/settings.json";
|
|
4310
|
+
const pathTarget = ".claude/settings.local.json";
|
|
4188
4311
|
if (driftKeys > 0) {
|
|
4189
4312
|
out(`==> Reconciled .claude/settings.json to release baseline (env.PATH composed into ${pathTarget}; ` +
|
|
4190
4313
|
`relocated ${driftKeys} drift key(s) -> .claude/settings.local.json)\n`);
|