@mnemonik/shared 7.97.2 → 7.98.1

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 (130) hide show
  1. package/dist/ambientPointer.d.ts.map +1 -1
  2. package/dist/ambientPointer.js +2 -1
  3. package/dist/ambientPointer.js.map +1 -1
  4. package/dist/apiOrigin.d.ts +3 -0
  5. package/dist/apiOrigin.d.ts.map +1 -0
  6. package/dist/apiOrigin.js +5 -0
  7. package/dist/apiOrigin.js.map +1 -0
  8. package/dist/ast/astChunker.d.ts +12 -12
  9. package/dist/ast/astChunker.js +32 -32
  10. package/dist/ast/grammars.d.ts +9 -9
  11. package/dist/ast/grammars.js +15 -15
  12. package/dist/codeScanner.d.ts +56 -43
  13. package/dist/codeScanner.d.ts.map +1 -1
  14. package/dist/codeScanner.js +262 -143
  15. package/dist/codeScanner.js.map +1 -1
  16. package/dist/contextBudget.js +2 -2
  17. package/dist/contextBudget.js.map +1 -1
  18. package/dist/gitEditDetector.d.ts +6 -6
  19. package/dist/gitEditDetector.js +7 -7
  20. package/dist/hookRuntime.d.ts +35 -2
  21. package/dist/hookRuntime.d.ts.map +1 -1
  22. package/dist/hookRuntime.js +127 -33
  23. package/dist/hookRuntime.js.map +1 -1
  24. package/dist/hookTimeouts.d.ts +6 -6
  25. package/dist/hookTimeouts.js +6 -6
  26. package/dist/hostAdapter.d.ts +135 -0
  27. package/dist/hostAdapter.d.ts.map +1 -0
  28. package/dist/hostAdapter.js +323 -0
  29. package/dist/hostAdapter.js.map +1 -0
  30. package/dist/hostBinary.d.ts +29 -0
  31. package/dist/hostBinary.d.ts.map +1 -0
  32. package/dist/hostBinary.js +179 -0
  33. package/dist/hostBinary.js.map +1 -0
  34. package/dist/index.d.ts +11 -1
  35. package/dist/index.d.ts.map +1 -1
  36. package/dist/index.js +10 -1
  37. package/dist/index.js.map +1 -1
  38. package/dist/instructions.d.ts +26 -26
  39. package/dist/instructions.js +26 -26
  40. package/dist/jitDeliveryAck.d.ts.map +1 -1
  41. package/dist/jitDeliveryAck.js +2 -0
  42. package/dist/jitDeliveryAck.js.map +1 -1
  43. package/dist/projectIdentityFile.d.ts +25 -0
  44. package/dist/projectIdentityFile.d.ts.map +1 -0
  45. package/dist/projectIdentityFile.js +87 -0
  46. package/dist/projectIdentityFile.js.map +1 -0
  47. package/dist/projectSetupHandoff.d.ts +24 -0
  48. package/dist/projectSetupHandoff.d.ts.map +1 -0
  49. package/dist/projectSetupHandoff.js +249 -0
  50. package/dist/projectSetupHandoff.js.map +1 -0
  51. package/dist/protectedPaths.d.ts +9 -0
  52. package/dist/protectedPaths.d.ts.map +1 -0
  53. package/dist/protectedPaths.js +66 -0
  54. package/dist/protectedPaths.js.map +1 -0
  55. package/dist/readiness.d.ts +143 -0
  56. package/dist/readiness.d.ts.map +1 -0
  57. package/dist/readiness.js +304 -0
  58. package/dist/readiness.js.map +1 -0
  59. package/dist/repositoryFingerprint.d.ts +50 -0
  60. package/dist/repositoryFingerprint.d.ts.map +1 -0
  61. package/dist/repositoryFingerprint.js +160 -0
  62. package/dist/repositoryFingerprint.js.map +1 -0
  63. package/dist/repositoryRoot.d.ts +56 -0
  64. package/dist/repositoryRoot.d.ts.map +1 -0
  65. package/dist/repositoryRoot.js +226 -0
  66. package/dist/repositoryRoot.js.map +1 -0
  67. package/dist/runtimeReader.d.ts +102 -0
  68. package/dist/runtimeReader.d.ts.map +1 -0
  69. package/dist/runtimeReader.js +408 -0
  70. package/dist/runtimeReader.js.map +1 -0
  71. package/dist/runtimeSigners.d.ts +37 -0
  72. package/dist/runtimeSigners.d.ts.map +1 -0
  73. package/dist/runtimeSigners.js +507 -0
  74. package/dist/runtimeSigners.js.map +1 -0
  75. package/dist/scannerSupervisor.d.ts +35 -0
  76. package/dist/scannerSupervisor.d.ts.map +1 -0
  77. package/dist/scannerSupervisor.js +2 -0
  78. package/dist/scannerSupervisor.js.map +1 -0
  79. package/dist/secretPatterns.d.ts +9 -9
  80. package/dist/secretPatterns.d.ts.map +1 -1
  81. package/dist/secretPatterns.js +27 -25
  82. package/dist/secretPatterns.js.map +1 -1
  83. package/dist/testing/hostAdapterConformance.d.ts +17 -0
  84. package/dist/testing/hostAdapterConformance.d.ts.map +1 -0
  85. package/dist/testing/hostAdapterConformance.js +477 -0
  86. package/dist/testing/hostAdapterConformance.js.map +1 -0
  87. package/dist/usageGuide.d.ts +1 -1
  88. package/dist/usageGuide.d.ts.map +1 -1
  89. package/dist/usageGuide.js +4 -4
  90. package/package.json +7 -2
  91. package/queries/bash.tags.scm +1 -1
  92. package/queries/groovy.tags.scm +1 -1
  93. package/scripts/vendor-grammars.ts +13 -13
  94. package/src/ambientPointer.ts +2 -1
  95. package/src/apiOrigin.ts +4 -0
  96. package/src/ast/astChunker.ts +39 -39
  97. package/src/ast/grammars.ts +16 -16
  98. package/src/codeScanner.ts +274 -149
  99. package/src/contextBudget.ts +2 -2
  100. package/src/gitEditDetector.ts +7 -7
  101. package/src/hookRuntime.ts +162 -34
  102. package/src/hookTimeouts.ts +6 -6
  103. package/src/hostAdapter.ts +468 -0
  104. package/src/hostBinary.ts +205 -0
  105. package/src/index.ts +20 -0
  106. package/src/instructions.ts +26 -26
  107. package/src/jitDeliveryAck.ts +2 -0
  108. package/src/projectIdentityFile.ts +100 -0
  109. package/src/projectSetupHandoff.ts +275 -0
  110. package/src/protectedPaths.ts +88 -0
  111. package/src/readiness.ts +516 -0
  112. package/src/repositoryFingerprint.ts +199 -0
  113. package/src/repositoryRoot.ts +261 -0
  114. package/src/runtimeReader.ts +495 -0
  115. package/src/runtimeSigners.ts +577 -0
  116. package/src/scannerSupervisor.ts +26 -0
  117. package/src/secretPatterns.ts +27 -25
  118. package/src/testing/hostAdapterConformance.ts +538 -0
  119. package/src/usageGuide.ts +4 -4
  120. package/test-fixtures/identity/runner.d.mts +12 -0
  121. package/test-fixtures/identity/runner.mjs +282 -0
  122. package/tests/fixtures/repository-fingerprint-v1.golden.json +834 -0
  123. package/tests/projectIdentity.test.ts +56 -0
  124. package/tests/readiness.test.ts +158 -0
  125. package/tests/repositoryFingerprint.test.ts +26 -0
  126. package/tsconfig.test.json +9 -0
  127. package/wasm/bash.tags.scm +1 -1
  128. package/wasm/groovy.tags.scm +1 -1
  129. package/wasm/javascript.tags.scm +2 -2
  130. package/wasm/solidity.tags.scm +1 -1
