@skillcap/gdh 3.2.1 → 3.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (639) hide show
  1. package/INSTALL-BUNDLE.json +1 -1
  2. package/RELEASE-SPAN-UPDATE-CONTRACTS.json +134 -0
  3. package/node_modules/@clack/core/CHANGELOG.md +8 -0
  4. package/node_modules/@clack/core/dist/index.d.mts +18 -4
  5. package/node_modules/@clack/core/dist/index.mjs +16 -10
  6. package/node_modules/@clack/core/dist/index.mjs.map +1 -1
  7. package/node_modules/@clack/core/package.json +5 -2
  8. package/node_modules/@clack/prompts/CHANGELOG.md +15 -0
  9. package/node_modules/@clack/prompts/README.md +107 -2
  10. package/node_modules/@clack/prompts/dist/index.d.mts +16 -11
  11. package/node_modules/@clack/prompts/dist/index.mjs +114 -107
  12. package/node_modules/@clack/prompts/dist/index.mjs.map +1 -1
  13. package/node_modules/@clack/prompts/package.json +7 -4
  14. package/node_modules/@gdh/adapters/dist/authoring-hook-render.d.ts.map +1 -1
  15. package/node_modules/@gdh/adapters/dist/authoring-hook-render.js +1 -1
  16. package/node_modules/@gdh/adapters/dist/authoring-hook-render.js.map +1 -1
  17. package/node_modules/@gdh/adapters/dist/claude-settings-patch.d.ts.map +1 -1
  18. package/node_modules/@gdh/adapters/dist/claude-settings-patch.js +4 -2
  19. package/node_modules/@gdh/adapters/dist/claude-settings-patch.js.map +1 -1
  20. package/node_modules/@gdh/adapters/dist/claude-statusline-render.d.ts.map +1 -1
  21. package/node_modules/@gdh/adapters/dist/claude-statusline-render.js +1 -1
  22. package/node_modules/@gdh/adapters/dist/claude-statusline-render.js.map +1 -1
  23. package/node_modules/@gdh/adapters/dist/claude-update-hook-render.d.ts.map +1 -1
  24. package/node_modules/@gdh/adapters/dist/claude-update-hook-render.js +1 -1
  25. package/node_modules/@gdh/adapters/dist/claude-update-hook-render.js.map +1 -1
  26. package/node_modules/@gdh/adapters/dist/claude-update-worker-render.d.ts.map +1 -1
  27. package/node_modules/@gdh/adapters/dist/claude-update-worker-render.js +1 -1
  28. package/node_modules/@gdh/adapters/dist/claude-update-worker-render.js.map +1 -1
  29. package/node_modules/@gdh/adapters/dist/deferred-actions-advisory.d.ts.map +1 -1
  30. package/node_modules/@gdh/adapters/dist/deferred-actions-advisory.js +1 -1
  31. package/node_modules/@gdh/adapters/dist/deferred-actions-advisory.js.map +1 -1
  32. package/node_modules/@gdh/adapters/dist/durable-backup.d.ts.map +1 -1
  33. package/node_modules/@gdh/adapters/dist/durable-backup.js +3 -5
  34. package/node_modules/@gdh/adapters/dist/durable-backup.js.map +1 -1
  35. package/node_modules/@gdh/adapters/dist/index.d.ts +11 -37
  36. package/node_modules/@gdh/adapters/dist/index.d.ts.map +1 -1
  37. package/node_modules/@gdh/adapters/dist/index.js +18 -90
  38. package/node_modules/@gdh/adapters/dist/index.js.map +1 -1
  39. package/node_modules/@gdh/adapters/dist/inventory-sweep.d.ts.map +1 -1
  40. package/node_modules/@gdh/adapters/dist/inventory-sweep.js +1 -3
  41. package/node_modules/@gdh/adapters/dist/inventory-sweep.js.map +1 -1
  42. package/node_modules/@gdh/adapters/dist/managed-surfaces.d.ts +32 -0
  43. package/node_modules/@gdh/adapters/dist/managed-surfaces.d.ts.map +1 -0
  44. package/node_modules/@gdh/adapters/dist/managed-surfaces.js +66 -0
  45. package/node_modules/@gdh/adapters/dist/managed-surfaces.js.map +1 -0
  46. package/node_modules/@gdh/adapters/dist/process-orchestration.d.ts +1 -1
  47. package/node_modules/@gdh/adapters/dist/process-orchestration.d.ts.map +1 -1
  48. package/node_modules/@gdh/adapters/dist/process-orchestration.js +3 -2
  49. package/node_modules/@gdh/adapters/dist/process-orchestration.js.map +1 -1
  50. package/node_modules/@gdh/adapters/dist/self-update-mechanics.d.ts.map +1 -1
  51. package/node_modules/@gdh/adapters/dist/self-update-mechanics.js +11 -23
  52. package/node_modules/@gdh/adapters/dist/self-update-mechanics.js.map +1 -1
  53. package/node_modules/@gdh/adapters/dist/skill-rendering.d.ts.map +1 -1
  54. package/node_modules/@gdh/adapters/dist/skill-rendering.js +2 -8
  55. package/node_modules/@gdh/adapters/dist/skill-rendering.js.map +1 -1
  56. package/node_modules/@gdh/adapters/dist/template-assets.js.map +1 -1
  57. package/node_modules/@gdh/adapters/package.json +7 -8
  58. package/node_modules/@gdh/authoring/dist/authoring-state-store.d.ts.map +1 -1
  59. package/node_modules/@gdh/authoring/dist/authoring-state-store.js.map +1 -1
  60. package/node_modules/@gdh/authoring/dist/cache.d.ts.map +1 -1
  61. package/node_modules/@gdh/authoring/dist/cache.js.map +1 -1
  62. package/node_modules/@gdh/authoring/dist/diagnostics-broker-contract.d.ts +2 -2
  63. package/node_modules/@gdh/authoring/dist/diagnostics-broker-contract.d.ts.map +1 -1
  64. package/node_modules/@gdh/authoring/dist/diagnostics-broker-contract.js +2 -2
  65. package/node_modules/@gdh/authoring/dist/diagnostics-broker-contract.js.map +1 -1
  66. package/node_modules/@gdh/authoring/dist/diagnostics-broker.d.ts.map +1 -1
  67. package/node_modules/@gdh/authoring/dist/diagnostics-broker.js +15 -12
  68. package/node_modules/@gdh/authoring/dist/diagnostics-broker.js.map +1 -1
  69. package/node_modules/@gdh/authoring/dist/lsp-broker-snapshot.d.ts.map +1 -1
  70. package/node_modules/@gdh/authoring/dist/lsp-broker-snapshot.js.map +1 -1
  71. package/node_modules/@gdh/authoring/dist/lsp-client.d.ts.map +1 -1
  72. package/node_modules/@gdh/authoring/dist/lsp-client.js.map +1 -1
  73. package/node_modules/@gdh/authoring/dist/lsp-constants.d.ts +17 -0
  74. package/node_modules/@gdh/authoring/dist/lsp-constants.d.ts.map +1 -0
  75. package/node_modules/@gdh/authoring/dist/lsp-constants.js +17 -0
  76. package/node_modules/@gdh/authoring/dist/lsp-constants.js.map +1 -0
  77. package/node_modules/@gdh/authoring/dist/lsp-warmup.d.ts.map +1 -1
  78. package/node_modules/@gdh/authoring/dist/lsp-warmup.js +2 -4
  79. package/node_modules/@gdh/authoring/dist/lsp-warmup.js.map +1 -1
  80. package/node_modules/@gdh/authoring/dist/lsp.d.ts.map +1 -1
  81. package/node_modules/@gdh/authoring/dist/lsp.js +30 -64
  82. package/node_modules/@gdh/authoring/dist/lsp.js.map +1 -1
  83. package/node_modules/@gdh/authoring/dist/prepare.d.ts.map +1 -1
  84. package/node_modules/@gdh/authoring/dist/prepare.js +1 -3
  85. package/node_modules/@gdh/authoring/dist/prepare.js.map +1 -1
  86. package/node_modules/@gdh/authoring/dist/project.d.ts.map +1 -1
  87. package/node_modules/@gdh/authoring/dist/project.js +4 -13
  88. package/node_modules/@gdh/authoring/dist/project.js.map +1 -1
  89. package/node_modules/@gdh/authoring/dist/report.d.ts.map +1 -1
  90. package/node_modules/@gdh/authoring/dist/report.js +2 -11
  91. package/node_modules/@gdh/authoring/dist/report.js.map +1 -1
  92. package/node_modules/@gdh/authoring/dist/scene-resource.d.ts.map +1 -1
  93. package/node_modules/@gdh/authoring/dist/scene-resource.js.map +1 -1
  94. package/node_modules/@gdh/authoring/dist/tcp-port.d.ts +2 -0
  95. package/node_modules/@gdh/authoring/dist/tcp-port.d.ts.map +1 -0
  96. package/node_modules/@gdh/authoring/dist/tcp-port.js +23 -0
  97. package/node_modules/@gdh/authoring/dist/tcp-port.js.map +1 -0
  98. package/node_modules/@gdh/authoring/dist/warmup.d.ts.map +1 -1
  99. package/node_modules/@gdh/authoring/dist/warmup.js.map +1 -1
  100. package/node_modules/@gdh/authoring/package.json +2 -2
  101. package/node_modules/@gdh/cli/dist/args.d.ts +44 -0
  102. package/node_modules/@gdh/cli/dist/args.d.ts.map +1 -0
  103. package/node_modules/@gdh/cli/dist/args.js +124 -0
  104. package/node_modules/@gdh/cli/dist/args.js.map +1 -0
  105. package/node_modules/@gdh/cli/dist/bridge-session.d.ts +1 -1
  106. package/node_modules/@gdh/cli/dist/bridge-session.d.ts.map +1 -1
  107. package/node_modules/@gdh/cli/dist/bridge-session.js +9 -8
  108. package/node_modules/@gdh/cli/dist/bridge-session.js.map +1 -1
  109. package/node_modules/@gdh/cli/dist/index.d.ts +4 -52
  110. package/node_modules/@gdh/cli/dist/index.d.ts.map +1 -1
  111. package/node_modules/@gdh/cli/dist/index.js +8 -197
  112. package/node_modules/@gdh/cli/dist/index.js.map +1 -1
  113. package/node_modules/@gdh/cli/dist/io.d.ts +10 -0
  114. package/node_modules/@gdh/cli/dist/io.d.ts.map +1 -0
  115. package/node_modules/@gdh/cli/dist/io.js +26 -0
  116. package/node_modules/@gdh/cli/dist/io.js.map +1 -0
  117. package/node_modules/@gdh/cli/dist/mcp-cleanup.d.ts +3 -0
  118. package/node_modules/@gdh/cli/dist/mcp-cleanup.d.ts.map +1 -1
  119. package/node_modules/@gdh/cli/dist/mcp-cleanup.js +47 -0
  120. package/node_modules/@gdh/cli/dist/mcp-cleanup.js.map +1 -1
  121. package/node_modules/@gdh/cli/dist/migrate.d.ts +1 -1
  122. package/node_modules/@gdh/cli/dist/migrate.d.ts.map +1 -1
  123. package/node_modules/@gdh/cli/dist/migrate.js +23 -30
  124. package/node_modules/@gdh/cli/dist/migrate.js.map +1 -1
  125. package/node_modules/@gdh/cli/dist/self-update.d.ts.map +1 -1
  126. package/node_modules/@gdh/cli/dist/self-update.js +13 -20
  127. package/node_modules/@gdh/cli/dist/self-update.js.map +1 -1
  128. package/node_modules/@gdh/cli/dist/setup.d.ts.map +1 -1
  129. package/node_modules/@gdh/cli/dist/setup.js.map +1 -1
  130. package/node_modules/@gdh/cli/dist/status-command.d.ts +3 -0
  131. package/node_modules/@gdh/cli/dist/status-command.d.ts.map +1 -0
  132. package/node_modules/@gdh/cli/dist/status-command.js +44 -0
  133. package/node_modules/@gdh/cli/dist/status-command.js.map +1 -0
  134. package/node_modules/@gdh/cli/dist/update-banner.d.ts.map +1 -1
  135. package/node_modules/@gdh/cli/dist/update-banner.js +1 -1
  136. package/node_modules/@gdh/cli/dist/update-banner.js.map +1 -1
  137. package/node_modules/@gdh/cli/package.json +11 -11
  138. package/node_modules/@gdh/core/dist/dev-mode.d.ts.map +1 -1
  139. package/node_modules/@gdh/core/dist/dev-mode.js.map +1 -1
  140. package/node_modules/@gdh/core/dist/editor-operation-runner.d.ts +3 -0
  141. package/node_modules/@gdh/core/dist/editor-operation-runner.d.ts.map +1 -0
  142. package/node_modules/@gdh/core/dist/editor-operation-runner.js +682 -0
  143. package/node_modules/@gdh/core/dist/editor-operation-runner.js.map +1 -0
  144. package/node_modules/@gdh/core/dist/git-root.d.ts.map +1 -1
  145. package/node_modules/@gdh/core/dist/git-root.js +4 -1
  146. package/node_modules/@gdh/core/dist/git-root.js.map +1 -1
  147. package/node_modules/@gdh/core/dist/godot-docs-version.d.ts.map +1 -1
  148. package/node_modules/@gdh/core/dist/godot-docs-version.js.map +1 -1
  149. package/node_modules/@gdh/core/dist/godot-stderr-fatality.d.ts.map +1 -1
  150. package/node_modules/@gdh/core/dist/godot-stderr-fatality.js +1 -2
  151. package/node_modules/@gdh/core/dist/godot-stderr-fatality.js.map +1 -1
  152. package/node_modules/@gdh/core/dist/index.d.ts +10 -5
  153. package/node_modules/@gdh/core/dist/index.d.ts.map +1 -1
  154. package/node_modules/@gdh/core/dist/index.js +15 -5
  155. package/node_modules/@gdh/core/dist/index.js.map +1 -1
  156. package/node_modules/@gdh/core/dist/managed-gitignore.d.ts.map +1 -1
  157. package/node_modules/@gdh/core/dist/managed-gitignore.js +4 -14
  158. package/node_modules/@gdh/core/dist/managed-gitignore.js.map +1 -1
  159. package/node_modules/@gdh/core/dist/migrations/entries/s2c2_to_s2c3_rules_schema_v2_to_v3.d.ts.map +1 -1
  160. package/node_modules/@gdh/core/dist/migrations/entries/s2c2_to_s2c3_rules_schema_v2_to_v3.js +2 -2
  161. package/node_modules/@gdh/core/dist/migrations/entries/s2c2_to_s2c3_rules_schema_v2_to_v3.js.map +1 -1
  162. package/node_modules/@gdh/core/dist/migrations/entries/s3c21_to_s3c22_canonical_hook_paths.d.ts.map +1 -1
  163. package/node_modules/@gdh/core/dist/migrations/entries/s3c21_to_s3c22_canonical_hook_paths.js +6 -14
  164. package/node_modules/@gdh/core/dist/migrations/entries/s3c21_to_s3c22_canonical_hook_paths.js.map +1 -1
  165. package/node_modules/@gdh/core/dist/migrations/entries/s3c8_to_s3c9_register_runtime_bridge_autoload.d.ts.map +1 -1
  166. package/node_modules/@gdh/core/dist/migrations/entries/s3c8_to_s3c9_register_runtime_bridge_autoload.js +7 -23
  167. package/node_modules/@gdh/core/dist/migrations/entries/s3c8_to_s3c9_register_runtime_bridge_autoload.js.map +1 -1
  168. package/node_modules/@gdh/core/dist/migrations/envelopes/envelope-output-validator.d.ts.map +1 -1
  169. package/node_modules/@gdh/core/dist/migrations/envelopes/envelope-output-validator.js.map +1 -1
  170. package/node_modules/@gdh/core/dist/migrations/envelopes/index.d.ts.map +1 -1
  171. package/node_modules/@gdh/core/dist/migrations/envelopes/index.js +1 -2
  172. package/node_modules/@gdh/core/dist/migrations/envelopes/index.js.map +1 -1
  173. package/node_modules/@gdh/core/dist/migrations/envelopes/types.d.ts.map +1 -1
  174. package/node_modules/@gdh/core/dist/migrations/golden-harness.d.ts.map +1 -1
  175. package/node_modules/@gdh/core/dist/migrations/golden-harness.js.map +1 -1
  176. package/node_modules/@gdh/core/dist/migrations/managed-surface-classes.d.ts.map +1 -1
  177. package/node_modules/@gdh/core/dist/migrations/managed-surface-classes.js.map +1 -1
  178. package/node_modules/@gdh/core/dist/migrations/managed-target-surface-inventory.d.ts.map +1 -1
  179. package/node_modules/@gdh/core/dist/migrations/managed-target-surface-inventory.js.map +1 -1
  180. package/node_modules/@gdh/core/dist/migrations/probes.d.ts.map +1 -1
  181. package/node_modules/@gdh/core/dist/migrations/probes.js.map +1 -1
  182. package/node_modules/@gdh/core/dist/migrations/registry.d.ts +1 -1
  183. package/node_modules/@gdh/core/dist/migrations/registry.d.ts.map +1 -1
  184. package/node_modules/@gdh/core/dist/migrations/registry.js +3 -6
  185. package/node_modules/@gdh/core/dist/migrations/registry.js.map +1 -1
  186. package/node_modules/@gdh/core/dist/official-docs.d.ts.map +1 -1
  187. package/node_modules/@gdh/core/dist/process-termination.d.ts +29 -0
  188. package/node_modules/@gdh/core/dist/process-termination.d.ts.map +1 -0
  189. package/node_modules/@gdh/core/dist/process-termination.js +125 -0
  190. package/node_modules/@gdh/core/dist/process-termination.js.map +1 -0
  191. package/node_modules/@gdh/core/dist/release-span-preview.d.ts.map +1 -1
  192. package/node_modules/@gdh/core/dist/release-span-preview.js +1 -1
  193. package/node_modules/@gdh/core/dist/release-span-preview.js.map +1 -1
  194. package/node_modules/@gdh/core/dist/release-span-update-contract.d.ts.map +1 -1
  195. package/node_modules/@gdh/core/dist/release-span-update-contract.js +5 -10
  196. package/node_modules/@gdh/core/dist/release-span-update-contract.js.map +1 -1
  197. package/node_modules/@gdh/core/dist/state/codex-retrust-reminder.d.ts.map +1 -1
  198. package/node_modules/@gdh/core/dist/state/codex-retrust-reminder.js.map +1 -1
  199. package/node_modules/@gdh/core/dist/state/migration-state.d.ts.map +1 -1
  200. package/node_modules/@gdh/core/dist/state/migration-state.js +3 -8
  201. package/node_modules/@gdh/core/dist/state/migration-state.js.map +1 -1
  202. package/node_modules/@gdh/core/dist/state/migration-trace.d.ts.map +1 -1
  203. package/node_modules/@gdh/core/dist/state/migration-trace.js +3 -8
  204. package/node_modules/@gdh/core/dist/state/migration-trace.js.map +1 -1
  205. package/node_modules/@gdh/core/dist/state/render-inventory.d.ts.map +1 -1
  206. package/node_modules/@gdh/core/dist/state/render-inventory.js.map +1 -1
  207. package/node_modules/@gdh/core/dist/update-cache.d.ts.map +1 -1
  208. package/node_modules/@gdh/core/dist/update-cache.js.map +1 -1
  209. package/node_modules/@gdh/core/dist/update-probe.d.ts.map +1 -1
  210. package/node_modules/@gdh/core/dist/update-probe.js +1 -3
  211. package/node_modules/@gdh/core/dist/update-probe.js.map +1 -1
  212. package/node_modules/@gdh/core/package.json +1 -1
  213. package/node_modules/@gdh/docs/dist/agent-contract.d.ts.map +1 -1
  214. package/node_modules/@gdh/docs/dist/agent-contract.js +2 -4
  215. package/node_modules/@gdh/docs/dist/agent-contract.js.map +1 -1
  216. package/node_modules/@gdh/docs/dist/files.d.ts +1 -1
  217. package/node_modules/@gdh/docs/dist/files.d.ts.map +1 -1
  218. package/node_modules/@gdh/docs/dist/guidance.js +1 -1
  219. package/node_modules/@gdh/docs/dist/guidance.js.map +1 -1
  220. package/node_modules/@gdh/docs/dist/index.d.ts +4 -4
  221. package/node_modules/@gdh/docs/dist/index.d.ts.map +1 -1
  222. package/node_modules/@gdh/docs/dist/index.js +3 -3
  223. package/node_modules/@gdh/docs/dist/index.js.map +1 -1
  224. package/node_modules/@gdh/docs/dist/official-docs.d.ts.map +1 -1
  225. package/node_modules/@gdh/docs/dist/official-docs.js +16 -5
  226. package/node_modules/@gdh/docs/dist/official-docs.js.map +1 -1
  227. package/node_modules/@gdh/docs/dist/query.d.ts.map +1 -1
  228. package/node_modules/@gdh/docs/dist/query.js +8 -3
  229. package/node_modules/@gdh/docs/dist/query.js.map +1 -1
  230. package/node_modules/@gdh/docs/dist/recovery-hints.d.ts.map +1 -1
  231. package/node_modules/@gdh/docs/dist/recovery-hints.js +0 -1
  232. package/node_modules/@gdh/docs/dist/recovery-hints.js.map +1 -1
  233. package/node_modules/@gdh/docs/dist/template-assets.js.map +1 -1
  234. package/node_modules/@gdh/docs/package.json +2 -2
  235. package/node_modules/@gdh/editor/dist/index.d.ts +1 -3
  236. package/node_modules/@gdh/editor/dist/index.d.ts.map +1 -1
  237. package/node_modules/@gdh/editor/dist/index.js +46 -683
  238. package/node_modules/@gdh/editor/dist/index.js.map +1 -1
  239. package/node_modules/@gdh/editor/package.json +2 -2
  240. package/node_modules/@gdh/mcp/dist/bridge-tools.d.ts +8 -1
  241. package/node_modules/@gdh/mcp/dist/bridge-tools.d.ts.map +1 -1
  242. package/node_modules/@gdh/mcp/dist/bridge-tools.js +81 -2
  243. package/node_modules/@gdh/mcp/dist/bridge-tools.js.map +1 -1
  244. package/node_modules/@gdh/mcp/dist/index.d.ts.map +1 -1
  245. package/node_modules/@gdh/mcp/dist/index.js +10 -77
  246. package/node_modules/@gdh/mcp/dist/index.js.map +1 -1
  247. package/node_modules/@gdh/mcp/package.json +8 -10
  248. package/node_modules/@gdh/observability/dist/guidance-audit.d.ts.map +1 -1
  249. package/node_modules/@gdh/observability/dist/guidance-audit.js +11 -21
  250. package/node_modules/@gdh/observability/dist/guidance-audit.js.map +1 -1
  251. package/node_modules/@gdh/observability/dist/index.d.ts +2 -2
  252. package/node_modules/@gdh/observability/dist/index.d.ts.map +1 -1
  253. package/node_modules/@gdh/observability/dist/index.js +1 -1
  254. package/node_modules/@gdh/observability/dist/index.js.map +1 -1
  255. package/node_modules/@gdh/observability/dist/runtime-bundles.d.ts.map +1 -1
  256. package/node_modules/@gdh/observability/dist/runtime-bundles.js +3 -10
  257. package/node_modules/@gdh/observability/dist/runtime-bundles.js.map +1 -1
  258. package/node_modules/@gdh/observability/dist/runtime-corpus.d.ts.map +1 -1
  259. package/node_modules/@gdh/observability/dist/runtime-corpus.js +1 -1
  260. package/node_modules/@gdh/observability/dist/runtime-corpus.js.map +1 -1
  261. package/node_modules/@gdh/observability/package.json +3 -2
  262. package/node_modules/@gdh/runtime/dist/bridge-broker-client.d.ts +2 -1
  263. package/node_modules/@gdh/runtime/dist/bridge-broker-client.d.ts.map +1 -1
  264. package/node_modules/@gdh/runtime/dist/bridge-broker-client.js +8 -1
  265. package/node_modules/@gdh/runtime/dist/bridge-broker-client.js.map +1 -1
  266. package/node_modules/@gdh/runtime/dist/bridge-broker.d.ts +2 -1
  267. package/node_modules/@gdh/runtime/dist/bridge-broker.d.ts.map +1 -1
  268. package/node_modules/@gdh/runtime/dist/bridge-broker.js +71 -21
  269. package/node_modules/@gdh/runtime/dist/bridge-broker.js.map +1 -1
  270. package/node_modules/@gdh/runtime/dist/bridge-surface.d.ts +1 -1
  271. package/node_modules/@gdh/runtime/dist/bridge-surface.d.ts.map +1 -1
  272. package/node_modules/@gdh/runtime/dist/bridge-surface.js +2 -2
  273. package/node_modules/@gdh/runtime/dist/bridge-surface.js.map +1 -1
  274. package/node_modules/@gdh/runtime/dist/docker-provider.d.ts +1 -1
  275. package/node_modules/@gdh/runtime/dist/docker-provider.d.ts.map +1 -1
  276. package/node_modules/@gdh/runtime/dist/docker-provider.js +5 -16
  277. package/node_modules/@gdh/runtime/dist/docker-provider.js.map +1 -1
  278. package/node_modules/@gdh/runtime/dist/index.d.ts +1 -1
  279. package/node_modules/@gdh/runtime/dist/index.d.ts.map +1 -1
  280. package/node_modules/@gdh/runtime/dist/index.js +65 -18
  281. package/node_modules/@gdh/runtime/dist/index.js.map +1 -1
  282. package/node_modules/@gdh/runtime/dist/knowledge-surface.d.ts.map +1 -1
  283. package/node_modules/@gdh/runtime/dist/knowledge-surface.js +21 -10
  284. package/node_modules/@gdh/runtime/dist/knowledge-surface.js.map +1 -1
  285. package/node_modules/@gdh/runtime/package.json +2 -3
  286. package/node_modules/@gdh/scan/dist/detect-existing-onboarding.d.ts.map +1 -1
  287. package/node_modules/@gdh/scan/dist/detect-existing-onboarding.js +1 -5
  288. package/node_modules/@gdh/scan/dist/detect-existing-onboarding.js.map +1 -1
  289. package/node_modules/@gdh/scan/dist/index.d.ts +3 -3
  290. package/node_modules/@gdh/scan/dist/index.d.ts.map +1 -1
  291. package/node_modules/@gdh/scan/dist/index.js +3 -3
  292. package/node_modules/@gdh/scan/dist/index.js.map +1 -1
  293. package/node_modules/@gdh/scan/dist/inventory-cache.js +1 -1
  294. package/node_modules/@gdh/scan/dist/inventory-cache.js.map +1 -1
  295. package/node_modules/@gdh/scan/dist/onboard.d.ts +1 -2
  296. package/node_modules/@gdh/scan/dist/onboard.d.ts.map +1 -1
  297. package/node_modules/@gdh/scan/dist/onboard.js +4 -5
  298. package/node_modules/@gdh/scan/dist/onboard.js.map +1 -1
  299. package/node_modules/@gdh/scan/dist/scan.d.ts.map +1 -1
  300. package/node_modules/@gdh/scan/dist/scan.js +4 -2
  301. package/node_modules/@gdh/scan/dist/scan.js.map +1 -1
  302. package/node_modules/@gdh/scan/package.json +3 -3
  303. package/node_modules/@gdh/verify/dist/corpus.d.ts.map +1 -1
  304. package/node_modules/@gdh/verify/dist/corpus.js +7 -6
  305. package/node_modules/@gdh/verify/dist/corpus.js.map +1 -1
  306. package/node_modules/@gdh/verify/dist/index.d.ts.map +1 -1
  307. package/node_modules/@gdh/verify/dist/index.js +0 -1
  308. package/node_modules/@gdh/verify/dist/index.js.map +1 -1
  309. package/node_modules/@gdh/verify/dist/readiness.d.ts.map +1 -1
  310. package/node_modules/@gdh/verify/dist/readiness.js.map +1 -1
  311. package/node_modules/@gdh/verify/dist/scenarios.d.ts +1 -1
  312. package/node_modules/@gdh/verify/dist/scenarios.d.ts.map +1 -1
  313. package/node_modules/@gdh/verify/dist/scenarios.js +14 -11
  314. package/node_modules/@gdh/verify/dist/scenarios.js.map +1 -1
  315. package/node_modules/@gdh/verify/package.json +6 -7
  316. package/node_modules/@hono/node-server/dist/index.js +22 -0
  317. package/node_modules/@hono/node-server/dist/index.mjs +22 -0
  318. package/node_modules/@hono/node-server/dist/listener.js +22 -0
  319. package/node_modules/@hono/node-server/dist/listener.mjs +22 -0
  320. package/node_modules/@hono/node-server/dist/request.js +11 -0
  321. package/node_modules/@hono/node-server/dist/request.mjs +11 -0
  322. package/node_modules/@hono/node-server/dist/response.js +11 -0
  323. package/node_modules/@hono/node-server/dist/response.mjs +11 -0
  324. package/node_modules/@hono/node-server/dist/server.js +22 -0
  325. package/node_modules/@hono/node-server/dist/server.mjs +22 -0
  326. package/node_modules/@hono/node-server/dist/utils.d.mts +2 -2
  327. package/node_modules/@hono/node-server/dist/utils.d.ts +2 -2
  328. package/node_modules/@hono/node-server/dist/vercel.js +22 -0
  329. package/node_modules/@hono/node-server/dist/vercel.mjs +22 -0
  330. package/node_modules/@hono/node-server/package.json +1 -1
  331. package/node_modules/ajv/README.md +1 -1
  332. package/node_modules/ajv/dist/core.js +1 -1
  333. package/node_modules/ajv/dist/core.js.map +1 -1
  334. package/node_modules/ajv/lib/core.ts +1 -1
  335. package/node_modules/ajv/package.json +2 -3
  336. package/node_modules/eventsource-parser/LICENSE +1 -1
  337. package/node_modules/eventsource-parser/dist/index.cjs +104 -44
  338. package/node_modules/eventsource-parser/dist/index.cjs.map +1 -1
  339. package/node_modules/eventsource-parser/dist/index.d.cts +23 -21
  340. package/node_modules/eventsource-parser/dist/index.d.ts +23 -21
  341. package/node_modules/eventsource-parser/dist/index.js +104 -44
  342. package/node_modules/eventsource-parser/dist/index.js.map +1 -1
  343. package/node_modules/eventsource-parser/dist/stream.d.cts +22 -19
  344. package/node_modules/eventsource-parser/dist/stream.d.ts +22 -19
  345. package/node_modules/eventsource-parser/package.json +54 -77
  346. package/node_modules/eventsource-parser/src/parse.ts +270 -107
  347. package/node_modules/express-rate-limit/dist/index.cjs +51 -10
  348. package/node_modules/express-rate-limit/dist/index.d.cts +31 -1
  349. package/node_modules/express-rate-limit/dist/index.d.mts +31 -1
  350. package/node_modules/express-rate-limit/dist/index.d.ts +31 -1
  351. package/node_modules/express-rate-limit/dist/index.mjs +51 -10
  352. package/node_modules/express-rate-limit/package.json +3 -2
  353. package/node_modules/express-rate-limit/readme.md +3 -0
  354. package/node_modules/fast-string-truncated-width/dist/index.js +36 -96
  355. package/node_modules/fast-string-truncated-width/dist/types.d.ts +0 -3
  356. package/node_modules/fast-string-truncated-width/dist/utils.d.ts +3 -3
  357. package/node_modules/fast-string-truncated-width/dist/utils.js +14 -9
  358. package/node_modules/fast-string-truncated-width/package.json +1 -1
  359. package/node_modules/fast-string-truncated-width/readme.md +2 -3
  360. package/node_modules/fast-string-width/package.json +2 -2
  361. package/node_modules/fast-string-width/readme.md +0 -3
  362. package/node_modules/fast-uri/.github/workflows/ci.yml +12 -7
  363. package/node_modules/fast-uri/.github/workflows/lock-threads.yml +19 -0
  364. package/node_modules/fast-uri/.github/workflows/package-manager-ci.yml +1 -1
  365. package/node_modules/fast-uri/LICENSE +1 -3
  366. package/node_modules/fast-uri/README.md +13 -4
  367. package/node_modules/fast-uri/index.js +90 -24
  368. package/node_modules/fast-uri/lib/utils.js +129 -22
  369. package/node_modules/fast-uri/package.json +3 -4
  370. package/node_modules/fast-wrap-ansi/lib/main.js +4 -1
  371. package/node_modules/fast-wrap-ansi/lib/main.js.map +1 -1
  372. package/node_modules/fast-wrap-ansi/package.json +2 -2
  373. package/node_modules/get-intrinsic/CHANGELOG.md +0 -7
  374. package/node_modules/get-intrinsic/index.js +13 -8
  375. package/node_modules/get-intrinsic/package.json +4 -7
  376. package/node_modules/hasown/CHANGELOG.md +11 -0
  377. package/node_modules/hasown/eslint.config.mjs +6 -0
  378. package/node_modules/hasown/index.d.ts +1 -0
  379. package/node_modules/hasown/package.json +14 -14
  380. package/node_modules/hono/dist/adapter/aws-lambda/handler.js +9 -2
  381. package/node_modules/hono/dist/cjs/adapter/aws-lambda/handler.js +9 -2
  382. package/node_modules/hono/dist/cjs/helper/ssg/ssg.js +2 -0
  383. package/node_modules/hono/dist/cjs/jsx/base.js +7 -1
  384. package/node_modules/hono/dist/cjs/jsx/dom/render.js +22 -9
  385. package/node_modules/hono/dist/cjs/jsx/jsx-runtime.js +3 -0
  386. package/node_modules/hono/dist/cjs/jsx/utils.js +155 -5
  387. package/node_modules/hono/dist/cjs/middleware/body-limit/index.js +21 -30
  388. package/node_modules/hono/dist/cjs/middleware/cache/index.js +11 -3
  389. package/node_modules/hono/dist/cjs/middleware/cors/index.js +2 -5
  390. package/node_modules/hono/dist/cjs/middleware/method-override/index.js +1 -1
  391. package/node_modules/hono/dist/cjs/middleware/trailing-slash/index.js +2 -2
  392. package/node_modules/hono/dist/cjs/utils/jwt/jws.js +1 -1
  393. package/node_modules/hono/dist/cjs/utils/jwt/jwt.js +12 -6
  394. package/node_modules/hono/dist/helper/ssg/ssg.js +2 -0
  395. package/node_modules/hono/dist/jsx/base.js +13 -2
  396. package/node_modules/hono/dist/jsx/dom/render.js +22 -9
  397. package/node_modules/hono/dist/jsx/jsx-runtime.js +4 -1
  398. package/node_modules/hono/dist/jsx/utils.js +153 -5
  399. package/node_modules/hono/dist/middleware/body-limit/index.js +21 -30
  400. package/node_modules/hono/dist/middleware/cache/index.js +11 -3
  401. package/node_modules/hono/dist/middleware/cors/index.js +2 -5
  402. package/node_modules/hono/dist/middleware/method-override/index.js +1 -1
  403. package/node_modules/hono/dist/middleware/trailing-slash/index.js +2 -2
  404. package/node_modules/hono/dist/tsconfig.build.tsbuildinfo +1 -1
  405. package/node_modules/hono/dist/types/jsx/utils.d.ts +3 -1
  406. package/node_modules/hono/dist/types/middleware/cache/index.d.ts +2 -0
  407. package/node_modules/hono/dist/types/middleware/cors/index.d.ts +1 -1
  408. package/node_modules/hono/dist/types/middleware/trailing-slash/index.d.ts +16 -0
  409. package/node_modules/hono/dist/types/types.d.ts +116 -116
  410. package/node_modules/hono/dist/utils/jwt/jws.js +1 -1
  411. package/node_modules/hono/dist/utils/jwt/jwt.js +12 -6
  412. package/node_modules/hono/package.json +1 -1
  413. package/node_modules/ip-address/README.md +249 -76
  414. package/node_modules/ip-address/dist/address-error.d.ts +0 -1
  415. package/node_modules/ip-address/dist/address-error.js.map +1 -1
  416. package/node_modules/ip-address/dist/common.d.ts +6 -1
  417. package/node_modules/ip-address/dist/common.js +21 -0
  418. package/node_modules/ip-address/dist/common.js.map +1 -1
  419. package/node_modules/ip-address/dist/ip-address.d.ts +0 -1
  420. package/node_modules/ip-address/dist/ip-address.js.map +1 -1
  421. package/node_modules/ip-address/dist/ipv4.d.ts +115 -57
  422. package/node_modules/ip-address/dist/ipv4.js +193 -68
  423. package/node_modules/ip-address/dist/ipv4.js.map +1 -1
  424. package/node_modules/ip-address/dist/ipv6.d.ts +172 -111
  425. package/node_modules/ip-address/dist/ipv6.js +345 -131
  426. package/node_modules/ip-address/dist/ipv6.js.map +1 -1
  427. package/node_modules/ip-address/dist/v4/constants.d.ts +0 -1
  428. package/node_modules/ip-address/dist/v4/constants.js.map +1 -1
  429. package/node_modules/ip-address/dist/v6/constants.d.ts +0 -1
  430. package/node_modules/ip-address/dist/v6/constants.js +5 -0
  431. package/node_modules/ip-address/dist/v6/constants.js.map +1 -1
  432. package/node_modules/ip-address/dist/v6/helpers.d.ts +1 -1
  433. package/node_modules/ip-address/dist/v6/helpers.js +12 -3
  434. package/node_modules/ip-address/dist/v6/helpers.js.map +1 -1
  435. package/node_modules/ip-address/dist/v6/regular-expressions.d.ts +0 -1
  436. package/node_modules/ip-address/dist/v6/regular-expressions.js.map +1 -1
  437. package/node_modules/ip-address/package.json +45 -35
  438. package/node_modules/jose/dist/webapi/jwks/remote.js +1 -1
  439. package/node_modules/jose/dist/webapi/lib/pbes2kw.js +3 -0
  440. package/node_modules/jose/package.json +1 -1
  441. package/node_modules/yaml/browser/dist/compose/resolve-flow-scalar.js +5 -3
  442. package/node_modules/yaml/browser/dist/nodes/Alias.js +2 -0
  443. package/node_modules/yaml/browser/dist/schema/yaml-1.1/merge.js +11 -8
  444. package/node_modules/yaml/browser/dist/stringify/stringifyNumber.js +2 -1
  445. package/node_modules/yaml/dist/compose/resolve-flow-scalar.js +5 -3
  446. package/node_modules/yaml/dist/nodes/Alias.js +2 -0
  447. package/node_modules/yaml/dist/nodes/Scalar.d.ts +5 -1
  448. package/node_modules/yaml/dist/schema/yaml-1.1/merge.js +10 -7
  449. package/node_modules/yaml/dist/stringify/stringifyNumber.js +2 -1
  450. package/node_modules/yaml/package.json +1 -1
  451. package/node_modules/zod/README.md +1 -18
  452. package/node_modules/zod/locales/package.json +2 -1
  453. package/node_modules/zod/mini/package.json +2 -1
  454. package/node_modules/zod/package.json +1 -1
  455. package/node_modules/zod/src/v4/classic/errors.ts +2 -2
  456. package/node_modules/zod/src/v4/classic/external.ts +1 -0
  457. package/node_modules/zod/src/v4/classic/from-json-schema.ts +39 -23
  458. package/node_modules/zod/src/v4/classic/parse.ts +6 -6
  459. package/node_modules/zod/src/v4/classic/schemas.ts +414 -151
  460. package/node_modules/zod/src/v4/core/api.ts +31 -6
  461. package/node_modules/zod/src/v4/core/checks.ts +1 -1
  462. package/node_modules/zod/src/v4/core/core.ts +17 -2
  463. package/node_modules/zod/src/v4/core/errors.ts +31 -24
  464. package/node_modules/zod/src/v4/core/json-schema-processors.ts +17 -18
  465. package/node_modules/zod/src/v4/core/parse.ts +7 -7
  466. package/node_modules/zod/src/v4/core/regexes.ts +8 -1
  467. package/node_modules/zod/src/v4/core/schemas.ts +263 -71
  468. package/node_modules/zod/src/v4/core/to-json-schema.ts +10 -1
  469. package/node_modules/zod/src/v4/core/util.ts +52 -35
  470. package/node_modules/zod/src/v4/core/versions.ts +2 -2
  471. package/node_modules/zod/src/v4/locales/el.ts +121 -0
  472. package/node_modules/zod/src/v4/locales/en.ts +4 -0
  473. package/node_modules/zod/src/v4/locales/fr.ts +24 -8
  474. package/node_modules/zod/src/v4/locales/hr.ts +131 -0
  475. package/node_modules/zod/src/v4/locales/index.ts +3 -0
  476. package/node_modules/zod/src/v4/locales/it.ts +1 -1
  477. package/node_modules/zod/src/v4/locales/ka.ts +8 -8
  478. package/node_modules/zod/src/v4/locales/ro.ts +129 -0
  479. package/node_modules/zod/src/v4/locales/uz.ts +1 -0
  480. package/node_modules/zod/src/v4/mini/external.ts +1 -0
  481. package/node_modules/zod/src/v4/mini/schemas.ts +56 -25
  482. package/node_modules/zod/v3/package.json +2 -1
  483. package/node_modules/zod/v4/classic/errors.js +2 -2
  484. package/node_modules/zod/v4/classic/external.d.cts +1 -0
  485. package/node_modules/zod/v4/classic/external.d.ts +1 -0
  486. package/node_modules/zod/v4/classic/from-json-schema.cjs +31 -16
  487. package/node_modules/zod/v4/classic/from-json-schema.js +31 -16
  488. package/node_modules/zod/v4/classic/package.json +2 -1
  489. package/node_modules/zod/v4/classic/schemas.cjs +358 -119
  490. package/node_modules/zod/v4/classic/schemas.d.cts +42 -14
  491. package/node_modules/zod/v4/classic/schemas.d.ts +42 -14
  492. package/node_modules/zod/v4/classic/schemas.js +356 -118
  493. package/node_modules/zod/v4/core/api.cjs +7 -2
  494. package/node_modules/zod/v4/core/api.d.cts +26 -5
  495. package/node_modules/zod/v4/core/api.d.ts +26 -5
  496. package/node_modules/zod/v4/core/api.js +7 -2
  497. package/node_modules/zod/v4/core/checks.d.cts +1 -1
  498. package/node_modules/zod/v4/core/checks.d.ts +1 -1
  499. package/node_modules/zod/v4/core/core.cjs +3 -1
  500. package/node_modules/zod/v4/core/core.js +4 -2
  501. package/node_modules/zod/v4/core/errors.cjs +26 -23
  502. package/node_modules/zod/v4/core/errors.d.cts +1 -0
  503. package/node_modules/zod/v4/core/errors.d.ts +1 -0
  504. package/node_modules/zod/v4/core/errors.js +26 -23
  505. package/node_modules/zod/v4/core/json-schema-processors.cjs +16 -20
  506. package/node_modules/zod/v4/core/json-schema-processors.js +16 -20
  507. package/node_modules/zod/v4/core/package.json +2 -1
  508. package/node_modules/zod/v4/core/parse.cjs +7 -7
  509. package/node_modules/zod/v4/core/parse.js +7 -7
  510. package/node_modules/zod/v4/core/regexes.cjs +9 -3
  511. package/node_modules/zod/v4/core/regexes.d.cts +6 -0
  512. package/node_modules/zod/v4/core/regexes.d.ts +6 -0
  513. package/node_modules/zod/v4/core/regexes.js +7 -1
  514. package/node_modules/zod/v4/core/schemas.cjs +211 -65
  515. package/node_modules/zod/v4/core/schemas.d.cts +39 -1
  516. package/node_modules/zod/v4/core/schemas.d.ts +39 -1
  517. package/node_modules/zod/v4/core/schemas.js +210 -64
  518. package/node_modules/zod/v4/core/to-json-schema.cjs +12 -1
  519. package/node_modules/zod/v4/core/to-json-schema.js +12 -1
  520. package/node_modules/zod/v4/core/util.cjs +54 -30
  521. package/node_modules/zod/v4/core/util.d.cts +1 -0
  522. package/node_modules/zod/v4/core/util.d.ts +1 -0
  523. package/node_modules/zod/v4/core/util.js +55 -32
  524. package/node_modules/zod/v4/core/versions.cjs +2 -2
  525. package/node_modules/zod/v4/core/versions.d.cts +1 -1
  526. package/node_modules/zod/v4/core/versions.d.ts +1 -1
  527. package/node_modules/zod/v4/core/versions.js +2 -2
  528. package/node_modules/zod/v4/locales/el.cjs +136 -0
  529. package/node_modules/zod/v4/locales/el.d.cts +5 -0
  530. package/node_modules/zod/v4/locales/el.d.ts +4 -0
  531. package/node_modules/zod/v4/locales/el.js +109 -0
  532. package/node_modules/zod/v4/locales/en.cjs +4 -0
  533. package/node_modules/zod/v4/locales/en.js +4 -0
  534. package/node_modules/zod/v4/locales/fr.cjs +24 -7
  535. package/node_modules/zod/v4/locales/fr.js +24 -7
  536. package/node_modules/zod/v4/locales/hr.cjs +149 -0
  537. package/node_modules/zod/v4/locales/hr.d.cts +5 -0
  538. package/node_modules/zod/v4/locales/hr.d.ts +4 -0
  539. package/node_modules/zod/v4/locales/hr.js +122 -0
  540. package/node_modules/zod/v4/locales/index.cjs +8 -1
  541. package/node_modules/zod/v4/locales/index.d.cts +3 -0
  542. package/node_modules/zod/v4/locales/index.d.ts +3 -0
  543. package/node_modules/zod/v4/locales/index.js +3 -0
  544. package/node_modules/zod/v4/locales/it.cjs +1 -1
  545. package/node_modules/zod/v4/locales/it.js +1 -1
  546. package/node_modules/zod/v4/locales/ka.cjs +8 -8
  547. package/node_modules/zod/v4/locales/ka.js +8 -8
  548. package/node_modules/zod/v4/locales/package.json +2 -1
  549. package/node_modules/zod/v4/locales/ro.cjs +146 -0
  550. package/node_modules/zod/v4/locales/ro.d.cts +5 -0
  551. package/node_modules/zod/v4/locales/ro.d.ts +4 -0
  552. package/node_modules/zod/v4/locales/ro.js +119 -0
  553. package/node_modules/zod/v4/locales/uz.cjs +1 -0
  554. package/node_modules/zod/v4/locales/uz.js +1 -0
  555. package/node_modules/zod/v4/mini/external.d.cts +1 -0
  556. package/node_modules/zod/v4/mini/external.d.ts +1 -0
  557. package/node_modules/zod/v4/mini/package.json +2 -1
  558. package/node_modules/zod/v4/mini/schemas.cjs +41 -4
  559. package/node_modules/zod/v4/mini/schemas.d.cts +28 -10
  560. package/node_modules/zod/v4/mini/schemas.d.ts +28 -10
  561. package/node_modules/zod/v4/mini/schemas.js +40 -4
  562. package/node_modules/zod/v4/package.json +2 -1
  563. package/node_modules/zod/v4-mini/package.json +2 -1
  564. package/package.json +12 -12
  565. package/node_modules/async-function/.eslintrc +0 -16
  566. package/node_modules/async-function/.github/FUNDING.yml +0 -12
  567. package/node_modules/async-function/.nycrc +0 -9
  568. package/node_modules/async-function/CHANGELOG.md +0 -16
  569. package/node_modules/async-function/LICENSE +0 -21
  570. package/node_modules/async-function/README.md +0 -51
  571. package/node_modules/async-function/index.d.mts +0 -3
  572. package/node_modules/async-function/index.d.ts +0 -13
  573. package/node_modules/async-function/index.js +0 -8
  574. package/node_modules/async-function/index.mjs +0 -4
  575. package/node_modules/async-function/legacy.js +0 -18
  576. package/node_modules/async-function/package.json +0 -86
  577. package/node_modules/async-function/require.mjs +0 -5
  578. package/node_modules/async-function/tsconfig.json +0 -9
  579. package/node_modules/async-generator-function/.eslintrc +0 -26
  580. package/node_modules/async-generator-function/.github/FUNDING.yml +0 -12
  581. package/node_modules/async-generator-function/.nycrc +0 -9
  582. package/node_modules/async-generator-function/CHANGELOG.md +0 -15
  583. package/node_modules/async-generator-function/LICENSE +0 -21
  584. package/node_modules/async-generator-function/README.md +0 -52
  585. package/node_modules/async-generator-function/index.d.mts +0 -3
  586. package/node_modules/async-generator-function/index.d.ts +0 -22
  587. package/node_modules/async-generator-function/index.js +0 -8
  588. package/node_modules/async-generator-function/index.mjs +0 -4
  589. package/node_modules/async-generator-function/legacy.js +0 -18
  590. package/node_modules/async-generator-function/package.json +0 -87
  591. package/node_modules/async-generator-function/require.mjs +0 -5
  592. package/node_modules/async-generator-function/tsconfig.json +0 -9
  593. package/node_modules/fast-uri/.github/.stale.yml +0 -21
  594. package/node_modules/fast-uri/.github/tests_checker.yml +0 -8
  595. package/node_modules/generator-function/.eslintrc +0 -16
  596. package/node_modules/generator-function/.github/FUNDING.yml +0 -12
  597. package/node_modules/generator-function/.nycrc +0 -9
  598. package/node_modules/generator-function/CHANGELOG.md +0 -27
  599. package/node_modules/generator-function/LICENSE.md +0 -7
  600. package/node_modules/generator-function/README.md +0 -51
  601. package/node_modules/generator-function/index.d.mts +0 -3
  602. package/node_modules/generator-function/index.d.ts +0 -3
  603. package/node_modules/generator-function/index.js +0 -8
  604. package/node_modules/generator-function/index.mjs +0 -4
  605. package/node_modules/generator-function/legacy.js +0 -18
  606. package/node_modules/generator-function/package.json +0 -88
  607. package/node_modules/generator-function/require.mjs +0 -5
  608. package/node_modules/generator-function/tsconfig.json +0 -9
  609. package/node_modules/hasown/.eslintrc +0 -5
  610. package/node_modules/ip-address/dist/address-error.d.ts.map +0 -1
  611. package/node_modules/ip-address/dist/common.d.ts.map +0 -1
  612. package/node_modules/ip-address/dist/ip-address.d.ts.map +0 -1
  613. package/node_modules/ip-address/dist/ipv4.d.ts.map +0 -1
  614. package/node_modules/ip-address/dist/ipv6.d.ts.map +0 -1
  615. package/node_modules/ip-address/dist/v4/constants.d.ts.map +0 -1
  616. package/node_modules/ip-address/dist/v6/constants.d.ts.map +0 -1
  617. package/node_modules/ip-address/dist/v6/helpers.d.ts.map +0 -1
  618. package/node_modules/ip-address/dist/v6/regular-expressions.d.ts.map +0 -1
  619. package/node_modules/ip-address/src/address-error.ts +0 -11
  620. package/node_modules/ip-address/src/common.ts +0 -55
  621. package/node_modules/ip-address/src/ip-address.ts +0 -7
  622. package/node_modules/ip-address/src/ipv4.ts +0 -394
  623. package/node_modules/ip-address/src/ipv6.ts +0 -1212
  624. package/node_modules/ip-address/src/v4/constants.ts +0 -7
  625. package/node_modules/ip-address/src/v6/constants.ts +0 -79
  626. package/node_modules/ip-address/src/v6/helpers.ts +0 -48
  627. package/node_modules/ip-address/src/v6/regular-expressions.ts +0 -94
  628. /package/node_modules/{cross-spawn/node_modules/isexe → isexe}/.npmignore +0 -0
  629. /package/node_modules/{cross-spawn/node_modules/isexe → isexe}/LICENSE +0 -0
  630. /package/node_modules/{cross-spawn/node_modules/isexe → isexe}/README.md +0 -0
  631. /package/node_modules/{cross-spawn/node_modules/isexe → isexe}/index.js +0 -0
  632. /package/node_modules/{cross-spawn/node_modules/isexe → isexe}/mode.js +0 -0
  633. /package/node_modules/{cross-spawn/node_modules/isexe → isexe}/package.json +0 -0
  634. /package/node_modules/{cross-spawn/node_modules/isexe → isexe}/windows.js +0 -0
  635. /package/node_modules/{cross-spawn/node_modules/which → which}/LICENSE +0 -0
  636. /package/node_modules/{cross-spawn/node_modules/which → which}/README.md +0 -0
  637. /package/node_modules/{cross-spawn/node_modules/which → which}/bin/node-which +0 -0
  638. /package/node_modules/{cross-spawn/node_modules/which → which}/package.json +0 -0
  639. /package/node_modules/{cross-spawn/node_modules/which → which}/which.js +0 -0
