@mnemonik/claude-code-hooks 0.9.43 → 0.9.46

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/LICENSE ADDED
@@ -0,0 +1,38 @@
1
+ MNEMONIK PROPRIETARY SOFTWARE LICENSE
2
+
3
+ Copyright © 2026 JayDeeCo Limited. All rights reserved.
4
+
5
+ This licence applies to the Mnemonik software distributed with this file
6
+ (the "Software").
7
+
8
+ Subject to the Mnemonik Terms of Service and while you are an authorised
9
+ Mnemonik account holder, JayDeeCo Limited grants you a limited, revocable,
10
+ non-exclusive, non-transferable, non-sublicensable licence to download,
11
+ install, and run unmodified copies of the Software solely to access and use
12
+ the Mnemonik service. This permission applies to authorised free, trial, and
13
+ paid accounts.
14
+
15
+ You may not:
16
+
17
+ 1. modify the Software or create derivative works from it;
18
+ 2. reverse engineer, decompile, or disassemble the Software, except to the
19
+ extent that applicable law does not permit this restriction;
20
+ 3. redistribute, publish, sell, rent, lease, sublicense, or resell the
21
+ Software or access to it;
22
+ 4. use the Software to build or operate a product or service that competes
23
+ with Mnemonik;
24
+ 5. remove or alter any copyright, trade mark, attribution, or proprietary
25
+ notice; or
26
+ 6. bypass authentication, service limits, or technical restrictions.
27
+
28
+ JayDeeCo Limited and its licensors retain all right, title, and interest in
29
+ the Software. No rights are granted except those expressly stated here.
30
+
31
+ This licence ends automatically when your right to use Mnemonik ends or if
32
+ you breach this licence or the Mnemonik Terms of Service. When it ends, you
33
+ must stop using the Software and delete copies in your possession or control.
34
+
35
+ Third-party components remain subject to their own licences. The warranty
36
+ disclaimers, limitations of liability, termination terms, and governing law
37
+ in the Mnemonik Terms of Service at https://mnemonik.ai/terms apply to this
38
+ licence and the Software.
package/dist/hook.js CHANGED
@@ -17,9 +17,9 @@ import { PRE_EDIT_GATE, PRE_EDIT_ADVISORY_AUTO_FETCH, PRE_MCP_GATE, STOP_CHECKPO
17
17
  import { createPreCompactSnapshot, fetchMcpRecord, fetchMcpPrecheck, fetchAmbient, fetchInjections, fetchJit, postProxySuppressionClear, postSessionStart, postSessionEnd, reportBypass, reportGateFired, reportNativeGrepObserved, } from './lib/http.js';
18
18
  import { POST_TOOL_TIMEOUT_MS } from '@mnemonik/shared/hook-timeouts';
19
19
  import { matchIrreducibleDeny } from './lib/shellTokens.js';
20
- import { findProjectIdentity } from './lib/identity.js';
20
+ import { findProjectIdentity } from '@mnemonik/shared/hook-runtime';
21
21
  import { renderVisibleMnemonikText } from './lib/envelopeDisplay.js';
22
- import { fitComposedContext } from './lib/contextBudget.js';
22
+ import { fitComposedContext, fitContextText, } from './lib/contextBudget.js';
23
23
  import { hookRuntimeHost, hookSource, isEditTool, isMnemonikMcpTool, isNativeGrepTool, isShellTool, isTrivialHostEdit, resolveTargetFiles, } from './lib/runtimeHost.js';
24
24
  const RUNTIME_HOST = hookRuntimeHost();
25
25
  // ─── Host timezone capture ─────────────────────────────────────────────────
@@ -45,22 +45,21 @@ function writeAdvisoryNote(message) {
45
45
  stderr.write(`mnemonik-hook: ${message}\n`);
46
46
  exit(0);
47
47
  }
48
- function trimContext(text, maxBytes = 12_000) {
49
- if (Buffer.byteLength(text, 'utf8') <= maxBytes)
50
- return text;
51
- const marker = '\n\n[Mnemonik: context exceeded hook budget. Call memory_get/file_context for full detail if needed.]';
52
- const budget = Math.max(0, maxBytes - Buffer.byteLength(marker, 'utf8'));
53
- let out = '';
54
- for (const ch of text) {
55
- if (Buffer.byteLength(out + ch, 'utf8') > budget)
56
- break;
57
- out += ch;
58
- }
59
- return out + marker;
48
+ function trimContext(text, maxBytes = 12_000, envelopeName = 'context envelope') {
49
+ return fitContextText(text, envelopeName, {
50
+ budget: maxBytes,
51
+ units: 'utf8-bytes',
52
+ });
60
53
  }
61
54
  function composeAdditionalContext(args) {
62
55
  if (RUNTIME_HOST === 'vscode') {
63
- return [...args.lead, ...(args.ambient ? [args.ambient] : []), ...args.tail].join('\n\n');
56
+ return [
57
+ ...args.lead.map((piece) => (typeof piece === 'string' ? piece : piece.text)),
58
+ ...(args.ambient
59
+ ? [typeof args.ambient === 'string' ? args.ambient : args.ambient.text]
60
+ : []),
61
+ ...args.tail.map((piece) => (typeof piece === 'string' ? piece : piece.text)),
62
+ ].join('\n\n');
64
63
  }
65
64
  return fitComposedContext(args).value;
66
65
  }
@@ -415,13 +414,13 @@ async function handlePreBash(input, config) {
415
414
  // Lines carried into whichever decision fires; nudges ride along.
416
415
  const lines = [];
417
416
  if (checkpointInjection) {
418
- lines.push(trimContext(renderVisibleMnemonikText(checkpointInjection.envelope), 4_000));
417
+ lines.push(trimContext(renderVisibleMnemonikText(checkpointInjection.envelope), 4_000, checkpointInjection.signal));
419
418
  }
420
419
  if (policyCheck) {
421
- lines.push(trimContext(renderVisibleMnemonikText(policyCheck.envelope), 4_000));
420
+ lines.push(trimContext(renderVisibleMnemonikText(policyCheck.envelope), 4_000, policyCheck.signal));
422
421
  }
423
422
  for (const nudge of policyNudges) {
424
- lines.push(trimContext(renderVisibleMnemonikText(nudge.envelope), 2_000));
423
+ lines.push(trimContext(renderVisibleMnemonikText(nudge.envelope), 2_000, nudge.signal));
425
424
  }
426
425
  // Hard deny only for forbiddenCommand policy. Checkpoint pressure stays visible
427
426
  // but advisory; it must never trap the agent out of the shell it needs to fix
@@ -458,10 +457,10 @@ async function handlePreBash(input, config) {
458
457
  // Reached only on the allow path (deny/confirm above exit via writeDecision).
459
458
  // Append the advisory code_search nudge here so it never rides a deny reason.
460
459
  for (const nudge of codeSearchNudges) {
461
- lines.push(trimContext(renderVisibleMnemonikText(nudge.envelope), 2_000));
460
+ lines.push(trimContext(renderVisibleMnemonikText(nudge.envelope), 2_000, nudge.signal));
462
461
  }
463
462
  for (const note of reflexNotes) {
464
- lines.push(trimContext(renderVisibleMnemonikText(note.envelope), 2_000));
463
+ lines.push(trimContext(renderVisibleMnemonikText(note.envelope), 2_000, note.signal));
465
464
  }
466
465
  await emitGateFired(input, config, tool, 'advisory', `policy_match_${policyNudges.length}`);
467
466
  const decision = {
@@ -619,7 +618,7 @@ async function handlePreGrep(input, config) {
619
618
  hookSpecificOutput: {
620
619
  hookEventName: 'PreToolUse',
621
620
  permissionDecision: 'allow',
622
- additionalContext: trimContext(renderVisibleMnemonikText(nudge.envelope), 2_000),
621
+ additionalContext: trimContext(renderVisibleMnemonikText(nudge.envelope), 2_000, nudge.signal),
623
622
  },
624
623
  };
625
624
  writeDecision(decision);
@@ -674,9 +673,9 @@ async function handleSessionStart(input, config) {
674
673
  claudeSessionId: input.session_id,
675
674
  tz,
676
675
  });
677
- // No ambient on SessionStart, so nothing is trimmable this is the
678
- // belt-and-braces half only: an over-cap digest gets the persisted-output
679
- // recovery instruction prepended ahead of the PROJECT_CONTEXT marker.
676
+ // SessionStart uses the same item composer even without ambient recall, so
677
+ // an unexpectedly oversized digest stops at sentence boundaries and names
678
+ // the project-context envelope instead of being cut mid-text.
680
679
  const decision = {
681
680
  hookSpecificOutput: {
682
681
  hookEventName: 'SessionStart',
@@ -859,9 +858,9 @@ async function handleUserPromptSubmit(input, config) {
859
858
  }
860
859
  // Ambient goes last: JIT is the load-bearing surfaced fact and the bus
861
860
  // injections are actionable nudges, so both anchor above passive recall
862
- // that the agent reads top-down. Held out of `pieces` because it is the
863
- // one piece `fitComposedContext` may trim: Claude Code externalizes any
864
- // additionalContext value over ~10K chars to a persisted-output preview,
861
+ // that the agent reads top-down. Held out of `pieces` so the composer can
862
+ // parse its pointer-terminated memories as individual budget items. Claude
863
+ // Code externalizes any additionalContext value over ~10K chars to a persisted-output preview,
865
864
  // and ambient (~2KB) on top of a budget-packed digest (9.5K) crossed that
866
865
  // cap in production, spilling the load-bearing digest to disk to make room
867
866
  // for advisory recall (task f246838d). Priority: digest > JIT >
@@ -878,7 +877,7 @@ async function handleUserPromptSubmit(input, config) {
878
877
  // deliver a digest anyway, so the marker would be useless context noise.
879
878
  // Hashed so the raw host session id never enters the model context.
880
879
  // Both markers ride `tailPieces`: they sit below ambient in read order and
881
- // are never trimmed by fitComposedContext.
880
+ // remain reserved in full by fitComposedContext.
882
881
  const tailPieces = [];
883
882
  if (RUNTIME_HOST === 'claude_code' && injectionsResult?.ok && input.session_id) {
884
883
  const sid = createHash('sha256').update(input.session_id).digest('hex').slice(0, 16);
@@ -900,10 +899,9 @@ async function handleUserPromptSubmit(input, config) {
900
899
  }
901
900
  if (pieces.length === 0 && ambientPiece === null && tailPieces.length === 0)
902
901
  writeAllow();
903
- // Fit the composed value under the host's inline cap: trim whole ambient
904
- // items first; if it somehow still crosses the cap, lead with the
905
- // persisted-output recovery instruction so a previewed agent reads the
906
- // full output instead of treating the preview as project context.
902
+ // Fit the composed value under the host's inline cap. Full items retain
903
+ // priority order; the boundary item packs whole bullet lines (or sentences),
904
+ // followed by identity pointers for its continuation and every later item.
907
905
  const decision = {
908
906
  hookSpecificOutput: {
909
907
  hookEventName: 'UserPromptSubmit',
@@ -965,7 +963,7 @@ async function handlePostEdit(input, config) {
965
963
  writeDecision({
966
964
  hookSpecificOutput: {
967
965
  hookEventName: 'PostToolUse',
968
- additionalContext: trimContext(renderVisibleMnemonikText(checkpoint.envelope), 4_000),
966
+ additionalContext: trimContext(renderVisibleMnemonikText(checkpoint.envelope), 4_000, checkpoint.signal),
969
967
  },
970
968
  });
971
969
  }
package/dist/hook.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"hook.js","sourceRoot":"","sources":["../src/hook.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hook.js","sourceRoot":"","sources":["../src/hook.ts"],"names":[],"mappings":";AACA;;;;;;;;;GASG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC5E,OAAO,EACL,aAAa,EACb,4BAA4B,EAC5B,YAAY,EACZ,oBAAoB,EACpB,uBAAuB,EACvB,oBAAoB,EACpB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,wBAAwB,EACxB,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,eAAe,EACf,QAAQ,EACR,yBAAyB,EACzB,gBAAgB,EAChB,cAAc,EACd,YAAY,EACZ,eAAe,EACf,wBAAwB,GACzB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EACL,kBAAkB,EAClB,cAAc,GAEf,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,eAAe,EACf,UAAU,EACV,UAAU,EACV,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,EACX,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,sBAAsB,CAAC;AAU9B,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;AAEvC,8EAA8E;AAE9E,SAAS,aAAa;IACpB,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,cAAc,EAAE,CAAC,eAAe,EAAE,CAAC,QAAQ,CAAC;IAC1D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;IACxB,CAAC;AACH,CAAC;AAED,8EAA8E;AAE9E,SAAS,aAAa,CACpB,QAC4F;IAE5F,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtB,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;IACzC,CAAC;IACD,IAAI,CAAC,CAAC,CAAC,CAAC;AACV,CAAC;AAED,SAAS,UAAU;IACjB,IAAI,CAAC,CAAC,CAAC,CAAC;AACV,CAAC;AAED,SAAS,iBAAiB,CAAC,OAAe;IACxC,MAAM,CAAC,KAAK,CAAC,kBAAkB,OAAO,IAAI,CAAC,CAAC;IAC5C,IAAI,CAAC,CAAC,CAAC,CAAC;AACV,CAAC;AAED,SAAS,WAAW,CAAC,IAAY,EAAE,QAAQ,GAAG,MAAM,EAAE,YAAY,GAAG,kBAAkB;IACrF,OAAO,cAAc,CAAC,IAAI,EAAE,YAAY,EAAE;QACxC,MAAM,EAAE,QAAQ;QAChB,KAAK,EAAE,YAAY;KACpB,CAAC,CAAC;AACL,CAAC;AAED,SAAS,wBAAwB,CAAC,IAA0B;IAC1D,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO;YACL,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC7E,GAAG,CAAC,IAAI,CAAC,OAAO;gBACd,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;gBACvE,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;SAC9E,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACjB,CAAC;IACD,OAAO,kBAAkB,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC;AACxC,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,aAAa,CAC1B,KAAgB,EAChB,MAAkB,EAClB,IAAY,EACZ,IAAoC,EACpC,OAAe;IAEf,MAAM,eAAe,CAAC;QACpB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,GAAG,EAAE,KAAK,CAAC,GAAG;QACd,SAAS,EAAE,CAAC,MAAM,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS;QAC5D,eAAe,EAAE,KAAK,CAAC,UAAU;QACjC,IAAI;QACJ,IAAI;QACJ,OAAO;KACR,CAAC,CAAC;AACL,CAAC;AAED,8EAA8E;AAE9E,KAAK,UAAU,SAAS;IACtB,OAAO,IAAI,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QACzB,IAAI,GAAG,GAAG,EAAE,CAAC;QACb,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAC1B,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;YACjC,GAAG,IAAI,KAAK,CAAC;YACb,yEAAyE;YACzE,IAAI,GAAG,CAAC,MAAM,GAAG,SAAS,EAAE,CAAC;gBAC3B,GAAG,CAAC,IAAI,CAAC,CAAC;YACZ,CAAC;QACH,CAAC,CAAC,CAAC;QACH,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;YACnB,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAuB,CAAC;gBACrD,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,MAAM,CAAC,eAAe,KAAK,QAAQ,EAAE,CAAC;oBACxF,GAAG,CAAC,IAAI,CAAC,CAAC;oBACV,OAAO;gBACT,CAAC;gBACD,qEAAqE;gBACrE,sEAAsE;gBACtE,qEAAqE;gBACrE,kEAAkE;gBAClE,6DAA6D;gBAC7D,MAAM,CAAC,GAAG,GAAG,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;gBACvF,MAAM,CAAC,UAAU;oBACf,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ,IAAI,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;gBACtF,GAAG,CAAC,MAAmB,CAAC,CAAC;YAC3B,CAAC;YAAC,MAAM,CAAC;gBACP,GAAG,CAAC,IAAI,CAAC,CAAC;YACZ,CAAC;QACH,CAAC,CAAC,CAAC;QACH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,8EAA8E;AAE9E;;;;;;;;;;;;;;GAcG;AACH,KAAK,UAAU,aAAa,CAAC,KAAgB,EAAE,MAAkB;IAC/D,MAAM,IAAI,GAAG,aAAa,CAAC;IAC3B,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,IAAI,MAAM,CAAC;IACvC,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;QACnB,MAAM,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QACvD,UAAU,EAAE,CAAC;IACf,CAAC;IAED,MAAM,OAAO,GAAG,kBAAkB,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IACvF,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;IAEvE,2EAA2E;IAC3E,yEAAyE;IACzE,8BAA8B;IAC9B,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvD,MAAM,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;QAC3D,UAAU,EAAE,CAAC;IACf,CAAC;IAED,qEAAqE;IACrE,4DAA4D;IAC5D,EAAE;IACF,2EAA2E;IAC3E,2EAA2E;IAC3E,8EAA8E;IAC9E,wEAAwE;IACxE,4EAA4E;IAC5E,4EAA4E;IAC5E,6EAA6E;IAC7E,wEAAwE;IACxE,iBAAiB;IACjB,EAAE;IACF,8EAA8E;IAC9E,gEAAgE;IAChE,IAAI,iBAAiB,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/D,MAAM,CAAC,EAAE,iBAAiB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC9C,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC;YACnD,MAAM,CAAC,MAAM;gBACX,CAAC,CAAC,eAAe,CAAC;oBACd,MAAM,EAAE,MAAM,CAAC,MAAM;oBACrB,MAAM,EAAE,MAAM,CAAC,MAAM;oBACrB,GAAG,EAAE,KAAK,CAAC,GAAG;oBACd,SAAS,EAAE,CAAC,MAAM,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS;oBAC5D,SAAS,EAAE,KAAK,CAAC,UAAU;oBAC3B,KAAK,EAAE,YAAY;oBACnB,IAAI,EAAE,YAAY;oBAClB,QAAQ,EAAE,KAAK,CAAC,SAAS,IAAI,EAAE;oBAC/B,QAAQ,EAAE,KAAK,CAAC,UAAU;oBAC1B,SAAS,EAAE,eAAe;iBAC3B,CAAC;gBACJ,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;SAC1B,CAAC,CAAC;QACH,MAAM,aAAa,GAAG,CAAC,iBAAiB,EAAE,UAAU,IAAI,EAAE,CAAC;aACxD,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,eAAe,CAAC;aAC/C,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,yBAAyB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;QACzD,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,aAAa,CAAC;gBACZ,kBAAkB,EAAE;oBAClB,aAAa,EAAE,YAAY;oBAC3B,kBAAkB,EAAE,OAAO;oBAC3B,iBAAiB,EAAE,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC;iBAC9C;aACF,CAAC,CAAC;QACL,CAAC;QACD,UAAU,EAAE,CAAC;IACf,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACnB,iBAAiB,CACf,+EAA+E,CAChF,CAAC;IACJ,CAAC;IAED,mEAAmE;IACnE,sEAAsE;IACtE,6DAA6D;IAC7D,MAAM,gBAAgB,GAAG,MAAM,eAAe,CAAC;QAC7C,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,GAAG,EAAE,KAAK,CAAC,GAAG;QACd,SAAS,EAAE,CAAC,MAAM,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS;QAC5D,SAAS,EAAE,KAAK,CAAC,UAAU;QAC3B,KAAK,EAAE,YAAY;QACnB,IAAI,EAAE,YAAY;QAClB,QAAQ,EAAE,KAAK,CAAC,SAAS,IAAI,EAAE;QAC/B,QAAQ,EAAE,KAAK,CAAC,UAAU;QAC1B,SAAS,EAAE,eAAe;KAC3B,CAAC,CAAC;IAEH,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACtB,MAAM,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;QAC9D,iBAAiB,CAAC,0CAA0C,CAAC,CAAC;IAChE,CAAC;IAED,qEAAqE;IACrE,sEAAsE;IACtE,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE,CAAC;QACzB,MAAM,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,mBAAmB,CAAC,CAAC;QACpE,UAAU,EAAE,CAAC;IACf,CAAC;IAED,MAAM,QAAQ,GAAG,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAC/C,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,uBAAuB,CAChD,CAAC;IACF,6EAA6E;IAC7E,uEAAuE;IACvE,4EAA4E;IAC5E,0EAA0E;IAC1E,4CAA4C;IAC5C,MAAM,WAAW,GAAG,gBAAgB,CAAC,UAAU;SAC5C,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,eAAe,CAAC;SAC/C,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,yBAAyB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEzD,yEAAyE;IACzE,yEAAyE;IACzE,+BAA+B;IAC/B,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;QAC1D,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,aAAa,CAAC;gBACZ,kBAAkB,EAAE;oBAClB,aAAa,EAAE,YAAY;oBAC3B,kBAAkB,EAAE,OAAO;oBAC3B,iBAAiB,EAAE,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC;iBAC5C;aACF,CAAC,CAAC;QACL,CAAC;QACD,UAAU,EAAE,CAAC;IACf,CAAC;IAED,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;QACxB,2EAA2E;QAC3E,4EAA4E;QAC5E,4EAA4E;QAC5E,yEAAyE;QACzE,wEAAwE;QACxE,2EAA2E;QAC3E,uEAAuE;QACvE,IAAI,4BAA4B,EAAE,CAAC;YACjC,MAAM,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,gBAAgB,CAAC,CAAC;YACjE,MAAM,QAAQ,GAAuB;gBACnC,kBAAkB,EAAE;oBAClB,aAAa,EAAE,YAAY;oBAC3B,kBAAkB,EAAE,OAAO;oBAC3B,iBAAiB,EAAE,CAAC,yBAAyB,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,GAAG,WAAW,CAAC,CAAC,IAAI,CACpF,MAAM,CACP;iBACF;aACF,CAAC;YACF,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC1B,CAAC;QAED,wFAAwF;QACxF,qEAAqE;QACrE,kEAAkE;QAClE,oEAAoE;QACpE,mEAAmE;QACnE,mEAAmE;QACnE,oEAAoE;QACpE,mEAAmE;QACnE,uBAAuB;QACvB,MAAM,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QACvD,MAAM,kBAAkB,GAAG;YACzB,yBAAyB,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAC5C,iMAAiM;SAClM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACb,MAAM,QAAQ,GAAuB;YACnC,kBAAkB,EAAE;gBAClB,aAAa,EAAE,YAAY;gBAC3B,kBAAkB,EAAE,MAAM;gBAC1B,wBAAwB,EAAE,kBAAkB;aAC7C;SACF,CAAC;QACF,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC;IAED,qBAAqB;IACrB,MAAM,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IACvD,MAAM,UAAU,GAAG;QACjB,yBAAyB,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC5C,iMAAiM;KAClM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACb,MAAM,QAAQ,GAAuB;QACnC,kBAAkB,EAAE;YAClB,aAAa,EAAE,YAAY;YAC3B,kBAAkB,EAAE,MAAM;YAC1B,wBAAwB,EAAE,UAAU;SACrC;KACF,CAAC;IACF,aAAa,CAAC,QAAQ,CAAC,CAAC;AAC1B,CAAC;AAED,8EAA8E;AAE9E;;;;;;;;;;;;;;;;;;;GAmBG;AACH,KAAK,UAAU,aAAa,CAAC,KAAgB,EAAE,MAAkB;IAC/D,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,IAAI,CAAC,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACzF,MAAM,OAAO,GAAG,OAAO,KAAK,CAAC,UAAU,EAAE,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9F,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;QAAE,UAAU,EAAE,CAAC;IAElC,8DAA8D;IAC9D,MAAM,QAAQ,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAC/C,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,oBAAoB,QAAQ,EAAE,CAAC,CAAC;QACpF,MAAM,UAAU,GAAG;YACjB,2BAA2B;YAC3B,yEAAyE,QAAQ,IAAI;YACrF,uKAAuK;YACvK,yKAAyK;SAC1K,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACb,MAAM,QAAQ,GAAuB;YACnC,kBAAkB,EAAE;gBAClB,aAAa,EAAE,YAAY;gBAC3B,kBAAkB,EAAE,MAAM;gBAC1B,wBAAwB,EAAE,UAAU;aACrC;SACF,CAAC;QACF,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC;IAED,gEAAgE;IAChE,sEAAsE;IACtE,uEAAuE;IACvE,kEAAkE;IAClE,sEAAsE;IACtE,oDAAoD;IACpD,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;QACnE,iBAAiB,CACf,6CACE,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,4BACzD,WAAW,CACZ,CAAC;IACJ,CAAC;IACD,MAAM,gBAAgB,GAAG,MAAM,eAAe,CAAC;QAC7C,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,GAAG,EAAE,KAAK,CAAC,GAAG;QACd,SAAS,EAAE,CAAC,MAAM,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS;QAC5D,SAAS,EAAE,KAAK,CAAC,UAAU;QAC3B,KAAK,EAAE,YAAY;QACnB,IAAI,EAAE,YAAY;QAClB,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,KAAK,CAAC,UAAU;KAC3B,CAAC,CAAC;IAEH,IAAI,CAAC,gBAAgB,EAAE,EAAE,EAAE,CAAC;QAC1B,MAAM,aAAa,CACjB,KAAK,EACL,MAAM,EACN,IAAI,EACJ,UAAU,EACV,gBAAgB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,aAAa,CAC9C,CAAC;QACF,UAAU,EAAE,CAAC;IACf,CAAC;IAED,MAAM,mBAAmB,GAAG,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAC1D,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,qBAAqB,CAC9C,CAAC;IACF,MAAM,WAAW,GAAG,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAClD,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,uBAAuB,CAChD,CAAC;IACF,MAAM,YAAY,GAAG,gBAAgB,CAAC,UAAU,CAAC,MAAM,CACrD,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,iBAAiB,CAC1C,CAAC;IACF,8EAA8E;IAC9E,yEAAyE;IACzE,2DAA2D;IAC3D,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,UAAU,CAAC,MAAM,CACzD,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,sBAAsB,CAC/C,CAAC;IACF,4EAA4E;IAC5E,yEAAyE;IACzE,wBAAwB;IACxB,MAAM,WAAW,GAAG,gBAAgB,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,eAAe,CAAC,CAAC;IAEhG,IACE,CAAC,mBAAmB;QACpB,CAAC,WAAW;QACZ,YAAY,CAAC,MAAM,KAAK,CAAC;QACzB,gBAAgB,CAAC,MAAM,KAAK,CAAC;QAC7B,WAAW,CAAC,MAAM,KAAK,CAAC,EACxB,CAAC;QACD,MAAM,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,mBAAmB,CAAC,CAAC;QAC1E,UAAU,EAAE,CAAC;IACf,CAAC;IAED,sEAAsE;IACtE,2EAA2E;IAC3E,4EAA4E;IAC5E,4EAA4E;IAC5E,4EAA4E;IAC5E,6EAA6E;IAC7E,yEAAyE;IACzE,4EAA4E;IAC5E,2EAA2E;IAC3E,2EAA2E;IAC3E,2EAA2E;IAC3E,0EAA0E;IAC1E,MAAM,aAAa,GAAG,CAAC,CAAC,WAAW,IAAI,WAAW,CAAC,YAAY,KAAK,KAAK,CAAC;IAC1E,MAAM,UAAU,GAAG,CAAC,CAAC,WAAW,IAAI,CAAC,aAAa,CAAC;IAEnD,kEAAkE;IAClE,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,mBAAmB,EAAE,CAAC;QACxB,KAAK,CAAC,IAAI,CACR,WAAW,CACT,yBAAyB,CAAC,mBAAmB,CAAC,QAAQ,CAAC,EACvD,KAAK,EACL,mBAAmB,CAAC,MAAM,CAC3B,CACF,CAAC;IACJ,CAAC;IACD,IAAI,WAAW,EAAE,CAAC;QAChB,KAAK,CAAC,IAAI,CACR,WAAW,CAAC,yBAAyB,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,CACxF,CAAC;IACJ,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,yBAAyB,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAC1F,CAAC;IAED,gFAAgF;IAChF,8EAA8E;IAC9E,+BAA+B;IAC/B,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,uBAAuB,CAAC;QACxC,MAAM,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QAC7D,MAAM,QAAQ,GAAuB;YACnC,kBAAkB,EAAE;gBAClB,aAAa,EAAE,YAAY;gBAC3B,kBAAkB,EAAE,MAAM;gBAC1B,wBAAwB,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;aAC3C;SACF,CAAC;QACF,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC;IAED,+EAA+E;IAC/E,gFAAgF;IAChF,gFAAgF;IAChF,8EAA8E;IAC9E,gFAAgF;IAChF,mEAAmE;IACnE,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,yBAAyB,CAAC,CAAC;QAC/E,MAAM,QAAQ,GAAuB;YACnC,kBAAkB,EAAE;gBAClB,aAAa,EAAE,YAAY;gBAC3B,kBAAkB,EAAE,MAAM;gBAC1B,wBAAwB,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;aAC3C;SACF,CAAC;QACF,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC;IAED,8EAA8E;IAC9E,8EAA8E;IAC9E,KAAK,MAAM,KAAK,IAAI,gBAAgB,EAAE,CAAC;QACrC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,yBAAyB,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAC1F,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;QAC/B,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,yBAAyB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IACxF,CAAC;IAED,MAAM,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5F,MAAM,QAAQ,GAAuB;QACnC,kBAAkB,EAAE;YAClB,aAAa,EAAE,YAAY;YAC3B,kBAAkB,EAAE,OAAO;YAC3B,iBAAiB,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;SACpC;KACF,CAAC;IACF,aAAa,CAAC,QAAQ,CAAC,CAAC;AAC1B,CAAC;AAED,8EAA8E;AAE9E;;;;;;;;;;;;;;;GAeG;AACH,KAAK,UAAU,YAAY,CAAC,KAAgB,EAAE,MAAkB;IAC9D,MAAM,IAAI,GAAG,YAAY,CAAC;IAC1B,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC;IACnC,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;QACnB,MAAM,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QACvD,UAAU,EAAE,CAAC;IACf,CAAC;IACD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7B,oEAAoE;QACpE,mEAAmE;QACnE,oEAAoE;QACpE,UAAU,EAAE,CAAC;IACf,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;QAC7D,UAAU,EAAE,CAAC;IACf,CAAC;IAED,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,UAAU,IAAI,EAAE,CAA4B,CAAC;IACjE,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC;QACpC,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,GAAG,EAAE,KAAK,CAAC,GAAG;QACd,SAAS,EAAE,CAAC,MAAM,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS;QAC5D,eAAe,EAAE,KAAK,CAAC,UAAU;QACjC,IAAI;QACJ,IAAI;KACL,CAAC,CAAC;IAEH,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC;QAChB,MAAM,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;QAClF,UAAU,EAAE,CAAC;IACf,CAAC;IAED,IAAI,MAAM,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;QAC/B,MAAM,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QACxD,UAAU,EAAE,CAAC;IACf,CAAC;IAED,IAAI,MAAM,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;QAC9B,MAAM,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QACvD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,8BAA8B,CAAC;QAC/D,MAAM,OAAO,GAAG,MAAM,CAAC,YAAY,IAAI,0CAA0C,CAAC;QAClF,8DAA8D;QAC9D,+DAA+D;QAC/D,sEAAsE;QACtE,sEAAsE;QACtE,sEAAsE;QACtE,oEAAoE;QACpE,mEAAmE;QACnE,oEAAoE;QACpE,qCAAqC;QACrC,MAAM,QAAQ,GAAuB;YACnC,kBAAkB,EAAE;gBAClB,aAAa,EAAE,YAAY;gBAC3B,kBAAkB,EAAE,MAAM;gBAC1B,wBAAwB,EAAE,GAAG,MAAM,KAAK,OAAO,EAAE;aAClD;SACF,CAAC;QACF,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC;IAED,2EAA2E;IAC3E,6EAA6E;IAC7E,2EAA2E;IAC3E,2EAA2E;IAC3E,6EAA6E;IAC7E,4EAA4E;IAC5E,MAAM,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IACtD,MAAM,OAAO,GAAG,MAAM,CAAC,YAAY,IAAI,2CAA2C,CAAC;IACnF,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,2BAA2B,CAAC;IAC5D,MAAM,QAAQ,GAAuB;QACnC,kBAAkB,EAAE;YAClB,aAAa,EAAE,YAAY;YAC3B,kBAAkB,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;YACzD,GAAG,CAAC,IAAI,KAAK,SAAS;gBACpB,CAAC,CAAC,EAAE,wBAAwB,EAAE,GAAG,MAAM,KAAK,OAAO,EAAE,EAAE;gBACvD,CAAC,CAAC,EAAE,iBAAiB,EAAE,qCAAqC,OAAO,KAAK,MAAM,GAAG,EAAE,CAAC;SACvF;KACF,CAAC;IACF,aAAa,CAAC,QAAQ,CAAC,CAAC;AAC1B,CAAC;AAED,8EAA8E;AAE9E;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,KAAK,UAAU,aAAa,CAAC,KAAgB,EAAE,MAAkB;IAC/D,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM;QACxB,CAAC,CAAC,MAAM,wBAAwB,CAAC;YAC7B,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,SAAS,EAAE,CAAC,MAAM,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS;YAC5D,SAAS,EAAE,KAAK,CAAC,UAAU;YAC3B,QAAQ,EAAE,KAAK,CAAC,SAAS;SAC1B,CAAC;QACJ,CAAC,CAAC,IAAI,CAAC;IAET,sEAAsE;IACtE,2EAA2E;IAC3E,wEAAwE;IACxE,2EAA2E;IAC3E,6CAA6C;IAC7C,MAAM,KAAK,GAAG,IAAI,EAAE,EAAE;QACpB,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,sBAAsB,CAAC;QACtE,CAAC,CAAC,SAAS,CAAC;IACd,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,QAAQ,GAAuB;YACnC,kBAAkB,EAAE;gBAClB,aAAa,EAAE,YAAY;gBAC3B,kBAAkB,EAAE,OAAO;gBAC3B,iBAAiB,EAAE,WAAW,CAC5B,yBAAyB,CAAC,KAAK,CAAC,QAAQ,CAAC,EACzC,KAAK,EACL,KAAK,CAAC,MAAM,CACb;aACF;SACF,CAAC;QACF,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC;IAED,UAAU,EAAE,CAAC;AACf,CAAC;AAED,+EAA+E;AAE/E;;;;GAIG;AACH,KAAK,UAAU,kBAAkB,CAAC,KAAgB,EAAE,MAAkB;IACpE,IAAI,uBAAuB,KAAK,KAAK;QAAE,UAAU,EAAE,CAAC;IACpD,IAAI,CAAC,MAAM,CAAC,MAAM;QAAE,UAAU,EAAE,CAAC;IAEjC,MAAM,SAAS,GAAG,CAAC,MAAM,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC;IACpE,MAAM,EAAE,GAAG,aAAa,EAAE,CAAC;IAE3B,MAAM,gBAAgB,GAAG,MAAM,eAAe,CAAC;QAC7C,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,MAAM,EAAE,MAAM,CAAC,MAAO;QACtB,GAAG,EAAE,KAAK,CAAC,GAAG;QACd,SAAS;QACT,SAAS,EAAE,KAAK,CAAC,UAAU;QAC3B,KAAK,EAAE,cAAc;QACrB,IAAI,EAAE,YAAY;QAClB,EAAE;KACH,CAAC,CAAC;IAEH,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,gBAAgB,IAAI,gBAAgB,CAAC,EAAE,EAAE,CAAC;QAC5C,KAAK,MAAM,GAAG,IAAI,gBAAgB,CAAC,UAAU,EAAE,CAAC;YAC9C,IAAI,GAAG,CAAC,YAAY,KAAK,oBAAoB,EAAE,CAAC;gBAC9C,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;YACvD,CAAC;QACH,CAAC;IACH,CAAC;IACD,wEAAwE;IACxE,2EAA2E;IAC3E,yEAAyE;IACzE,sEAAsE;IACtE,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,UAAU,EAAE,CAAC;IAEtC,2EAA2E;IAC3E,uEAAuE;IACvE,uBAAuB;IACvB,MAAM,gBAAgB,CAAC;QACrB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,GAAG,EAAE,KAAK,CAAC,GAAG;QACd,SAAS;QACT,eAAe,EAAE,KAAK,CAAC,UAAU;QACjC,EAAE;KACH,CAAC,CAAC;IAEH,2EAA2E;IAC3E,0EAA0E;IAC1E,8DAA8D;IAC9D,MAAM,QAAQ,GAA8B;QAC1C,kBAAkB,EAAE;YAClB,aAAa,EAAE,cAAc;YAC7B,iBAAiB,EAAE,wBAAwB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;SACvF;KACF,CAAC;IACF,aAAa,CAAC,QAAQ,CAAC,CAAC;AAC1B,CAAC;AAED,+EAA+E;AAE/E;;;;;;;;;GASG;AACH,KAAK,UAAU,UAAU,CAAC,MAAiB,EAAE,OAAmB;IAC9D,4EAA4E;IAC5E,0EAA0E;IAC1E,6EAA6E;IAC7E,6EAA6E;IAC7E,2EAA2E;IAC3E,6EAA6E;IAC7E,UAAU,EAAE,CAAC;AACf,CAAC;AAED,+EAA+E;AAE/E;;;;;;;;;;;;;;GAcG;AACH,KAAK,UAAU,gBAAgB,CAAC,KAAgB,EAAE,MAAkB;IAClE,IAAI,oBAAoB,KAAK,KAAK;QAAE,UAAU,EAAE,CAAC;IACjD,IAAI,CAAC,MAAM,CAAC,MAAM;QAAE,UAAU,EAAE,CAAC;IAEjC,MAAM,wBAAwB,CAAC;QAC7B,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,MAAM,EAAE,MAAM,CAAC,MAAO;QACtB,GAAG,EAAE,KAAK,CAAC,GAAG;QACd,SAAS,EAAE,CAAC,MAAM,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS;QAC5D,eAAe,EAAE,KAAK,CAAC,UAAU;KAClC,CAAC,CAAC;IAEH,UAAU,EAAE,CAAC;AACf,CAAC;AAED,+EAA+E;AAE/E,KAAK,UAAU,gBAAgB,CAAC,KAAgB,EAAE,MAAkB;IAClE,IAAI,gBAAgB,KAAK,KAAK;QAAE,UAAU,EAAE,CAAC;IAC7C,IAAI,CAAC,MAAM,CAAC,MAAM;QAAE,UAAU,EAAE,CAAC;IAEjC,2EAA2E;IAC3E,4CAA4C;IAC5C,MAAM,cAAc,CAAC;QACnB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,MAAM,EAAE,MAAM,CAAC,MAAO;QACtB,GAAG,EAAE,KAAK,CAAC,GAAG;QACd,SAAS,EAAE,CAAC,MAAM,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS;QAC5D,eAAe,EAAE,KAAK,CAAC,UAAU;KAClC,CAAC,CAAC;IAEH,yEAAyE;IACzE,6EAA6E;IAC7E,6EAA6E;IAC7E,sEAAsE;IACtE,iEAAiE;IACjE,qDAAqD;IACrD,MAAM,yBAAyB,CAAC;QAC9B,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,MAAM,EAAE,MAAM,CAAC,MAAO;QACtB,GAAG,EAAE,KAAK,CAAC,GAAG;QACd,SAAS,EAAE,CAAC,MAAM,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS;QAC5D,eAAe,EAAE,KAAK,CAAC,UAAU;KAClC,CAAC,CAAC;IAEH,UAAU,EAAE,CAAC;AACf,CAAC;AAED,+EAA+E;AAE/E,KAAK,UAAU,sBAAsB,CAAC,KAAgB,EAAE,MAAkB;IACxE,IAAI,mBAAmB,KAAK,KAAK;QAAE,UAAU,EAAE,CAAC;IAChD,IAAI,CAAC,MAAM,CAAC,MAAM;QAAE,UAAU,EAAE,CAAC;IAEjC,0EAA0E;IAC1E,yEAAyE;IACzE,MAAM,aAAa,GAAG,KAA2C,CAAC;IAClE,MAAM,MAAM,GACV,OAAO,KAAK,CAAC,UAAU,EAAE,MAAM,KAAK,QAAQ;QAC1C,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM;QACzB,CAAC,CAAC,OAAO,aAAa,CAAC,MAAM,KAAK,QAAQ;YACxC,CAAC,CAAE,aAAa,CAAC,MAAiB;YAClC,CAAC,CAAC,EAAE,CAAC;IACX,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;QAAE,UAAU,EAAE,CAAC;IAEjC,iEAAiE;IACjE,iCAAiC;IACjC,yEAAyE;IACzE,mEAAmE;IACnE,iEAAiE;IACjE,gEAAgE;IAChE,oCAAoC;IACpC,2EAA2E;IAC3E,sCAAsC;IACtC,MAAM,SAAS,GAAG,CAAC,MAAM,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC;IACpE,MAAM,EAAE,GAAG,aAAa,EAAE,CAAC;IAC3B,MAAM,CAAC,gBAAgB,EAAE,SAAS,EAAE,aAAa,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACrE,eAAe,CAAC;YACd,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,MAAM,EAAE,MAAM,CAAC,MAAO;YACtB,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,SAAS;YACT,SAAS,EAAE,KAAK,CAAC,UAAU;YAC3B,KAAK,EAAE,kBAAkB;YACzB,IAAI,EAAE,YAAY;YAClB,MAAM;YACN,EAAE;SACH,CAAC;QACF,QAAQ,CAAC;YACP,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,MAAM,EAAE,MAAM,CAAC,MAAO;YACtB,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,SAAS;YACT,SAAS,EAAE,KAAK,CAAC,UAAU;YAC3B,MAAM;YACN,MAAM,EAAE,UAAU,EAAE;SACrB,CAAC;QACF,YAAY,CAAC;YACX,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,MAAM,EAAE,MAAM,CAAC,MAAO;YACtB,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,SAAS;YACT,SAAS,EAAE,KAAK,CAAC,UAAU;YAC3B,MAAM;SACP,CAAC;KACH,CAAC,CAAC;IAEH,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,wEAAwE;IACxE,oEAAoE;IACpE,IAAI,SAAS,IAAI,SAAS,CAAC,QAAQ,EAAE,CAAC;QACpC,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC3D,2EAA2E;QAC3E,qEAAqE;QACrE,8EAA8E;QAC9E,IAAI,YAAY,KAAK,aAAa,EAAE,CAAC;YACnC,MAAM,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;SAAM,IAAI,SAAS,EAAE,CAAC;QACrB,2EAA2E;QAC3E,0EAA0E;QAC1E,0EAA0E;QAC1E,4EAA4E;QAC5E,6EAA6E;QAC7E,uEAAuE;QACvE,6EAA6E;QAC7E,4EAA4E;QAC5E,sEAAsE;QACtE,uEAAuE;QACvE,8EAA8E;QAC9E,IAAI,YAAY,KAAK,aAAa,EAAE,CAAC;YACnC,MAAM,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IACD,IAAI,gBAAgB,IAAI,gBAAgB,CAAC,EAAE,EAAE,CAAC;QAC5C,KAAK,MAAM,GAAG,IAAI,gBAAgB,CAAC,UAAU,EAAE,CAAC;YAC9C,IAAI,GAAG,CAAC,YAAY,KAAK,oBAAoB,EAAE,CAAC;gBAC9C,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;YACvD,CAAC;QACH,CAAC;IACH,CAAC;IACD,uEAAuE;IACvE,wEAAwE;IACxE,0EAA0E;IAC1E,2EAA2E;IAC3E,+FAA+F;IAC/F,0EAA0E;IAC1E,2EAA2E;IAC3E,gEAAgE;IAChE,mDAAmD;IACnD,MAAM,YAAY,GAChB,aAAa,IAAI,aAAa,CAAC,QAAQ;QACrC,CAAC,CAAC,yBAAyB,CAAC,aAAa,CAAC,QAAQ,CAAC;QACnD,CAAC,CAAC,IAAI,CAAC;IAEX,wEAAwE;IACxE,0EAA0E;IAC1E,8EAA8E;IAC9E,2EAA2E;IAC3E,sEAAsE;IACtE,4EAA4E;IAC5E,yEAAyE;IACzE,oEAAoE;IACpE,2EAA2E;IAC3E,iDAAiD;IACjD,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,IAAI,YAAY,KAAK,aAAa,IAAI,gBAAgB,EAAE,EAAE,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;QAC/E,MAAM,GAAG,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACrF,UAAU,CAAC,IAAI,CAAC,sCAAsC,GAAG,oBAAoB,CAAC,CAAC;IACjF,CAAC;IAED,+EAA+E;IAC/E,uEAAuE;IACvE,gFAAgF;IAChF,uEAAuE;IACvE,6EAA6E;IAC7E,8EAA8E;IAC9E,6EAA6E;IAC7E,2DAA2D;IAC3D,IAAI,YAAY,KAAK,aAAa,IAAI,gBAAgB,EAAE,EAAE,EAAE,CAAC;QAC3D,MAAM,YAAY,GAAG,CAAC,iBAAiB,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;QACpD,IAAI,SAAS;YAAE,YAAY,CAAC,OAAO,CAAC,qBAAqB,SAAS,EAAE,CAAC,CAAC;QACtE,UAAU,CAAC,IAAI,CAAC,oBAAoB,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACnF,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,YAAY,KAAK,IAAI,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,UAAU,EAAE,CAAC;IAE1F,wEAAwE;IACxE,6EAA6E;IAC7E,2EAA2E;IAC3E,MAAM,QAAQ,GAA8B;QAC1C,kBAAkB,EAAE;YAClB,aAAa,EAAE,kBAAkB;YACjC,iBAAiB,EAAE,wBAAwB,CAAC;gBAC1C,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,YAAY;gBACrB,IAAI,EAAE,UAAU;aACjB,CAAC;SACH;KACF,CAAC;IACF,aAAa,CAAC,QAAQ,CAAC,CAAC;AAC1B,CAAC;AAED,8EAA8E;AAE9E,KAAK,UAAU,cAAc,CAAC,KAAgB,EAAE,MAAkB;IAChE,IAAI,CAAC;QACH,IAAI,CAAC,MAAM,CAAC,MAAM;YAAE,UAAU,EAAE,CAAC;QACjC,MAAM,SAAS,GAAG,kBAAkB,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;QACzF,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,UAAU,EAAE,CAAC;QACzC,wEAAwE;QACxE,sEAAsE;QACtE,MAAM,OAAO,CAAC,GAAG,CACf,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;YAC/B,MAAM,EAAE,GAAG,IAAI,eAAe,EAAE,CAAC;YACjC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,oBAAoB,CAAC,CAAC;YACjE,IAAI,CAAC;gBACH,MAAM,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,gCAAgC,EAAE;oBAC5D,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE;wBACP,cAAc,EAAE,kBAAkB;wBAClC,aAAa,EAAE,UAAU,MAAM,CAAC,MAAO,EAAE;qBAC1C;oBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC;oBAC/E,MAAM,EAAE,EAAE,CAAC,MAAM;iBAClB,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;YAC5B,CAAC;oBAAS,CAAC;gBACT,YAAY,CAAC,KAAK,CAAC,CAAC;YACtB,CAAC;QACH,CAAC,CAAC,CACH,CAAC;QAEF,6EAA6E;QAC7E,8EAA8E;QAC9E,6EAA6E;QAC7E,kDAAkD;QAClD,IAAI,oBAAoB,KAAK,KAAK,EAAE,CAAC;YACnC,MAAM,gBAAgB,GAAG,MAAM,eAAe,CAAC;gBAC7C,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,MAAM,EAAE,MAAM,CAAC,MAAO;gBACtB,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,SAAS,EAAE,CAAC,MAAM,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS;gBAC5D,SAAS,EAAE,KAAK,CAAC,UAAU;gBAC3B,KAAK,EAAE,aAAa;gBACpB,IAAI,EAAE,YAAY;aACnB,CAAC,CAAC;YACH,MAAM,UAAU,GACd,gBAAgB,EAAE,EAAE,IAAI,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC;gBAChE,CAAC,CAAC,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,qBAAqB,CAAC;gBACjF,CAAC,CAAC,SAAS,CAAC;YAChB,IAAI,UAAU,EAAE,CAAC;gBACf,aAAa,CAAC;oBACZ,kBAAkB,EAAE;wBAClB,aAAa,EAAE,aAAa;wBAC5B,iBAAiB,EAAE,WAAW,CAC5B,yBAAyB,CAAC,UAAU,CAAC,QAAQ,CAAC,EAC9C,KAAK,EACL,UAAU,CAAC,MAAM,CAClB;qBACF;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,8BAA8B;IAChC,CAAC;IACD,UAAU,EAAE,CAAC;AACf,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,KAAgB,EAAE,MAAkB;IAC/D,IAAI,CAAC;QACH,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,KAAK,CAAC,aAAa,KAAK,SAAS;YAAE,UAAU,EAAE,CAAC;QACtE,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC;QACnC,MAAM,cAAc,CAAC;YACnB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,SAAS,EAAE,CAAC,MAAM,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS;YAC5D,eAAe,EAAE,KAAK,CAAC,UAAU;YACjC,IAAI;YACJ,IAAI,EAAE,CAAC,KAAK,CAAC,UAAU,IAAI,EAAE,CAA4B;YACzD,MAAM,EAAE,KAAK,CAAC,aAAa;SAC5B,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,8BAA8B;IAChC,CAAC;IACD,UAAU,EAAE,CAAC;AACf,CAAC;AAED,8EAA8E;AAE9E,KAAK,UAAU,QAAQ,CAAC,KAAgB;IACtC,oDAAoD;IACpD,IAAI,gBAAgB,EAAE;QAAE,UAAU,EAAE,CAAC;IAErC,MAAM,MAAM,GAAG,WAAW,EAAE,CAAC;IAC7B,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;QACzB,wEAAwE;QACxE,qDAAqD;QACrD,MAAM,CAAC,KAAK,CAAC,4CAA4C,MAAM,CAAC,aAAa,IAAI,CAAC,CAAC;IACrF,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAE9C,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QACnC,0EAA0E;QAC1E,oEAAoE;QACpE,oEAAoE;QACpE,8CAA8C;QAC9C,MAAM,YAAY,CAAC;YACjB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,SAAS,EAAE,CAAC,MAAM,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS;YAC5D,eAAe,EAAE,KAAK,CAAC,UAAU;YACjC,IAAI,EAAE,KAAK,CAAC,SAAS,IAAI,SAAS;YAClC,UAAU,EAAE,MAAM,CAAC,IAAI,IAAI,SAAS;YACpC,MAAM,EAAE,MAAM,CAAC,MAAM;SACtB,CAAC,CAAC;QACH,UAAU,EAAE,CAAC;IACf,CAAC;IAED,QAAQ,KAAK,CAAC,eAAe,EAAE,CAAC;QAC9B,KAAK,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC;YACnC,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACrB,MAAM,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACrC,CAAC;YACD,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;gBACtB,MAAM,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACrC,CAAC;YACD,IAAI,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC5B,MAAM,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACpC,CAAC;YACD,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3B,MAAM,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACrC,CAAC;YACD,UAAU,EAAE,CAAC;YACb,MAAM;QACR,CAAC;QACD,KAAK,aAAa,EAAE,CAAC;YACnB,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC;YACnC,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACrB,MAAM,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACtC,CAAC;YACD,IAAI,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC5B,MAAM,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACrC,CAAC;YACD,UAAU,EAAE,CAAC;YACb,MAAM;QACR,CAAC;QACD,KAAK,cAAc;YACjB,MAAM,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACxC,UAAU,EAAE,CAAC;YACb,MAAM;QACR,KAAK,eAAe;YAClB,wEAAwE;YACxE,wEAAwE;YACxE,0EAA0E;YAC1E,UAAU,EAAE,CAAC;YACb,MAAM;QACR,KAAK,MAAM;YACT,MAAM,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YAChC,UAAU,EAAE,CAAC;YACb,MAAM;QACR,KAAK,YAAY;YACf,MAAM,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACtC,UAAU,EAAE,CAAC;YACb,MAAM;QACR,KAAK,YAAY;YACf,MAAM,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACtC,UAAU,EAAE,CAAC;YACb,MAAM;QACR,KAAK,kBAAkB;YACrB,MAAM,sBAAsB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YAC5C,UAAU,EAAE,CAAC;YACb,MAAM;QACR;YACE,yDAAyD;YACzD,UAAU,EAAE,CAAC;IACjB,CAAC;AACH,CAAC;AAED,CAAC,KAAK,IAAI,EAAE;IACV,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,SAAS,EAAE,CAAC;QAChC,IAAI,CAAC,KAAK;YAAE,UAAU,EAAE,CAAC;QACzB,MAAM,QAAQ,CAAC,KAAM,CAAC,CAAC;IACzB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,CACV,iDAAiD,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CACtG,CAAC;QACF,UAAU,EAAE,CAAC;IACf,CAAC;AACH,CAAC,CAAC,EAAE,CAAC"}
@@ -1,109 +1,74 @@
1
- /**
2
- * Composed `additionalContext` budget for the Claude Code host.
3
- *
4
- * Claude Code inlines a hook's `additionalContext` value only up to 10,000
5
- * characters; a larger value is externalized to a persisted-output file
6
- * (`tool-results/hook-*-additionalContext.txt`) and replaced in the model's
7
- * context with a ~2KB preview. The server already packs the silent bootstrap
8
- * digest to `HOOK_RENDER_BUDGET_CHARS` (9,500 chars,
9
- * `src/agent/bootstrapBudget.ts`) — but the digest is only ONE piece of the
10
- * value this hook emits: `handleUserPromptSubmit` joins the JIT envelope, bus
11
- * injections, ambient recall and the session/cwd markers into a single value.
12
- * Observed in production 2026-08-01 (task f246838d): a 9,596-char digest plus
13
- * a 1,904-char ambient block composed to 11,777 chars, so the host
14
- * externalized the whole value — spilling the load-bearing digest to disk to
15
- * make room for advisory recall, which is backwards. Worse, the 2KB preview
16
- * still carried the `PROJECT_CONTEXT` self-scoping marker, so an agent
17
- * holding only the preview concludes bootstrap is already loaded (the
18
- * false-already-loaded hazard from the 2026-07-14 postmortem,
19
- * `docs/superpowers/plans/2026-07-13-bootstrap-content-integrity.md`).
20
- *
21
- * Two halves, in priority order digest > JIT > injections > ambient:
22
- *
23
- * 1. Trim to `COMPOSED_CONTEXT_BUDGET_CHARS`, shedding WHOLE ambient items
24
- * from the end. Ambient is the one discardable piece — the same doctrine
25
- * cursor-hooks applies at `CURSOR_INLINE_CONTEXT_LIMIT`.
26
- * 2. Belt-and-braces: if the value STILL crosses the cap (an over-budget
27
- * digest, a rendering regression), prepend the transport-integrity
28
- * recovery instruction that `788ed96a` removed, so it lands at the head
29
- * of the persisted-output preview — ABOVE the `PROJECT_CONTEXT` marker.
30
- *
31
- * ## Why this module re-derives the ambient item shape
32
- *
33
- * `src/agent/ambientPayloadFormat.ts` is the server-side owner of the ambient
34
- * payload format, and importing it would be the obvious move. It is not
35
- * reachable: this package depends on the PUBLISHED `@mnemonik/shared`
36
- * (`^6.23.1`, resolving to 6.51.0), released on its own cadence and lagging
37
- * the workspace by many minor versions — an import of anything newer
38
- * type-checks against the workspace copy and then throws `is not a function`
39
- * inside the installed hook. So the pointer matcher is re-derived here, and
40
- * `tests/bootstrap/claudeAmbientTrimContract.test.ts` (repo root, which CAN
41
- * see both sides) pins it to `AMBIENT_ITEM_POINTER_SOURCE` and runs the
42
- * server's real rendered payload through this trimmer. Same cross-package
43
- * coupling pattern as `tests/bootstrap/cursorInlineFit.test.ts`.
44
- *
45
- * Note what is deliberately NOT re-derived: the lead-in prose. Items are shed
46
- * from the END, so the lead-in — which the server renders ahead of the first
47
- * item — simply rides with item 0: kept while any item survives, gone when
48
- * the block empties. No lead-in announcing zero memories, and no second copy
49
- * of that text to drift.
50
- */
1
+ export { AMBIENT_ITEM_POINTER_SOURCE } from '@mnemonik/shared/ambient-pointer';
2
+ /** Keep Claude Code context inline without cutting a natural unit or losing identity. */
51
3
  /** Claude Code's per-value inline `additionalContext` cap. */
52
4
  export declare const CLAUDE_INLINE_CONTEXT_CAP_CHARS = 10000;
53
5
  /** Trim target — safety headroom under the host cap. */
54
6
  export declare const COMPOSED_CONTEXT_BUDGET_CHARS = 9900;
55
7
  /**
56
- * Source of the ambient item-pointer matcher, re-derived from
57
- * `AMBIENT_ITEM_POINTER_SOURCE` in `src/agent/ambientPayloadFormat.ts` and
58
- * pinned to it by the root-level contract test. An ambient item ends at its
59
- * trailing `— memory_get <id8>` pointer; items are split on that pointer and
60
- * never on blank lines, because a memory's own text may contain blank lines
61
- * and splitting there would shred a multi-paragraph memory.
62
- */
63
- export declare const AMBIENT_ITEM_POINTER_SOURCE = "\u2014\\s*memory_get\\s+([0-9A-Za-z_-]{8})(?![0-9A-Za-z_-])";
64
- /**
65
- * Restored operative wording of the transport-integrity preamble that
66
- * `788ed96a` (2026-07-14, "restore text delivery parity") removed on the
67
- * since-falsified assumption that the digest budget alone guaranteed inline
68
- * delivery. Emitted ONLY on an over-cap value, so inline deliveries keep that
69
- * parity.
8
+ * Retained as a belt-and-braces fallback for a value that cannot be represented
9
+ * within the configured budget (for example, a future oversized reserved
10
+ * marker). Ordinary composition now remains inline by natural-unit packing.
70
11
  */
71
12
  export declare const PERSISTED_OUTPUT_RECOVERY_INSTRUCTION: string;
13
+ export interface ContextBudgetItem {
14
+ /** Exact text emitted when the item fits in full. */
15
+ text: string;
16
+ /** Stable envelope name used by continuation/not-reached pointers. */
17
+ name: string;
18
+ /** Memory identity, when this item is one memory precis. */
19
+ memoryId?: string;
20
+ }
21
+ export type ContextBudgetPiece = string | ContextBudgetItem;
72
22
  export interface ComposedContextParts {
73
- /** JIT envelope and bus injections (digest, nudges) never trimmed. */
74
- lead: string[];
75
- /** Rendered ambient-recall body the only trimmable piece. */
76
- ambient: string | null;
77
- /** Session and cwd-binding markers never trimmed. */
78
- tail: string[];
23
+ /** JIT envelope and bus injections, in their existing priority order. */
24
+ lead: ContextBudgetPiece[];
25
+ /** Rendered ambient-recall body. Its pointer-terminated memories become items. */
26
+ ambient: ContextBudgetPiece | null;
27
+ /** Session and cwd-binding markers, reserved exactly as before. */
28
+ tail: ContextBudgetPiece[];
79
29
  }
80
30
  export interface ComposedContextFit {
81
31
  /** The `additionalContext` value to emit. */
82
32
  value: string;
83
- /** Whole ambient items dropped (0 when the block was atomic or untouched). */
33
+ /** Ambient memory items not delivered in full (a partial item counts). */
84
34
  ambientItemsDropped: number;
85
- /** True when the entire ambient block was removed. */
35
+ /** True when no ambient content unit was delivered. */
86
36
  ambientDropped: boolean;
87
37
  /** True when the over-cap recovery instruction was prepended. */
88
38
  recoveryInstructionPrepended: boolean;
89
39
  }
40
+ export interface BudgetedContextFit {
41
+ value: string;
42
+ fullyDeliveredItems: number;
43
+ partialItemIndex: number | null;
44
+ partialUnitsDelivered: number;
45
+ }
90
46
  /**
91
- * Split an ambient body into whole items, each running from the end of the
92
- * previous pointer through the end of its own. Item 0 carries the lead-in
93
- * when the server rendered one. Returns `[]` for a body with no recognisable
94
- * pointer — the caller must read that as "unrecognised format", never as
95
- * "no content".
47
+ * Compose ordered items within a fixed budget. Full items are emitted exactly;
48
+ * the first item that does not fit is packed by whole natural units, and all
49
+ * later identities share one trailing not-reached pointer.
96
50
  */
97
- export declare function splitAmbientItems(body: string): string[];
51
+ export declare function fitContextItems(items: readonly ContextBudgetItem[], opts: {
52
+ budget: number;
53
+ units?: 'characters' | 'utf8-bytes';
54
+ reservedSuffix?: readonly ContextBudgetItem[];
55
+ }): BudgetedContextFit;
98
56
  /**
99
- * Fit a composed `additionalContext` value under the host inline cap.
100
- *
101
- * Under-budget values pass through character-identical. Over-budget values
102
- * shed whole ambient items from the end (and any post-pointer trailer,
103
- * normally empty) until the composition fits or the block is gone. When the
104
- * result still crosses the cap, the recovery instruction is prepended so the
105
- * persisted-output preview opens with it.
57
+ * Turn one rendered envelope into budget items. Pointer-terminated memories
58
+ * retain their IDs; an unrecognised shape remains one named envelope.
106
59
  */
60
+ export declare function contextItemsFromText(text: string, envelopeName: string): ContextBudgetItem[];
61
+ /** Fit one rendered envelope while preserving its exact under-budget bytes. */
62
+ export declare function fitContextText(text: string, envelopeName: string, opts: {
63
+ budget: number;
64
+ units?: 'characters' | 'utf8-bytes';
65
+ }): string;
66
+ /**
67
+ * Split an ambient body into whole pointer-terminated items. Kept as the
68
+ * public writer/reader contract used by the cross-package format test.
69
+ */
70
+ export declare function splitAmbientItems(body: string): string[];
71
+ /** Fit a composed `additionalContext` value under the Claude host limit. */
107
72
  export declare function fitComposedContext(parts: ComposedContextParts, opts?: {
108
73
  budgetChars?: number;
109
74
  capChars?: number;
@@ -1,72 +1,14 @@
1
- /**
2
- * Composed `additionalContext` budget for the Claude Code host.
3
- *
4
- * Claude Code inlines a hook's `additionalContext` value only up to 10,000
5
- * characters; a larger value is externalized to a persisted-output file
6
- * (`tool-results/hook-*-additionalContext.txt`) and replaced in the model's
7
- * context with a ~2KB preview. The server already packs the silent bootstrap
8
- * digest to `HOOK_RENDER_BUDGET_CHARS` (9,500 chars,
9
- * `src/agent/bootstrapBudget.ts`) — but the digest is only ONE piece of the
10
- * value this hook emits: `handleUserPromptSubmit` joins the JIT envelope, bus
11
- * injections, ambient recall and the session/cwd markers into a single value.
12
- * Observed in production 2026-08-01 (task f246838d): a 9,596-char digest plus
13
- * a 1,904-char ambient block composed to 11,777 chars, so the host
14
- * externalized the whole value — spilling the load-bearing digest to disk to
15
- * make room for advisory recall, which is backwards. Worse, the 2KB preview
16
- * still carried the `PROJECT_CONTEXT` self-scoping marker, so an agent
17
- * holding only the preview concludes bootstrap is already loaded (the
18
- * false-already-loaded hazard from the 2026-07-14 postmortem,
19
- * `docs/superpowers/plans/2026-07-13-bootstrap-content-integrity.md`).
20
- *
21
- * Two halves, in priority order digest > JIT > injections > ambient:
22
- *
23
- * 1. Trim to `COMPOSED_CONTEXT_BUDGET_CHARS`, shedding WHOLE ambient items
24
- * from the end. Ambient is the one discardable piece — the same doctrine
25
- * cursor-hooks applies at `CURSOR_INLINE_CONTEXT_LIMIT`.
26
- * 2. Belt-and-braces: if the value STILL crosses the cap (an over-budget
27
- * digest, a rendering regression), prepend the transport-integrity
28
- * recovery instruction that `788ed96a` removed, so it lands at the head
29
- * of the persisted-output preview — ABOVE the `PROJECT_CONTEXT` marker.
30
- *
31
- * ## Why this module re-derives the ambient item shape
32
- *
33
- * `src/agent/ambientPayloadFormat.ts` is the server-side owner of the ambient
34
- * payload format, and importing it would be the obvious move. It is not
35
- * reachable: this package depends on the PUBLISHED `@mnemonik/shared`
36
- * (`^6.23.1`, resolving to 6.51.0), released on its own cadence and lagging
37
- * the workspace by many minor versions — an import of anything newer
38
- * type-checks against the workspace copy and then throws `is not a function`
39
- * inside the installed hook. So the pointer matcher is re-derived here, and
40
- * `tests/bootstrap/claudeAmbientTrimContract.test.ts` (repo root, which CAN
41
- * see both sides) pins it to `AMBIENT_ITEM_POINTER_SOURCE` and runs the
42
- * server's real rendered payload through this trimmer. Same cross-package
43
- * coupling pattern as `tests/bootstrap/cursorInlineFit.test.ts`.
44
- *
45
- * Note what is deliberately NOT re-derived: the lead-in prose. Items are shed
46
- * from the END, so the lead-in — which the server renders ahead of the first
47
- * item — simply rides with item 0: kept while any item survives, gone when
48
- * the block empties. No lead-in announcing zero memories, and no second copy
49
- * of that text to drift.
50
- */
1
+ import { AMBIENT_ITEM_POINTER_SOURCE } from '@mnemonik/shared/ambient-pointer';
2
+ export { AMBIENT_ITEM_POINTER_SOURCE } from '@mnemonik/shared/ambient-pointer';
3
+ /** Keep Claude Code context inline without cutting a natural unit or losing identity. */
51
4
  /** Claude Code's per-value inline `additionalContext` cap. */
52
5
  export const CLAUDE_INLINE_CONTEXT_CAP_CHARS = 10_000;
53
6
  /** Trim target — safety headroom under the host cap. */
54
7
  export const COMPOSED_CONTEXT_BUDGET_CHARS = 9_900;
55
8
  /**
56
- * Source of the ambient item-pointer matcher, re-derived from
57
- * `AMBIENT_ITEM_POINTER_SOURCE` in `src/agent/ambientPayloadFormat.ts` and
58
- * pinned to it by the root-level contract test. An ambient item ends at its
59
- * trailing `— memory_get <id8>` pointer; items are split on that pointer and
60
- * never on blank lines, because a memory's own text may contain blank lines
61
- * and splitting there would shred a multi-paragraph memory.
62
- */
63
- export const AMBIENT_ITEM_POINTER_SOURCE = '—\\s*memory_get\\s+([0-9A-Za-z_-]{8})(?![0-9A-Za-z_-])';
64
- /**
65
- * Restored operative wording of the transport-integrity preamble that
66
- * `788ed96a` (2026-07-14, "restore text delivery parity") removed on the
67
- * since-falsified assumption that the digest budget alone guaranteed inline
68
- * delivery. Emitted ONLY on an over-cap value, so inline deliveries keep that
69
- * parity.
9
+ * Retained as a belt-and-braces fallback for a value that cannot be represented
10
+ * within the configured budget (for example, a future oversized reserved
11
+ * marker). Ordinary composition now remains inline by natural-unit packing.
70
12
  */
71
13
  export const PERSISTED_OUTPUT_RECOVERY_INSTRUCTION = '<system-reminder>\n' +
72
14
  'Transport integrity: this hook output exceeds the host inline limit. If your host ' +
@@ -75,71 +17,246 @@ export const PERSISTED_OUTPUT_RECOVERY_INSTRUCTION = '<system-reminder>\n' +
75
17
  'context, and emit no other action until that read succeeds.\n' +
76
18
  '</system-reminder>';
77
19
  const JOINER = '\n\n';
78
- function compose(lead, ambient, tail) {
79
- const pieces = ambient === null ? [...lead, ...tail] : [...lead, ambient, ...tail];
80
- return pieces.join(JOINER);
20
+ const CONTINUATION_PREFIX = '… continues: ';
21
+ const NOT_REACHED_PREFIX = '… not reached: ';
22
+ function pieceText(piece) {
23
+ return typeof piece === 'string' ? piece : piece.text;
24
+ }
25
+ function inferEnvelopeName(text, index) {
26
+ if (text.includes('PROJECT_CONTEXT schemaVersion='))
27
+ return 'project context';
28
+ const signal = text.match(/Mnemonik [^\n]* \(([^()\n]+)\)/)?.[1];
29
+ if (signal)
30
+ return signal;
31
+ if (text.includes('mnemonik-jit-attempted'))
32
+ return 'jit attempted marker';
33
+ if (text.includes('mnemonik-session:'))
34
+ return 'session marker';
35
+ if (text.includes('mnemonik-cwd:'))
36
+ return 'project binding marker';
37
+ return `context envelope ${index + 1}`;
38
+ }
39
+ function asBudgetItem(piece, index) {
40
+ return typeof piece === 'string' ? { text: piece, name: inferEnvelopeName(piece, index) } : piece;
41
+ }
42
+ function identity(item) {
43
+ return item.memoryId ? `memory_get ${item.memoryId}` : item.name.replace(/\s+/g, ' ').trim();
44
+ }
45
+ function continuationPointer(item) {
46
+ return `${CONTINUATION_PREFIX}${identity(item)}`;
47
+ }
48
+ function notReachedPointer(items) {
49
+ if (items.length === 0)
50
+ return null;
51
+ return `${NOT_REACHED_PREFIX}${items.map(identity).join(', ')}`;
52
+ }
53
+ function joinSections(sections) {
54
+ return sections
55
+ .filter((section) => section !== null && section.length > 0)
56
+ .join(JOINER);
57
+ }
58
+ function measure(text, units) {
59
+ return units === 'utf8-bytes' ? Buffer.byteLength(text, 'utf8') : text.length;
60
+ }
61
+ function withoutTerminalMemoryPointer(item) {
62
+ if (!item.memoryId)
63
+ return item.text;
64
+ const terminalPointer = new RegExp(`\\s*${AMBIENT_ITEM_POINTER_SOURCE}\\s*$`);
65
+ return item.text.replace(terminalPointer, '').trimEnd();
81
66
  }
82
67
  /**
83
- * Split an ambient body into whole items, each running from the end of the
84
- * previous pointer through the end of its own. Item 0 carries the lead-in
85
- * when the server rendered one. Returns `[]` for a body with no recognisable
86
- * pointer — the caller must read that as "unrecognised format", never as
87
- * "no content".
68
+ * Prefer bullet lines whenever the item contains them. Text ahead of the first
69
+ * bullet is framing and travels with the first admitted fact. Otherwise each
70
+ * sentence (including a final sentence ending at end-of-item) is one unit.
88
71
  */
89
- export function splitAmbientItems(body) {
72
+ function naturalUnits(item) {
73
+ const text = withoutTerminalMemoryPointer(item);
74
+ const bulletStarts = [];
75
+ const bulletPattern = /(^|\n)(?=[ \t]*(?:•|[-*])[ \t]+)/g;
76
+ let bulletMatch;
77
+ while ((bulletMatch = bulletPattern.exec(text)) !== null) {
78
+ bulletStarts.push(bulletMatch.index + (bulletMatch[1] ?? '').length);
79
+ if (bulletPattern.lastIndex === bulletMatch.index)
80
+ bulletPattern.lastIndex += 1;
81
+ }
82
+ if (bulletStarts.length > 0) {
83
+ return {
84
+ prefix: text.slice(0, bulletStarts[0]),
85
+ units: bulletStarts.map((start, index) => text.slice(start, bulletStarts[index + 1])),
86
+ };
87
+ }
88
+ const units = [];
89
+ const sentenceEnd = /[.!?](?:["')\]]*)?(?=\s|$)/g;
90
+ let cursor = 0;
91
+ let sentenceMatch;
92
+ while ((sentenceMatch = sentenceEnd.exec(text)) !== null) {
93
+ const end = sentenceMatch.index + sentenceMatch[0].length;
94
+ units.push(text.slice(cursor, end));
95
+ cursor = end;
96
+ }
97
+ if (cursor < text.length)
98
+ units.push(text.slice(cursor));
99
+ return { prefix: '', units: units.filter((unit) => unit.trim().length > 0) };
100
+ }
101
+ function partialText(item, plan, count) {
102
+ const content = `${plan.prefix}${plan.units.slice(0, count).join('')}`.trimEnd();
103
+ return `${content}\n${continuationPointer(item)}`;
104
+ }
105
+ /**
106
+ * Compose ordered items within a fixed budget. Full items are emitted exactly;
107
+ * the first item that does not fit is packed by whole natural units, and all
108
+ * later identities share one trailing not-reached pointer.
109
+ */
110
+ export function fitContextItems(items, opts) {
111
+ const units = opts.units ?? 'characters';
112
+ const suffix = opts.reservedSuffix ?? [];
113
+ const fullValue = [...items, ...suffix].map((item) => item.text).join(JOINER);
114
+ if (measure(fullValue, units) <= opts.budget) {
115
+ return {
116
+ value: fullValue,
117
+ fullyDeliveredItems: items.length,
118
+ partialItemIndex: null,
119
+ partialUnitsDelivered: 0,
120
+ };
121
+ }
122
+ const accepted = [];
123
+ for (let index = 0; index < items.length; index += 1) {
124
+ const item = items[index];
125
+ if (item === undefined)
126
+ continue;
127
+ const later = items.slice(index + 1);
128
+ const withFullItem = joinSections([
129
+ ...accepted,
130
+ item.text,
131
+ ...suffix.map((entry) => entry.text),
132
+ notReachedPointer(later),
133
+ ]);
134
+ if (measure(withFullItem, units) <= opts.budget) {
135
+ accepted.push(item.text);
136
+ continue;
137
+ }
138
+ const plan = naturalUnits(item);
139
+ let partialUnitsDelivered = 0;
140
+ for (let count = 1; count <= plan.units.length; count += 1) {
141
+ const candidate = joinSections([
142
+ ...accepted,
143
+ partialText(item, plan, count),
144
+ ...suffix.map((entry) => entry.text),
145
+ notReachedPointer(later),
146
+ ]);
147
+ if (measure(candidate, units) > opts.budget)
148
+ break;
149
+ partialUnitsDelivered = count;
150
+ }
151
+ // Minimum-meaningful floor (owner contract 2026-08-18): a partial delivery
152
+ // must carry at least two complete units — one fact out of many reads as
153
+ // the whole memory and invites confabulation. An item that cannot get two
154
+ // units goes to the not-reached pointer whole. Single-unit items are exempt
155
+ // (one unit IS the full item, handled by the full-fit branch above).
156
+ const meaningfulMinimum = Math.min(2, plan.units.length);
157
+ const partialAccepted = partialUnitsDelivered >= meaningfulMinimum && partialUnitsDelivered > 0;
158
+ const partial = partialAccepted ? partialText(item, plan, partialUnitsDelivered) : null;
159
+ const unreached = partialAccepted ? later : items.slice(index);
160
+ return {
161
+ value: joinSections([
162
+ ...accepted,
163
+ partial,
164
+ ...suffix.map((entry) => entry.text),
165
+ notReachedPointer(unreached),
166
+ ]),
167
+ fullyDeliveredItems: index,
168
+ partialItemIndex: partialAccepted ? index : null,
169
+ partialUnitsDelivered: partialAccepted ? partialUnitsDelivered : 0,
170
+ };
171
+ }
172
+ return {
173
+ value: joinSections([...accepted, ...suffix.map((entry) => entry.text)]),
174
+ fullyDeliveredItems: items.length,
175
+ partialItemIndex: null,
176
+ partialUnitsDelivered: 0,
177
+ };
178
+ }
179
+ function parsePointerItems(body, envelopeName) {
90
180
  const regex = new RegExp(AMBIENT_ITEM_POINTER_SOURCE, 'g');
91
- const items = [];
181
+ const memories = [];
92
182
  let cursor = 0;
93
183
  let match;
94
184
  while ((match = regex.exec(body)) !== null) {
95
185
  const end = match.index + match[0].length;
96
186
  const text = body.slice(cursor, end).trim();
97
- if (text.length > 0)
98
- items.push(text);
187
+ if (text.length > 0) {
188
+ memories.push({ text, name: envelopeName, memoryId: match[1] });
189
+ }
99
190
  cursor = end;
100
191
  }
101
- return items;
192
+ const trailerText = body.slice(cursor).trim();
193
+ return {
194
+ memories,
195
+ trailer: trailerText ? { text: trailerText, name: `${envelopeName} trailer` } : null,
196
+ };
197
+ }
198
+ /**
199
+ * Turn one rendered envelope into budget items. Pointer-terminated memories
200
+ * retain their IDs; an unrecognised shape remains one named envelope.
201
+ */
202
+ export function contextItemsFromText(text, envelopeName) {
203
+ const parsed = parsePointerItems(text, envelopeName);
204
+ if (parsed.memories.length === 0)
205
+ return [{ text, name: envelopeName }];
206
+ return [...parsed.memories, ...(parsed.trailer ? [parsed.trailer] : [])];
207
+ }
208
+ /** Fit one rendered envelope while preserving its exact under-budget bytes. */
209
+ export function fitContextText(text, envelopeName, opts) {
210
+ const units = opts.units ?? 'characters';
211
+ if (measure(text, units) <= opts.budget)
212
+ return text;
213
+ return fitContextItems(contextItemsFromText(text, envelopeName), opts).value;
102
214
  }
103
215
  /**
104
- * Fit a composed `additionalContext` value under the host inline cap.
105
- *
106
- * Under-budget values pass through character-identical. Over-budget values
107
- * shed whole ambient items from the end (and any post-pointer trailer,
108
- * normally empty) until the composition fits or the block is gone. When the
109
- * result still crosses the cap, the recovery instruction is prepended so the
110
- * persisted-output preview opens with it.
216
+ * Split an ambient body into whole pointer-terminated items. Kept as the
217
+ * public writer/reader contract used by the cross-package format test.
111
218
  */
219
+ export function splitAmbientItems(body) {
220
+ return parsePointerItems(body, 'ambient recall').memories.map((item) => item.text);
221
+ }
222
+ /** Fit a composed `additionalContext` value under the Claude host limit. */
112
223
  export function fitComposedContext(parts, opts) {
113
224
  const budget = opts?.budgetChars ?? COMPOSED_CONTEXT_BUDGET_CHARS;
114
225
  const cap = opts?.capChars ?? CLAUDE_INLINE_CONTEXT_CAP_CHARS;
115
- const { lead, tail } = parts;
116
- let ambient = parts.ambient;
117
- let ambientItemsDropped = 0;
118
- let ambientDropped = false;
119
- if (ambient !== null && compose(lead, ambient, tail).length > budget) {
120
- const items = splitAmbientItems(ambient);
121
- if (items.length === 0) {
122
- // Unrecognised format atomic. Ambient is advisory by contract, so it
123
- // is still the piece that yields; drop it whole rather than risk
124
- // mid-sentence surgery on a shape we cannot read.
125
- ambient = null;
126
- ambientDropped = true;
127
- }
128
- else {
129
- while (items.length > 0) {
130
- ambient = items.join(JOINER);
131
- if (compose(lead, ambient, tail).length <= budget)
132
- break;
133
- items.pop();
134
- ambientItemsDropped += 1;
135
- }
136
- if (items.length === 0) {
137
- ambient = null;
138
- ambientDropped = true;
139
- }
140
- }
226
+ const lead = parts.lead.map(asBudgetItem);
227
+ const tail = parts.tail.map(asBudgetItem);
228
+ const ambientPiece = parts.ambient;
229
+ const ambientText = ambientPiece === null ? null : pieceText(ambientPiece);
230
+ const ambientName = ambientPiece !== null && typeof ambientPiece !== 'string'
231
+ ? ambientPiece.name
232
+ : 'ambient recall';
233
+ const ambientItems = ambientText === null ? [] : contextItemsFromText(ambientText, ambientName);
234
+ const original = [
235
+ ...parts.lead.map(pieceText),
236
+ ...(ambientText === null ? [] : [ambientText]),
237
+ ...parts.tail.map(pieceText),
238
+ ].join(JOINER);
239
+ if (original.length <= budget) {
240
+ const recoveryInstructionPrepended = original.length > cap;
241
+ return {
242
+ value: recoveryInstructionPrepended
243
+ ? [PERSISTED_OUTPUT_RECOVERY_INSTRUCTION, original].join(JOINER)
244
+ : original,
245
+ ambientItemsDropped: 0,
246
+ ambientDropped: false,
247
+ recoveryInstructionPrepended,
248
+ };
141
249
  }
142
- let value = compose(lead, ambient, tail);
250
+ const fit = fitContextItems([...lead, ...ambientItems], {
251
+ budget,
252
+ reservedSuffix: tail,
253
+ });
254
+ const ambientStart = lead.length;
255
+ const fullyDeliveredAmbient = Math.max(0, Math.min(ambientItems.length, fit.fullyDeliveredItems - ambientStart));
256
+ const partialAmbient = fit.partialItemIndex !== null && fit.partialItemIndex >= ambientStart;
257
+ const ambientItemsDropped = Math.max(0, ambientItems.length - fullyDeliveredAmbient);
258
+ const ambientDropped = ambientText !== null && fullyDeliveredAmbient === 0 && !partialAmbient;
259
+ let value = fit.value;
143
260
  let recoveryInstructionPrepended = false;
144
261
  if (value.length > cap) {
145
262
  value = [PERSISTED_OUTPUT_RECOVERY_INSTRUCTION, value].join(JOINER);
@@ -1 +1 @@
1
- {"version":3,"file":"contextBudget.js","sourceRoot":"","sources":["../../src/lib/contextBudget.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contextBudget.js","sourceRoot":"","sources":["../../src/lib/contextBudget.ts"],"names":[],"mappings":"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"}
package/dist/lib/http.js CHANGED
@@ -10,34 +10,9 @@
10
10
  // at 500 ms. Constants extracted to @mnemonik/shared so the three hook
11
11
  // packages stay in lockstep (audit Finding #7 cross-cutting cleanup).
12
12
  import { FETCH_TIMEOUT_MS, TELEMETRY_TIMEOUT_MS, MCP_PRECHECK_TIMEOUT_MS, } from '@mnemonik/shared/hook-timeouts';
13
- import { stderr } from 'node:process';
13
+ import { parseHookResponse } from '@mnemonik/shared/hook-runtime';
14
14
  import { hookRuntimeHost, hookSource } from './runtimeHost.js';
15
15
  const HOST = hookRuntimeHost();
16
- /**
17
- * Inline surface for the server's `identity_mismatch` reason. Fires when
18
- * the agent's `.mnemonik.json` resolves to project X but the cwd path is
19
- * registered to project Y server-side — usually a folder rename, a stale
20
- * checked-in `.mnemonik.json`, or sitting in the wrong directory.
21
- *
22
- * Emits once per hook subprocess so a single PreToolUse run that fans out
23
- * to several endpoints doesn't spam stderr. The message goes to stderr
24
- * (not stdout) so it never confuses the hook's JSON decision channel; the
25
- * host UI surfaces it inline next to the tool call.
26
- */
27
- let _mismatchEmitted = false;
28
- async function parseAndCheckMismatch(res) {
29
- const body = (await res.json());
30
- if (!_mismatchEmitted) {
31
- const b = body;
32
- if (b && b.ok === false && b.reason === 'identity_mismatch') {
33
- stderr.write('mnemonik-hook: project identity mismatch — .mnemonik.json points to one project, ' +
34
- 'but this directory is registered to a different one on the server. ' +
35
- 'Fix .mnemonik.json (delete it and let session_bootstrap rewrite it) or cd to the correct project root.\n');
36
- _mismatchEmitted = true;
37
- }
38
- }
39
- return body;
40
- }
41
16
  export async function fetchFileContext(input) {
42
17
  const url = `${input.server.replace(/\/$/, '')}/api/v1/hooks/file-context`;
43
18
  const ac = new AbortController();
@@ -59,7 +34,7 @@ export async function fetchFileContext(input) {
59
34
  });
60
35
  if (!res.ok)
61
36
  return null;
62
- return parseAndCheckMismatch(res);
37
+ return parseHookResponse(res);
63
38
  }
64
39
  catch {
65
40
  return null;
@@ -96,7 +71,7 @@ export async function fetchInjections(input) {
96
71
  });
97
72
  if (!res.ok)
98
73
  return null;
99
- return parseAndCheckMismatch(res);
74
+ return parseHookResponse(res);
100
75
  }
101
76
  catch {
102
77
  return null;
@@ -128,7 +103,7 @@ export async function fetchJit(input) {
128
103
  });
129
104
  if (!res.ok)
130
105
  return null;
131
- return parseAndCheckMismatch(res);
106
+ return parseHookResponse(res);
132
107
  }
133
108
  catch {
134
109
  return null;
@@ -159,7 +134,7 @@ export async function fetchAmbient(input) {
159
134
  });
160
135
  if (!res.ok)
161
136
  return null;
162
- return parseAndCheckMismatch(res);
137
+ return parseHookResponse(res);
163
138
  }
164
139
  catch {
165
140
  return null;
@@ -195,7 +170,7 @@ export async function fetchMcpPrecheck(input) {
195
170
  });
196
171
  if (!res.ok)
197
172
  return null;
198
- return parseAndCheckMismatch(res);
173
+ return parseHookResponse(res);
199
174
  }
200
175
  catch {
201
176
  return null;
@@ -442,7 +417,7 @@ export async function createPreCompactSnapshot(input) {
442
417
  });
443
418
  if (!res.ok)
444
419
  return null;
445
- return parseAndCheckMismatch(res);
420
+ return parseHookResponse(res);
446
421
  }
447
422
  catch {
448
423
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/lib/http.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAWH,2EAA2E;AAC3E,wEAAwE;AACxE,2EAA2E;AAC3E,uEAAuE;AACvE,sEAAsE;AACtE,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE/D,MAAM,IAAI,GAAG,eAAe,EAAE,CAAC;AAE/B;;;;;;;;;;GAUG;AACH,IAAI,gBAAgB,GAAG,KAAK,CAAC;AAC7B,KAAK,UAAU,qBAAqB,CAAI,GAAa;IACnD,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAM,CAAC;IACrC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACtB,MAAM,CAAC,GAAG,IAAoD,CAAC;QAC/D,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC,MAAM,KAAK,mBAAmB,EAAE,CAAC;YAC5D,MAAM,CAAC,KAAK,CACV,mFAAmF;gBACjF,qEAAqE;gBACrE,0GAA0G,CAC7G,CAAC;YACF,gBAAgB,GAAG,IAAI,CAAC;QAC1B,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAiBD,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,KAA4B;IAE5B,MAAM,GAAG,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,4BAA4B,CAAC;IAC3E,MAAM,EAAE,GAAG,IAAI,eAAe,EAAE,CAAC;IACjC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,gBAAgB,CAAC,CAAC;IAC7D,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAC3B,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,aAAa,EAAE,UAAU,KAAK,CAAC,MAAM,EAAE;aACxC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,eAAe,EAAE,KAAK,CAAC,eAAe;gBACtC,QAAQ,EAAE,KAAK,CAAC,QAAQ;aACzB,CAAC;YACF,MAAM,EAAE,EAAE,CAAC,MAAM;SAClB,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,OAAO,IAAI,CAAC;QACzB,OAAO,qBAAqB,CAAsB,GAAG,CAAC,CAAC;IACzD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;AACH,CAAC;AA8BD,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,KAA2B;IAE3B,MAAM,GAAG,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,0BAA0B,CAAC;IACzE,MAAM,EAAE,GAAG,IAAI,eAAe,EAAE,CAAC;IACjC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,gBAAgB,CAAC,CAAC;IAC7D,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAC3B,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,aAAa,EAAE,UAAU,KAAK,CAAC,MAAM,EAAE;aACxC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,IAAI;gBACxB,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,cAAc,EAAE,KAAK,CAAC,cAAc;gBACpC,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACtC,CAAC;YACF,MAAM,EAAE,EAAE,CAAC,MAAM;SAClB,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,OAAO,IAAI,CAAC;QACzB,OAAO,qBAAqB,CAAqB,GAAG,CAAC,CAAC;IACxD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;AACH,CAAC;AAqBD,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,KAAoB;IACjD,MAAM,GAAG,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,mBAAmB,CAAC;IAClE,MAAM,EAAE,GAAG,IAAI,eAAe,EAAE,CAAC;IACjC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,gBAAgB,CAAC,CAAC;IAC7D,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAC3B,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,aAAa,EAAE,UAAU,KAAK,CAAC,MAAM,EAAE;aACxC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,cAAc,EAAE,KAAK,CAAC,MAAM;gBAC5B,eAAe,EAAE,KAAK,CAAC,eAAe;gBACtC,MAAM,EAAE,KAAK,CAAC,MAAM;aACrB,CAAC;YACF,MAAM,EAAE,EAAE,CAAC,MAAM;SAClB,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,OAAO,IAAI,CAAC;QACzB,OAAO,qBAAqB,CAAc,GAAG,CAAC,CAAC;IACjD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;AACH,CAAC;AAoBD,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,KAAwB;IACzD,MAAM,GAAG,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,8BAA8B,CAAC;IAC7E,MAAM,EAAE,GAAG,IAAI,eAAe,EAAE,CAAC;IACjC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,gBAAgB,CAAC,CAAC;IAC7D,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAC3B,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,aAAa,EAAE,UAAU,KAAK,CAAC,MAAM,EAAE;aACxC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,cAAc,EAAE,KAAK,CAAC,MAAM;gBAC5B,MAAM,EAAE,UAAU,EAAE;aACrB,CAAC;YACF,MAAM,EAAE,EAAE,CAAC,MAAM;SAClB,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,OAAO,IAAI,CAAC;QACzB,OAAO,qBAAqB,CAAkB,GAAG,CAAC,CAAC;IACrD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;AACH,CAAC;AAmBD,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,KAA4B;IAE5B,MAAM,GAAG,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,4BAA4B,CAAC;IAC3E,MAAM,EAAE,GAAG,IAAI,eAAe,EAAE,CAAC;IACjC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,uBAAuB,CAAC,CAAC;IACpE,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAC3B,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,aAAa,EAAE,UAAU,KAAK,CAAC,MAAM,EAAE;aACxC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,sEAAsE;gBACtE,sEAAsE;gBACtE,wDAAwD;gBACxD,eAAe,EAAE,KAAK,CAAC,eAAe;gBACtC,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,IAAI,EAAE,IAAI;aACX,CAAC;YACF,MAAM,EAAE,EAAE,CAAC,MAAM;SAClB,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,OAAO,IAAI,CAAC;QACzB,OAAO,qBAAqB,CAAsB,GAAG,CAAC,CAAC;IACzD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;AACH,CAAC;AAaD,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,KAA0B;IAC7D,MAAM,GAAG,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,0BAA0B,CAAC;IACzE,MAAM,EAAE,GAAG,IAAI,eAAe,EAAE,CAAC;IACjC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,oBAAoB,CAAC,CAAC;IACjE,IAAI,CAAC;QACH,MAAM,KAAK,CAAC,GAAG,EAAE;YACf,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,aAAa,EAAE,UAAU,KAAK,CAAC,MAAM,EAAE;aACxC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,eAAe,EAAE,KAAK,CAAC,eAAe;gBACtC,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,IAAI,EAAE,IAAI;aACX,CAAC;YACF,MAAM,EAAE,EAAE,CAAC,MAAM;SAClB,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,mEAAmE;IACrE,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;AACH,CAAC;AAoBD,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,KAA2B;IAC/D,IAAI,CAAC,KAAK,CAAC,MAAM;QAAE,OAAO;IAC1B,MAAM,GAAG,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,0BAA0B,CAAC;IACzE,MAAM,EAAE,GAAG,IAAI,eAAe,EAAE,CAAC;IACjC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,oBAAoB,CAAC,CAAC;IACjE,IAAI,CAAC;QACH,MAAM,KAAK,CAAC,GAAG,EAAE;YACf,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,aAAa,EAAE,UAAU,KAAK,CAAC,MAAM,EAAE;aACxC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,qEAAqE;gBACrE,gEAAgE;gBAChE,oEAAoE;gBACpE,uEAAuE;gBACvE,uEAAuE;gBACvE,yEAAyE;gBACzE,IAAI,EAAE,IAAI;gBACV,eAAe,EAAE,KAAK,CAAC,eAAe;gBACtC,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,OAAO,EAAE,KAAK,CAAC,OAAO;aACvB,CAAC;YACF,MAAM,EAAE,EAAE,CAAC,MAAM;SAClB,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,qCAAqC;IACvC,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;AACH,CAAC;AAkBD,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,KAAwB;IACzD,IAAI,CAAC,KAAK,CAAC,MAAM;QAAE,OAAO;IAC1B,MAAM,GAAG,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,sBAAsB,CAAC;IACrE,MAAM,EAAE,GAAG,IAAI,eAAe,EAAE,CAAC;IACjC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,oBAAoB,CAAC,CAAC;IACjE,IAAI,CAAC;QACH,MAAM,KAAK,CAAC,GAAG,EAAE;YACf,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,aAAa,EAAE,UAAU,KAAK,CAAC,MAAM,EAAE;aACxC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,eAAe,EAAE,KAAK,CAAC,eAAe;gBACtC,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,MAAM,EAAE,KAAK,CAAC,MAAM;aACrB,CAAC;YACF,MAAM,EAAE,EAAE,CAAC,MAAM;SAClB,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,qCAAqC;IACvC,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;AACH,CAAC;AAkCD,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,KAA4B;IAE5B,IAAI,CAAC,KAAK,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAC/B,MAAM,GAAG,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,0BAA0B,CAAC;IACzE,MAAM,EAAE,GAAG,IAAI,eAAe,EAAE,CAAC;IACjC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,oBAAoB,CAAC,CAAC;IACjE,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAC3B,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,aAAa,EAAE,UAAU,KAAK,CAAC,MAAM,EAAE;aACxC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,KAAK,EAAE,YAAY;gBACnB,IAAI,EAAE,IAAI;gBACV,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,MAAM;aACnC,CAAC;YACF,MAAM,EAAE,EAAE,CAAC,MAAM;SAClB,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,OAAO,IAAI,CAAC;QACzB,qEAAqE;QACrE,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAuB,CAAC;IAClD,CAAC;IAAC,MAAM,CAAC;QACP,qCAAqC;QACrC,OAAO,IAAI,CAAC;IACd,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;AACH,CAAC;AAcD;;;;;;;;;;;GAWG;AACH,MAAM,qBAAqB,GAAG,IAAI,CAAC;AAEnC;;;;;GAKG;AACH,yEAAyE;AACzE,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,KAAoB;IACzD,MAAM,GAAG,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,6BAA6B,CAAC;IAC5E,MAAM,EAAE,GAAG,IAAI,eAAe,EAAE,CAAC;IACjC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,oBAAoB,CAAC,CAAC;IACjE,IAAI,CAAC;QACH,MAAM,KAAK,CAAC,GAAG,EAAE;YACf,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,aAAa,EAAE,UAAU,KAAK,CAAC,MAAM,EAAE;aACxC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,eAAe,EAAE,KAAK,CAAC,eAAe;gBACtC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACtC,CAAC;YACF,MAAM,EAAE,EAAE,CAAC,MAAM;SAClB,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,wEAAwE;IAC1E,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAC,KAAoB;IAClE,MAAM,GAAG,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,uCAAuC,CAAC;IACtF,MAAM,EAAE,GAAG,IAAI,eAAe,EAAE,CAAC;IACjC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,oBAAoB,CAAC,CAAC;IACjE,IAAI,CAAC;QACH,MAAM,KAAK,CAAC,GAAG,EAAE;YACf,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,aAAa,EAAE,UAAU,KAAK,CAAC,MAAM,EAAE;aACxC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,eAAe,EAAE,KAAK,CAAC,eAAe;aACvC,CAAC;YACF,MAAM,EAAE,EAAE,CAAC,MAAM;SAClB,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,0EAA0E;QAC1E,6CAA6C;IAC/C,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;AACH,CAAC;AAQD;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,KAAoC;IAEpC,MAAM,GAAG,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,2BAA2B,CAAC;IAC1E,MAAM,EAAE,GAAG,IAAI,eAAe,EAAE,CAAC;IACjC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,qBAAqB,CAAC,CAAC;IAClE,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAC3B,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,aAAa,EAAE,UAAU,KAAK,CAAC,MAAM,EAAE;aACxC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,eAAe,EAAE,KAAK,CAAC,eAAe;gBACtC,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,eAAe,EAAE,KAAK,CAAC,eAAe;aACvC,CAAC;YACF,MAAM,EAAE,EAAE,CAAC,MAAM;SAClB,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,OAAO,IAAI,CAAC;QACzB,OAAO,qBAAqB,CAAqB,GAAG,CAAC,CAAC;IACxD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;AACH,CAAC;AAMD,wEAAwE;AACxE,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,KAA0B;IAC7D,MAAM,GAAG,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,gCAAgC,CAAC;IAC/E,MAAM,EAAE,GAAG,IAAI,eAAe,EAAE,CAAC;IACjC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,oBAAoB,CAAC,CAAC;IACjE,IAAI,CAAC;QACH,4EAA4E;QAC5E,kEAAkE;QAClE,qDAAqD;QACrD,MAAM,KAAK,CAAC,GAAG,EAAE;YACf,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,aAAa,EAAE,UAAU,KAAK,CAAC,MAAM,EAAE;aACxC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,SAAS,EAAE,KAAK,CAAC,eAAe;gBAChC,QAAQ,EAAE,mBAAmB;gBAC7B,KAAK,EAAE,IAAI;gBACX,MAAM,EAAE,KAAK,CAAC,MAAM;aACrB,CAAC;YACF,MAAM,EAAE,EAAE,CAAC,MAAM;SAClB,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,qCAAqC;IACvC,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;AACH,CAAC;AA0BD,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,KAA6B;IAE7B,MAAM,IAAI,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,wBAAwB,CAAC;IACxE,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;IACvD,IAAI,KAAK,CAAC,SAAS;QAAE,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAC9D,MAAM,EAAE,GAAG,IAAI,eAAe,EAAE,CAAC;IACjC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,oBAAoB,CAAC,CAAC;IACjE,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,IAAI,MAAM,CAAC,QAAQ,EAAE,EAAE,EAAE;YACtD,MAAM,EAAE,KAAK;YACb,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,KAAK,CAAC,MAAM,EAAE,EAAE;YACpD,MAAM,EAAE,EAAE,CAAC,MAAM;SAClB,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,OAAO,IAAI,CAAC;QACzB,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAiB,CAAC;IAC5C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;AACH,CAAC;AAaD;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,KAA4B;IACjE,MAAM,GAAG,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,6BAA6B,CAAC;IAC5E,MAAM,EAAE,GAAG,IAAI,eAAe,EAAE,CAAC;IACjC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,oBAAoB,CAAC,CAAC;IACjE,IAAI,CAAC;QACH,MAAM,KAAK,CAAC,GAAG,EAAE;YACf,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,aAAa,EAAE,UAAU,KAAK,CAAC,MAAM,EAAE;aACxC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,aAAa,EAAE,KAAK,CAAC,aAAa;gBAClC,IAAI,EAAE,aAAa;aACpB,CAAC;YACF,MAAM,EAAE,EAAE,CAAC,MAAM;SAClB,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,oEAAoE;IACtE,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/lib/http.ts"],"names":[],"mappings":"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"}
@@ -23,7 +23,7 @@
23
23
  import { stdin, stdout, exit } from 'node:process';
24
24
  import { pathToFileURL } from 'node:url';
25
25
  import { resolveConfig } from './lib/env.js';
26
- import { findProjectIdentity } from './lib/identity.js';
26
+ import { findProjectIdentity } from '@mnemonik/shared/hook-runtime';
27
27
  import { postContextStats, fetchStatusDigest } from './lib/http.js';
28
28
  const FALLBACK_LINE = 'mnemonik';
29
29
  async function readStdin() {
@@ -1 +1 @@
1
- {"version":3,"file":"statusline.js","sourceRoot":"","sources":["../src/statusline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"statusline.js","sourceRoot":"","sources":["../src/statusline.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mnemonik/claude-code-hooks",
3
- "version": "0.9.43",
3
+ "version": "0.9.46",
4
4
  "description": "Claude Code lifecycle contextual hooks for Mnemonik. PreToolUse Edit/Write/NotebookEdit/Bash gates plus SessionStart bootstrap warming, clean Stop, PreCompact context_snapshot creation, bounded SessionEnd cleanup, and UserPromptSubmit context injection. This hooks-only package does not install skills, rules, project identity, or MCP config. Versioned independently from the @mnemonik/server release cadence (mirrors @mnemonik/scanner).",
5
5
  "type": "module",
6
6
  "bin": {
@@ -25,9 +25,9 @@
25
25
  "claude-code",
26
26
  "hooks"
27
27
  ],
28
- "license": "UNLICENSED",
28
+ "license": "SEE LICENSE IN LICENSE",
29
29
  "dependencies": {
30
- "@mnemonik/shared": "^7.39.0"
30
+ "@mnemonik/shared": "^7.39.2"
31
31
  },
32
32
  "devDependencies": {
33
33
  "@types/node": "^20.19.43",
@@ -1,30 +0,0 @@
1
- /**
2
- * Project identity for the Claude Code hooks dispatcher.
3
- *
4
- * Walks up from the hook's input cwd looking for `.mnemonik.json`. The file
5
- * carries `{ projectId, projectName }` and is the canonical project
6
- * identifier per the worktree-identity migration — passing `projectId` in
7
- * every hook HTTP body lets the server route by UUID rather than by an
8
- * exact-match path lookup, so worktrees, subfolders, and renamed paths
9
- * resolve to the correct project without depending on Redis cache state.
10
- *
11
- * Per-process cache: cwd is stable for the lifetime of a hook invocation
12
- * (one hook = one short-lived subprocess), so the first walk is the only
13
- * filesystem hit.
14
- *
15
- * Fail-open: any error returns null; the dispatcher falls back to the
16
- * cwd-only payload it sent before this migration.
17
- *
18
- * This runtime keeps the module local rather than importing it from
19
- * `@mnemonik/shared`, whose independent release cadence would couple identity
20
- * changes to every host package. The VS Code package reuses this compatible
21
- * runtime directly; the other host runtimes retain their local equivalents.
22
- */
23
- export interface ProjectIdentity {
24
- projectId?: string;
25
- projectName?: string;
26
- projectRoot: string;
27
- }
28
- export declare function findProjectIdentity(startCwd: string, opts?: {
29
- maxDepth?: number;
30
- }): Promise<ProjectIdentity | null>;
@@ -1,60 +0,0 @@
1
- /**
2
- * Project identity for the Claude Code hooks dispatcher.
3
- *
4
- * Walks up from the hook's input cwd looking for `.mnemonik.json`. The file
5
- * carries `{ projectId, projectName }` and is the canonical project
6
- * identifier per the worktree-identity migration — passing `projectId` in
7
- * every hook HTTP body lets the server route by UUID rather than by an
8
- * exact-match path lookup, so worktrees, subfolders, and renamed paths
9
- * resolve to the correct project without depending on Redis cache state.
10
- *
11
- * Per-process cache: cwd is stable for the lifetime of a hook invocation
12
- * (one hook = one short-lived subprocess), so the first walk is the only
13
- * filesystem hit.
14
- *
15
- * Fail-open: any error returns null; the dispatcher falls back to the
16
- * cwd-only payload it sent before this migration.
17
- *
18
- * This runtime keeps the module local rather than importing it from
19
- * `@mnemonik/shared`, whose independent release cadence would couple identity
20
- * changes to every host package. The VS Code package reuses this compatible
21
- * runtime directly; the other host runtimes retain their local equivalents.
22
- */
23
- import { readFile } from 'fs/promises';
24
- import { dirname, join, isAbsolute, resolve as resolvePath } from 'path';
25
- const DEFAULT_MAX_DEPTH = 10;
26
- const cache = new Map();
27
- export async function findProjectIdentity(startCwd, opts = {}) {
28
- if (!startCwd)
29
- return null;
30
- if (cache.has(startCwd))
31
- return cache.get(startCwd);
32
- const maxDepth = opts.maxDepth ?? DEFAULT_MAX_DEPTH;
33
- let dir = isAbsolute(startCwd) ? startCwd : resolvePath(startCwd);
34
- for (let depth = 0; depth <= maxDepth; depth++) {
35
- const configPath = join(dir, '.mnemonik.json');
36
- try {
37
- const raw = await readFile(configPath, 'utf-8');
38
- const parsed = JSON.parse(raw);
39
- if (typeof parsed.projectId === 'string' && parsed.projectId.length > 0) {
40
- const result = {
41
- projectId: parsed.projectId,
42
- projectName: typeof parsed.projectName === 'string' ? parsed.projectName : undefined,
43
- projectRoot: dir,
44
- };
45
- cache.set(startCwd, result);
46
- return result;
47
- }
48
- }
49
- catch {
50
- // Not present, unreadable, or malformed — walk up.
51
- }
52
- const parent = dirname(dir);
53
- if (parent === dir)
54
- break;
55
- dir = parent;
56
- }
57
- cache.set(startCwd, null);
58
- return null;
59
- }
60
- //# sourceMappingURL=identity.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"identity.js","sourceRoot":"","sources":["../../src/lib/identity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,MAAM,CAAC;AAEzE,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAQ7B,MAAM,KAAK,GAAG,IAAI,GAAG,EAAkC,CAAC;AAExD,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,QAAgB,EAChB,IAAI,GAA0B,EAAE;IAEhC,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC3B,IAAI,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;QAAE,OAAO,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAC;IACrD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,iBAAiB,CAAC;IAEpD,IAAI,GAAG,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAClE,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC;QAC/C,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;QAC/C,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAChD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAA4B,CAAC;YAC1D,IAAI,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxE,MAAM,MAAM,GAAoB;oBAC9B,SAAS,EAAE,MAAM,CAAC,SAAS;oBAC3B,WAAW,EAAE,OAAO,MAAM,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;oBACpF,WAAW,EAAE,GAAG;iBACjB,CAAC;gBACF,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;gBAC5B,OAAO,MAAM,CAAC;YAChB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,mDAAmD;QACrD,CAAC;QACD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,MAAM,KAAK,GAAG;YAAE,MAAM;QAC1B,GAAG,GAAG,MAAM,CAAC;IACf,CAAC;IACD,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC1B,OAAO,IAAI,CAAC;AACd,CAAC"}