@rubytech/create-maxy-code 0.1.461 → 0.1.462

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 (148) hide show
  1. package/package.json +1 -1
  2. package/payload/platform/lib/graph-mcp/dist/index.d.ts +2 -1
  3. package/payload/platform/lib/graph-mcp/dist/index.d.ts.map +1 -1
  4. package/payload/platform/lib/graph-mcp/dist/index.js +14 -22
  5. package/payload/platform/lib/graph-mcp/dist/index.js.map +1 -1
  6. package/payload/platform/lib/graph-mcp/src/index.ts +15 -22
  7. package/payload/platform/lib/mcp-spawn-tee/dist/index.d.ts +8 -7
  8. package/payload/platform/lib/mcp-spawn-tee/dist/index.d.ts.map +1 -1
  9. package/payload/platform/lib/mcp-spawn-tee/dist/index.js +19 -19
  10. package/payload/platform/lib/mcp-spawn-tee/dist/index.js.map +1 -1
  11. package/payload/platform/lib/mcp-spawn-tee/src/__tests__/spawn-tee.test.ts +34 -5
  12. package/payload/platform/lib/mcp-spawn-tee/src/index.ts +22 -19
  13. package/payload/platform/lib/mcp-stderr-tee/dist/index.d.ts +35 -17
  14. package/payload/platform/lib/mcp-stderr-tee/dist/index.d.ts.map +1 -1
  15. package/payload/platform/lib/mcp-stderr-tee/dist/index.js +41 -48
  16. package/payload/platform/lib/mcp-stderr-tee/dist/index.js.map +1 -1
  17. package/payload/platform/lib/mcp-stderr-tee/src/index.ts +42 -51
  18. package/payload/platform/lib/storage-broker/dist/__tests__/audit.test.js +27 -0
  19. package/payload/platform/lib/storage-broker/dist/__tests__/audit.test.js.map +1 -1
  20. package/payload/platform/lib/storage-broker/dist/__tests__/cf-exec.test.js +49 -0
  21. package/payload/platform/lib/storage-broker/dist/__tests__/cf-exec.test.js.map +1 -1
  22. package/payload/platform/lib/storage-broker/dist/audit.d.ts +11 -0
  23. package/payload/platform/lib/storage-broker/dist/audit.d.ts.map +1 -1
  24. package/payload/platform/lib/storage-broker/dist/audit.js +16 -0
  25. package/payload/platform/lib/storage-broker/dist/audit.js.map +1 -1
  26. package/payload/platform/lib/storage-broker/dist/cf-exec.d.ts +18 -0
  27. package/payload/platform/lib/storage-broker/dist/cf-exec.d.ts.map +1 -1
  28. package/payload/platform/lib/storage-broker/dist/cf-exec.js +77 -0
  29. package/payload/platform/lib/storage-broker/dist/cf-exec.js.map +1 -1
  30. package/payload/platform/lib/storage-broker/dist/house-scoped-token.js +3 -0
  31. package/payload/platform/lib/storage-broker/dist/house-scoped-token.js.map +1 -1
  32. package/payload/platform/lib/storage-broker/dist/registry.d.ts +1 -1
  33. package/payload/platform/lib/storage-broker/dist/registry.d.ts.map +1 -1
  34. package/payload/platform/lib/storage-broker/dist/registry.js.map +1 -1
  35. package/payload/platform/lib/storage-broker/src/__tests__/audit.test.ts +32 -1
  36. package/payload/platform/lib/storage-broker/src/__tests__/cf-exec.test.ts +61 -0
  37. package/payload/platform/lib/storage-broker/src/audit.ts +45 -0
  38. package/payload/platform/lib/storage-broker/src/cf-exec.ts +91 -0
  39. package/payload/platform/lib/storage-broker/src/house-scoped-token.ts +3 -0
  40. package/payload/platform/lib/storage-broker/src/registry.ts +5 -1
  41. package/payload/platform/plugins/admin/lib/mcp-spawn-tee/index.js +19 -19
  42. package/payload/platform/plugins/admin/skills/platform-architecture/SKILL.md +22 -11
  43. package/payload/platform/plugins/aeo/lib/mcp-spawn-tee/index.js +19 -19
  44. package/payload/platform/plugins/browser/lib/mcp-spawn-tee/index.js +19 -19
  45. package/payload/platform/plugins/cloudflare/PLUGIN.md +1 -1
  46. package/payload/platform/plugins/cloudflare/mcp/dist/index.js +5 -5
  47. package/payload/platform/plugins/cloudflare/mcp/dist/index.js.map +1 -1
  48. package/payload/platform/plugins/cloudflare/references/hosting-sites.md +2 -0
  49. package/payload/platform/plugins/cloudflare/skills/calendar-site/SKILL.md +1 -1
  50. package/payload/platform/plugins/cloudflare/skills/site-deploy/SKILL.md +2 -0
  51. package/payload/platform/plugins/connector/lib/mcp-spawn-tee/index.js +19 -19
  52. package/payload/platform/plugins/contacts/lib/mcp-spawn-tee/index.js +19 -19
  53. package/payload/platform/plugins/docs/references/admin-session.md +3 -3
  54. package/payload/platform/plugins/docs/references/cloudflare.md +2 -0
  55. package/payload/platform/plugins/docs/references/outlook-guide.md +11 -4
  56. package/payload/platform/plugins/docs/references/plugins-guide.md +8 -6
  57. package/payload/platform/plugins/email/lib/mcp-spawn-tee/index.js +19 -19
  58. package/payload/platform/plugins/filesystem/lib/mcp-spawn-tee/index.js +19 -19
  59. package/payload/platform/plugins/graph-viewer/lib/mcp-spawn-tee/index.js +19 -19
  60. package/payload/platform/plugins/memory/PLUGIN.md +1 -1
  61. package/payload/platform/plugins/memory/lib/mcp-spawn-tee/index.js +19 -19
  62. package/payload/platform/plugins/memory/mcp/dist/lib/log-ingest.js +2 -2
  63. package/payload/platform/plugins/memory/mcp/dist/lib/log-ingest.js.map +1 -1
  64. package/payload/platform/plugins/outlook/.claude-plugin/plugin.json +1 -1
  65. package/payload/platform/plugins/outlook/PLUGIN.md +2 -2
  66. package/payload/platform/plugins/outlook/lib/mcp-spawn-tee/index.js +19 -19
  67. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-threaded.test.d.ts +2 -0
  68. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-threaded.test.d.ts.map +1 -0
  69. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-threaded.test.js +238 -0
  70. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-threaded.test.js.map +1 -0
  71. package/payload/platform/plugins/outlook/mcp/dist/index.js +9 -5
  72. package/payload/platform/plugins/outlook/mcp/dist/index.js.map +1 -1
  73. package/payload/platform/plugins/outlook/mcp/dist/tools/draft.d.ts +58 -9
  74. package/payload/platform/plugins/outlook/mcp/dist/tools/draft.d.ts.map +1 -1
  75. package/payload/platform/plugins/outlook/mcp/dist/tools/draft.js +113 -19
  76. package/payload/platform/plugins/outlook/mcp/dist/tools/draft.js.map +1 -1
  77. package/payload/platform/plugins/outlook/skills/outlook/SKILL.md +5 -2
  78. package/payload/platform/plugins/quickbooks/lib/mcp-spawn-tee/index.js +19 -19
  79. package/payload/platform/plugins/replicate/lib/mcp-spawn-tee/index.js +19 -19
  80. package/payload/platform/plugins/scheduling/lib/mcp-spawn-tee/index.js +19 -19
  81. package/payload/platform/plugins/storage-broker/PLUGIN.md +9 -1
  82. package/payload/platform/plugins/storage-broker/lib/mcp-spawn-tee/index.js +19 -19
  83. package/payload/platform/plugins/storage-broker/mcp/dist/confine-path.d.ts.map +1 -1
  84. package/payload/platform/plugins/storage-broker/mcp/dist/confine-path.js +16 -5
  85. package/payload/platform/plugins/storage-broker/mcp/dist/confine-path.js.map +1 -1
  86. package/payload/platform/plugins/storage-broker/mcp/dist/index.js +49 -0
  87. package/payload/platform/plugins/storage-broker/mcp/dist/index.js.map +1 -1
  88. package/payload/platform/plugins/telegram/lib/mcp-spawn-tee/index.js +19 -19
  89. package/payload/platform/plugins/url-get/lib/mcp-spawn-tee/index.js +19 -19
  90. package/payload/platform/plugins/voice-mirror/lib/mcp-spawn-tee/index.js +19 -19
  91. package/payload/platform/plugins/web-designer/PLUGIN.md +1 -1
  92. package/payload/platform/plugins/web-designer/commands/website.md +6 -0
  93. package/payload/platform/plugins/web-designer/skills/web-design/references/deploy.md +12 -0
  94. package/payload/platform/plugins/whatsapp/lib/mcp-spawn-tee/index.js +19 -19
  95. package/payload/platform/plugins/work/lib/mcp-spawn-tee/index.js +19 -19
  96. package/payload/platform/plugins/workflows/lib/mcp-spawn-tee/index.js +19 -19
  97. package/payload/platform/scripts/__tests__/logs-rotate.test.sh +24 -20
  98. package/payload/platform/scripts/logs-read.sh +31 -0
  99. package/payload/platform/scripts/logs-rotate.sh +21 -18
  100. package/payload/platform/services/claude-session-manager/dist/canonical-tool-names.generated.d.ts.map +1 -1
  101. package/payload/platform/services/claude-session-manager/dist/canonical-tool-names.generated.js +2 -0
  102. package/payload/platform/services/claude-session-manager/dist/canonical-tool-names.generated.js.map +1 -1
  103. package/payload/platform/services/claude-session-manager/dist/pty-spawner.d.ts.map +1 -1
  104. package/payload/platform/services/claude-session-manager/dist/pty-spawner.js +37 -0
  105. package/payload/platform/services/claude-session-manager/dist/pty-spawner.js.map +1 -1
  106. package/payload/platform/services/claude-session-manager/dist/rc-daemon.d.ts +5 -3
  107. package/payload/platform/services/claude-session-manager/dist/rc-daemon.d.ts.map +1 -1
  108. package/payload/platform/services/claude-session-manager/dist/rc-daemon.js.map +1 -1
  109. package/payload/server/{chunk-JXWFVE5X.js → chunk-BBSPFN45.js} +65 -0
  110. package/payload/server/public/assets/{AdminLoginScreens-BFbpkEUS.js → AdminLoginScreens-Bed8SDxY.js} +1 -1
  111. package/payload/server/public/assets/{AdminShell-CdOGObaZ.js → AdminShell-BLh9O6dn.js} +1 -1
  112. package/payload/server/public/assets/{Checkbox-RFD_F0c0.js → Checkbox-BC_KSbpS.js} +1 -1
  113. package/payload/server/public/assets/{admin-CYGdL-1O.js → admin-DfWgJVI3.js} +1 -1
  114. package/payload/server/public/assets/{browser-DVfa_plj.js → browser-C0vkv-hH.js} +1 -1
  115. package/payload/server/public/assets/{calendar-JC_Dxa4n.js → calendar-_pfHw0Hp.js} +1 -1
  116. package/payload/server/public/assets/chat-CufidiBQ.js +1 -0
  117. package/payload/server/public/assets/chevron-left-BnpVBu51.js +1 -0
  118. package/payload/server/public/assets/data-CR-fbPWr.js +1 -0
  119. package/payload/server/public/assets/{graph-hBUrRSkr.js → graph-BZiudUGr.js} +1 -1
  120. package/payload/server/public/assets/{graph-labels-CHh6zs8t.js → graph-labels-BzmmJwCR.js} +1 -1
  121. package/payload/server/public/assets/{maximize-2-DjxE4rm9.js → maximize-2-Bhdsv0U-.js} +1 -1
  122. package/payload/server/public/assets/{operator-BqU9SQuu.js → operator-Cj0B_usT.js} +1 -1
  123. package/payload/server/public/assets/page-84Fdwiu_.js +32 -0
  124. package/payload/server/public/assets/{page-DiQhU6lD.js → page-8AB3jUa_.js} +1 -1
  125. package/payload/server/public/assets/{public-Cu_eALgY.js → public-BkNW9e9T.js} +1 -1
  126. package/payload/server/public/assets/{rotate-ccw-F9DsSTSJ.js → rotate-ccw-D_5cETGt.js} +1 -1
  127. package/payload/server/public/assets/{tasks-CE-D0f50.js → tasks-EyKLXINi.js} +1 -1
  128. package/payload/server/public/assets/{time-entry-format-D2rsWhov.js → time-entry-format-DAwmmR3i.js} +1 -1
  129. package/payload/server/public/assets/{useCopyFeedback-QxOmoobV.js → useCopyFeedback-rOWd_lzl.js} +1 -1
  130. package/payload/server/public/assets/{useSelectionMode-RIzNqFjV.js → useSelectionMode-DDmLmPph.js} +1 -1
  131. package/payload/server/public/assets/{useSubAccountSwitcher-BW_fK1Nt.css → useSubAccountSwitcher-pu0jjLCz.css} +1 -1
  132. package/payload/server/public/assets/{useVoiceRecorder-WrWurSYI.js → useVoiceRecorder-azG8zSUI.js} +1 -1
  133. package/payload/server/public/browser.html +5 -5
  134. package/payload/server/public/calendar.html +6 -6
  135. package/payload/server/public/chat.html +12 -12
  136. package/payload/server/public/data.html +10 -10
  137. package/payload/server/public/graph.html +11 -11
  138. package/payload/server/public/index.html +13 -13
  139. package/payload/server/public/operator.html +14 -14
  140. package/payload/server/public/public.html +12 -12
  141. package/payload/server/public/tasks.html +5 -5
  142. package/payload/server/server.js +526 -174
  143. package/payload/server/{src-4F37OHLK.js → src-YLGAZY36.js} +5 -1
  144. package/payload/server/public/assets/chat-Yf8Nkop8.js +0 -1
  145. package/payload/server/public/assets/chevron-left-CAiAUBxO.js +0 -1
  146. package/payload/server/public/assets/data-hqdYXaEn.js +0 -1
  147. package/payload/server/public/assets/page-B4c4_4HP.js +0 -32
  148. /package/payload/server/public/assets/{useSubAccountSwitcher-wo_qGW-I.js → useSubAccountSwitcher-CU-lOxTd.js} +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rubytech/create-maxy-code",