@@ -0,0 +1,682 @@
1
+ // Pure bridge-substrate renderers shared by runtime surface install and editor operation execution.
2
+ export function renderEditorOperationRunner() {
3
+ return `extends SceneTree
4
+
5
+ func _init() -> void:
6
+ var input_path := OS.get_environment("GDH_EDITOR_OPERATION_INPUT")
7
+ var output_path := OS.get_environment("GDH_EDITOR_OPERATION_OUTPUT")
8
+ var result := _run_operation(input_path)
9
+ _write_json(output_path, result)
10
+ quit(0)
11
+
12
+ func _run_operation(input_path: String) -> Dictionary:
13
+ var input_text := FileAccess.get_file_as_string(input_path)
14
+ var parsed = JSON.parse_string(input_text)
15
+ if typeof(parsed) != TYPE_DICTIONARY:
16
+ return _failure("Invalid editor operation input JSON.", ["input_json_invalid"])
17
+ var operation = parsed.get("operation", {})
18
+ if typeof(operation) != TYPE_DICTIONARY:
19
+ return _failure("Missing editor operation payload.", ["operation_missing"])
20
+ return run_editor_operation(operation)
21
+
22
+ func run_editor_operation(operation: Dictionary) -> Dictionary:
23
+ return _dispatch_operation(operation)
24
+
25
+ func _dispatch_operation(operation: Dictionary) -> Dictionary:
26
+ var kind := str(operation.get("kind", ""))
27
+ if kind == "":
28
+ var type_value := str(operation.get("type", ""))
29
+ if type_value != "":
30
+ return _failure("Editor operation payload used type='" + type_value + "', but GDH dispatches editor operations with kind. Use operation.kind instead.", ["operation_kind_missing", "operation_type_unsupported"], _operation_help(type_value))
31
+ return _failure("Editor operation payload is missing kind.", ["operation_kind_missing"], _operation_help("editor.state"))
32
+ match kind:
33
+ "scene.create":
34
+ return _scene_create(operation)
35
+ "scene.tree":
36
+ return _scene_tree(operation)
37
+ "scene.save":
38
+ return _scene_save(operation)
39
+ "node.add":
40
+ return _node_add(operation)
41
+ "node.remove":
42
+ return _node_remove(operation)
43
+ "node.reparent":
44
+ return _node_reparent(operation)
45
+ "node.duplicate":
46
+ return _node_duplicate(operation)
47
+ "node.set_property":
48
+ return _node_set_property(operation)
49
+ "node.get_property":
50
+ return _node_get_property(operation)
51
+ "node.inspect":
52
+ return _node_inspect(operation)
53
+ "resource.create":
54
+ return _resource_create(operation)
55
+ "resource.read":
56
+ return _resource_read(operation)
57
+ "resource.properties":
58
+ return _resource_properties(operation)
59
+ "resource.set_property":
60
+ return _resource_set_property(operation)
61
+ "script.attach":
62
+ return _script_attach(operation)
63
+ "class.search":
64
+ return _class_search(operation)
65
+ "class.info":
66
+ return _class_info(operation)
67
+ "editor.state":
68
+ return _editor_state(operation)
69
+ "batch.apply":
70
+ return _batch_apply(operation)
71
+ _:
72
+ return _failure("Unsupported editor operation: " + kind, ["operation_unsupported"], _operation_help(kind))
73
+
74
+ func _scene_create(operation: Dictionary) -> Dictionary:
75
+ var scene_path := _res_path(str(operation.get("scenePath", "")))
76
+ if scene_path == "res://":
77
+ return _failure("scenePath is required.", ["scene_path_missing"])
78
+ var root_type := str(operation.get("rootNodeType", "Node"))
79
+ var root = _instantiate(root_type)
80
+ if root == null or not (root is Node):
81
+ return _failure("Unable to instantiate root node type: " + root_type, ["root_node_type_invalid"])
82
+ root.name = str(operation.get("rootNodeName", root_type))
83
+ _set_properties(root, operation.get("properties", {}))
84
+ var packed := PackedScene.new()
85
+ var pack_err := packed.pack(root)
86
+ if pack_err != OK:
87
+ return _failure("Failed to pack scene.", ["scene_pack_failed"])
88
+ _ensure_parent_dir(scene_path)
89
+ var save_err := ResourceSaver.save(packed, scene_path)
90
+ if save_err != OK:
91
+ return _failure("Failed to save scene: " + scene_path, ["scene_save_failed"])
92
+ return _success("Scene created.", {"scenePath": scene_path, "rootNodeType": root_type, "rootNodeName": root.name})
93
+
94
+ func _scene_tree(operation: Dictionary) -> Dictionary:
95
+ var scene_path := _res_path(str(operation.get("scenePath", "")))
96
+ if scene_path == "res://":
97
+ return _failure("scene.tree requires scenePath.", ["scene_path_missing"], _operation_help("scene.tree"))
98
+ var loaded = load(scene_path)
99
+ if loaded == null or not (loaded is PackedScene):
100
+ return _failure("Scene could not be loaded: " + scene_path, ["scene_load_failed"])
101
+ var root = loaded.instantiate()
102
+ if root == null:
103
+ return _failure("Scene could not be instantiated: " + scene_path, ["scene_instantiate_failed"])
104
+ var max_depth := int(operation.get("maxDepth", -1))
105
+ var tree := _node_summary(root, ".", 0, max_depth)
106
+ root.queue_free()
107
+ return _success("Scene tree loaded.", {"scenePath": scene_path, "tree": tree})
108
+
109
+ func _scene_save(operation: Dictionary) -> Dictionary:
110
+ var scene_path := _res_path(str(operation.get("scenePath", "")))
111
+ var root = _load_scene_root(scene_path)
112
+ if root == null:
113
+ return _failure("Scene could not be loaded: " + scene_path, ["scene_load_failed"])
114
+ return _save_instantiated_scene(root, scene_path)
115
+
116
+ func _node_add(operation: Dictionary) -> Dictionary:
117
+ var scene_path := _res_path(str(operation.get("scenePath", "")))
118
+ var loaded = load(scene_path)
119
+ if loaded == null or not (loaded is PackedScene):
120
+ return _failure("Scene could not be loaded: " + scene_path, ["scene_load_failed"])
121
+ var root = loaded.instantiate()
122
+ var parent_path := str(operation.get("parentNodePath", "."))
123
+ var parent = _find_node(root, parent_path)
124
+ if parent == null:
125
+ return _failure("Parent node not found: " + parent_path, ["parent_node_not_found"])
126
+ var node_type := str(operation.get("nodeType", ""))
127
+ var node = _instantiate(node_type)
128
+ if node == null or not (node is Node):
129
+ return _failure("Unable to instantiate node type: " + node_type, ["node_type_invalid"])
130
+ node.name = str(operation.get("nodeName", node_type))
131
+ _set_properties(node, operation.get("properties", {}))
132
+ parent.add_child(node)
133
+ _set_owner_recursive(node, root)
134
+ var result := _save_instantiated_scene(root, scene_path)
135
+ if not result.get("ok", false):
136
+ return result
137
+ return _success("Node added.", {"scenePath": scene_path, "nodePath": str(root.get_path_to(node)), "nodeType": node_type, "nodeName": node.name})
138
+
139
+ func _node_remove(operation: Dictionary) -> Dictionary:
140
+ var scene_path := _res_path(str(operation.get("scenePath", "")))
141
+ var root = _load_scene_root(scene_path)
142
+ if root == null:
143
+ return _failure("Scene could not be loaded: " + scene_path, ["scene_load_failed"])
144
+ var node_path := str(operation.get("nodePath", ""))
145
+ var node = _find_node(root, node_path)
146
+ if node == null or node == root:
147
+ return _failure("Node not removable: " + node_path, ["node_not_removable"])
148
+ var parent = node.get_parent()
149
+ if parent == null:
150
+ return _failure("Node parent not found: " + node_path, ["node_parent_not_found"])
151
+ parent.remove_child(node)
152
+ node.free()
153
+ var result := _save_instantiated_scene(root, scene_path)
154
+ if not result.get("ok", false):
155
+ return result
156
+ return _success("Node removed.", {"scenePath": scene_path, "nodePath": node_path})
157
+
158
+ func _node_reparent(operation: Dictionary) -> Dictionary:
159
+ var scene_path := _res_path(str(operation.get("scenePath", "")))
160
+ var root = _load_scene_root(scene_path)
161
+ if root == null:
162
+ return _failure("Scene could not be loaded: " + scene_path, ["scene_load_failed"])
163
+ var node_path := str(operation.get("nodePath", ""))
164
+ var new_parent_path := str(operation.get("newParentNodePath", ""))
165
+ var node = _find_node(root, node_path)
166
+ var new_parent = _find_node(root, new_parent_path)
167
+ if node == null or node == root:
168
+ return _failure("Node not reparentable: " + node_path, ["node_not_reparentable"])
169
+ if new_parent == null:
170
+ return _failure("New parent node not found: " + new_parent_path, ["new_parent_node_not_found"])
171
+ if node == new_parent or node.is_ancestor_of(new_parent):
172
+ return _failure("Cannot reparent a node below itself.", ["node_reparent_cycle"])
173
+ var old_parent = node.get_parent()
174
+ if old_parent == null:
175
+ return _failure("Node parent not found: " + node_path, ["node_parent_not_found"])
176
+ old_parent.remove_child(node)
177
+ new_parent.add_child(node)
178
+ _set_owner_recursive(node, root)
179
+ var result := _save_instantiated_scene(root, scene_path)
180
+ if not result.get("ok", false):
181
+ return result
182
+ return _success("Node reparented.", {"scenePath": scene_path, "nodePath": str(root.get_path_to(node)), "newParentNodePath": new_parent_path})
183
+
184
+ func _node_duplicate(operation: Dictionary) -> Dictionary:
185
+ var scene_path := _res_path(str(operation.get("scenePath", "")))
186
+ var root = _load_scene_root(scene_path)
187
+ if root == null:
188
+ return _failure("Scene could not be loaded: " + scene_path, ["scene_load_failed"])
189
+ var node_path := str(operation.get("nodePath", ""))
190
+ var node = _find_node(root, node_path)
191
+ if node == null:
192
+ return _failure("Node not found: " + node_path, ["node_not_found"])
193
+ var parent_path := str(operation.get("parentNodePath", ""))
194
+ var parent = _find_node(root, parent_path) if not parent_path.is_empty() else node.get_parent()
195
+ if parent == null:
196
+ return _failure("Duplicate parent node not found.", ["duplicate_parent_node_not_found"])
197
+ var duplicate = node.duplicate()
198
+ if duplicate == null or not (duplicate is Node):
199
+ return _failure("Node could not be duplicated: " + node_path, ["node_duplicate_failed"])
200
+ var requested_name := str(operation.get("newNodeName", ""))
201
+ if not requested_name.is_empty():
202
+ duplicate.name = requested_name
203
+ parent.add_child(duplicate)
204
+ _set_owner_recursive(duplicate, root)
205
+ var result := _save_instantiated_scene(root, scene_path)
206
+ if not result.get("ok", false):
207
+ return result
208
+ return _success("Node duplicated.", {"scenePath": scene_path, "sourceNodePath": node_path, "nodePath": str(root.get_path_to(duplicate)), "nodeName": duplicate.name})
209
+
210
+ func _node_set_property(operation: Dictionary) -> Dictionary:
211
+ var scene_path := _res_path(str(operation.get("scenePath", "")))
212
+ var root = _load_scene_root(scene_path)
213
+ if root == null:
214
+ return _failure("Scene could not be loaded: " + scene_path, ["scene_load_failed"])
215
+ var node_path := str(operation.get("nodePath", ""))
216
+ var node = _find_node(root, node_path)
217
+ if node == null:
218
+ return _failure("Node not found: " + node_path, ["node_not_found"])
219
+ var property_name := str(operation.get("propertyName", ""))
220
+ node.set(property_name, _decode_value(operation.get("value")))
221
+ var result := _save_instantiated_scene(root, scene_path)
222
+ if not result.get("ok", false):
223
+ return result
224
+ return _success("Node property set.", {"scenePath": scene_path, "nodePath": node_path, "propertyName": property_name})
225
+
226
+ func _node_get_property(operation: Dictionary) -> Dictionary:
227
+ var scene_path := _res_path(str(operation.get("scenePath", "")))
228
+ var root = _load_scene_root(scene_path)
229
+ if root == null:
230
+ return _failure("Scene could not be loaded: " + scene_path, ["scene_load_failed"])
231
+ var node_path := str(operation.get("nodePath", ""))
232
+ var node = _find_node(root, node_path)
233
+ if node == null:
234
+ return _failure("Node not found: " + node_path, ["node_not_found"])
235
+ var property_name := str(operation.get("propertyName", ""))
236
+ var value = _encode_value(node.get(property_name))
237
+ root.queue_free()
238
+ return _success("Node property read.", {"scenePath": scene_path, "nodePath": node_path, "propertyName": property_name, "value": value})
239
+
240
+ func _node_inspect(operation: Dictionary) -> Dictionary:
241
+ var scene_path := _res_path(str(operation.get("scenePath", "")))
242
+ if scene_path == "res://":
243
+ return _failure("node.inspect requires scenePath.", ["scene_path_missing"], _operation_help("node.inspect"))
244
+ var root = _load_scene_root(scene_path)
245
+ if root == null:
246
+ return _failure("Scene could not be loaded: " + scene_path, ["scene_load_failed"])
247
+ var node_path := str(operation.get("nodePath", "."))
248
+ var node = _find_node(root, node_path)
249
+ if node == null:
250
+ root.queue_free()
251
+ return _failure("Node not found: " + node_path, ["node_not_found"])
252
+ var property_names = operation.get("propertyNames", [])
253
+ var properties := {}
254
+ if typeof(property_names) == TYPE_ARRAY:
255
+ for property_name in property_names:
256
+ var key := str(property_name)
257
+ properties[key] = _encode_value(node.get(key))
258
+ var property_list := []
259
+ if bool(operation.get("includePropertyList", false)):
260
+ property_list = _filter_property_list(node.get_property_list(), str(operation.get("propertyQuery", "")), int(operation.get("propertyLimit", 50)))
261
+ var summary := _node_summary(node, node_path, 0, 0)
262
+ root.queue_free()
263
+ return _success("Node inspected.", {"scenePath": scene_path, "nodePath": node_path, "node": summary, "properties": properties, "propertyList": property_list})
264
+
265
+ func _resource_create(operation: Dictionary) -> Dictionary:
266
+ var resource_path := _res_path(str(operation.get("resourcePath", "")))
267
+ var resource_type := str(operation.get("resourceType", ""))
268
+ var resource = _instantiate(resource_type)
269
+ if resource == null or not (resource is Resource):
270
+ return _failure("Unable to instantiate resource type: " + resource_type, ["resource_type_invalid"])
271
+ _set_properties(resource, operation.get("properties", {}))
272
+ _ensure_parent_dir(resource_path)
273
+ var save_err := ResourceSaver.save(resource, resource_path)
274
+ if save_err != OK:
275
+ return _failure("Failed to save resource: " + resource_path, ["resource_save_failed"])
276
+ return _success("Resource created.", {"resourcePath": resource_path, "resourceType": resource_type})
277
+
278
+ func _resource_read(operation: Dictionary) -> Dictionary:
279
+ var resource_path := _res_path(str(operation.get("resourcePath", "")))
280
+ if resource_path == "res://":
281
+ return _failure("resource.read requires resourcePath.", ["resource_path_missing"], _operation_help("resource.read"))
282
+ var resource = load(resource_path)
283
+ if resource == null or not (resource is Resource):
284
+ return _failure("Resource could not be loaded: " + resource_path, ["resource_load_failed"])
285
+ var property_names = operation.get("propertyNames", [])
286
+ var properties := {}
287
+ if typeof(property_names) == TYPE_ARRAY:
288
+ for property_name in property_names:
289
+ var key := str(property_name)
290
+ properties[key] = _encode_value(resource.get(key))
291
+ var script = resource.get_script()
292
+ return _success("Resource read.", {"resourcePath": resource_path, "class": resource.get_class(), "scriptPath": script.resource_path if script else null, "properties": properties})
293
+
294
+ func _resource_properties(operation: Dictionary) -> Dictionary:
295
+ var resource_path := _res_path(str(operation.get("resourcePath", "")))
296
+ if resource_path == "res://":
297
+ return _failure("resource.properties requires resourcePath.", ["resource_path_missing"], _operation_help("resource.properties"))
298
+ var resource = load(resource_path)
299
+ if resource == null or not (resource is Resource):
300
+ return _failure("Resource could not be loaded: " + resource_path, ["resource_load_failed"])
301
+ var script = resource.get_script()
302
+ var properties := _filter_property_list(resource.get_property_list(), str(operation.get("propertyQuery", "")), int(operation.get("propertyLimit", 80)))
303
+ return _success("Resource properties loaded.", {"resourcePath": resource_path, "class": resource.get_class(), "scriptPath": script.resource_path if script else null, "properties": properties, "propertiesTruncated": properties.size() >= int(operation.get("propertyLimit", 80))})
304
+
305
+ func _resource_set_property(operation: Dictionary) -> Dictionary:
306
+ var resource_path := _res_path(str(operation.get("resourcePath", "")))
307
+ var resource = load(resource_path)
308
+ if resource == null or not (resource is Resource):
309
+ return _failure("Resource could not be loaded: " + resource_path, ["resource_load_failed"])
310
+ var property_name := str(operation.get("propertyName", ""))
311
+ resource.set(property_name, _decode_value(operation.get("value")))
312
+ var save_err := ResourceSaver.save(resource, resource_path)
313
+ if save_err != OK:
314
+ return _failure("Failed to save resource: " + resource_path, ["resource_save_failed"])
315
+ return _success("Resource property set.", {"resourcePath": resource_path, "propertyName": property_name})
316
+
317
+ func _script_attach(operation: Dictionary) -> Dictionary:
318
+ var scene_path := _res_path(str(operation.get("scenePath", "")))
319
+ var root = _load_scene_root(scene_path)
320
+ if root == null:
321
+ return _failure("Scene could not be loaded: " + scene_path, ["scene_load_failed"])
322
+ var node_path := str(operation.get("nodePath", ""))
323
+ var node = _find_node(root, node_path)
324
+ if node == null:
325
+ return _failure("Node not found: " + node_path, ["node_not_found"])
326
+ var script_path := _res_path(str(operation.get("scriptPath", "")))
327
+ var script = load(script_path)
328
+ if script == null or not (script is Script):
329
+ return _failure("Script could not be loaded: " + script_path, ["script_load_failed"])
330
+ node.set_script(script)
331
+ var result := _save_instantiated_scene(root, scene_path)
332
+ if not result.get("ok", false):
333
+ return result
334
+ return _success("Script attached.", {"scenePath": scene_path, "nodePath": node_path, "scriptPath": script_path})
335
+
336
+ func _class_search(operation: Dictionary) -> Dictionary:
337
+ var query := str(operation.get("query", "")).to_lower()
338
+ var base_class := str(operation.get("baseClass", ""))
339
+ var instantiable_only := bool(operation.get("instantiableOnly", true))
340
+ var limit := int(operation.get("limit", 50))
341
+ var classes := []
342
+ var seen := {}
343
+ for class_id in ClassDB.get_class_list():
344
+ if query != "" and not str(class_id).to_lower().contains(query):
345
+ continue
346
+ if base_class != "" and class_id != base_class and not ClassDB.is_parent_class(class_id, base_class):
347
+ continue
348
+ if instantiable_only and not ClassDB.can_instantiate(class_id):
349
+ continue
350
+ classes.append({"name": class_id, "source": "class_db", "baseClass": ClassDB.get_parent_class(class_id), "instantiable": ClassDB.can_instantiate(class_id)})
351
+ seen[class_id] = true
352
+ if classes.size() >= limit:
353
+ break
354
+ for entry in ProjectSettings.get_global_class_list():
355
+ var class_id := str(entry.get("class", ""))
356
+ if seen.has(class_id):
357
+ continue
358
+ if query != "" and not class_id.to_lower().contains(query):
359
+ continue
360
+ if base_class != "" and str(entry.get("base", "")) != base_class:
361
+ continue
362
+ classes.append({"name": class_id, "source": "global_class", "baseClass": str(entry.get("base", "")), "path": str(entry.get("path", "")), "instantiable": true})
363
+ seen[class_id] = true
364
+ if classes.size() >= limit:
365
+ break
366
+ for entry in _script_class_entries():
367
+ var class_id := str(entry.get("class", ""))
368
+ if seen.has(class_id):
369
+ continue
370
+ if query != "" and not class_id.to_lower().contains(query):
371
+ continue
372
+ if base_class != "" and str(entry.get("base", "")) != base_class:
373
+ continue
374
+ classes.append({"name": class_id, "source": "script_scan", "baseClass": str(entry.get("base", "")), "path": str(entry.get("path", "")), "instantiable": true})
375
+ seen[class_id] = true
376
+ if classes.size() >= limit:
377
+ break
378
+ return _success("Class search completed.", {"classes": classes, "truncated": classes.size() >= limit})
379
+
380
+ func _class_info(operation: Dictionary) -> Dictionary:
381
+ var class_id := str(operation.get("className", ""))
382
+ var property_query := str(operation.get("propertyQuery", "")).to_lower()
383
+ var property_limit := int(operation.get("propertyLimit", 50))
384
+ var properties := []
385
+ if ClassDB.class_exists(class_id):
386
+ for property in ClassDB.class_get_property_list(class_id, bool(operation.get("includeInherited", true))):
387
+ var name := str(property.get("name", ""))
388
+ if property_query != "" and not name.to_lower().contains(property_query):
389
+ continue
390
+ properties.append(_property_summary(property))
391
+ if properties.size() >= property_limit:
392
+ break
393
+ return _success("Class info loaded.", {"className": class_id, "source": "class_db", "parentClass": ClassDB.get_parent_class(class_id), "instantiable": ClassDB.can_instantiate(class_id), "properties": properties, "propertiesTruncated": properties.size() >= property_limit})
394
+ var script_class := _find_script_class(class_id)
395
+ if script_class.size() > 0:
396
+ var script_path := str(script_class.get("path", ""))
397
+ var script = load(script_path)
398
+ if script and script.has_method("get_script_property_list"):
399
+ for property in script.get_script_property_list():
400
+ var name := str(property.get("name", ""))
401
+ if property_query != "" and not name.to_lower().contains(property_query):
402
+ continue
403
+ properties.append(_property_summary(property))
404
+ if properties.size() >= property_limit:
405
+ break
406
+ return _success("Class info loaded.", {"className": class_id, "source": str(script_class.get("source", "script_scan")), "path": script_path, "parentClass": str(script_class.get("base", "")), "instantiable": true, "properties": properties, "propertiesTruncated": properties.size() >= property_limit})
407
+ return _failure("Class not found: " + class_id, ["class_not_found"])
408
+
409
+ func _editor_state(_operation: Dictionary) -> Dictionary:
410
+ var editor_interface = _editor_interface()
411
+ var current_scene_path = null
412
+ var open_scenes := []
413
+ var selected_node_paths := []
414
+ if editor_interface != null:
415
+ if editor_interface.has_method("get_open_scenes"):
416
+ for scene_path in editor_interface.get_open_scenes():
417
+ open_scenes.append(str(scene_path))
418
+ var edited_root = editor_interface.get_edited_scene_root()
419
+ if edited_root != null:
420
+ current_scene_path = edited_root.scene_file_path
421
+ var selection = editor_interface.get_selection()
422
+ if selection != null:
423
+ for selected_node in selection.get_selected_nodes():
424
+ if edited_root != null and selected_node is Node:
425
+ selected_node_paths.append(str(edited_root.get_path_to(selected_node)))
426
+ else:
427
+ selected_node_paths.append(str(selected_node.get_path()))
428
+ return _success("Editor state loaded.", {
429
+ "projectName": ProjectSettings.get_setting("application/config/name", ""),
430
+ "engineVersion": Engine.get_version_info().get("string", ""),
431
+ "features": ProjectSettings.get_setting("application/config/features", []),
432
+ "godotProjectRootPath": ProjectSettings.globalize_path("res://"),
433
+ "editorContextAvailable": editor_interface != null,
434
+ "currentScenePath": current_scene_path,
435
+ "openScenes": open_scenes,
436
+ "dirtyScenes": [],
437
+ "selectedNodePaths": selected_node_paths,
438
+ })
439
+
440
+ func _batch_apply(operation: Dictionary) -> Dictionary:
441
+ var operations = operation.get("operations", [])
442
+ if typeof(operations) != TYPE_ARRAY:
443
+ return _failure("batch.apply requires operations array.", ["batch_operations_invalid"])
444
+ var results := []
445
+ for child_operation in operations:
446
+ if typeof(child_operation) != TYPE_DICTIONARY:
447
+ return _failure("batch.apply child operation must be an object.", ["batch_child_operation_invalid"])
448
+ var result := _dispatch_operation(child_operation)
449
+ results.append(result)
450
+ if not result.get("ok", false):
451
+ return _failure("Batch operation failed.", ["batch_child_failed", str(child_operation.get("kind", ""))])
452
+ return _success("Batch applied.", {"results": results})
453
+
454
+ func _load_scene_root(scene_path: String):
455
+ var loaded = load(scene_path)
456
+ if loaded == null or not (loaded is PackedScene):
457
+ return null
458
+ return loaded.instantiate()
459
+
460
+ func _save_instantiated_scene(root: Node, scene_path: String) -> Dictionary:
461
+ var packed := PackedScene.new()
462
+ var pack_err := packed.pack(root)
463
+ if pack_err != OK:
464
+ return _failure("Failed to pack scene.", ["scene_pack_failed"])
465
+ var save_err := ResourceSaver.save(packed, scene_path)
466
+ if save_err != OK:
467
+ return _failure("Failed to save scene: " + scene_path, ["scene_save_failed"])
468
+ return _success("Scene saved.", {"scenePath": scene_path})
469
+
470
+ func _instantiate(class_id: String):
471
+ if class_id == "":
472
+ return null
473
+ if ClassDB.class_exists(class_id) and ClassDB.can_instantiate(class_id):
474
+ return ClassDB.instantiate(class_id)
475
+ var script_class := _find_script_class(class_id)
476
+ if script_class.size() > 0:
477
+ var script = load(str(script_class.get("path", "")))
478
+ if script and script.has_method("new"):
479
+ return script.new()
480
+ return null
481
+
482
+ func _set_properties(object: Object, properties) -> void:
483
+ if typeof(properties) != TYPE_DICTIONARY:
484
+ return
485
+ for property_name in properties.keys():
486
+ object.set(str(property_name), _decode_value(properties[property_name]))
487
+
488
+ func _decode_value(value):
489
+ if typeof(value) == TYPE_DICTIONARY:
490
+ if value.has("$resource"):
491
+ return load(_res_path(str(value["$resource"])))
492
+ if value.has("$vector2"):
493
+ var vector = value["$vector2"]
494
+ return Vector2(float(vector.get("x", 0.0)), float(vector.get("y", 0.0)))
495
+ if value.has("$color"):
496
+ var color = value["$color"]
497
+ return Color(float(color.get("r", 0.0)), float(color.get("g", 0.0)), float(color.get("b", 0.0)), float(color.get("a", 1.0)))
498
+ return value
499
+
500
+ func _encode_value(value, depth := 0):
501
+ if value == null:
502
+ return null
503
+ if depth >= 4:
504
+ return {"$truncated": "max_depth", "text": str(value)}
505
+ if value is Vector2:
506
+ return {"$vector2": {"x": value.x, "y": value.y}}
507
+ if value is Color:
508
+ return {"$color": {"r": value.r, "g": value.g, "b": value.b, "a": value.a}}
509
+ if value is Resource:
510
+ var resource_path: String = value.resource_path
511
+ return {"$resource": resource_path if resource_path != "" else null, "class": value.get_class(), "text": str(value)}
512
+ var value_type := typeof(value)
513
+ if value_type in [TYPE_BOOL, TYPE_INT, TYPE_FLOAT, TYPE_STRING]:
514
+ return value
515
+ if value_type == TYPE_ARRAY:
516
+ var encoded := []
517
+ var count := 0
518
+ for item in value:
519
+ if count >= 100:
520
+ encoded.append({"$truncated": "max_items"})
521
+ break
522
+ encoded.append(_encode_value(item, depth + 1))
523
+ count += 1
524
+ return encoded
525
+ if value_type == TYPE_DICTIONARY:
526
+ var encoded_dict := {}
527
+ var count := 0
528
+ for key in value.keys():
529
+ if count >= 100:
530
+ encoded_dict["$truncated"] = "max_items"
531
+ break
532
+ encoded_dict[str(key)] = _encode_value(value[key], depth + 1)
533
+ count += 1
534
+ return encoded_dict
535
+ return str(value)
536
+
537
+ func _property_summary(property: Dictionary) -> Dictionary:
538
+ return {"name": str(property.get("name", "")), "type": int(property.get("type", TYPE_NIL)), "hint": int(property.get("hint", 0)), "usage": int(property.get("usage", 0))}
539
+
540
+ func _filter_property_list(property_list: Array, query: String, limit: int) -> Array:
541
+ var lowered_query := query.to_lower()
542
+ var effective_limit := limit if limit > 0 else 50
543
+ var properties := []
544
+ for property in property_list:
545
+ var name := str(property.get("name", ""))
546
+ if lowered_query != "" and not name.to_lower().contains(lowered_query):
547
+ continue
548
+ properties.append(_property_summary(property))
549
+ if properties.size() >= effective_limit:
550
+ break
551
+ return properties
552
+
553
+ func _editor_interface():
554
+ var plugin = get("_plugin")
555
+ if plugin == null:
556
+ return null
557
+ if plugin.has_method("get_editor_interface"):
558
+ return plugin.get_editor_interface()
559
+ return null
560
+
561
+ func _find_script_class(class_id: String) -> Dictionary:
562
+ for entry in ProjectSettings.get_global_class_list():
563
+ if str(entry.get("class", "")) == class_id:
564
+ return {"class": class_id, "base": str(entry.get("base", "")), "path": str(entry.get("path", "")), "source": "global_class"}
565
+ for entry in _script_class_entries():
566
+ if str(entry.get("class", "")) == class_id:
567
+ return entry
568
+ return {}
569
+
570
+ func _script_class_entries() -> Array:
571
+ var entries := []
572
+ _collect_script_class_entries("res://", entries)
573
+ return entries
574
+
575
+ func _collect_script_class_entries(directory_path: String, entries: Array) -> void:
576
+ var dir := DirAccess.open(directory_path)
577
+ if dir == null:
578
+ return
579
+ dir.list_dir_begin()
580
+ var entry_name := dir.get_next()
581
+ while entry_name != "":
582
+ if entry_name.begins_with("."):
583
+ entry_name = dir.get_next()
584
+ continue
585
+ var entry_path := directory_path.path_join(entry_name)
586
+ if dir.current_is_dir():
587
+ _collect_script_class_entries(entry_path, entries)
588
+ elif entry_name.ends_with(".gd"):
589
+ var script_class := _read_script_class_entry(entry_path)
590
+ if script_class.size() > 0:
591
+ entries.append(script_class)
592
+ entry_name = dir.get_next()
593
+ dir.list_dir_end()
594
+
595
+ func _read_script_class_entry(script_path: String) -> Dictionary:
596
+ var source := FileAccess.get_file_as_string(script_path)
597
+ var class_id := ""
598
+ var base_class := ""
599
+ for raw_line in source.split("\n"):
600
+ var line := str(raw_line).strip_edges()
601
+ if line.begins_with("class_name "):
602
+ var class_tokens := line.split(" ", false)
603
+ if class_tokens.size() >= 2:
604
+ class_id = str(class_tokens[1])
605
+ elif line.begins_with("extends "):
606
+ var extends_tokens := line.split(" ", false)
607
+ if extends_tokens.size() >= 2:
608
+ base_class = str(extends_tokens[1])
609
+ if class_id == "":
610
+ return {}
611
+ return {"class": class_id, "base": base_class, "path": script_path, "source": "script_scan"}
612
+
613
+ func _node_summary(node: Node, node_path: String, depth: int, max_depth: int) -> Dictionary:
614
+ var children := []
615
+ if max_depth < 0 or depth < max_depth:
616
+ for child in node.get_children():
617
+ if child is Node:
618
+ children.append(_node_summary(child, str(node.get_path_to(child)), depth + 1, max_depth))
619
+ var script = node.get_script()
620
+ return {"path": node_path, "name": node.name, "type": node.get_class(), "scriptPath": script.resource_path if script else null, "childCount": node.get_child_count(), "children": children}
621
+
622
+ func _find_node(root: Node, node_path: String):
623
+ if node_path == "" or node_path == ".":
624
+ return root
625
+ return root.get_node_or_null(NodePath(node_path))
626
+
627
+ func _set_owner_recursive(node: Node, owner: Node) -> void:
628
+ node.owner = owner
629
+ for child in node.get_children():
630
+ if child is Node:
631
+ _set_owner_recursive(child, owner)
632
+
633
+ func _res_path(value: String) -> String:
634
+ if value.begins_with("res://"):
635
+ return value
636
+ return "res://" + value.trim_prefix("/")
637
+
638
+ func _ensure_parent_dir(res_path: String) -> void:
639
+ var absolute := ProjectSettings.globalize_path(res_path)
640
+ var dir := absolute.get_base_dir()
641
+ DirAccess.make_dir_recursive_absolute(dir)
642
+
643
+ func _write_json(path: String, value: Dictionary) -> void:
644
+ var file := FileAccess.open(path, FileAccess.WRITE)
645
+ if file:
646
+ file.store_string(JSON.stringify(value))
647
+ file.close()
648
+
649
+ func _success(summary: String, output: Dictionary) -> Dictionary:
650
+ return {"ok": true, "summary": summary, "reasons": [], "output": output}
651
+
652
+ func _failure(summary: String, reasons: Array, help := {}) -> Dictionary:
653
+ return {"ok": false, "summary": summary, "reasons": reasons, "output": null, "help": help}
654
+
655
+ func _operation_help(kind: String) -> Dictionary:
656
+ var examples := {
657
+ "scene.tree": {"kind": "scene.tree", "scenePath": "res://path/to/scene.tscn", "maxDepth": 3},
658
+ "node.inspect": {"kind": "node.inspect", "scenePath": "res://path/to/scene.tscn", "nodePath": ".", "includePropertyList": true, "propertyLimit": 40},
659
+ "resource.read": {"kind": "resource.read", "resourcePath": "res://path/to/resource.tres", "propertyNames": ["name"]},
660
+ "resource.properties": {"kind": "resource.properties", "resourcePath": "res://path/to/resource.tres"},
661
+ "class.search": {"kind": "class.search", "query": "Label"},
662
+ "class.info": {"kind": "class.info", "className": "Label", "propertyQuery": "text"},
663
+ "editor.state": {"kind": "editor.state"},
664
+ }
665
+ var example = examples.get(kind, {"kind": "editor.state"})
666
+ return {
667
+ "usage": "Use editor.operation.run with operation.kind, or prefer focused MCP tools: editor.state, editor.scene.tree, editor.node.inspect, editor.resource.read, editor.resource.properties, editor.class.search, editor.class.info.",
668
+ "helpCommand": "gdh editor operation run --help",
669
+ "examples": [example],
670
+ }
671
+ `;
672
+ }
673
+ export function renderEditorOperationCatalogGdscript() {
674
+ const runner = renderEditorOperationRunner();
675
+ const marker = "func run_editor_operation(operation: Dictionary) -> Dictionary:";
676
+ const markerIndex = runner.indexOf(marker);
677
+ if (markerIndex < 0) {
678
+ throw new Error("Editor operation runner is missing the catalog marker.");
679
+ }
680
+ return runner.slice(markerIndex);
681
+ }
682
+ //# sourceMappingURL=editor-operation-runner.js.map