@mnemonik/cli 7.111.10 → 7.112.3

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.
Files changed (55) hide show
  1. package/dist/auth/credentials.d.ts +7 -2
  2. package/dist/auth/credentials.d.ts.map +1 -1
  3. package/dist/auth/credentials.js +311 -98
  4. package/dist/auth/index.d.ts +15 -0
  5. package/dist/auth/index.d.ts.map +1 -1
  6. package/dist/auth/index.js +72 -15
  7. package/dist/auth/index.js.map +1 -1
  8. package/dist/auth/installSession.js +3 -2
  9. package/dist/auth/status.js +3 -2
  10. package/dist/diagnostics.js +315 -102
  11. package/dist/digests.json +53 -53
  12. package/dist/identity/migrate.js +40 -2
  13. package/dist/install/hosts.js +3 -2
  14. package/dist/install/journal.js +40 -2
  15. package/dist/install/journey.js +40 -2
  16. package/dist/install/ownership.js +40 -2
  17. package/dist/install/transaction.d.ts +1 -3
  18. package/dist/install/transaction.d.ts.map +1 -1
  19. package/dist/install/transaction.js +67 -16
  20. package/dist/install/transaction.js.map +1 -1
  21. package/dist/install/ui.d.ts.map +1 -1
  22. package/dist/install/ui.js +42 -2
  23. package/dist/install/ui.js.map +1 -1
  24. package/dist/installSession.js +3 -2
  25. package/dist/installation.js +40 -2
  26. package/dist/launcher.js +40 -2
  27. package/dist/preflight.js +4 -3
  28. package/dist/project/eligibility.js +40 -2
  29. package/dist/project/records.js +40 -2
  30. package/dist/project.d.ts +11 -2
  31. package/dist/project.d.ts.map +1 -1
  32. package/dist/project.js +46 -4
  33. package/dist/project.js.map +1 -1
  34. package/dist/router.js +41 -3
  35. package/dist/runtime/releaseSource.js +40 -2
  36. package/dist/runtime/selfUpdate.js +40 -2
  37. package/dist/runtime/signers.js +242 -50
  38. package/dist/runtime/store.js +34 -0
  39. package/dist/runtime/updateCheck.js +40 -2
  40. package/dist/sbom.json +21 -21
  41. package/dist/scanner/control.js +40 -2
  42. package/dist/scanner/data.js +3 -2
  43. package/dist/scanner/discover.js +4 -3
  44. package/dist/scanner/enable.js +40 -2
  45. package/dist/scanner/picker.js +3 -2
  46. package/dist/scanner/service.js +40 -2
  47. package/dist/scanner/update.js +40 -2
  48. package/dist/scanner-release.json +29 -29
  49. package/dist/status.js +44 -6
  50. package/dist/transport/server.d.ts +21 -2
  51. package/dist/transport/server.d.ts.map +1 -1
  52. package/dist/transport/server.js +15 -1
  53. package/dist/transport/server.js.map +1 -1
  54. package/dist/vendor/local-setup.js +40 -2
  55. package/package.json +31 -31
@@ -501,6 +501,13 @@ var require_ignore = __commonJS({
501
501
  }
502
502
  });
503
503
 
504
+ // packages/shared/dist/hookTimeouts.js
505
+ var init_hookTimeouts = __esm({
506
+ "packages/shared/dist/hookTimeouts.js"() {
507
+ "use strict";
508
+ }
509
+ });
510
+
504
511
  // packages/shared/dist/runtimeSigners.js
505
512
  import { basename, dirname as dirname2, join as join2, resolve, sep, win32 } from "node:path";
506
513
  import { execFile, execFileSync } from "node:child_process";
@@ -618,11 +625,37 @@ var init_runtimeReader = __esm({
618
625
  });
619
626
 
620
627
  // packages/shared/dist/projectSetupHandoff.js