3
- "version": "0.1.461",
3
+ "version": "0.1.462",
4
4
  "description": "Install Maxy — AI for Productive People",
5
5
  "bin": {
6
6
  "create-maxy-code": "./dist/index.js"
@@ -9,7 +9,8 @@
9
9
  * (falls back to `${PLATFORM_ROOT}/config/.neo4j-password`, matching
10
10
  * plugins/memory/mcp/src/lib/neo4j.ts:10-21).
11
11
  * 2. Installs the Maxy stderr tee so upstream stderr lands in the
12
- * per-conversation stream log alongside every other plugin.
12
+ * per-conversation stream log alongside every other plugin. The raw
13
+ * per-server sink is the mcp-spawn-tee shim's, not this module's.
13
14
  * 3. Locks the upstream server into read-only mode (`NEO4J_READ_ONLY=true`)
14
15
  * and a stable Maxy namespace (`NEO4J_NAMESPACE=maxy-graph`).
15
16
  * 4. Parses JSON-RPC lines on the request path to record the cypher and
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;;;;;;GAsBG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;;;;;;;GAuBG"}
@@ -10,7 +10,8 @@
10
10
  * (falls back to `${PLATFORM_ROOT}/config/.neo4j-password`, matching
11
11
  * plugins/memory/mcp/src/lib/neo4j.ts:10-21).
12
12
  * 2. Installs the Maxy stderr tee so upstream stderr lands in the
13
- * per-conversation stream log alongside every other plugin.
13
+ * per-conversation stream log alongside every other plugin. The raw
14
+ * per-server sink is the mcp-spawn-tee shim's, not this module's.
14
15
  * 3. Locks the upstream server into read-only mode (`NEO4J_READ_ONLY=true`)
15
16
  * and a stable Maxy namespace (`NEO4J_NAMESPACE=maxy-graph`).
16
17
  * 4. Parses JSON-RPC lines on the request path to record the cypher and
@@ -39,30 +40,21 @@ const node_crypto_1 = require("node:crypto");
39
40
  const SERVER_NAME = "graph";
40
41
  const UPSTREAM_PACKAGE = "mcp-neo4j-cypher@0.6.0";
41
42
  (0, index_js_1.initStderrTee)(SERVER_NAME);
42
- // Sync-write failure line to the per-server raw file AND the per-conversation
43
- // stream log. Used only on exit paths (missing password, uvx unresolvable,
44
- // upstream spawn/exit error) where the async stderr tee's createWriteStream
45
- // buffer will not flush before process.exit() outraces it. `appendFileSync`
46
- // returns after the kernel has queued the write, so the line survives an
47
- // immediate exit. Each destination is wrapped independently an unwritable
48
- // destination must not mask the primary failure. The final process.stderr.write
49
- // goes through the patched writer installed by initStderrTee; any async tee
50
- // writes it schedules are discarded by the subsequent process.exit, but its
51
- // inline write to the original stderr still reaches Claude Code's consumer.
43
+ // Sync-write failure line to the per-conversation stream log. Used only on exit
44
+ // paths (missing password, uvx unresolvable, upstream spawn/exit error) where an
45
+ // async createWriteStream buffer would not flush before process.exit() outraces
46
+ // it. `appendFileSync` returns after the kernel has queued the write, so the line
47
+ // survives an immediate exit. Each destination is wrapped independently an
48
+ // unwritable destination must not mask the primary failure.
49
+ //
50
+ // Task 1721 removed this function's own raw-file write. The final
51
+ // process.stderr.write goes through the writer the mcp-spawn-tee shim installed
52
+ // (PLUGIN.md spawns this entry under it), and that shim's appendSafe is itself
53
+ // an appendFileSync to the raw sink — so exit-path lines still reach disk
54
+ // synchronously, via one writer instead of two.
52
55
  function syncEmit(line) {
53
56
  const msg = `[graph-mcp] ${line}`;
54
57
  const iso = new Date().toISOString();
55
- const logDir = process.env.LOG_DIR;
56
- if (logDir) {
57
- try {
58
- (0, node_fs_1.mkdirSync)(logDir, { recursive: true });
59
- const date = iso.slice(0, 10);
60
- (0, node_fs_1.appendFileSync)((0, node_path_1.resolve)(logDir, `mcp-${SERVER_NAME}-stderr-${date}.log`), `${msg}\n`);
61
- }
62
- catch {
63
- /* unwritable destination — preserve primary failure */
64
- }
65
- }
66
58
  const streamLogPath = process.env.STREAM_LOG_PATH;
67
59
  if (streamLogPath) {
68
60
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;AACA;;;;;;;;;;;;;;;;;;;;;;GAsBG;;AAEH,2DAAyD;AACzD,qCAAmG;AACnG,yCAAoC;AACpC,6DAAoD;AACpD,iEAAmE;AACnE,6DAI8B;AAC9B,8DAIyC;AACzC,uDAAqF;AACrF,uEAAwE;AACxE,iEAOgC;AAChC,+DAK+B;AAC/B,6CAAyC;AAEzC,MAAM,WAAW,GAAG,OAAO,CAAC;AAC5B,MAAM,gBAAgB,GAAG,wBAAwB,CAAC;AAElD,IAAA,wBAAa,EAAC,WAAW,CAAC,CAAC;AAE3B,8EAA8E;AAC9E,2EAA2E;AAC3E,4EAA4E;AAC5E,4EAA4E;AAC5E,yEAAyE;AACzE,4EAA4E;AAC5E,gFAAgF;AAChF,4EAA4E;AAC5E,4EAA4E;AAC5E,4EAA4E;AAC5E,SAAS,QAAQ,CAAC,IAAY;IAC5B,MAAM,GAAG,GAAG,eAAe,IAAI,EAAE,CAAC;IAClC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACrC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;IACnC,IAAI,MAAM,EAAE,CAAC;QACX,IAAI,CAAC;YACH,IAAA,mBAAS,EAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACvC,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC9B,IAAA,wBAAc,EAAC,IAAA,mBAAO,EAAC,MAAM,EAAE,OAAO,WAAW,WAAW,IAAI,MAAM,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC,CAAC;QACvF,CAAC;QAAC,MAAM,CAAC;YACP,uDAAuD;QACzD,CAAC;IACH,CAAC;IACD,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;IAClD,IAAI,aAAa,EAAE,CAAC;QAClB,IAAI,CAAC;YACH,IAAA,wBAAc,EAAC,aAAa,EAAE,IAAI,GAAG,UAAU,WAAW,KAAK,GAAG,IAAI,CAAC,CAAC;QAC1E,CAAC;QAAC,MAAM,CAAC;YACP,uDAAuD;QACzD,CAAC;IACH,CAAC;IACD,IAAI,CAAC;QACH,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;IACnC,CAAC;IAAC,MAAM,CAAC;QACP,wCAAwC;IAC1C,CAAC;AACH,CAAC;AAED,SAAS,eAAe;IACtB,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc;QAAE,OAAO,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;IAClE,2EAA2E;IAC3E,oFAAoF;IACpF,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,IAAA,mBAAO,EAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IACzE,MAAM,IAAI,GAAG,IAAA,mBAAO,EAAC,IAAI,EAAE,wBAAwB,CAAC,CAAC;IACrD,IAAI,CAAC;QACH,OAAO,IAAA,sBAAY,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;IAC5C,CAAC;IAAC,MAAM,CAAC;QACP,QAAQ,CAAC,+BAA+B,IAAI,2BAA2B,CAAC,CAAC;QACzE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAiBD,SAAS,cAAc;IACrB,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC;IAC3C,IAAI,OAAO,EAAE,CAAC;QACZ,IAAI,CAAC;YACH,IAAA,oBAAU,EAAC,OAAO,EAAE,mBAAS,CAAC,IAAI,CAAC,CAAC;YACpC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;QACrH,CAAC;QAAC,MAAM,CAAC;YACP,kBAAkB;QACpB,CAAC;IACH,CAAC;IACD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;IACpC,MAAM,aAAa,GAAG,IAAI,CAAC,CAAC,CAAC,IAAA,mBAAO,EAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAClE,IAAI,aAAa,EAAE,CAAC;QAClB,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,IAAA,kBAAQ,EAAC,aAAa,CAAC,CAAC;YACtC,IAAI,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;gBACnB,IAAA,oBAAU,EAAC,aAAa,EAAE,mBAAS,CAAC,IAAI,CAAC,CAAC;gBAC1C,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,IAAI,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;YACjJ,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,kBAAkB;QACpB,CAAC;IACH,CAAC;IACD,IAAI,SAAS,GAAG,EAAE,CAAC;IACnB,IAAI,CAAC;QACH,SAAS,GAAG,IAAA,iCAAY,EAAC,OAAO,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAChH,CAAC;IAAC,MAAM,CAAC;QACP,SAAS,GAAG,EAAE,CAAC;IACjB,CAAC;IACD,IAAI,SAAS,EAAE,CAAC;QACd,uEAAuE;QACvE,qEAAqE;QACrE,2DAA2D;QAC3D,UAAU;QACV,IAAI,CAAC;YACH,IAAA,oBAAU,EAAC,SAAS,EAAE,mBAAS,CAAC,IAAI,CAAC,CAAC;YACtC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,IAAI,OAAO,EAAE,gBAAgB,EAAE,aAAa,IAAI,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;QACnJ,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,IAAI,OAAO,EAAE,gBAAgB,EAAE,aAAa,IAAI,OAAO,EAAE,YAAY,EAAE,GAAG,SAAS,mBAAmB,EAAE,CAAC;QACjK,CAAC;IACH,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,IAAI,OAAO,EAAE,gBAAgB,EAAE,aAAa,IAAI,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC;AAC7I,CAAC;AAED,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,MAAM,CAAC;AAC1C,wDAAwD;AACxD,4EAA4E;AAC5E,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;AACvC,IAAI,CAAC,QAAQ,EAAE,CAAC;IACd,MAAM,IAAI,KAAK,CACb,4EAA4E,CAC7E,CAAC;AACJ,CAAC;AACD,OAAO,CAAC,KAAK,CAAC,kCAAkC,QAAQ,EAAE,CAAC,CAAC;AAC5D,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,OAAO,CAAC;AAClF,MAAM,aAAa,GAAG,eAAe,EAAE,CAAC;AACxC,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAC3C,MAAM,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;AACjD,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,YAAY,CAAC;AAC9D,yDAAyD;AACzD,6EAA6E;AAC7E,2EAA2E;AAC3E,yEAAyE;AACzE,6EAA6E;AAC7E,6EAA6E;AAC7E,2EAA2E;AAC3E,qEAAqE;AACrE,6BAA6B;AAC7B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,OAAO,CAAC;AACxD,MAAM,kBAAkB,GAAG,OAAO,CAAC,GAAG,CAAC,0BAA0B,IAAI,OAAO,CAAC;AAE7E,MAAM,QAAQ,GAAsB;IAClC,GAAG,OAAO,CAAC,GAAG;IACd,SAAS,EAAE,QAAQ;IACnB,SAAS,EAAE,QAAQ;IACnB,cAAc,EAAE,SAAS;IACzB,cAAc,EAAE,aAAa;IAC7B,eAAe,EAAE,QAAQ;IACzB,eAAe,EAAE,SAAS;IAC1B,0BAA0B,EAAE,kBAAkB;CAC/C,CAAC;AAEF,OAAO,CAAC,KAAK,CACX,0BAA0B,KAAK,QAAQ,QAAQ,SAAS,SAAS,GAAG;IAClE,aAAa,SAAS,aAAa,QAAQ,eAAe,kBAAkB,EAAE,CACjF,CAAC;AAEF,+DAA+D;AAC/D,sEAAsE;AACtE,0EAA0E;AAC1E,4EAA4E;AAC5E,2EAA2E;AAC3E,sCAAsC;AACtC,4EAA4E;AAC5E,0EAA0E;AAC1E,+BAA+B;AAC/B,MAAM,gBAAgB,GAAW,QAAQ,CAAC;AAC1C,IAAI,kBAAkB,GAAmE,IAAI,CAAC;AAC9F,SAAS,gBAAgB;IACvB,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxB,kBAAkB,GAAG,IAAA,oCAAkB,EAAC,gBAAgB,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;IACtF,CAAC;IACD,OAAO,kBAAkB,CAAC;AAC5B,CAAC;AACD,MAAM,WAAW,GAAG,IAAI,6BAAW,CAAC;IAClC,KAAK,CAAC,MAAM;QACV,MAAM,CAAC,GAAG,MAAM,gBAAgB,EAAE,CAAC;QACnC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC;IACpB,CAAC;IACD,KAAK,CAAC,iBAAiB;QACrB,MAAM,CAAC,GAAG,MAAM,gBAAgB,EAAE,CAAC;QACnC,OAAO,CAAC,CAAC,iBAAiB,EAAE,CAAC;IAC/B,CAAC;CACF,CAAC,CAAC;AACH,KAAK,WAAW,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACrC,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC7D,OAAO,CAAC,KAAK,CAAC,sCAAsC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;AACjF,CAAC,CAAC,CAAC;AAEH,MAAM,GAAG,GAAG,cAAc,EAAE,CAAC;AAC7B,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;IACd,QAAQ,CACN,kCAAkC,GAAG,CAAC,UAAU,eAAe,GAAG,CAAC,gBAAgB,UAAU,GAAG,CAAC,YAAY,EAAE,CAChH,CAAC;IACF,QAAQ,CACN,0EAA0E,CAC3E,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACpB,CAAC;AACD,OAAO,CAAC,KAAK,CAAC,iCAAiC,GAAG,CAAC,IAAI,WAAW,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;AAEhF,MAAM,KAAK,GAAG,IAAA,0BAAK,EAAC,GAAG,CAAC,IAAI,EAAE,CAAC,gBAAgB,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE;IACxE,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;IAC/B,GAAG,EAAE,QAAQ;CACd,CAAC,CAAC;AAEH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;IACrB,OAAO,CAAC,KAAK,CAAC,uBAAuB,gBAAgB,QAAQ,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;AAC5E,CAAC,CAAC,CAAC;AAEH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;IACxB,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC7D,QAAQ,CAAC,gBAAgB,GAAG,QAAQ,GAAG,CAAC,IAAI,IAAI,YAAY,EAAE,CAAC,CAAC;IAChE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACpB,CAAC,CAAC,CAAC;AAEH,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;IAChC,QAAQ,CAAC,mBAAmB,IAAI,IAAI,MAAM,WAAW,MAAM,IAAI,MAAM,EAAE,CAAC,CAAC;IACzE,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACzC,CAAC,CAAC,CAAC;AAEH,wEAAwE;AACxE,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;IACxC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AAC9B,CAAC,CAAC,CAAC;AAgCH,MAAM,OAAO,GAAG,IAAI,GAAG,EAAgC,CAAC;AAExD,SAAS,QAAQ,CAAC,CAAS,EAAE,CAAS;IACpC,OAAO,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC;AACnD,CAAC;AAED,SAAS,cAAc,CAAC,QAA4B;IAClD,IAAI,CAAC,QAAQ;QAAE,OAAO,WAAW,CAAC;IAClC,MAAM,MAAM,GAAG,GAAG,SAAS,GAAG,CAAC;IAC/B,OAAO,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;AAChF,CAAC;AAED,MAAM,gBAAgB,GAAG,mBAAmB,CAAC;AAC7C,MAAM,iBAAiB,GAAG,oBAAoB,CAAC;AAe/C,kEAAkE;AAClE,qEAAqE;AACrE,8EAA8E;AAC9E,oEAAoE;AACpE,0EAA0E;AAC1E,wEAAwE;AACxE,4EAA4E;AAC5E,yEAAyE;AACzE,2EAA2E;AAC3E,SAAS;AACT,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAmB,CAAC;AAEvD,SAAS,iBAAiB,CAAC,IAAyC;IAClE,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1C,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC1C,CAAC;AAED,8DAA8D;AAC9D,yEAAyE;AACzE,wEAAwE;AACxE,0EAA0E;AAC1E,4EAA4E;AAC5E,0EAA0E;AAC1E,kEAAkE;AAClE,SAAS,qBAAqB,CAAC,IAAyC;IACtE,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC9B,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACvD,MAAM,GAAG,GAAI,MAAkC,CAAC,WAAW,CAAC,CAAC;IAC7D,OAAO,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AAC9C,CAAC;AAED,iEAAiE;AACjE,2EAA2E;AAC3E,2EAA2E;AAC3E,oEAAoE;AACpE,8CAA8C;AAC9C,SAAS,kBAAkB,CACzB,MAAgC;IAEhC,IAAI,CAAC,MAAM,EAAE,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC;QAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;IACrF,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC;IAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;IAC3D,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;IAClE,OAAO;QACL,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACnD,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;KACjD,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,MAAc;IACpC,OAAO,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,SAAS,CAAC,MAAgC;IACjD,IAAI,CAAC,MAAM,EAAE,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC;QAAE,OAAO,GAAG,CAAC;IACnE,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC;IAC3C,MAAM,SAAS,GAAG,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3D,IAAI,SAAS;QAAE,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC;IACnC,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;AACvC,CAAC;AAED;;;;GAIG;AACH,SAAS,mBAAmB,CAC1B,OAAuB,EACvB,IAA4B;IAE5B,MAAM,OAAO,GAAG,IAAI,KAAK,UAAU;QACjC,CAAC,CAAC,kDAAkD;QACpD,CAAC,CAAC,2EAA2E,CAAC;IAChF,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QAC9B,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACjF,OAAO,OAAO,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,KAAK,KAAK,OAAO,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;IAC7D,CAAC,CAAC,CAAC;IACH,OAAO,GAAG,OAAO,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;AAC3C,CAAC;AAED,SAAS,mBAAmB,CAAC,EAAmB,EAAE,OAAuB;IACvE,MAAM,IAAI,GAAG,GAAG,mBAAmB,CAAC,OAAO,EAAE,UAAU,CAAC,sEAAsE,SAAS,yCAAyC,CAAC;IACjL,MAAM,QAAQ,GAAG;QACf,OAAO,EAAE,KAAK;QACd,EAAE;QACF,MAAM,EAAE;YACN,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;YACjC,OAAO,EAAE,IAAI;SACd;KACF,CAAC;IACF,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;AAClC,CAAC;AAED,gEAAgE;AAChE,4EAA4E;AAC5E,6EAA6E;AAC7E,6EAA6E;AAC7E,+CAA+C;AAC/C,SAAS,4BAA4B,CACnC,EAAmB,EACnB,SAA6B;IAE7B,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CACzB,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,cAAc,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAC5E,CAAC;IACF,MAAM,IAAI,GACR,kDAAkD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM;QACxE,6EAA6E;QAC7E,2DAA2D,CAAC;IAC9D,MAAM,QAAQ,GAAG;QACf,OAAO,EAAE,KAAK;QACd,EAAE;QACF,MAAM,EAAE;YACN,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;YACjC,OAAO,EAAE,IAAI;SACd;KACF,CAAC;IACF,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;AAClC,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAmB,EAAE,QAAwB;IACrE,MAAM,WAAW,GAAG,GAAG,mBAAmB,CAAC,QAAQ,EAAE,SAAS,CAAC,+DAA+D,CAAC;IAC/H,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,EAAE,OAAO,IAAI,EAAE,CAAC;IAC3C,MAAM,OAAO,GAAmB;QAC9B,GAAG,GAAG;QACN,MAAM,EAAE;YACN,GAAG,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC;YACrB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,GAAG,QAAQ,CAAC;SAC5D;KACF,CAAC;IACF,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;AACjC,CAAC;AAED,2EAA2E;AAC3E,0EAA0E;AAC1E,iEAAiE;AACjE,sEAAsE;AACtE,0EAA0E;AAC1E,0EAA0E;AAC1E,uEAAuE;AACvE,4CAA4C;AAE5C,KAAK,UAAU,kBAAkB,CAC/B,EAAmB,EACnB,UAAkB,EAClB,YAAoB,EACpB,cAA6B,EAC7B,YAAiD,EACjD,OAAe,EACf,kBAAkC,EAClC,SAAkB;IAElB,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,SAAS,CAAC;IACtD,MAAM,cAAc,GAClB,cAAc,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,SAAS,CAAC;IACxD,MAAM,cAAc,GACjB,YAAY,EAAE,CAAC,QAAQ,CAAyC,IAAI,EAAE,CAAC;IAC1E,MAAM,UAAU,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAEnD,IAAI,OAAuD,CAAC;IAC5D,IAAI,CAAC;QACH,OAAO,GAAG,IAAA,qDAA2B,EAAC,UAAU,CAAC,CAAC;IACpD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,wEAAwE;QACxE,yEAAyE;QACzE,iDAAiD;QACjD,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAChE,OAAO,CAAC,KAAK,CACX,oBAAoB,iBAAiB,UAAU,KAAK,SAAS,SAAS,YAAY,UAAU,4BAA4B,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,eAAe,SAAS,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,EAAE,CACvM,CAAC;QACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,GAAG,IAAA,0CAAmB,EAAC,EAAE,EAAE,4CAA4C,EAAE,MAAM,CAAC,IAAI,CACrF,CAAC;QACF,OAAO;IACT,CAAC;IACD,IAAI,OAAO,CAAC,cAAc,GAAG,CAAC,EAAE,CAAC;QAC/B,OAAO,CAAC,KAAK,CACX,kDAAkD,UAAU,aAAa,OAAO,CAAC,cAAc,EAAE,CAClG,CAAC;IACJ,CAAC;IAED,IAAI,MAAmB,CAAC;IACxB,IAAI,CAAC;QACH,MAAM,GAAG,CAAC,MAAM,IAAA,iCAAe,EAAC,gBAAgB,EAAE,SAAS,EAAE,aAAa,CAAC,CAAgB,CAAC;IAC9F,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAChE,OAAO,CAAC,KAAK,CACX,oBAAoB,iBAAiB,UAAU,KAAK,SAAS,SAAS,YAAY,UAAU,gCAAgC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,eAAe,SAAS,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,EAAE,CAC3M,CAAC;QACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,GAAG,IAAA,0CAAmB,EAAC,EAAE,EAAE,+CAA+C,EAAE,MAAM,CAAC,IAAI,CACxF,CAAC;QACF,OAAO;IACT,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;IACjC,IAAI,OAAO,GAAmI,IAAI,CAAC;IAEnJ,IAAI,CAAC;QACH,OAAO,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,CAAC,EAAE,EAAE,EAAE,CAC1C,IAAA,qCAAc,EAAC,EAAE,EAAE,OAAO,CAAC,MAAM,EAAE,cAAc,EAAE;YACjD,KAAK,EAAE,SAAS;YAChB,OAAO,EAAE,cAAc;SACxB,CAAC,CACH,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,YAAY,0CAAmB,EAAE,CAAC;YACvC,OAAO,CAAC,KAAK,CACX,+CAA+C,UAAU,kBAAkB,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CACxG,CAAC;YACF,OAAO,CAAC,KAAK,CACX,IAAA,0BAAe,EAAC;gBACd,IAAI,EAAE,gBAAgB;gBACtB,YAAY;gBACZ,SAAS,EAAE,GAAG,CAAC,SAAS;aACzB,CAAC,CACH,CAAC;YACF,OAAO,CAAC,KAAK,CACX,oBAAoB,iBAAiB,UAAU,KAAK,SAAS,SAAS,YAAY,UAAU,6BAA6B,GAAG,CAAC,SAAS,CAAC,MAAM,cAAc,SAAS,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,EAAE,CAClM,CAAC;YACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,GAAG,IAAA,+CAAwB,EAAC,EAAE,EAAE,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,YAAY,CAAC,IAAI,CAC5E,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAChE,OAAO,CAAC,KAAK,CACX,oBAAoB,iBAAiB,UAAU,KAAK,SAAS,SAAS,YAAY,UAAU,YAAY,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,eAAe,SAAS,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,EAAE,CACvL,CAAC;YACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,GAAG,IAAA,0CAAmB,EAAC,EAAE,EAAE,aAAa,EAAE,MAAM,CAAC,IAAI,CACtD,CAAC;QACJ,CAAC;QACD,OAAO;IACT,CAAC;YAAS,CAAC;QACT,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;YAC/B,6DAA6D;QAC/D,CAAC,CAAC,CAAC;IACL,CAAC;IAED,yEAAyE;IACzE,+CAA+C;IAC/C,IAAI,CAAC,OAAO;QAAE,OAAO;IAErB,OAAO,CAAC,KAAK,CACX,oBAAoB,iBAAiB,UAAU,KAAK,SAAS,SAAS,YAAY,UAAU,UAAU,OAAO,CAAC,iBAAiB,CAAC,MAAM,cAAc,SAAS,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,EAAE,CAC3L,CAAC;IACF,OAAO,CAAC,KAAK,CACX,IAAA,0BAAe,EAAC;QACd,IAAI,EAAE,UAAU;QAChB,YAAY;QACZ,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,SAAS;QACT,SAAS,EAAE,cAAc;KAC1B,CAAC,CACH,CAAC;IAEF,KAAK,MAAM,CAAC,IAAI,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,cAAc,CAAC,EAAE,CAAC;QAC5E,OAAO,CAAC,KAAK,CACX,IAAA,0BAAe,EAAC;YACd,IAAI,EAAE,sBAAsB;YAC5B,YAAY;YACZ,IAAI,EAAE,CAAC,CAAC,KAAK;SACd,CAAC,CACH,CAAC;IACJ,CAAC;IAED,MAAM,aAAa,GAAmB,IAAA,2BAAgB,EAAC;QACrD,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,MAAM,EAAE,WAAW,CAAC,QAAQ,EAAE;QAC9B,SAAS;QACT,SAAS,EAAE,cAAc;QACzB,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,SAAS,EAAE,EAAE;KACd,CAAC,CAAC;IACH,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;QAC9B,IAAI,CAAC,CAAC,IAAI,KAAK,4BAA4B,EAAE,CAAC;YAC5C,OAAO,CAAC,KAAK,CACX,IAAA,0BAAe,EAAC;gBACd,IAAI,EAAE,4BAA4B;gBAClC,YAAY;gBACZ,OAAO,EAAE,CAAC,CAAC,OAAO;gBAClB,OAAO,EAAE,CAAC,CAAC,OAAO;aACnB,CAAC,CACH,CAAC;QACJ,CAAC;QACD,8EAA8E;QAC9E,kDAAkD;IACpD,CAAC;IAED,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,GAAG,IAAA,8CAAuB,EAAC,EAAE,EAAE;QAC7B,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,OAAO,EAAE,OAAO,CAAC,iBAAiB;KACnC,CAAC,IAAI,CACP,CAAC;AACJ,CAAC;AAID,SAAS,iBAAiB,CAAC,IAAY;IACrC,IAAI,GAAmB,CAAC;IACxB,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAmB,CAAC;IAC3C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,0DAA0D;IAC1D,0DAA0D;IAC1D,IAAI,GAAG,CAAC,MAAM,KAAK,YAAY,IAAI,GAAG,CAAC,EAAE,KAAK,SAAS,EAAE,CAAC;QACxD,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChC,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,GAAG,CAAC,MAAM,KAAK,YAAY,IAAI,GAAG,CAAC,EAAE,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAE1E,MAAM,UAAU,GAAG,cAAc,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACpD,MAAM,UAAU,GAAG,iBAAiB,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAC5D,MAAM,YAAY,GAAG,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACpE,MAAM,YAAY,GAChB,UAAU,KAAK,gBAAgB,IAAI,UAAU,KAAK,iBAAiB,CAAC;IACtE,MAAM,WAAW,GAAG,UAAU,KAAK,iBAAiB,CAAC;IACrD,MAAM,cAAc,GAAG,WAAW;QAChC,CAAC,CAAC,qBAAqB,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC;QAC9C,CAAC,CAAC,IAAI,CAAC;IAET,MAAM,YAAY,GAAG,GAAG,CAAC,MAAM,EAAE,SAAS,IAAI,EAAE,CAAC;IACjD,MAAM,SAAS,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;IACzC,MAAM,YAAY,GAChB,SAAS,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;QACrE,CAAC,CAAE,SAAqC;QACxC,CAAC,CAAC,IAAI,CAAC;IAEX,MAAM,KAAK,GAAgB;QACzB,MAAM,EAAE,UAAU;QAClB,YAAY;QACZ,UAAU;QACV,OAAO,EAAE,WAAW;QACpB,cAAc;QACd,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE;QACnB,SAAS,EAAE,KAAK;QAChB,YAAY,EAAE,EAAE;QAChB,kBAAkB,EAAE,EAAE;QACtB,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY;KAChD,CAAC;IAEF,IAAI,CAAC,YAAY,IAAI,CAAC,UAAU,EAAE,CAAC;QACjC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAC3B,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,0DAA0D;IAC1D,mDAAmD;IACnD,MAAM,cAAc,GAAG,GAAoB,EAAE;QAC3C,KAAK,kBAAkB,CACrB,GAAG,CAAC,EAAqB,EACzB,UAAU,EACV,YAAY,IAAI,EAAE,EAClB,cAAc,EACd,GAAG,CAAC,MAAM,EAAE,SAAS,EACrB,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,kBAAkB,EACxB,KAAK,CAAC,SAAS,CAChB,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACd,uEAAuE;YACvE,0DAA0D;YAC1D,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAChE,OAAO,CAAC,KAAK,CACX,mDAAmD,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAC/E,CAAC;YACF,IAAI,CAAC;gBACH,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,GAAG,IAAA,0CAAmB,EAAC,GAAG,CAAC,EAAqB,EAAE,qBAAqB,EAAE,MAAM,CAAC,IAAI,CACrF,CAAC;YACJ,CAAC;YAAC,MAAM,CAAC;gBACP,mBAAmB;YACrB,CAAC;QACH,CAAC,CAAC,CAAC;QACH,OAAO,aAAa,CAAC;IACvB,CAAC,CAAC;IAEF,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC;IACxC,MAAM,UAAU,GAAG,WAAW,CAAC,KAAK,EAAE,CAAC;IAEvC,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,CAAC,KAAK,CACX,0BAA0B,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,mDAAmD,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,CACtJ,CAAC;QACF,IAAI,WAAW,EAAE,CAAC;YAChB,yDAAyD;YACzD,gEAAgE;YAChE,OAAO,cAAc,EAAE,CAAC;QAC1B,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAC3B,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,MAAM,GAAG,IAAA,6BAAc,EAAC,UAAU,EAAE,QAAQ,EAAE;QAClD,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM;KACrC,CAAC,CAAC;IACH,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;IAEvB,6DAA6D;IAC7D,oEAAoE;IACpE,IAAI,WAAW,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/C,MAAM,gBAAgB,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACvE,OAAO,CAAC,KAAK,CACX,2DAA2D,gBAAgB,YAAY,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,CAClI,CAAC;QACF,MAAM,QAAQ,GAAG,4BAA4B,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;QACxE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,QAAQ,IAAI,CAAC,CAAC;QACtC,OAAO,CAAC,KAAK,CACX,oBAAoB,UAAU,UAAU,KAAK,SAAS,SAAS,YAAY,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,6BAA6B,gBAAgB,sBAAsB,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,CAClN,CAAC;QACF,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;QACd,OAAO,CAAC,KAAK,CACX,0BAA0B,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,4BAA4B,MAAM,CAAC,WAAW,CAAC,MAAM,kBAAkB,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,CAC1J,CAAC;QACF,IAAI,WAAW;YAAE,OAAO,cAAc,EAAE,CAAC;QACzC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAC3B,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,KAAK,WAAW,CAAC,uBAAuB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACzD,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO;SAChC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;SAClC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEb,IAAI,WAAW,EAAE,CAAC;QAChB,gEAAgE;QAChE,uEAAuE;QACvE,6DAA6D;QAC7D,wEAAwE;QACxE,+CAA+C;QAC/C,KAAK,CAAC,kBAAkB,GAAG,MAAM,CAAC,OAAO,CAAC;QAC1C,OAAO,CAAC,KAAK,CACX,uDAAuD,YAAY,YAAY,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,CAC1H,CAAC;QACF,OAAO,cAAc,EAAE,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC;IACpC,OAAO,CAAC,KAAK,CACX,sDAAsD,YAAY,YAAY,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,CACzH,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IAC3B,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,KAAK,UAAU,kBAAkB,CAAC,IAAY;IAC5C,IAAI,GAAmB,CAAC;IACxB,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAmB,CAAC;IAC3C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;IACD,4CAA4C;IAC5C,sEAAsE;IACtE,uEAAuE;IACvE,mEAAmE;IACnE,sEAAsE;IACtE,qDAAqD;IACrD,IAAI,GAAG,CAAC,EAAE,KAAK,SAAS,IAAI,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;QAC5D,mBAAmB,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACnC,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC;QAChC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAC7D,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,YAAY,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC;gBACvE,CAAC,CAAE,IAAI,CAAC,OAAO,CAA6B;gBAC5C,CAAC,CAAC,EAAE,CAAC;YACP,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,YAAY,EAAE,sBAAsB,EAAE,IAAI,EAAE,CAAC;YAClE,OAAO,IAAI,CAAC,CAAC;QACf,CAAC;QACD,OAAO,CAAC,KAAK,CAAC,8CAA8C,OAAO,EAAE,CAAC,CAAC;QACvE,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CACX,gDAAgD,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,4CAA4C,CAClK,CAAC;YACF,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IACD,IAAI,GAAG,CAAC,EAAE,KAAK,SAAS,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9D,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAE,CAAC;IAC/B,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACvB,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC;IACvC,MAAM,WAAW,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1F,MAAM,cAAc,GAAG,aAAa,CAAC,CAAC,SAAS,EAAE,CAAC;IAClD,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;QACd,MAAM,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QACpF,OAAO,CAAC,KAAK,CACX,oBAAoB,CAAC,CAAC,MAAM,UAAU,KAAK,SAAS,SAAS,IAAI,WAAW,WAAW,OAAO,KAAK,cAAc,OAAO,OAAO,EAAE,CAClI,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACnC,MAAM,WAAW,GAAG,CAAC,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACxF,OAAO,CAAC,KAAK,CACX,oBAAoB,CAAC,CAAC,MAAM,UAAU,KAAK,SAAS,SAAS,IAAI,WAAW,SAAS,IAAI,IAAI,cAAc,GAAG,WAAW,OAAO,OAAO,EAAE,CAC1I,CAAC;IAEF,8DAA8D;IAC9D,yEAAyE;IACzE,uEAAuE;IACvE,wEAAwE;IACxE,kEAAkE;IAClE,gEAAgE;IAChE,+DAA+D;IAC/D,yEAAyE;IACzE,uBAAuB;IACvB,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,UAAU,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACnE,MAAM,QAAQ,GAAG,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChD,MAAM,YAAY,GAAG,CAAC,CAAC,YAAY,IAAI,EAAE,CAAC;QAC1C,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,SAAS,CAAC;QACtD,MAAM,cAAc,GAAG,CAAC,CAAC,cAAc,IAAI,SAAS,CAAC;QACrD,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC;QACxC,OAAO,CAAC,KAAK,CACX,IAAA,0BAAe,EAAC;YACd,IAAI,EAAE,UAAU;YAChB,YAAY;YACZ,YAAY,EAAE,QAAQ,CAAC,KAAK;YAC5B,WAAW,EAAE,QAAQ,CAAC,IAAI;YAC1B,SAAS;YACT,SAAS,EAAE,cAAc;SAC1B,CAAC,CACH,CAAC;QACF,MAAM,aAAa,GAAmB,IAAA,2BAAgB,EAAC;YACrD,MAAM,EAAE,CAAC,CAAC,UAAU;YACpB,MAAM,EAAE,QAAQ;YAChB,SAAS;YACT,SAAS,EAAE,cAAc;YACzB,YAAY,EAAE,QAAQ,CAAC,KAAK;YAC5B,WAAW,EAAE,QAAQ,CAAC,IAAI;YAC1B,SAAS,EAAE,EAAE;SACd,CAAC,CAAC;QACH,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;YAC9B,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;gBACf,KAAK,sBAAsB;oBACzB,OAAO,CAAC,KAAK,CACX,IAAA,0BAAe,EAAC;wBACd,IAAI,EAAE,sBAAsB;wBAC5B,YAAY;wBACZ,IAAI,EAAE,CAAC,CAAC,IAAI;qBACb,CAAC,CACH,CAAC;oBACF,MAAM;gBACR,KAAK,4BAA4B;oBAC/B,OAAO,CAAC,KAAK,CACX,IAAA,0BAAe,EAAC;wBACd,IAAI,EAAE,4BAA4B;wBAClC,YAAY;wBACZ,OAAO,EAAE,CAAC,CAAC,OAAO;wBAClB,OAAO,EAAE,CAAC,CAAC,OAAO;qBACnB,CAAC,CACH,CAAC;oBACF,MAAM;gBACR,KAAK,gBAAgB;oBACnB,OAAO,CAAC,KAAK,CACX,IAAA,0BAAe,EAAC;wBACd,IAAI,EAAE,gBAAgB;wBACtB,YAAY;wBACZ,SAAS,EAAE,CAAC,CAAC,SAAS;qBACvB,CAAC,CACH,CAAC;oBACF,MAAM;YACV,CAAC;QACH,CAAC;IACH,CAAC;IAED,+DAA+D;IAC/D,gEAAgE;IAChE,uEAAuE;IACvE,2EAA2E;IAC3E,4DAA4D;IAC5D,IAAI,gBAAgB,GAAkB,IAAI,CAAC;IAC3C,IACE,CAAC,CAAC,CAAC,OAAO;QACV,CAAC,CAAC,UAAU;QACZ,GAAG,CAAC,MAAM;QACV,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO;QACnB,CAAC,CAAC,MAAM,KAAK,gBAAgB,EAC7B,CAAC;QACD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,CAAC,MAAM,IAAA,iCAAe,EACnC,gBAAgB,EAChB,SAAS,EACT,aAAa,CACd,CAAgB,CAAC;YAClB,MAAM,aAAa,GAAG,MAAM,IAAA,kCAAY,EACtC,MAAM,EACN,CAAC,CAAC,UAAU,EACZ,CAAC,CAAC,YAAY,IAAI,EAAE,CACrB,CAAC;YACF,MAAM,gBAAgB,GAAG,IAAA,iDAA2B,EAAC,aAAa,CAAC,CAAC;YACpE,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChC,MAAM,SAAS,GAAG,IAAA,wBAAU,EAAC,MAAM,CAAC;qBACjC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC;qBACpB,MAAM,CAAC,KAAK,CAAC;qBACb,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAChB,KAAK,MAAM,CAAC,IAAI,gBAAgB,EAAE,CAAC;oBACjC,OAAO,CAAC,KAAK,CACX,2CAA2C,CAAC,CAAC,UAAU,eAAe,SAAS,iBAAiB,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,CACpI,CAAC;gBACJ,CAAC;gBACD,gBAAgB,GAAG,IAAA,gDAA0B,EAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;YACvE,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAChE,OAAO,CAAC,KAAK,CACX,8BAA8B,CAAC,CAAC,MAAM,WAAW,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,iDAAiD,CAC5H,CAAC;QACJ,CAAC;IACH,CAAC;IAED,+DAA+D;IAC/D,4EAA4E;IAC5E,mEAAmE;IACnE,IAAI,CAAC,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,IAAI,CAAC;YACH,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,GAAG,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC;YAChE,IAAI,gBAAgB,EAAE,CAAC;gBACrB,mEAAmE;gBACnE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAmB,CAAC;gBAC9D,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAmB,CAAC;gBAClE,MAAM,MAAM,GAAmB;oBAC7B,GAAG,SAAS;oBACZ,MAAM,EAAE;wBACN,GAAG,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE,CAAC;wBAC3B,OAAO,EAAE;4BACP,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;4BAC7C,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,IAAI,EAAE,CAAC;yBACrC;qBACF;iBACF,CAAC;gBACF,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAChC,CAAC;YACD,OAAO,iBAAiB,CAAC;QAC3B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAChE,OAAO,CAAC,KAAK,CACX,4CAA4C,CAAC,CAAC,MAAM,WAAW,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,mCAAmC,CAC5H,CAAC;YACF,OAAO,gBAAgB,CAAC;QAC1B,CAAC;IACH,CAAC;IACD,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc;IACrB,MAAM,OAAO,GAAG,IAAI,mCAAa,CAAC,MAAM,CAAC,CAAC;IAC1C,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,OAAO;QACL,IAAI,CAAC,KAAa;YAChB,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC5B,MAAM,GAAG,GAAa,EAAE,CAAC;YACzB,IAAI,GAAW,CAAC;YAChB,OAAO,CAAC,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;gBACxC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;gBAC5B,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;YAC3B,CAAC;YACD,OAAO,GAAG,CAAC;QACb,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,aAAa,GAAG,cAAc,EAAE,CAAC;AACvC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;IACzC,KAAK,MAAM,IAAI,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACxB,SAAS;QACX,CAAC;QACD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;QACjC,CAAC;QACD,kEAAkE;IACpE,CAAC;AACH,CAAC,CAAC,CAAC;AACH,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;IAC3B,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;AACpB,CAAC,CAAC,CAAC;AAEH,MAAM,cAAc,GAAG,cAAc,EAAE,CAAC;AACxC,gEAAgE;AAChE,yEAAyE;AACzE,0EAA0E;AAC1E,yEAAyE;AACzE,sDAAsD;AACtD,IAAI,kBAAkB,GAAkB,OAAO,CAAC,OAAO,EAAE,CAAC;AAC1D,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;IACxC,KAAK,MAAM,IAAI,IAAI,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC9C,kBAAkB,GAAG,kBAAkB,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;YACtD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACtB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC3B,OAAO;YACT,CAAC;YACD,MAAM,SAAS,GAAG,MAAM,kBAAkB,CAAC,IAAI,CAAC,CAAC;YACjD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,SAAS,IAAI,IAAI,IAAI,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;IACL,CAAC;AACH,CAAC,CAAC,CAAC;AACH,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;IAC1B,kEAAkE;IAClE,6EAA6E;IAC7E,6EAA6E;IAC7E,mEAAmE;IACnE,kBAAkB,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;AACtD,CAAC,CAAC,CAAC;AAEH,KAAK,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,CAAU,EAAE,CAAC;IAC3D,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE;QACnB,OAAO,CAAC,KAAK,CAAC,eAAe,GAAG,iCAAiC,CAAC,CAAC;QACnE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,8 @@
9
9
  * (falls back to `${PLATFORM_ROOT}/config/.neo4j-password`, matching
10
10
  * plugins/memory/mcp/src/lib/neo4j.ts:10-21).
11
11
  * 2. Installs the Maxy stderr tee so upstream stderr lands in the
12
- * per-conversation stream log alongside every other plugin.
12
+ * per-conversation stream log alongside every other plugin. The raw
13
+ * per-server sink is the mcp-spawn-tee shim's, not this module's.
13
14
  * 3. Locks the upstream server into read-only mode (`NEO4J_READ_ONLY=true`)
14
15
  * and a stable Maxy namespace (`NEO4J_NAMESPACE=maxy-graph`).
15
16
  * 4. Parses JSON-RPC lines on the request path to record the cypher and
@@ -24,7 +25,7 @@
24
25
  */
25
26
 
26
27
  import { execFileSync, spawn } from "node:child_process";
27
- import { accessSync, appendFileSync, constants, mkdirSync, readFileSync, statSync } from "node:fs";
28
+ import { accessSync, appendFileSync, constants, readFileSync, statSync } from "node:fs";
28
29
  import { resolve } from "node:path";
29
30
  import { StringDecoder } from "node:string_decoder";
30
31
  import { initStderrTee } from "../../mcp-stderr-tee/dist/index.js";
@@ -61,29 +62,21 @@ const UPSTREAM_PACKAGE = "mcp-neo4j-cypher@0.6.0";
61
62
 
62
63
  initStderrTee(SERVER_NAME);
63
64
 
64
- // Sync-write failure line to the per-server raw file AND the per-conversation
65
- // stream log. Used only on exit paths (missing password, uvx unresolvable,
66
- // upstream spawn/exit error) where the async stderr tee's createWriteStream
67
- // buffer will not flush before process.exit() outraces it. `appendFileSync`
68
- // returns after the kernel has queued the write, so the line survives an
69
- // immediate exit. Each destination is wrapped independently an unwritable
70
- // destination must not mask the primary failure. The final process.stderr.write
71
- // goes through the patched writer installed by initStderrTee; any async tee
72
- // writes it schedules are discarded by the subsequent process.exit, but its
73
- // inline write to the original stderr still reaches Claude Code's consumer.
65
+ // Sync-write failure line to the per-conversation stream log. Used only on exit
66
+ // paths (missing password, uvx unresolvable, upstream spawn/exit error) where an
67
+ // async createWriteStream buffer would not flush before process.exit() outraces
68
+ // it. `appendFileSync` returns after the kernel has queued the write, so the line
69
+ // survives an immediate exit. Each destination is wrapped independently an
70
+ // unwritable destination must not mask the primary failure.
71
+ //
72
+ // Task 1721 removed this function's own raw-file write. The final
73
+ // process.stderr.write goes through the writer the mcp-spawn-tee shim installed
74
+ // (PLUGIN.md spawns this entry under it), and that shim's appendSafe is itself
75
+ // an appendFileSync to the raw sink — so exit-path lines still reach disk
76
+ // synchronously, via one writer instead of two.
74
77
  function syncEmit(line: string): void {
75
78
  const msg = `[graph-mcp] ${line}`;
76
79
  const iso = new Date().toISOString();
77
- const logDir = process.env.LOG_DIR;
78
- if (logDir) {
79
- try {
80
- mkdirSync(logDir, { recursive: true });
81
- const date = iso.slice(0, 10);
82
- appendFileSync(resolve(logDir, `mcp-${SERVER_NAME}-stderr-${date}.log`), `${msg}\n`);
83
- } catch {
84
- /* unwritable destination — preserve primary failure */
85
- }
86
- }
87
80
  const streamLogPath = process.env.STREAM_LOG_PATH;
88
81
  if (streamLogPath) {
89
82
  try {
@@ -12,14 +12,15 @@
12
12
  *
13
13
  * Claude Code CLI → shim (this file) = node running <real-entry> in-process
14
14
  * stdin/stdout : untouched (JSON-RPC channel)
15
- * stderr : process.stderr.write teed → per-date + per-session + passthrough
15
+ * stderr : process.stderr.write teed → raw sink + passthrough
16
16
  *
17
- * Destinations (Task 706) — unchanged:
18
- * - `${LOG_DIR}/mcp-<name>-stderr-<date>.log` per-date raw (back-compat;
19
- * the in-process mcp-stderr-tee and the [mcp-init-error] probe read it).
20
- * - `${LOG_DIR}/mcp-<name>-<SESSION_ID>.log` — per-session raw + lifecycle
21
- * lines. Authoritative sink. Absent when SESSION_ID is unset (enumeration
22
- * spawn)then the per-date file is the fallback.
17
+ * Destinations:
18
+ * - `${LOG_DIR}/mcp-<name>-<SESSION_ID>.log` — raw stderr + lifecycle lines.
19
+ * The sole raw sink. Task 1721 retired the per-date twin: its date was
20
+ * pinned at spawn, no reader ever parsed it, and mcp-stderr-tee wrote the
21
+ * same file, so every line landed twice.
22
+ * - `${LOG_DIR}/mcp-<name>-nosession.log` — the same, for a spawn with
23
+ * no SESSION_ID (enumeration). One fixed file per server.
23
24
  * - `server.log` via the loopback log-ingest route — best-effort mirror of
24
25
  * the [mcp-helper] lifecycle lines.
25
26
  *
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG"}
@@ -13,14 +13,15 @@
13
13
  *
14
14
  * Claude Code CLI → shim (this file) = node running <real-entry> in-process
15
15
  * stdin/stdout : untouched (JSON-RPC channel)
16
- * stderr : process.stderr.write teed → per-date + per-session + passthrough
16
+ * stderr : process.stderr.write teed → raw sink + passthrough
17
17
  *
18
- * Destinations (Task 706) — unchanged:
19
- * - `${LOG_DIR}/mcp-<name>-stderr-<date>.log` per-date raw (back-compat;
20
- * the in-process mcp-stderr-tee and the [mcp-init-error] probe read it).
21
- * - `${LOG_DIR}/mcp-<name>-<SESSION_ID>.log` — per-session raw + lifecycle
22
- * lines. Authoritative sink. Absent when SESSION_ID is unset (enumeration
23
- * spawn)then the per-date file is the fallback.
18
+ * Destinations:
19
+ * - `${LOG_DIR}/mcp-<name>-<SESSION_ID>.log` — raw stderr + lifecycle lines.
20
+ * The sole raw sink. Task 1721 retired the per-date twin: its date was
21
+ * pinned at spawn, no reader ever parsed it, and mcp-stderr-tee wrote the
22
+ * same file, so every line landed twice.
23
+ * - `${LOG_DIR}/mcp-<name>-nosession.log` — the same, for a spawn with
24
+ * no SESSION_ID (enumeration). One fixed file per server.
24
25
  * - `server.log` via the loopback log-ingest route — best-effort mirror of
25
26
  * the [mcp-helper] lifecycle lines.
26
27
  *
@@ -49,13 +50,13 @@ const PLATFORM_PORT = process.env.PLATFORM_PORT;
49
50
  const ENTRY = process.argv[2];
50
51
  const SESSION_ID8 = SESSION_ID ? SESSION_ID.slice(0, 8) : "—";
51
52
  const spawnStamp = Date.now();
52
- // Per-session raw + lifecycle log (Task 706). Empty SESSION_ID (enumeration
53
- // spawn) undefined, and the per-date file is the fallback.
54
- const perSessionPath = LOG_DIR && SESSION_ID
55
- ? (0, node_path_1.resolve)(LOG_DIR, `mcp-${SERVER_NAME}-${SESSION_ID}.log`)
56
- : undefined;
57
- const perDatePath = LOG_DIR
58
- ? (0, node_path_1.resolve)(LOG_DIR, `mcp-${SERVER_NAME}-stderr-${new Date(spawnStamp).toISOString().slice(0, 10)}.log`)
53
+ // The one raw sink (Task 1721). A sessionless spawn (rc-daemon stamps
54
+ // SESSION_ID='' rc-daemon.ts:513 while still stamping LOG_DIR) shares one
55
+ // fixed file per server rather than a date-named one: the date was never read
56
+ // by any reader and named a process lifetime, not a day. Interleaved spawns in
57
+ // the nosession file are separated by the [mcp-helper] op=spawn pid= lines.
58
+ const rawSinkPath = LOG_DIR
59
+ ? (0, node_path_1.resolve)(LOG_DIR, SESSION_ID ? `mcp-${SERVER_NAME}-${SESSION_ID}.log` : `mcp-${SERVER_NAME}-nosession.log`)
59
60
  : undefined;
60
61
  // Rolling tail of entry stderr for op=exit. Capped so a chatty server cannot
61
62
  // grow the buffer without bound.
@@ -66,7 +67,7 @@ let exitEmitted = false;
66
67
  let exitSignal;
67
68
  // The real stderr writer, captured before the tee replaces it. Lifecycle lines
68
69
  // and stderr passthrough both go through this so they are never re-teed into
69
- // the per-date sink nor recursed back into the patched writer.
70
+ // the raw sink nor recursed back into the patched writer.
70
71
  const rawStderrWrite = process.stderr.write.bind(process.stderr);
71
72
  // LOG_DIR is created once, lazily, on the first successful append — not per
72
73
  // chunk. teeWrite runs on the server's own stderr hot path now, so a per-call
@@ -115,7 +116,7 @@ function postToServerLog(suffix, level) {
115
116
  // log-ingest route rejects newlines).
116
117
  function emitLifecycle(suffix, level) {
117
118
  const line = `[mcp-helper] ${suffix}\n`;
118
- appendSafe(perSessionPath, line);
119
+ appendSafe(rawSinkPath, line);
119
120
  try {
120
121
  rawStderrWrite(line);
121
122
  }
@@ -127,12 +128,11 @@ if (!ENTRY) {
127
128
  process.exit(2);
128
129
  }
129
130
  // Replace process.stderr.write with a tee: mirror every server stderr byte to
130
- // the per-date and per-session sinks, keep a rolling tail for op=exit, emit
131
+ // the raw sink, keep a rolling tail for op=exit, emit
131
132
  // op=boot on the first bytes, then pass the write through to the real stderr.
132
133
  const teeWrite = ((...args) => {
133
134
  const chunk = args[0];
134
- appendSafe(perDatePath, chunk); // per-date raw (back-compat)
135
- appendSafe(perSessionPath, chunk); // per-session raw (Task 706)
135
+ appendSafe(rawSinkPath, chunk); // raw sink (Task 1721)
136
136
  const text = typeof chunk === "string" ? chunk : Buffer.from(chunk).toString("utf8");
137
137
  stderrTail = (stderrTail + text).slice(-TAIL_CAP);
138
138
  if (!bootEmitted) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,9 @@ const tsc = resolve(libRoot, '..', '..', 'node_modules', '.bin', 'tsc')
15
15
  beforeAll(() => {
16
16
  execFileSync(tsc, ['-p', 'tsconfig.json'], { cwd: libRoot, stdio: 'inherit' })
17
17
  expect(existsSync(shim)).toBe(true)
18
+ // The duplication guard's stub requires mcp-stderr-tee's built artifact.
19
+ const teeRoot = resolve(libRoot, '..', 'mcp-stderr-tee')
20
+ execFileSync(tsc, ['-p', 'tsconfig.json'], { cwd: teeRoot, stdio: 'inherit' })
18
21
  })
19
22
 
20
23
  let tmp = ''
@@ -130,13 +133,39 @@ describe('mcp-spawn-tee in-process shim', () => {
130
133
  expect(r.stdout).toBe('JSONRPC-PAYLOAD')
131
134
  })
132
135
 
133
- it('falls back to the per-date file when SESSION_ID is absent', () => {
136
+ it('writes the nosession sink when SESSION_ID is absent', () => {
134
137
  const { stub, logDir } = makeStub('process.stderr.write("enum-boot\\n"); process.exit(0)')
135
138
  runSync(stub, { LOG_DIR: logDir, MCP_SPAWN_TEE_NAME: 'stub' }) // SESSION_ID forced empty by runSync
136
- const files = readdirSync(logDir)
137
- expect(files.some((f) => /^mcp-stub-stderr-\d{4}-\d{2}-\d{2}\.log$/.test(f))).toBe(true)
138
- const perDate = readFileSync(join(logDir, files.find((f) => f.includes('stderr-'))!), 'utf8')
139
- expect(perDate).toContain('enum-boot')
139
+ expect(readdirSync(logDir)).toContain('mcp-stub-nosession.log')
140
+ expect(readFileSync(join(logDir, 'mcp-stub-nosession.log'), 'utf8')).toContain('enum-boot')
141
+ })
142
+
143
+ // Task 1721 — the real spawn shape for 21 of 22 plugins: the shim patches
144
+ // stderr, then the entry's initStderrTee patches it again (the INIT_MARKER
145
+ // guard checks a symbol the shim never sets, so the patches stack). Both
146
+ // modules used to write mcp-<name>-stderr-<date>.log, so every line landed
147
+ // there twice. The sink is the only raw file, and it holds one copy.
148
+ it('writes one raw file holding one copy when the entry also installs initStderrTee', () => {
149
+ const teeDist = resolve(libRoot, '..', 'mcp-stderr-tee', 'dist', 'index.js')
150
+ const { stub, logDir } = makeStub(
151
+ `const { initStderrTee } = require(${JSON.stringify(teeDist)});\n` +
152
+ `initStderrTee("stub");\n` +
153
+ `process.stderr.write("ONCE\\n");\n` +
154
+ `setTimeout(() => process.exit(0), 50);\n`,
155
+ )
156
+ runSync(stub, { LOG_DIR: logDir, SESSION_ID: 'dup1', MCP_SPAWN_TEE_NAME: 'stub' })
157
+ // initStderrTee must contribute no second raw file of its own.
158
+ expect(readdirSync(logDir)).toEqual(['mcp-stub-dup1.log'])
159
+ const body = readFileSync(join(logDir, 'mcp-stub-dup1.log'), 'utf8')
160
+ // Exact-line match: op=boot carries head="ONCE" and op=exit carries
161
+ // stderr-tail="ONCE\n", and neither is a duplicate of the raw line.
162
+ expect(body.split('\n').filter((l) => l === 'ONCE')).toHaveLength(1)
163
+ })
164
+
165
+ it('writes no date-named sink for any spawn', () => {
166
+ const { stub, logDir } = makeStub('process.stderr.write("x\\n"); process.exit(0)')
167
+ runSync(stub, { LOG_DIR: logDir, SESSION_ID: 'sess-nodate', MCP_SPAWN_TEE_NAME: 'stub' })
168
+ expect(readdirSync(logDir).some((f) => /stderr-\d{4}-\d{2}-\d{2}\.log$/.test(f))).toBe(false)
140
169
  })
141
170
 
142
171
  it('does not crash when PLATFORM_PORT is unreachable', () => {
@@ -12,14 +12,15 @@
12
12
  *
13
13
  * Claude Code CLI → shim (this file) = node running <real-entry> in-process
14
14
  * stdin/stdout : untouched (JSON-RPC channel)
15
- * stderr : process.stderr.write teed → per-date + per-session + passthrough
15
+ * stderr : process.stderr.write teed → raw sink + passthrough
16
16
  *
17
- * Destinations (Task 706) — unchanged:
18
- * - `${LOG_DIR}/mcp-<name>-stderr-<date>.log` per-date raw (back-compat;
19
- * the in-process mcp-stderr-tee and the [mcp-init-error] probe read it).
20
- * - `${LOG_DIR}/mcp-<name>-<SESSION_ID>.log` — per-session raw + lifecycle
21
- * lines. Authoritative sink. Absent when SESSION_ID is unset (enumeration
22
- * spawn)then the per-date file is the fallback.
17
+ * Destinations:
18
+ * - `${LOG_DIR}/mcp-<name>-<SESSION_ID>.log` — raw stderr + lifecycle lines.
19
+ * The sole raw sink. Task 1721 retired the per-date twin: its date was
20
+ * pinned at spawn, no reader ever parsed it, and mcp-stderr-tee wrote the
21
+ * same file, so every line landed twice.
22
+ * - `${LOG_DIR}/mcp-<name>-nosession.log` — the same, for a spawn with
23
+ * no SESSION_ID (enumeration). One fixed file per server.
23
24
  * - `server.log` via the loopback log-ingest route — best-effort mirror of
24
25
  * the [mcp-helper] lifecycle lines.
25
26
  *
@@ -51,13 +52,16 @@ const ENTRY = process.argv[2];
51
52
  const SESSION_ID8 = SESSION_ID ? SESSION_ID.slice(0, 8) : "—";
52
53
  const spawnStamp = Date.now();
53
54
 
54
- // Per-session raw + lifecycle log (Task 706). Empty SESSION_ID (enumeration
55
- // spawn) undefined, and the per-date file is the fallback.
56
- const perSessionPath = LOG_DIR && SESSION_ID
57
- ? resolve(LOG_DIR, `mcp-${SERVER_NAME}-${SESSION_ID}.log`)
58
- : undefined;
59
- const perDatePath = LOG_DIR
60
- ? resolve(LOG_DIR, `mcp-${SERVER_NAME}-stderr-${new Date(spawnStamp).toISOString().slice(0, 10)}.log`)
55
+ // The one raw sink (Task 1721). A sessionless spawn (rc-daemon stamps
56
+ // SESSION_ID='' rc-daemon.ts:513 while still stamping LOG_DIR) shares one
57
+ // fixed file per server rather than a date-named one: the date was never read
58
+ // by any reader and named a process lifetime, not a day. Interleaved spawns in
59
+ // the nosession file are separated by the [mcp-helper] op=spawn pid= lines.
60
+ const rawSinkPath = LOG_DIR
61
+ ? resolve(
62
+ LOG_DIR,
63
+ SESSION_ID ? `mcp-${SERVER_NAME}-${SESSION_ID}.log` : `mcp-${SERVER_NAME}-nosession.log`,
64
+ )
61
65
  : undefined;
62
66
 
63
67
  // Rolling tail of entry stderr for op=exit. Capped so a chatty server cannot
@@ -70,7 +74,7 @@ let exitSignal: NodeJS.Signals | undefined;
70
74
 
71
75
  // The real stderr writer, captured before the tee replaces it. Lifecycle lines
72
76
  // and stderr passthrough both go through this so they are never re-teed into
73
- // the per-date sink nor recursed back into the patched writer.
77
+ // the raw sink nor recursed back into the patched writer.
74
78
  const rawStderrWrite = process.stderr.write.bind(process.stderr);
75
79
 
76
80
  // LOG_DIR is created once, lazily, on the first successful append — not per
@@ -116,7 +120,7 @@ function postToServerLog(suffix: string, level: "info" | "error"): void {
116
120
  // log-ingest route rejects newlines).
117
121
  function emitLifecycle(suffix: string, level: "info" | "error"): void {
118
122
  const line = `[mcp-helper] ${suffix}\n`;
119
- appendSafe(perSessionPath, line);
123
+ appendSafe(rawSinkPath, line);
120
124
  try { rawStderrWrite(line); } catch { /* stderr closed */ }
121
125
  postToServerLog(suffix, level);
122
126
  }
@@ -127,12 +131,11 @@ if (!ENTRY) {
127
131
  }
128
132
 
129
133
  // Replace process.stderr.write with a tee: mirror every server stderr byte to
130
- // the per-date and per-session sinks, keep a rolling tail for op=exit, emit
134
+ // the raw sink, keep a rolling tail for op=exit, emit
131
135
  // op=boot on the first bytes, then pass the write through to the real stderr.
132
136
  const teeWrite = ((...args: unknown[]): boolean => {
133
137
  const chunk = args[0] as string | Uint8Array;
134
- appendSafe(perDatePath, chunk); // per-date raw (back-compat)
135
- appendSafe(perSessionPath, chunk); // per-session raw (Task 706)
138
+ appendSafe(rawSinkPath, chunk); // raw sink (Task 1721)
136
139
  const text = typeof chunk === "string" ? chunk : Buffer.from(chunk).toString("utf8");
137
140
  stderrTail = (stderrTail + text).slice(-TAIL_CAP);
138
141
  if (!bootEmitted) {