@@ -0,0 +1,179 @@
1
+ import { stat } from 'node:fs/promises';
2
+ import { join, win32 } from 'node:path';
3
+ import { homedir } from 'node:os';
4
+ /** Native locations shared by preflight discovery and verified host adapters. */
5
+ export function hostBinaryDescriptor(host, deps = {}) {
6
+ if (host === 'claude-code')
7
+ return {
8
+ binary: 'claude',
9
+ windowsBinary: {
10
+ locations: [
11
+ ['APPDATA', 'npm/claude.cmd'],
12
+ ['USERPROFILE', '.local/bin/claude.exe'],
13
+ ],
14
+ extensions: ['.cmd', '.exe'],
15
+ },
16
+ };
17
+ if (host === 'codex')
18
+ return {
19
+ binary: 'codex',
20
+ desktopPaths: (deps.platform ?? process.platform) === 'darwin'
21
+ ? [
22
+ '/Applications/ChatGPT.app/Contents/Resources/codex',
23
+ join(deps.env?.HOME ?? homedir(), 'Applications/ChatGPT.app/Contents/Resources/codex'),
24
+ ]
25
+ : [],
26
+ windowsBinary: {
27
+ locations: [
28
+ ['APPDATA', 'npm/codex.cmd'],
29
+ ['LOCALAPPDATA', 'Programs/OpenAI/Codex/bin/codex.exe'],
30
+ ],
31
+ extensions: ['.cmd', '.exe'],
32
+ },
33
+ };
34
+ return {
35
+ binary: 'cursor',
36
+ desktopPaths: (deps.platform ?? process.platform) === 'darwin'
37
+ ? ['/Applications/Cursor.app/Contents/Resources/app/bin/cursor']
38
+ : ['/usr/share/cursor/bin/cursor', '/opt/Cursor/resources/app/bin/cursor'],
39
+ windowsBinary: {
40
+ locations: [
41
+ ['LOCALAPPDATA', 'Programs/cursor/resources/app/bin/cursor.cmd'],
42
+ ['LOCALAPPDATA', 'Programs/cursor/Cursor.exe'],
43
+ ],
44
+ extensions: ['.cmd', '.exe'],
45
+ productVersion: true,
46
+ },
47
+ };
48
+ }
49
+ export class HostBinaryNotFoundError extends Error {
50
+ searchedLocations;
51
+ constructor(searchedLocations) {
52
+ super('host_binary_not_found');
53
+ this.searchedLocations = searchedLocations;
54
+ }
55
+ }
56
+ /** cmd parses shell syntax even with execFile's shell:false. Only fixed, safe arguments.
57
+ * Parentheses are ordinary inside a quoted token, and a profile path may carry
58
+ * them (`C:\\Users\\Jane (Admin)\\...`). */
59
+ export function quoteHostArgument(value) {
60
+ if (/["%!?^&|<>\r\n\0]/.test(value))
61
+ throw new Error('unsafe_host_argument');
62
+ return `"${value.replace(/\\+$/, '$&$&')}"`;
63
+ }
64
+ export function createHostBinary(deps, name, windows, run, desktopPaths = []) {
65
+ const env = deps.env ?? process.env;
66
+ const onWindows = (deps.platform ?? process.platform) === 'win32';
67
+ const variable = (name) => env[Object.keys(env)
68
+ .sort()
69
+ .find((key) => key.toUpperCase() === name.toUpperCase()) ?? name];
70
+ const absolute = (file) => win32.isAbsolute(file) && win32.parse(file).root.length > 1;
71
+ const system = win32.join(variable('SystemRoot') ?? 'C:\\Windows', 'System32');
72
+ const exists = deps.binaryExists ??
73
+ (async (file) => (await stat(file).catch(() => undefined))?.isFile() === true);
74
+ const options = { env, timeout: 5000, maxBuffer: 64 * 1024, windowsHide: true };
75
+ // A failed lookup is not cached: the vendor binary may appear later in the
76
+ // same process (an install in progress), and the next call must see it.
77
+ let pending;
78
+ const resolve = () => (pending ??= (async () => {
79
+ if (!onWindows)
80
+ return name;
81
+ const searchedLocations = [];
82
+ const accept = async (file) => absolute(file) &&
83
+ windows.extensions.includes(win32.extname(file).toLowerCase()) &&
84
+ (await exists(file));
85
+ for (const [key, relative] of windows.locations) {
86
+ const root = variable(key);
87
+ if (!root)
88
+ continue;
89
+ const file = win32.join(root, relative);
90
+ searchedLocations.push(file);
91
+ if (await accept(file))
92
+ return file;
93
+ }
94
+ if (!absolute(system))
95
+ throw new Error('invalid_system_root');
96
+ const { stdout } = await run(win32.join(system, 'where.exe'), [name], options).catch((error) => {
97
+ if (error.code === 1)
98
+ throw new HostBinaryNotFoundError(searchedLocations);
99
+ throw error;
100
+ });
101
+ for (const candidate of stdout.split(/\r?\n/)) {
102
+ const file = candidate.trim();
103
+ if (await accept(file))
104
+ return file;
105
+ }
106
+ throw new HostBinaryNotFoundError(searchedLocations);
107
+ })().catch((error) => {
108
+ pending = undefined;
109
+ throw error;
110
+ }));
111
+ return {
112
+ resolve,
113
+ async findOnDisk() {
114
+ const native = onWindows
115
+ ? windows.locations.flatMap(([key, path]) => {
116
+ const root = variable(key);
117
+ return root ? [win32.join(root, path)] : [];
118
+ })
119
+ : [];
120
+ const paths = (variable('PATH') ?? '').split(onWindows ? ';' : ':');
121
+ const candidates = [
122
+ ...native,
123
+ ...paths.flatMap((path) => onWindows
124
+ ? windows.extensions.map((extension) => win32.join(path.replace(/^"|"$/g, ''), name + extension))
125
+ : [join(path, name)]),
126
+ ...(!onWindows ? desktopPaths : []),
127
+ ];
128
+ for (const file of candidates)
129
+ if ((!onWindows || absolute(file)) && (await exists(file)))
130
+ return file;
131
+ return undefined;
132
+ },
133
+ async execute(args, cwd) {
134
+ const file = await resolve();
135
+ const execution = {
136
+ ...options,
137
+ cwd,
138
+ timeout: args[1] === 'login' ? 120_000 : onWindows ? 30_000 : 5000,
139
+ };
140
+ if (!onWindows) {
141
+ try {
142
+ return await run(file, args, execution);
143
+ }
144
+ catch (error) {
145
+ if (error.code !== 'ENOENT')
146
+ throw error;
147
+ for (const candidate of desktopPaths) {
148
+ if (!(await exists(candidate)))
149
+ continue;
150
+ const result = await run(candidate, args, execution);
151
+ pending = Promise.resolve(candidate);
152
+ return result;
153
+ }
154
+ throw new HostBinaryNotFoundError(desktopPaths);
155
+ }
156
+ }
157
+ if (windows.productVersion && /\.exe$/i.test(file) && args[0] === '--version')
158
+ return run(win32.join(system, 'WindowsPowerShell', 'v1.0', 'powershell.exe'), [
159
+ '-NoProfile',
160
+ '-NonInteractive',
161
+ '-Command',
162
+ `(Get-Item -LiteralPath '${file.replace(/'/g, "''")}').VersionInfo.ProductVersion`,
163
+ ], execution);
164
+ if (!/\.(cmd|bat)$/i.test(file))
165
+ return run(file, args, execution);
166
+ const command = [quoteHostArgument(file), ...args.map(quoteHostArgument)];
167
+ command[0] = '"' + command[0];
168
+ command[command.length - 1] += '"';
169
+ const comspec = variable('ComSpec') ?? win32.join(system, 'cmd.exe');
170
+ if (!absolute(comspec))
171
+ throw new Error('invalid_comspec');
172
+ return run(comspec, ['/d', '/s', '/c', ...command], {
173
+ ...execution,
174
+ windowsVerbatimArguments: true,
175
+ });
176
+ },
177
+ };
178
+ }
179
+ //# sourceMappingURL=hostBinary.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hostBinary.js","sourceRoot":"","sources":["../src/hostBinary.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -6,7 +6,7 @@
6
6
  */
7
7
  export { MCP_INSTRUCTIONS, MCP_INSTRUCTIONS_RAW, getMcpInstructions } from './instructions.js';
8
8
  export { USAGE_GUIDE } from './usageGuide.js';
9
- export { CodeScanner, MAX_SCANNED_FILE_BYTES, AUTHORITY_FILE_MATCHERS, BUILT_IN_IGNORE_DIRS, DEFAULT_INCLUDE_EXTENSIONS, languageForExtension, makeIgnoreMatcher, isGitBoundary, FIXTURE_PATH_RE, isFixturePath, isSecretFile, isAuthorityOnlyPath, logAstCapabilityOnce, type CodeChunk, type ScanOptions, } from './codeScanner.js';
9
+ export { CodeScanner, MAX_SCANNED_FILE_BYTES, MAX_PUSH_CHUNK_CONTENT_LENGTH, AUTHORITY_FILE_MATCHERS, BUILT_IN_IGNORE_DIRS, DEFAULT_INCLUDE_EXTENSIONS, languageForExtension, makeIgnoreMatcher, isGitBoundary, FIXTURE_PATH_RE, isFixturePath, isSecretFile, isAuthorityOnlyPath, logAstCapabilityOnce, type CodeChunk, type ScanOptions, } from './codeScanner.js';
10
10
  export { AST_LANGUAGE_IDS, QUERY_CHAIN, VENDORED_ARTIFACT_DIR, astArtifactReport, astCapabilityReport, grammarArtifactBasename, loadGrammar, loadedGrammarIds, resolveAstLanguage, type AstLanguageId, type GrammarBinding, type GrammarLoad, type GrammarUnavailableReason, } from './ast/grammars.js';
11
11
  export { MAX_AST_PARSE_BYTES, chunkWithAst, type AstChunk, type AstChunkResult, } from './ast/astChunker.js';
12
12
  export { SECRET_PATTERNS, SECRET_REDACTION_PLACEHOLDER, scrubSecrets, redactHighEntropyTokens, } from './secretPatterns.js';
@@ -14,4 +14,14 @@ export { FETCH_TIMEOUT_MS, TELEMETRY_TIMEOUT_MS, POST_TOOL_TIMEOUT_MS, MCP_PRECH
14
14
  export { persistJitDeliveryRef, readPendingJitDeliveryRefs, reportJitDeliveryRefsAttached, acknowledgeJitDeliveryRefs, pruneExpiredJitDeliveryRefs, applyJitDeliveryReceiptResponse, normalizeJitHookVersion, type JitReceiptClientEvent, type JitReceiptClientEventName, type JitReceiptEventContext, } from './jitDeliveryAck.js';
15
15
  export * from './settingsIo.js';
16
16
  export * from './claudeProxySettings.js';
17
+ export * from './repositoryFingerprint.js';
18
+ export * from './projectIdentityFile.js';
19
+ export * from './repositoryRoot.js';
20
+ export * from './protectedPaths.js';
21
+ export * from './readiness.js';
22
+ export * from './hostAdapter.js';
23
+ export * from './hostBinary.js';
24
+ export type { ServiceDefinition, SupervisorStatus, ServiceOperation, ServiceResult, } from './scannerSupervisor.js';
25
+ export { apiOrigin } from './apiOrigin.js';
26
+ export { WINDOWS_SERVICE_BUDGET_MS } from './scannerSupervisor.js';
17
27
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC/F,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EACL,WAAW,EACX,sBAAsB,EACtB,uBAAuB,EACvB,oBAAoB,EACpB,0BAA0B,EAC1B,oBAAoB,EACpB,iBAAiB,EACjB,aAAa,EACb,eAAe,EACf,aAAa,EACb,YAAY,EACZ,mBAAmB,EACnB,oBAAoB,EACpB,KAAK,SAAS,EACd,KAAK,WAAW,GACjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,qBAAqB,EACrB,iBAAiB,EACjB,mBAAmB,EACnB,uBAAuB,EACvB,WAAW,EACX,gBAAgB,EAChB,kBAAkB,EAClB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,wBAAwB,GAC9B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,mBAAmB,EACnB,YAAY,EACZ,KAAK,QAAQ,EACb,KAAK,cAAc,GACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,eAAe,EACf,4BAA4B,EAC5B,YAAY,EACZ,uBAAuB,GACxB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,EACvB,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,qBAAqB,EACrB,0BAA0B,EAC1B,6BAA6B,EAC7B,0BAA0B,EAC1B,2BAA2B,EAC3B,+BAA+B,EAC/B,uBAAuB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,yBAAyB,EAC9B,KAAK,sBAAsB,GAC5B,MAAM,qBAAqB,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC/F,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EACL,WAAW,EACX,sBAAsB,EACtB,6BAA6B,EAC7B,uBAAuB,EACvB,oBAAoB,EACpB,0BAA0B,EAC1B,oBAAoB,EACpB,iBAAiB,EACjB,aAAa,EACb,eAAe,EACf,aAAa,EACb,YAAY,EACZ,mBAAmB,EACnB,oBAAoB,EACpB,KAAK,SAAS,EACd,KAAK,WAAW,GACjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,qBAAqB,EACrB,iBAAiB,EACjB,mBAAmB,EACnB,uBAAuB,EACvB,WAAW,EACX,gBAAgB,EAChB,kBAAkB,EAClB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,wBAAwB,GAC9B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,mBAAmB,EACnB,YAAY,EACZ,KAAK,QAAQ,EACb,KAAK,cAAc,GACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,eAAe,EACf,4BAA4B,EAC5B,YAAY,EACZ,uBAAuB,GACxB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,EACvB,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,qBAAqB,EACrB,0BAA0B,EAC1B,6BAA6B,EAC7B,0BAA0B,EAC1B,2BAA2B,EAC3B,+BAA+B,EAC/B,uBAAuB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,yBAAyB,EAC9B,KAAK,sBAAsB,GAC5B,MAAM,qBAAqB,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAE/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAEhC,YAAY,EACV,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,GACd,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC"}
package/dist/index.js CHANGED
@@ -6,7 +6,7 @@
6
6
  */
7
7
  export { MCP_INSTRUCTIONS, MCP_INSTRUCTIONS_RAW, getMcpInstructions } from './instructions.js';
8
8
  export { USAGE_GUIDE } from './usageGuide.js';
9
- export { CodeScanner, MAX_SCANNED_FILE_BYTES, AUTHORITY_FILE_MATCHERS, BUILT_IN_IGNORE_DIRS, DEFAULT_INCLUDE_EXTENSIONS, languageForExtension, makeIgnoreMatcher, isGitBoundary, FIXTURE_PATH_RE, isFixturePath, isSecretFile, isAuthorityOnlyPath, logAstCapabilityOnce, } from './codeScanner.js';
9
+ export { CodeScanner, MAX_SCANNED_FILE_BYTES, MAX_PUSH_CHUNK_CONTENT_LENGTH, AUTHORITY_FILE_MATCHERS, BUILT_IN_IGNORE_DIRS, DEFAULT_INCLUDE_EXTENSIONS, languageForExtension, makeIgnoreMatcher, isGitBoundary, FIXTURE_PATH_RE, isFixturePath, isSecretFile, isAuthorityOnlyPath, logAstCapabilityOnce, } from './codeScanner.js';
10
10
  export { AST_LANGUAGE_IDS, QUERY_CHAIN, VENDORED_ARTIFACT_DIR, astArtifactReport, astCapabilityReport, grammarArtifactBasename, loadGrammar, loadedGrammarIds, resolveAstLanguage, } from './ast/grammars.js';
11
11
  export { MAX_AST_PARSE_BYTES, chunkWithAst, } from './ast/astChunker.js';
12
12
  export { SECRET_PATTERNS, SECRET_REDACTION_PLACEHOLDER, scrubSecrets, redactHighEntropyTokens, } from './secretPatterns.js';
@@ -14,4 +14,13 @@ export { FETCH_TIMEOUT_MS, TELEMETRY_TIMEOUT_MS, POST_TOOL_TIMEOUT_MS, MCP_PRECH
14
14
  export { persistJitDeliveryRef, readPendingJitDeliveryRefs, reportJitDeliveryRefsAttached, acknowledgeJitDeliveryRefs, pruneExpiredJitDeliveryRefs, applyJitDeliveryReceiptResponse, normalizeJitHookVersion, } from './jitDeliveryAck.js';
15
15
  export * from './settingsIo.js';
16
16
  export * from './claudeProxySettings.js';
17
+ export * from './repositoryFingerprint.js';
18
+ export * from './projectIdentityFile.js';
19
+ export * from './repositoryRoot.js';
20
+ export * from './protectedPaths.js';
21
+ export * from './readiness.js';
22
+ export * from './hostAdapter.js';
23
+ export * from './hostBinary.js';
24
+ export { apiOrigin } from './apiOrigin.js';
25
+ export { WINDOWS_SERVICE_BUDGET_MS } from './scannerSupervisor.js';
17
26
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC/F,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EACL,WAAW,EACX,sBAAsB,EACtB,uBAAuB,EACvB,oBAAoB,EACpB,0BAA0B,EAC1B,oBAAoB,EACpB,iBAAiB,EACjB,aAAa,EACb,eAAe,EACf,aAAa,EACb,YAAY,EACZ,mBAAmB,EACnB,oBAAoB,GAGrB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,qBAAqB,EACrB,iBAAiB,EACjB,mBAAmB,EACnB,uBAAuB,EACvB,WAAW,EACX,gBAAgB,EAChB,kBAAkB,GAKnB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,mBAAmB,EACnB,YAAY,GAGb,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,eAAe,EACf,4BAA4B,EAC5B,YAAY,EACZ,uBAAuB,GACxB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,EACvB,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,qBAAqB,EACrB,0BAA0B,EAC1B,6BAA6B,EAC7B,0BAA0B,EAC1B,2BAA2B,EAC3B,+BAA+B,EAC/B,uBAAuB,GAIxB,MAAM,qBAAqB,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC/F,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EACL,WAAW,EACX,sBAAsB,EACtB,6BAA6B,EAC7B,uBAAuB,EACvB,oBAAoB,EACpB,0BAA0B,EAC1B,oBAAoB,EACpB,iBAAiB,EACjB,aAAa,EACb,eAAe,EACf,aAAa,EACb,YAAY,EACZ,mBAAmB,EACnB,oBAAoB,GAGrB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,qBAAqB,EACrB,iBAAiB,EACjB,mBAAmB,EACnB,uBAAuB,EACvB,WAAW,EACX,gBAAgB,EAChB,kBAAkB,GAKnB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,mBAAmB,EACnB,YAAY,GAGb,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,eAAe,EACf,4BAA4B,EAC5B,YAAY,EACZ,uBAAuB,GACxB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,EACvB,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,qBAAqB,EACrB,0BAA0B,EAC1B,6BAA6B,EAC7B,0BAA0B,EAC1B,2BAA2B,EAC3B,+BAA+B,EAC/B,uBAAuB,GAIxB,MAAM,qBAAqB,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAE/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAShC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC"}
@@ -7,15 +7,15 @@
7
7
  * Version: 2.110
8
8
  * Updated: 2026-08-27
9
9
  *
10
- * v2.110 — Reordered and compressed the universal instructions to fit the
10
+ * v2.110 - Reordered and compressed the universal instructions to fit the
11
11
  * 2,048-character transport limit. The first 512 characters now carry
12
12
  * the server purpose, self-scoping bootstrap condition, required cwd,
13
13
  * and memory-as-augmentation stance. The retrieval, task pagination,
14
14
  * and tool-floor capabilities remain in a shorter factual form.
15
15
  *
16
- * v2.109 — Compressed the v2.108 memory-search clause. It restated, verbatim,
16
+ * v2.109 - Compressed the v2.108 memory-search clause. It restated, verbatim,
17
17
  * the same search guidance carried by SESSION_OPENER_INSTRUCTION
18
- * (bootstrapDigestRender.ts) — and both co-occur in the same agent
18
+ * (bootstrapDigestRender.ts) - and both co-occur in the same agent
19
19
  * session as the bootstrap digest's capabilities.search block, which
20
20
  * already states the memory_search/code_search call signatures in
21
21
  * full. Kept the essential behavior (memory holds the why; search it
@@ -23,11 +23,11 @@
23
23
  * with Grep/Read; reach for code_search when concepts don't share
24
24
  * the user's words), dropped the restated call shapes, and pointed at
25
25
  * the session context's capabilities block for the exact signatures
26
- * once it loads — this text fires at `initialize`, before any
26
+ * once it loads - this text fires at `initialize`, before any
27
27
  * digest exists, so it cannot point "above" the way the trimmed
28
28
  * SESSION_OPENER clause does. recall-first-class plan, Task A3
29
29
  * rider (reviewer-flagged: character-for-character duplicate).
30
- * v2.108 — Added front-loaded education that persistent project memory is part
30
+ * v2.108 - Added front-loaded education that persistent project memory is part
31
31
  * of the agent's working knowledge. A live Config-B fixture rejected
32
32
  * the first generic invitation: the agent searched code, docs, and git
33
33
  * history, then called the rationale undocumented without searching
@@ -38,7 +38,7 @@
38
38
  * wording stays a compact startup floor, not a token-heavy tutorial or
39
39
  * recurring nudge.
40
40
  *
41
- * v2.106 — Added a static "Which tool for what" floor map. Rides the already-
41
+ * v2.106 - Added a static "Which tool for what" floor map. Rides the already-
42
42
  * cached instructions at near-zero cost and gives every agent a baseline
43
43
  * "which tool for what" for the under-surfaced tools (memory_add,
44
44
  * memory_state, memory_info, memory_links, assist, search_summaries,
@@ -46,55 +46,55 @@
46
46
  * nudges; memory_info in particular has no reactive trigger, so the floor
47
47
  * is its only education.
48
48
  *
49
- * v2.105 — Bootstrap's agent-facing label is generic project context. Use the
49
+ * v2.105 - Bootstrap's agent-facing label is generic project context. Use the
50
50
  * canonical text body's stable `PROJECT_CONTEXT schemaVersion=` marker
51
51
  * for the self-scoping check instead of teaching agents to call the
52
52
  * user's project "Mnemonik".
53
53
  *
54
- * v2.104 — Disambiguated persistent project task memories from Claude Code's
54
+ * v2.104 - Disambiguated persistent project task memories from Claude Code's
55
55
  * host-local TaskList and made completeness proactive. A request for a
56
56
  * complete/all list must build cursor continuation into the first Code
57
57
  * Mode program; guidance returned after an incomplete outer call is too
58
58
  * late to preserve the one-round-trip workflow.
59
59
  *
60
- * v2.103 — Added the compact Discover → Select → Hydrate interpretation
60
+ * v2.103 - Added the compact Discover -> Select -> Hydrate interpretation
61
61
  * fallback for Config-A. Dynamic response orchestration remains
62
62
  * authoritative; this sentence only teaches an un-orchestrated client
63
63
  * how to act on retrieval envelopes without walking full bodies.
64
64
  *
65
- * v2.102 — Strengthened the self-bootstrap trigger to a compelling imperative.
65
+ * v2.102 - Strengthened the self-bootstrap trigger to a compelling imperative.
66
66
  * The v2.101 phrasing ("At the start of a session, unless ... call ...")
67
67
  * was too soft; agents on a blind first turn skipped it. Real-world hole
68
68
  * it must cover: Cursor's FIRST chat after an IDE open fires no
69
69
  * sessionStart (confirmed by hook-stdin capture), and beforeSubmitPrompt
70
70
  * has NO model-facing output field (only user_message, shown to the
71
- * human) — so neither the silent digest nor the hook's
71
+ * human) - so neither the silent digest nor the hook's
72
72
  * session_bootstrap_required directive reaches the model. The MCP
73
73
  * instruction is the ONLY model-facing channel left for that turn, so it
74
74
  * now leads with the blind-state check + a hard "FIRST action MUST be
75
75
  * session_bootstrap, before you reply" and an explicit cwd-REQUIRED
76
76
  * clause. Still self-scoping: skips when the "Mnemonik project context"
77
77
  * block is already present (working hook/proxy delivery), so config-B/C
78
- * with live delivery don't double-call. cwd stays host-agnostic — the
78
+ * with live delivery don't double-call. cwd stays host-agnostic - the
79
79
  * agent passes the project root it is working in (Cursor exposes the
80
80
  * working dir to HOOKS via the stdin `workspace_roots[0]`, which cwdOf
81
81
  * already reads; it is NOT an agent-readable env var, so the instruction
82
82
  * must not name one).
83
83
  *
84
- * v2.101 — Stripped to a single instruction: the session_bootstrap trigger.
84
+ * v2.101 - Stripped to a single instruction: the session_bootstrap trigger.
85
85
  * MCP instructions are set at Server construction (initialize), before
86
- * the server knows the client, so they cannot be scoped per-IDE — and
86
+ * the server knows the client, so they cannot be scoped per-IDE - and
87
87
  * IDE != config (a Claude Code user may be config-B or -C). The content
88
88
  * is therefore universal and SELF-SCOPING: it conditions on whether a
89
89
  * "Mnemonik project context" block is already present (config-B/C with
90
- * working delivery → skip; config-A and any host where hook/proxy
91
- * delivery missed → call). Re-enabled in production
90
+ * working delivery -> skip; config-A and any host where hook/proxy
91
+ * delivery missed -> call). Re-enabled in production
92
92
  * (MNEMONIK_INSTRUCTIONS_ENABLED=true in both ECS task defs). This is the
93
- * reliable trigger that makes the agent self-bootstrap — tool results
93
+ * reliable trigger that makes the agent self-bootstrap - tool results
94
94
  * always reach the model, which hook injection cannot guarantee on a
95
95
  * no-tool-call turn (e.g. Cursor "hello").
96
96
  *
97
- * v2.100 — Skill + IDE rule templates retired entirely. They were the
97
+ * v2.100 - Skill + IDE rule templates retired entirely. They were the
98
98
  * file-written home of the workflow; agents followed them unreliably and
99
99
  * forgot them over long sessions (the same fate these MCP instructions
100
100
  * suffer), so they are gone. `filesToWrite` now carries only
@@ -103,7 +103,7 @@
103
103
  * orchestration layer (host hooks + proxy); these instructions stay lean
104
104
  * and are the Config-A fallback only.
105
105
  *
106
- * v2.99 — Orchestration-aware framing. These static MCP instructions are
106
+ * v2.99 - Orchestration-aware framing. These static MCP instructions are
107
107
  * delivered at `initialize`, before the server knows the actor's tier
108
108
  * (no project/proxy/hooks state yet), so they cannot be served per-tier.
109
109
  * Instead the CONTENT is now tier-correct: the self-drive calls
@@ -114,29 +114,29 @@
114
114
  * The orchestration layer (proxy + host hooks) is authoritative for
115
115
  * B/C; this block is primarily Config-A's driver.
116
116
  *
117
- * v2.98 — Doc truth contracts are the normal drift surface. linkedDocs and
117
+ * v2.98 - Doc truth contracts are the normal drift surface. linkedDocs and
118
118
  * doc_code_couplings remain legacy diagnostics only; docs drift
119
119
  * defaults to truth findings and legacy:true is explicit debug.
120
- * v2.97 — Dropped legacy doc-coupling action guidance. Coupling rows are
120
+ * v2.97 - Dropped legacy doc-coupling action guidance. Coupling rows are
121
121
  * not truth findings (plan §1).
122
- * v2.96 — Replace conditional memory_discover guidance with structural fix:
122
+ * v2.96 - Replace conditional memory_discover guidance with structural fix:
123
123
  * bootstrap now includes _methodCatalog (discoverMemoryTools({})) so
124
124
  * agents have the memory_tools calling convention from turn one.
125
125
  * Instruction updated to reference _methodCatalog directly.
126
126
  * Superseded 2026-07-13: a real Config-B host persisted the expanded
127
127
  * 15.1KB hook output instead of injecting it. Bootstrap now carries a
128
128
  * compact discovery bridge; memory_discover({}) owns the full catalog.
129
- * v2.95 — Drop `augments` from JIT directive verdict list per plan §5 default
129
+ * v2.95 - Drop `augments` from JIT directive verdict list per plan §5 default
130
130
  * (augments downgrades to ambient via the parallel recall gate, not
131
131
  * the directive lane). See jit-knowledge-injector.md §5 decision note.
132
- * v2.94 — Add JIT directive teaching (docs/development/jit-knowledge-injector.md §2.3).
132
+ * v2.94 - Add JIT directive teaching (docs/development/jit-knowledge-injector.md §2.3).
133
133
  *
134
- * Code mode permanent — all memory operations via memory_tools sandbox.
134
+ * Code mode permanent - all memory operations via memory_tools sandbox.
135
135
  * memory_add, file_context etc. are now mnemonik.* methods, not standalone tools.
136
136
  *
137
137
  * Zero-cooperation rewrite. Context auto-loads if session_bootstrap is skipped.
138
138
  * Session summaries are auto-saved if agent doesn't call mnemonik.memory_add().
139
- * Instructions drastically simplified — the server handles the workflow now.
139
+ * Instructions drastically simplified - the server handles the workflow now.
140
140
  *
141
141
  * Token-optimised rewrite (superseded by later instruction rewrites).
142
142
  */
@@ -7,15 +7,15 @@
7
7
  * Version: 2.110
8
8
  * Updated: 2026-08-27
9
9
  *
10
- * v2.110 — Reordered and compressed the universal instructions to fit the
10
+ * v2.110 - Reordered and compressed the universal instructions to fit the
11
11
  * 2,048-character transport limit. The first 512 characters now carry
12
12
  * the server purpose, self-scoping bootstrap condition, required cwd,
13
13
  * and memory-as-augmentation stance. The retrieval, task pagination,
14
14
  * and tool-floor capabilities remain in a shorter factual form.
15
15
  *
16
- * v2.109 — Compressed the v2.108 memory-search clause. It restated, verbatim,
16
+ * v2.109 - Compressed the v2.108 memory-search clause. It restated, verbatim,
17
17
  * the same search guidance carried by SESSION_OPENER_INSTRUCTION
18
- * (bootstrapDigestRender.ts) — and both co-occur in the same agent
18
+ * (bootstrapDigestRender.ts) - and both co-occur in the same agent
19
19
  * session as the bootstrap digest's capabilities.search block, which
20
20
  * already states the memory_search/code_search call signatures in
21
21
  * full. Kept the essential behavior (memory holds the why; search it
@@ -23,11 +23,11 @@
23
23
  * with Grep/Read; reach for code_search when concepts don't share
24
24
  * the user's words), dropped the restated call shapes, and pointed at
25
25
  * the session context's capabilities block for the exact signatures
26
- * once it loads — this text fires at `initialize`, before any
26
+ * once it loads - this text fires at `initialize`, before any
27
27
  * digest exists, so it cannot point "above" the way the trimmed
28
28
  * SESSION_OPENER clause does. recall-first-class plan, Task A3
29
29
  * rider (reviewer-flagged: character-for-character duplicate).
30
- * v2.108 — Added front-loaded education that persistent project memory is part
30
+ * v2.108 - Added front-loaded education that persistent project memory is part
31
31
  * of the agent's working knowledge. A live Config-B fixture rejected
32
32
  * the first generic invitation: the agent searched code, docs, and git
33
33
  * history, then called the rationale undocumented without searching
@@ -38,7 +38,7 @@
38
38
  * wording stays a compact startup floor, not a token-heavy tutorial or
39
39
  * recurring nudge.
40
40
  *
41
- * v2.106 — Added a static "Which tool for what" floor map. Rides the already-
41
+ * v2.106 - Added a static "Which tool for what" floor map. Rides the already-
42
42
  * cached instructions at near-zero cost and gives every agent a baseline
43
43
  * "which tool for what" for the under-surfaced tools (memory_add,
44
44
  * memory_state, memory_info, memory_links, assist, search_summaries,
@@ -46,55 +46,55 @@
46
46
  * nudges; memory_info in particular has no reactive trigger, so the floor
47
47
  * is its only education.
48
48
  *
49
- * v2.105 — Bootstrap's agent-facing label is generic project context. Use the
49
+ * v2.105 - Bootstrap's agent-facing label is generic project context. Use the
50
50
  * canonical text body's stable `PROJECT_CONTEXT schemaVersion=` marker
51
51
  * for the self-scoping check instead of teaching agents to call the
52
52
  * user's project "Mnemonik".
53
53
  *
54
- * v2.104 — Disambiguated persistent project task memories from Claude Code's
54
+ * v2.104 - Disambiguated persistent project task memories from Claude Code's
55
55
  * host-local TaskList and made completeness proactive. A request for a
56
56
  * complete/all list must build cursor continuation into the first Code
57
57
  * Mode program; guidance returned after an incomplete outer call is too
58
58
  * late to preserve the one-round-trip workflow.
59
59
  *
60
- * v2.103 — Added the compact Discover → Select → Hydrate interpretation
60
+ * v2.103 - Added the compact Discover -> Select -> Hydrate interpretation
61
61
  * fallback for Config-A. Dynamic response orchestration remains
62
62
  * authoritative; this sentence only teaches an un-orchestrated client
63
63
  * how to act on retrieval envelopes without walking full bodies.
64
64
  *
65
- * v2.102 — Strengthened the self-bootstrap trigger to a compelling imperative.
65
+ * v2.102 - Strengthened the self-bootstrap trigger to a compelling imperative.
66
66
  * The v2.101 phrasing ("At the start of a session, unless ... call ...")
67
67
  * was too soft; agents on a blind first turn skipped it. Real-world hole
68
68
  * it must cover: Cursor's FIRST chat after an IDE open fires no
69
69
  * sessionStart (confirmed by hook-stdin capture), and beforeSubmitPrompt
70
70
  * has NO model-facing output field (only user_message, shown to the
71
- * human) — so neither the silent digest nor the hook's
71
+ * human) - so neither the silent digest nor the hook's
72
72
  * session_bootstrap_required directive reaches the model. The MCP
73
73
  * instruction is the ONLY model-facing channel left for that turn, so it
74
74
  * now leads with the blind-state check + a hard "FIRST action MUST be
75
75
  * session_bootstrap, before you reply" and an explicit cwd-REQUIRED
76
76
  * clause. Still self-scoping: skips when the "Mnemonik project context"
77
77
  * block is already present (working hook/proxy delivery), so config-B/C
78
- * with live delivery don't double-call. cwd stays host-agnostic — the
78
+ * with live delivery don't double-call. cwd stays host-agnostic - the
79
79
  * agent passes the project root it is working in (Cursor exposes the
80
80
  * working dir to HOOKS via the stdin `workspace_roots[0]`, which cwdOf
81
81
  * already reads; it is NOT an agent-readable env var, so the instruction
82
82
  * must not name one).
83
83
  *
84
- * v2.101 — Stripped to a single instruction: the session_bootstrap trigger.
84
+ * v2.101 - Stripped to a single instruction: the session_bootstrap trigger.
85
85
  * MCP instructions are set at Server construction (initialize), before
86
- * the server knows the client, so they cannot be scoped per-IDE — and
86
+ * the server knows the client, so they cannot be scoped per-IDE - and
87
87
  * IDE != config (a Claude Code user may be config-B or -C). The content
88
88
  * is therefore universal and SELF-SCOPING: it conditions on whether a
89
89
  * "Mnemonik project context" block is already present (config-B/C with
90
- * working delivery → skip; config-A and any host where hook/proxy
91
- * delivery missed → call). Re-enabled in production
90
+ * working delivery -> skip; config-A and any host where hook/proxy
91
+ * delivery missed -> call). Re-enabled in production
92
92
  * (MNEMONIK_INSTRUCTIONS_ENABLED=true in both ECS task defs). This is the
93
- * reliable trigger that makes the agent self-bootstrap — tool results
93
+ * reliable trigger that makes the agent self-bootstrap - tool results
94
94
  * always reach the model, which hook injection cannot guarantee on a
95
95
  * no-tool-call turn (e.g. Cursor "hello").
96
96
  *
97
- * v2.100 — Skill + IDE rule templates retired entirely. They were the
97
+ * v2.100 - Skill + IDE rule templates retired entirely. They were the
98
98
  * file-written home of the workflow; agents followed them unreliably and
99
99
  * forgot them over long sessions (the same fate these MCP instructions
100
100
  * suffer), so they are gone. `filesToWrite` now carries only
@@ -103,7 +103,7 @@
103
103
  * orchestration layer (host hooks + proxy); these instructions stay lean
104
104
  * and are the Config-A fallback only.
105
105
  *
106
- * v2.99 — Orchestration-aware framing. These static MCP instructions are
106
+ * v2.99 - Orchestration-aware framing. These static MCP instructions are
107
107
  * delivered at `initialize`, before the server knows the actor's tier
108
108
  * (no project/proxy/hooks state yet), so they cannot be served per-tier.
109
109
  * Instead the CONTENT is now tier-correct: the self-drive calls
@@ -114,29 +114,29 @@
114
114
  * The orchestration layer (proxy + host hooks) is authoritative for
115
115
  * B/C; this block is primarily Config-A's driver.
116
116
  *
117
- * v2.98 — Doc truth contracts are the normal drift surface. linkedDocs and
117
+ * v2.98 - Doc truth contracts are the normal drift surface. linkedDocs and
118
118
  * doc_code_couplings remain legacy diagnostics only; docs drift
119
119
  * defaults to truth findings and legacy:true is explicit debug.
120
- * v2.97 — Dropped legacy doc-coupling action guidance. Coupling rows are
120
+ * v2.97 - Dropped legacy doc-coupling action guidance. Coupling rows are
121
121
  * not truth findings (plan §1).
122
- * v2.96 — Replace conditional memory_discover guidance with structural fix:
122
+ * v2.96 - Replace conditional memory_discover guidance with structural fix:
123
123
  * bootstrap now includes _methodCatalog (discoverMemoryTools({})) so
124
124
  * agents have the memory_tools calling convention from turn one.
125
125
  * Instruction updated to reference _methodCatalog directly.
126
126
  * Superseded 2026-07-13: a real Config-B host persisted the expanded
127
127
  * 15.1KB hook output instead of injecting it. Bootstrap now carries a
128
128
  * compact discovery bridge; memory_discover({}) owns the full catalog.
129
- * v2.95 — Drop `augments` from JIT directive verdict list per plan §5 default
129
+ * v2.95 - Drop `augments` from JIT directive verdict list per plan §5 default
130
130
  * (augments downgrades to ambient via the parallel recall gate, not
131
131
  * the directive lane). See jit-knowledge-injector.md §5 decision note.
132
- * v2.94 — Add JIT directive teaching (docs/development/jit-knowledge-injector.md §2.3).
132
+ * v2.94 - Add JIT directive teaching (docs/development/jit-knowledge-injector.md §2.3).
133
133
  *
134
- * Code mode permanent — all memory operations via memory_tools sandbox.
134
+ * Code mode permanent - all memory operations via memory_tools sandbox.
135
135
  * memory_add, file_context etc. are now mnemonik.* methods, not standalone tools.
136
136
  *
137
137
  * Zero-cooperation rewrite. Context auto-loads if session_bootstrap is skipped.
138
138
  * Session summaries are auto-saved if agent doesn't call mnemonik.memory_add().
139
- * Instructions drastically simplified — the server handles the workflow now.
139
+ * Instructions drastically simplified - the server handles the workflow now.
140
140
  *
141
141
  * Token-optimised rewrite (superseded by later instruction rewrites).
142
142
  */
@@ -1 +1 @@
1
- {"version":3,"file":"jitDeliveryAck.d.ts","sourceRoot":"","sources":["../src/jitDeliveryAck.ts"],"names":[],"mappings":"AAoBA,wBAAgB,uBAAuB,CAAC,WAAW,EAAE,OAAO,GAAG,MAAM,CAOpE;AAED,MAAM,MAAM,yBAAyB,GACjC,kBAAkB,GAClB,aAAa,GACb,qBAAqB,GACrB,kBAAkB,GAClB,gBAAgB,CAAC;AAErB,MAAM,WAAW,qBAAqB;IACpC,eAAe,EAAE,oBAAoB,CAAC;IACtC,KAAK,EAAE,yBAAyB,CAAC;IACjC,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,kBAAkB,GAAG,2BAA2B,CAAC;CAC3D;AAED,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,2EAA2E;IAC3E,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC;CAC/C;AAyCD,kFAAkF;AAClF,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,sBAAsB,GAC/B,OAAO,CA8BT;AAED,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,sBAAsB,GAC/B,MAAM,EAAE,CAyCV;AAED,wBAAgB,6BAA6B,CAC3C,YAAY,EAAE,MAAM,EAAE,EACtB,OAAO,CAAC,EAAE,sBAAsB,GAC/B,IAAI,CAMN;AAED,4EAA4E;AAC5E,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EAAE,EACtB,OAAO,CAAC,EAAE,sBAAsB,GAC/B,IAAI,CAUN;AAED,qFAAqF;AACrF,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EAAE,EACtB,OAAO,CAAC,EAAE,sBAAsB,GAC/B,IAAI,CAUN;AAED,gFAAgF;AAChF,wBAAgB,+BAA+B,CAC7C,SAAS,EAAE,MAAM,EACjB,oBAAoB,EAAE,MAAM,EAAE,EAC9B,QAAQ,EAAE;IAAE,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,EAChF,OAAO,CAAC,EAAE,sBAAsB,GAC/B,IAAI,CAYN"}
1
+ {"version":3,"file":"jitDeliveryAck.d.ts","sourceRoot":"","sources":["../src/jitDeliveryAck.ts"],"names":[],"mappings":"AAqBA,wBAAgB,uBAAuB,CAAC,WAAW,EAAE,OAAO,GAAG,MAAM,CAOpE;AAED,MAAM,MAAM,yBAAyB,GACjC,kBAAkB,GAClB,aAAa,GACb,qBAAqB,GACrB,kBAAkB,GAClB,gBAAgB,CAAC;AAErB,MAAM,WAAW,qBAAqB;IACpC,eAAe,EAAE,oBAAoB,CAAC;IACtC,KAAK,EAAE,yBAAyB,CAAC;IACjC,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,kBAAkB,GAAG,2BAA2B,CAAC;CAC3D;AAED,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,2EAA2E;IAC3E,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC;CAC/C;AA0CD,kFAAkF;AAClF,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,sBAAsB,GAC/B,OAAO,CA8BT;AAED,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,sBAAsB,GAC/B,MAAM,EAAE,CAyCV;AAED,wBAAgB,6BAA6B,CAC3C,YAAY,EAAE,MAAM,EAAE,EACtB,OAAO,CAAC,EAAE,sBAAsB,GAC/B,IAAI,CAMN;AAED,4EAA4E;AAC5E,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EAAE,EACtB,OAAO,CAAC,EAAE,sBAAsB,GAC/B,IAAI,CAUN;AAED,qFAAqF;AACrF,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EAAE,EACtB,OAAO,CAAC,EAAE,sBAAsB,GAC/B,IAAI,CAUN;AAED,gFAAgF;AAChF,wBAAgB,+BAA+B,CAC7C,SAAS,EAAE,MAAM,EACjB,oBAAoB,EAAE,MAAM,EAAE,EAC9B,QAAQ,EAAE;IAAE,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,EAChF,OAAO,CAAC,EAAE,sBAAsB,GAC/B,IAAI,CAYN"}
@@ -1,3 +1,4 @@
1
+ import { ensureWindowsPrivateDirectorySync } from './runtimeSigners.js';
1
2
  import { createHash } from 'node:crypto';
2
3
  import { chmodSync, closeSync, constants, existsSync, lstatSync, mkdirSync, openSync, readdirSync, unlinkSync, } from 'node:fs';
3
4
  import { join } from 'node:path';
@@ -45,6 +46,7 @@ function ensurePrivateDirectory(path) {
45
46
  try {
46
47
  if (existsSync(path) && lstatSync(path).isSymbolicLink())
47
48
  return false;
49
+ ensureWindowsPrivateDirectorySync(path);
48
50
  mkdirSync(path, { recursive: true, mode: 0o700 });
49
51
  chmodSync(path, 0o700);
50
52
  return lstatSync(path).isDirectory() && !lstatSync(path).isSymbolicLink();
@@ -1 +1 @@
1
- {"version":3,"file":"jitDeliveryAck.js","sourceRoot":"","sources":["../src/jitDeliveryAck.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EACL,SAAS,EACT,SAAS,EACT,SAAS,EACT,UAAU,EACV,SAAS,EACT,SAAS,EACT,QAAQ,EACR,WAAW,EACX,UAAU,GACX,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,MAAM,eAAe,GAAG,wEAAwE,CAAC;AACjG,MAAM,eAAe,GAAG,kDAAkD,CAAC;AAC3E,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAC3B,MAAM,yBAAyB,GAAG,OAAO,CAAC;AAE1C,MAAM,UAAU,uBAAuB,CAAC,WAAoB;IAC1D,IAAI,WAAW,KAAK,SAAS,IAAI,WAAW,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IACxE,OAAO,OAAO,WAAW,KAAK,QAAQ;QACpC,WAAW,CAAC,MAAM,IAAI,EAAE;QACxB,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC;QACjC,CAAC,CAAC,WAAW;QACb,CAAC,CAAC,cAAc,CAAC;AACrB,CAAC;AAyBD,SAAS,IAAI,CAAC,KAAa;IACzB,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,gBAAgB,CACvB,OAA2C,EAC3C,KAAgC,EAChC,WAAmB,EACnB,MAAwC;IAExC,IAAI,CAAC,OAAO;QAAE,OAAO;IACrB,MAAM,MAAM,GAA0B;QACpC,eAAe,EAAE,oBAAoB;QACrC,KAAK;QACL,eAAe,EAAE,IAAI,CAAC,WAAW,CAAC;QAClC,kBAAkB,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;QACxD,WAAW,EAAE,uBAAuB,CAAC,OAAO,CAAC,WAAW,CAAC;QACzD,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC9B,CAAC;IACF,IAAI,CAAC;QACH,IAAI,OAAO,CAAC,IAAI;YAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;;YAClC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC;IAAC,MAAM,CAAC;QACP,mEAAmE;IACrE,CAAC;AACH,CAAC;AAED,SAAS,sBAAsB,CAAC,IAAY;IAC1C,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IACxB,IAAI,CAAC;QACH,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE;YAAE,OAAO,KAAK,CAAC;QACvE,SAAS,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QAClD,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACvB,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,CAAC;IAC5E,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,qBAAqB,CACnC,SAAiB,EACjB,WAAmB,EACnB,OAAgC;IAEhC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC;QAAE,OAAO,KAAK,CAAC;IAC3F,IAAI,EAAE,GAAkB,IAAI,CAAC;IAC7B,IAAI,CAAC;QACH,EAAE,GAAG,QAAQ,CACX,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,EAC5B,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC,MAAM,GAAG,SAAS,CAAC,QAAQ,GAAG,CAAC,SAAS,CAAC,UAAU,IAAI,CAAC,CAAC,EACvF,KAAK,CACN,CAAC;QACF,gBAAgB,CAAC,OAAO,EAAE,kBAAkB,EAAE,WAAW,CAAC,CAAC;QAC3D,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,8DAA8D;QAC9D,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC;YACrD,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;YACvF,IAAI,SAAS;gBAAE,gBAAgB,CAAC,OAAO,EAAE,kBAAkB,EAAE,WAAW,CAAC,CAAC;YAC1E,OAAO,SAAS,CAAC;QACnB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;YAAS,CAAC;QACT,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YAChB,IAAI,CAAC;gBACH,SAAS,CAAC,EAAE,CAAC,CAAC;YAChB,CAAC;YAAC,MAAM,CAAC;gBACP,sDAAsD;YACxD,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,SAAiB,EACjB,OAAgC;IAEhC,IAAI,CAAC,SAAS;QAAE,OAAO,EAAE,CAAC;IAC1B,IAAI,CAAC;QACH,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;YAAE,OAAO,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;QAClC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,cAAc,EAAE;YAAE,OAAO,EAAE,CAAC;QAC5D,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,IAAI,GAAuD,EAAE,CAAC;QAEpE,KAAK,MAAM,WAAW,IAAI,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC;YACjD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC;gBAAE,SAAS;YACjD,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;YAChD,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC;gBACrC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,MAAM,CAAC,cAAc,EAAE;oBAAE,SAAS;gBAC1D,IAAI,GAAG,GAAG,MAAM,CAAC,OAAO,IAAI,yBAAyB,EAAE,CAAC;oBACtD,IAAI,CAAC;wBACH,UAAU,CAAC,UAAU,CAAC,CAAC;oBACzB,CAAC;oBAAC,MAAM,CAAC;wBACP,8EAA8E;oBAChF,CAAC;oBACD,gBAAgB,CAAC,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,kBAAkB,CAAC,CAAC;oBAC7E,SAAS;gBACX,CAAC;gBACD,gBAAgB,CAAC,OAAO,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC;gBACtD,IAAI,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;YACzD,CAAC;YAAC,MAAM,CAAC;gBACP,iEAAiE;YACnE,CAAC;QACH,CAAC;QAED,OAAO,IAAI;aACR,IAAI,CACH,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CACd,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,KAAK,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAC1F;aACA,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC;aAC1B,GAAG,CAAC,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC;IAC3C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,MAAM,UAAU,6BAA6B,CAC3C,YAAsB,EACtB,OAAgC;IAEhC,KAAK,MAAM,WAAW,IAAI,IAAI,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;QAChD,IAAI,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;YACtC,gBAAgB,CAAC,OAAO,EAAE,qBAAqB,EAAE,WAAW,CAAC,CAAC;QAChE,CAAC;IACH,CAAC;AACH,CAAC;AAED,4EAA4E;AAC5E,MAAM,UAAU,0BAA0B,CACxC,SAAiB,EACjB,YAAsB,EACtB,OAAgC;IAEhC,KAAK,MAAM,WAAW,IAAI,IAAI,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;QAChD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC;YAAE,SAAS;QACjD,gBAAgB,CAAC,OAAO,EAAE,kBAAkB,EAAE,WAAW,CAAC,CAAC;QAC3D,IAAI,CAAC;YACH,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC;QAC3C,CAAC;QAAC,MAAM,CAAC;YACP,yEAAyE;QAC3E,CAAC;IACH,CAAC;AACH,CAAC;AAED,qFAAqF;AACrF,MAAM,UAAU,2BAA2B,CACzC,SAAiB,EACjB,YAAsB,EACtB,OAAgC;IAEhC,KAAK,MAAM,WAAW,IAAI,IAAI,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;QAChD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC;YAAE,SAAS;QACjD,IAAI,CAAC;YACH,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC;QAC3C,CAAC;QAAC,MAAM,CAAC;YACP,iFAAiF;QACnF,CAAC;QACD,gBAAgB,CAAC,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,2BAA2B,CAAC,CAAC;IACxF,CAAC;AACH,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,+BAA+B,CAC7C,SAAiB,EACjB,oBAA8B,EAC9B,QAAgF,EAChF,OAAgC;IAEhC,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,oBAAoB,CAAC,CAAC;IAC/C,0BAA0B,CACxB,SAAS,EACT,CAAC,QAAQ,CAAC,qBAAqB,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,EACzF,OAAO,CACR,CAAC;IACF,2BAA2B,CACzB,SAAS,EACT,CAAC,QAAQ,CAAC,qBAAqB,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,EACzF,OAAO,CACR,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"jitDeliveryAck.js","sourceRoot":"","sources":["../src/jitDeliveryAck.ts"],"names":[],"mappings":"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"}