628
+ var PROJECT_ENSURE_TIMEOUT_MS, SUPERVISOR, RUN_STALE_MS;
621
629
  var init_projectSetupHandoff = __esm({
622
630
  "packages/shared/dist/projectSetupHandoff.js"() {
623
631
  "use strict";
624
632
  init_runtimeSigners();
633
+ init_hookTimeouts();
625
634
  init_runtimeReader();
635
+ PROJECT_ENSURE_TIMEOUT_MS = 3e4;
636
+ SUPERVISOR = `
637
+ const { execFile } = require('node:child_process');
638
+ const { writeFileSync, renameSync } = require('node:fs');
639
+ const [out, bin, ...args] = process.argv.slice(1);
640
+ let input = '';
641
+ process.stdin.setEncoding('utf8');
642
+ process.stdin.on('data', (chunk) => (input += chunk));
643
+ process.stdin.on('end', () => {
644
+ const child = execFile(
645
+ process.execPath,
646
+ [bin, ...args],
647
+ { shell: false, timeout: ${PROJECT_ENSURE_TIMEOUT_MS}, killSignal: 'SIGKILL', maxBuffer: 64 * 1024, env: process.env },
648
+ (error, stdout) => {
649
+ const result = { code: error ? (typeof error.code === 'number' ? error.code : null) : 0, killed: !!(error && error.killed), stdout: String(stdout) };
650
+ writeFileSync(out + '.tmp', JSON.stringify(result), { mode: 0o600 });
651
+ renameSync(out + '.tmp', out);
652
+ }
653
+ );
654
+ child.stdin.on('error', () => {});
655
+ child.stdin.end(input);
656
+ });
657
+ `;
658
+ RUN_STALE_MS = PROJECT_ENSURE_TIMEOUT_MS + 1e4;
626
659
  }
627
660
  });
628
661
 
@@ -631,6 +664,7 @@ var init_hookRuntime = __esm({
631
664
  "packages/shared/dist/hookRuntime.js"() {
632
665
  "use strict";
633
666
  init_runtimeSigners();
667
+ init_hookTimeouts();
634
668
  init_repositoryRoot();
635
669
  init_runtimeReader();
636
670
  init_runtimeSigners();
@@ -2231,7 +2265,7 @@ Project work items live in tasks. A pending list requires action:"list" and stat
2231
2265
 
2232
2266
  Which tool for what:
2233
2267
  - memory_get: hydrates exact originals by id.
2234
- - memory_add: saves a discrete decision or root cause.
2268
+ - memory_add: saves a decision, a user's preference, or a root cause.
2235
2269
  - memory_state: corrects wrong, outdated, or conflicting memory.
2236
2270
  - memory_info: explains confidence or origin when memory looks suspect.
2237
2271
  - memory_links: connects related decisions so they surface together.
@@ -2240,7 +2274,8 @@ Which tool for what:
2240
2274
  - policy: stores durable enforced rules or preferences, not memories.
2241
2275
  - tasks: creates follow-up work and closes completed work.
2242
2276
  - code_search: finds conceptual code when source wording differs.
2243
- - memory_search: finds rationale, intent, decisions, and prior work.`;
2277
+ - memory_search: finds rationale, intent, decisions, and prior work.
2278
+ - memory_ingest: brings the project's docs and code comments into memory when asked.`;
2244
2279
  function getMcpInstructions() {
2245
2280
  const process2 = globalThis.process;
2246
2281
  if (!process2?.env) {
@@ -6402,6 +6437,9 @@ var DEFAULT_OPTIONS = {
6402
6437
  };
6403
6438
  var BUILT_IN_IGNORE_DIR_SET = new Set(BUILT_IN_IGNORE_DIRS);
6404
6439
 
6440
+ // packages/shared/dist/index.js
6441
+ init_hookTimeouts();
6442
+
6405
6443
  // packages/shared/dist/jitDeliveryAck.js
6406
6444
  init_runtimeSigners();
6407
6445
 
@@ -501,6 +501,13 @@ var require_ignore = __commonJS({
501
501
  }
502
502
  });
503
503
 
504
+ // packages/shared/dist/hookTimeouts.js
505
+ var init_hookTimeouts = __esm({
506
+ "packages/shared/dist/hookTimeouts.js"() {
507
+ "use strict";
508
+ }
509
+ });
510
+
504
511
  // packages/shared/dist/runtimeSigners.js
505
512
  import { basename, dirname as dirname2, join as join2, resolve, sep, win32 } from "node:path";
506
513
  import { execFile, execFileSync } from "node:child_process";
@@ -618,11 +625,37 @@ var init_runtimeReader = __esm({
618
625
  });
619
626
 
620
627
  // packages/shared/dist/projectSetupHandoff.js
628
+ var PROJECT_ENSURE_TIMEOUT_MS, SUPERVISOR, RUN_STALE_MS;
621
629
  var init_projectSetupHandoff = __esm({
622
630
  "packages/shared/dist/projectSetupHandoff.js"() {
623
631
  "use strict";
624
632
  init_runtimeSigners();
633
+ init_hookTimeouts();
625
634
  init_runtimeReader();
635
+ PROJECT_ENSURE_TIMEOUT_MS = 3e4;
636
+ SUPERVISOR = `
637
+ const { execFile } = require('node:child_process');
638
+ const { writeFileSync, renameSync } = require('node:fs');
639
+ const [out, bin, ...args] = process.argv.slice(1);
640
+ let input = '';
641
+ process.stdin.setEncoding('utf8');
642
+ process.stdin.on('data', (chunk) => (input += chunk));
643
+ process.stdin.on('end', () => {
644
+ const child = execFile(
645
+ process.execPath,
646
+ [bin, ...args],
647
+ { shell: false, timeout: ${PROJECT_ENSURE_TIMEOUT_MS}, killSignal: 'SIGKILL', maxBuffer: 64 * 1024, env: process.env },
648
+ (error, stdout) => {
649
+ const result = { code: error ? (typeof error.code === 'number' ? error.code : null) : 0, killed: !!(error && error.killed), stdout: String(stdout) };
650
+ writeFileSync(out + '.tmp', JSON.stringify(result), { mode: 0o600 });
651
+ renameSync(out + '.tmp', out);
652
+ }
653
+ );
654
+ child.stdin.on('error', () => {});
655
+ child.stdin.end(input);
656
+ });
657
+ `;
658
+ RUN_STALE_MS = PROJECT_ENSURE_TIMEOUT_MS + 1e4;
626
659
  }
627
660
  });
628
661
 
@@ -631,6 +664,7 @@ var init_hookRuntime = __esm({
631
664
  "packages/shared/dist/hookRuntime.js"() {
632
665
  "use strict";
633
666
  init_runtimeSigners();
667
+ init_hookTimeouts();
634
668
  init_repositoryRoot();
635
669
  init_runtimeReader();
636
670
  init_runtimeSigners();
@@ -2231,7 +2265,7 @@ Project work items live in tasks. A pending list requires action:"list" and stat
2231
2265
 
2232
2266
  Which tool for what:
2233
2267
  - memory_get: hydrates exact originals by id.
2234
- - memory_add: saves a discrete decision or root cause.
2268
+ - memory_add: saves a decision, a user's preference, or a root cause.
2235
2269
  - memory_state: corrects wrong, outdated, or conflicting memory.
2236
2270
  - memory_info: explains confidence or origin when memory looks suspect.
2237
2271
  - memory_links: connects related decisions so they surface together.
@@ -2240,7 +2274,8 @@ Which tool for what:
2240
2274
  - policy: stores durable enforced rules or preferences, not memories.
2241
2275
  - tasks: creates follow-up work and closes completed work.
2242
2276
  - code_search: finds conceptual code when source wording differs.
2243
- - memory_search: finds rationale, intent, decisions, and prior work.`;
2277
+ - memory_search: finds rationale, intent, decisions, and prior work.
2278
+ - memory_ingest: brings the project's docs and code comments into memory when asked.`;
2244
2279
  function getMcpInstructions() {
2245
2280
  const process2 = globalThis.process;
2246
2281
  if (!process2?.env) {
@@ -6402,6 +6437,9 @@ var DEFAULT_OPTIONS = {
6402
6437
  };
6403
6438
  var BUILT_IN_IGNORE_DIR_SET = new Set(BUILT_IN_IGNORE_DIRS);
6404
6439
 
6440
+ // packages/shared/dist/index.js
6441
+ init_hookTimeouts();
6442
+
6405
6443
  // packages/shared/dist/jitDeliveryAck.js
6406
6444
  init_runtimeSigners();
6407
6445
 
package/dist/project.d.ts CHANGED
@@ -53,6 +53,8 @@ export interface RealProjectRuntimeOptions {
53
53
  }>;
54
54
  requestId?: string;
55
55
  fault?: ExecutorDependencies['fault'];
56
+ /** Epoch ms after which the server transport sends nothing (see ensureProjectForAgent). */
57
+ deadline?: number;
56
58
  }
57
59
  export declare function repositoryFingerprint(root: string): Promise<RepositoryFingerprint | null>;
58
60
  export declare function createRealProjectRuntime(options?: RealProjectRuntimeOptions): Promise<{
@@ -66,13 +68,18 @@ export declare function createRealProjectRuntime(options?: RealProjectRuntimeOpt
66
68
  reason: string;
67
69
  }>;
68
70
  credentials: {
69
- putCliOAuth: (metadata: import("@mnemonik/credentials").CliOAuthMetadata, tokens: import("@mnemonik/credentials").CliOAuthTokens | string) => Promise<{
71
+ putCliOAuth: (metadata: import("@mnemonik/credentials").CliOAuthMetadata, tokens: import("@mnemonik/credentials").CliOAuthTokens | string) => ReturnType<(metadata: import("@mnemonik/credentials").CliOAuthMetadata, tokens: import("@mnemonik/credentials").CliOAuthTokens | string) => Promise<{
70
72
  store: string;
71
- }>;
73
+ }>>;
72
74
  readCliOAuth: () => Promise<import("@mnemonik/credentials").CliOAuthCredential | null>;
73
75
  rotateCli: (transport: import("@mnemonik/credentials").CliCredentialTransport) => Promise<import("@mnemonik/credentials").ActionRequired | import("@mnemonik/credentials").RetryLater | import("@mnemonik/credentials").CliOAuthCredential>;
74
76
  withCliCredential: <T>(transport: import("@mnemonik/credentials").CliCredentialTransport, work: (accessToken: string) => Promise<import("@mnemonik/credentials").WorkResponse<T>>) => Promise<import("@mnemonik/credentials").WorkResponse<T> | import("@mnemonik/credentials").ActionRequired | import("@mnemonik/credentials").RetryLater>;
75
77
  removeCliOAuth: () => Promise<void>;
78
+ revokeCli: (transport: import("@mnemonik/credentials").CliRevocationTransport) => Promise<import("@mnemonik/credentials").ActionRequired | import("@mnemonik/credentials").RetryLater | {
79
+ status: 'revoked';
80
+ familyId: string;
81
+ }>;
82
+ waitForCliLease: () => Promise<void>;
76
83
  putFamily: (componentKind: import("@mnemonik/credentials").ComponentKind, response: import("@mnemonik/credentials").ComponentCredentialResponse) => Promise<import("@mnemonik/credentials").FamilyCredential>;
77
84
  readFamily: (familyId: string) => Promise<import("@mnemonik/credentials").FamilyCredential | null>;
78
85
  rotateFamily: (familyId: string, transport: import("@mnemonik/credentials").CredentialTransport) => Promise<import("@mnemonik/credentials").RotationResult>;
@@ -136,6 +143,8 @@ export interface ProjectCommandInput {
136
143
  owner?: string;
137
144
  }
138
145
  export declare function runProjectCommand(input: ProjectCommandInput, deps: ProjectCommandDependencies): Promise<number>;
146
+ /** How long `project ensure` may spend on server requests (the supervisor allows 30 s). */
147
+ export declare const PROJECT_ENSURE_DEADLINE_MS = 25000;
139
148
  export declare function ensureProjectForAgent(options: {
140
149
  output: Output;
141
150
  cwd: string;
@@ -1 +1 @@
1
- {"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../src/project.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../src/project.ts"],"names":[],"mappings":"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"}
package/dist/project.js CHANGED
@@ -501,6 +501,13 @@ var require_ignore = __commonJS({
501
501
  }
502
502
  });
503
503
 
504
+ // packages/shared/dist/hookTimeouts.js
505
+ var init_hookTimeouts = __esm({
506
+ "packages/shared/dist/hookTimeouts.js"() {
507
+ "use strict";
508
+ }
509
+ });
510
+
504
511
  // packages/shared/dist/runtimeSigners.js
505
512
  import { basename, dirname as dirname2, join as join2, resolve, sep, win32 } from "node:path";
506
513
  import { execFile, execFileSync } from "node:child_process";
@@ -790,7 +797,7 @@ async function readIdentityFile(dir, options = {}) {
790
797
  if (options.selectedRoot) {
791
798
  try {
792
799
  const value = JSON.parse(text);
793
- if (value && typeof value === "object" && !Array.isArray(value) && !("projectId" in value))
800
+ if (value && typeof value === "object" && !Array.isArray(value) && !("projectId" in value) && (!("schemaVersion" in value) || value.schemaVersion === 1))
794
801
  return { kind: "absent" };
795
802
  } catch {
796
803
  }
@@ -1052,11 +1059,37 @@ var init_runtimeReader = __esm({
1052
1059
  });
1053
1060
 
1054
1061
  // packages/shared/dist/projectSetupHandoff.js
1062
+ var PROJECT_ENSURE_TIMEOUT_MS, SUPERVISOR, RUN_STALE_MS;
1055
1063
  var init_projectSetupHandoff = __esm({
1056
1064
  "packages/shared/dist/projectSetupHandoff.js"() {
1057
1065
  "use strict";
1058
1066
  init_runtimeSigners();
1067
+ init_hookTimeouts();
1059
1068
  init_runtimeReader();
1069
+ PROJECT_ENSURE_TIMEOUT_MS = 3e4;
1070
+ SUPERVISOR = `
1071
+ const { execFile } = require('node:child_process');
1072
+ const { writeFileSync, renameSync } = require('node:fs');
1073
+ const [out, bin, ...args] = process.argv.slice(1);
1074
+ let input = '';
1075
+ process.stdin.setEncoding('utf8');
1076
+ process.stdin.on('data', (chunk) => (input += chunk));
1077
+ process.stdin.on('end', () => {
1078
+ const child = execFile(
1079
+ process.execPath,
1080
+ [bin, ...args],
1081
+ { shell: false, timeout: ${PROJECT_ENSURE_TIMEOUT_MS}, killSignal: 'SIGKILL', maxBuffer: 64 * 1024, env: process.env },
1082
+ (error, stdout) => {
1083
+ const result = { code: error ? (typeof error.code === 'number' ? error.code : null) : 0, killed: !!(error && error.killed), stdout: String(stdout) };
1084
+ writeFileSync(out + '.tmp', JSON.stringify(result), { mode: 0o600 });
1085
+ renameSync(out + '.tmp', out);
1086
+ }
1087
+ );
1088
+ child.stdin.on('error', () => {});
1089
+ child.stdin.end(input);
1090
+ });
1091
+ `;
1092
+ RUN_STALE_MS = PROJECT_ENSURE_TIMEOUT_MS + 1e4;
1060
1093
  }
1061
1094
  });
1062
1095
 
@@ -1065,6 +1098,7 @@ var init_hookRuntime = __esm({
1065
1098
  "packages/shared/dist/hookRuntime.js"() {
1066
1099
  "use strict";
1067
1100
  init_runtimeSigners();
1101
+ init_hookTimeouts();
1068
1102
  init_repositoryRoot();
1069
1103
  init_runtimeReader();
1070
1104
  init_runtimeSigners();
@@ -2671,7 +2705,7 @@ Project work items live in tasks. A pending list requires action:"list" and stat
2671
2705
 
2672
2706
  Which tool for what:
2673
2707
  - memory_get: hydrates exact originals by id.
2674
- - memory_add: saves a discrete decision or root cause.
2708
+ - memory_add: saves a decision, a user's preference, or a root cause.
2675
2709
  - memory_state: corrects wrong, outdated, or conflicting memory.
2676
2710
  - memory_info: explains confidence or origin when memory looks suspect.
2677
2711
  - memory_links: connects related decisions so they surface together.
@@ -2680,7 +2714,8 @@ Which tool for what:
2680
2714
  - policy: stores durable enforced rules or preferences, not memories.
2681
2715
  - tasks: creates follow-up work and closes completed work.
2682
2716
  - code_search: finds conceptual code when source wording differs.
2683
- - memory_search: finds rationale, intent, decisions, and prior work.`;
2717
+ - memory_search: finds rationale, intent, decisions, and prior work.
2718
+ - memory_ingest: brings the project's docs and code comments into memory when asked.`;
2684
2719
  function getMcpInstructions() {
2685
2720
  const process2 = globalThis.process;
2686
2721
  if (!process2?.env) {
@@ -6842,6 +6877,9 @@ var DEFAULT_OPTIONS = {
6842
6877
  };
6843
6878
  var BUILT_IN_IGNORE_DIR_SET = new Set(BUILT_IN_IGNORE_DIRS);
6844
6879
 
6880
+ // packages/shared/dist/index.js
6881
+ init_hookTimeouts();
6882
+
6845
6883
  // packages/shared/dist/jitDeliveryAck.js
6846
6884
  init_runtimeSigners();
6847
6885
 
@@ -7645,6 +7683,7 @@ async function createRealProjectRuntime(options = {}) {
7645
7683
  credentials,
7646
7684
  getCliBearer: options.getCliBearer,
7647
7685
  requestId: options.requestId,
7686
+ deadline: options.deadline,
7648
7687
  issueContext: async (input) => {
7649
7688
  const context = contexts.get(contextKey(input));
7650
7689
  if (!context)
@@ -8121,7 +8160,9 @@ async function handoffRequestId(input) {
8121
8160
  if (typeof value?.requestId !== "string") throw new Error("invalid_request");
8122
8161
  return value.requestId;
8123
8162
  }
8163
+ var PROJECT_ENSURE_DEADLINE_MS = 25e3;
8124
8164
  async function ensureProjectForAgent(options) {
8165
+ const deadline = Date.now() + PROJECT_ENSURE_DEADLINE_MS;
8125
8166
  let executor = options.executor;
8126
8167
  if (!executor)
8127
8168
  try {
@@ -8133,7 +8174,7 @@ async function ensureProjectForAgent(options) {
8133
8174
  allowedActions: []
8134
8175
  });
8135
8176
  const requestId = options.handoff ? await handoffRequestId(options.input ?? process.stdin) : void 0;
8136
- executor = (await createRealProjectRuntime({ ...options.runtime, requestId })).executor;
8177
+ executor = (await createRealProjectRuntime({ ...options.runtime, requestId, deadline })).executor;
8137
8178
  } catch (error) {
8138
8179
  const reason = accountFailure(error);
8139
8180
  if (!reason) throw error;
@@ -8174,6 +8215,7 @@ async function rollbackProjectIdentity(options) {
8174
8215
  return result.status === "rolled_back" ? 0 : 3;
8175
8216
  }
8176
8217
  export {
8218
+ PROJECT_ENSURE_DEADLINE_MS,
8177
8219
  answerCommands,
8178
8220
  connectedProjectsMessage,
8179
8221
  createRealProjectRuntime,
@@ -1 +1 @@
1
- {"version":3,"file":"project.js","sourceRoot":"","sources":["../src/project.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"project.js","sourceRoot":"","sources":["../src/project.ts"],"names":[],"mappings":"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"}
package/dist/router.js CHANGED
@@ -501,6 +501,13 @@ var require_ignore = __commonJS({
501
501
  }
502
502
  });
503
503
 
504
+ // packages/shared/dist/hookTimeouts.js
505
+ var init_hookTimeouts = __esm({
506
+ "packages/shared/dist/hookTimeouts.js"() {
507
+ "use strict";
508
+ }
509
+ });
510
+
504
511
  // packages/shared/dist/runtimeSigners.js
505
512
  import { basename, dirname as dirname2, join as join2, resolve, sep, win32 } from "node:path";
506
513
  import { execFile, execFileSync } from "node:child_process";
@@ -650,7 +657,7 @@ async function readIdentityFile(dir, options = {}) {
650
657
  if (options.selectedRoot) {
651
658
  try {
652
659
  const value = JSON.parse(text);
653
- if (value && typeof value === "object" && !Array.isArray(value) && !("projectId" in value))
660
+ if (value && typeof value === "object" && !Array.isArray(value) && !("projectId" in value) && (!("schemaVersion" in value) || value.schemaVersion === 1))
654
661
  return { kind: "absent" };
655
662
  } catch {
656
663
  }
@@ -912,11 +919,37 @@ var init_runtimeReader = __esm({
912
919
  });
913
920
 
914
921
  // packages/shared/dist/projectSetupHandoff.js
922
+ var PROJECT_ENSURE_TIMEOUT_MS, SUPERVISOR, RUN_STALE_MS;
915
923
  var init_projectSetupHandoff = __esm({
916
924
  "packages/shared/dist/projectSetupHandoff.js"() {
917
925
  "use strict";
918
926
  init_runtimeSigners();
927
+ init_hookTimeouts();
919
928
  init_runtimeReader();
929
+ PROJECT_ENSURE_TIMEOUT_MS = 3e4;
930
+ SUPERVISOR = `
931
+ const { execFile } = require('node:child_process');
932
+ const { writeFileSync, renameSync } = require('node:fs');
933
+ const [out, bin, ...args] = process.argv.slice(1);
934
+ let input = '';
935
+ process.stdin.setEncoding('utf8');
936
+ process.stdin.on('data', (chunk) => (input += chunk));
937
+ process.stdin.on('end', () => {
938
+ const child = execFile(
939
+ process.execPath,
940
+ [bin, ...args],
941
+ { shell: false, timeout: ${PROJECT_ENSURE_TIMEOUT_MS}, killSignal: 'SIGKILL', maxBuffer: 64 * 1024, env: process.env },
942
+ (error, stdout) => {
943
+ const result = { code: error ? (typeof error.code === 'number' ? error.code : null) : 0, killed: !!(error && error.killed), stdout: String(stdout) };
944
+ writeFileSync(out + '.tmp', JSON.stringify(result), { mode: 0o600 });
945
+ renameSync(out + '.tmp', out);
946
+ }
947
+ );
948
+ child.stdin.on('error', () => {});
949
+ child.stdin.end(input);
950
+ });
951
+ `;
952
+ RUN_STALE_MS = PROJECT_ENSURE_TIMEOUT_MS + 1e4;
920
953
  }
921
954
  });
922
955
 
@@ -925,6 +958,7 @@ var init_hookRuntime = __esm({
925
958
  "packages/shared/dist/hookRuntime.js"() {
926
959
  "use strict";
927
960
  init_runtimeSigners();
961
+ init_hookTimeouts();
928
962
  init_repositoryRoot();
929
963
  init_runtimeReader();
930
964
  init_runtimeSigners();
@@ -2553,7 +2587,7 @@ Project work items live in tasks. A pending list requires action:"list" and stat
2553
2587
 
2554
2588
  Which tool for what:
2555
2589
  - memory_get: hydrates exact originals by id.
2556
- - memory_add: saves a discrete decision or root cause.
2590
+ - memory_add: saves a decision, a user's preference, or a root cause.
2557
2591
  - memory_state: corrects wrong, outdated, or conflicting memory.
2558
2592
  - memory_info: explains confidence or origin when memory looks suspect.
2559
2593
  - memory_links: connects related decisions so they surface together.
@@ -2562,7 +2596,8 @@ Which tool for what:
2562
2596
  - policy: stores durable enforced rules or preferences, not memories.
2563
2597
  - tasks: creates follow-up work and closes completed work.
2564
2598
  - code_search: finds conceptual code when source wording differs.
2565
- - memory_search: finds rationale, intent, decisions, and prior work.`;
2599
+ - memory_search: finds rationale, intent, decisions, and prior work.
2600
+ - memory_ingest: brings the project's docs and code comments into memory when asked.`;
2566
2601
  function getMcpInstructions() {
2567
2602
  const process2 = globalThis.process;
2568
2603
  if (!process2?.env) {
@@ -6724,6 +6759,9 @@ var DEFAULT_OPTIONS = {
6724
6759
  };
6725
6760
  var BUILT_IN_IGNORE_DIR_SET = new Set(BUILT_IN_IGNORE_DIRS);
6726
6761
 
6762
+ // packages/shared/dist/index.js
6763
+ init_hookTimeouts();
6764
+
6727
6765
  // packages/shared/dist/jitDeliveryAck.js
6728
6766
  init_runtimeSigners();
6729
6767