ummaya 0.2.4 → 0.2.5

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 (477) hide show
  1. package/README.md +15 -2
  2. package/bin/ummaya +10 -1
  3. package/npm-shrinkwrap.json +253 -2
  4. package/package.json +5 -1
  5. package/prompts/manifest.yaml +1 -1
  6. package/prompts/system_v1.md +1 -0
  7. package/pyproject.toml +26 -2
  8. package/specs/2803-document-production-hardening/contracts/document-tools.schema.json +1043 -0
  9. package/src/ummaya/_canonical/__init__.py +2 -0
  10. package/src/ummaya/engine/engine.py +29 -132
  11. package/src/ummaya/evidence/__init__.py +21 -2
  12. package/src/ummaya/evidence/dataset_contract.py +193 -0
  13. package/src/ummaya/evidence/document_authoring_cases.py +33 -0
  14. package/src/ummaya/evidence/document_harness.py +313 -0
  15. package/src/ummaya/evidence/document_viewer_ux.py +391 -0
  16. package/src/ummaya/evidence/gates.py +70 -0
  17. package/src/ummaya/evidence/json_types.py +20 -0
  18. package/src/ummaya/evidence/models.py +88 -1
  19. package/src/ummaya/evidence/output_payload.py +89 -0
  20. package/src/ummaya/evidence/payload_documents.py +233 -0
  21. package/src/ummaya/evidence/route_contracts.py +224 -0
  22. package/src/ummaya/evidence/route_helpers.py +150 -0
  23. package/src/ummaya/evidence/runner.py +81 -212
  24. package/src/ummaya/evidence/source_provenance.py +246 -0
  25. package/src/ummaya/evidence/source_provenance_redaction.py +176 -0
  26. package/src/ummaya/evidence/tool_layer.py +39 -0
  27. package/src/ummaya/evidence/tool_layer_models.py +151 -0
  28. package/src/ummaya/ipc/adapter_manifest_emitter.py +26 -10
  29. package/src/ummaya/ipc/document_intent_normalization.py +185 -0
  30. package/src/ummaya/ipc/frame_schema.py +5 -5
  31. package/src/ummaya/ipc/route_diagnostics.py +73 -0
  32. package/src/ummaya/ipc/stdio.py +1109 -477
  33. package/src/ummaya/llm/client.py +102 -3
  34. package/src/ummaya/llm/config.py +8 -3
  35. package/src/ummaya/primitives/__init__.py +6 -2
  36. package/src/ummaya/primitives/delegation.py +1 -1
  37. package/src/ummaya/primitives/document.py +28 -0
  38. package/src/ummaya/settings.py +0 -3
  39. package/src/ummaya/tools/discovery_bridge.py +17 -1
  40. package/src/ummaya/tools/documents/__init__.py +297 -0
  41. package/src/ummaya/tools/documents/adapter_registry.py +487 -0
  42. package/src/ummaya/tools/documents/archive_container_probe.py +167 -0
  43. package/src/ummaya/tools/documents/artifact_store.py +454 -0
  44. package/src/ummaya/tools/documents/authoring.py +283 -0
  45. package/src/ummaya/tools/documents/baselines.py +114 -0
  46. package/src/ummaya/tools/documents/capability.py +331 -0
  47. package/src/ummaya/tools/documents/contracts.py +112 -0
  48. package/src/ummaya/tools/documents/conversion.py +521 -0
  49. package/src/ummaya/tools/documents/diff.py +275 -0
  50. package/src/ummaya/tools/documents/engines.py +163 -0
  51. package/src/ummaya/tools/documents/evaluation.py +291 -0
  52. package/src/ummaya/tools/documents/explicit_values.py +108 -0
  53. package/src/ummaya/tools/documents/fixtures.py +174 -0
  54. package/src/ummaya/tools/documents/format_completion_audit.py +471 -0
  55. package/src/ummaya/tools/documents/formats/__init__.py +2 -0
  56. package/src/ummaya/tools/documents/formats/archive.py +528 -0
  57. package/src/ummaya/tools/documents/formats/base.py +41 -0
  58. package/src/ummaya/tools/documents/formats/code_file.py +211 -0
  59. package/src/ummaya/tools/documents/formats/data_file.py +272 -0
  60. package/src/ummaya/tools/documents/formats/hwp.py +284 -0
  61. package/src/ummaya/tools/documents/formats/hwpx.py +1837 -0
  62. package/src/ummaya/tools/documents/formats/odf.py +435 -0
  63. package/src/ummaya/tools/documents/formats/ooxml.py +1030 -0
  64. package/src/ummaya/tools/documents/formats/passive.py +766 -0
  65. package/src/ummaya/tools/documents/formats/pdf.py +702 -0
  66. package/src/ummaya/tools/documents/formats/text_web.py +268 -0
  67. package/src/ummaya/tools/documents/hwp_conversion_probe.py +178 -0
  68. package/src/ummaya/tools/documents/hwp_direct_candidate.py +141 -0
  69. package/src/ummaya/tools/documents/inspection.py +289 -0
  70. package/src/ummaya/tools/documents/intake.py +1079 -0
  71. package/src/ummaya/tools/documents/legacy_office_promotion_probe.py +366 -0
  72. package/src/ummaya/tools/documents/models.py +1598 -0
  73. package/src/ummaya/tools/documents/odf_promotion_probe.py +167 -0
  74. package/src/ummaya/tools/documents/orchestrator.py +96 -0
  75. package/src/ummaya/tools/documents/passive_capability_probe.py +251 -0
  76. package/src/ummaya/tools/documents/patch.py +170 -0
  77. package/src/ummaya/tools/documents/pdfa_conformance.py +284 -0
  78. package/src/ummaya/tools/documents/pdfa_promotion_probe.py +198 -0
  79. package/src/ummaya/tools/documents/permissions.py +110 -0
  80. package/src/ummaya/tools/documents/planner.py +616 -0
  81. package/src/ummaya/tools/documents/registry.py +2733 -0
  82. package/src/ummaya/tools/documents/render.py +978 -0
  83. package/src/ummaya/tools/documents/render_comparison.py +113 -0
  84. package/src/ummaya/tools/documents/render_comparison_models.py +74 -0
  85. package/src/ummaya/tools/documents/render_comparison_regions.py +73 -0
  86. package/src/ummaya/tools/documents/render_comparison_style.py +161 -0
  87. package/src/ummaya/tools/documents/reread.py +157 -0
  88. package/src/ummaya/tools/documents/runtime_authoring.py +244 -0
  89. package/src/ummaya/tools/documents/runtime_authoring_bundle.py +76 -0
  90. package/src/ummaya/tools/documents/scorecard.py +184 -0
  91. package/src/ummaya/tools/documents/socratic_planner.py +193 -0
  92. package/src/ummaya/tools/documents/style.py +48 -0
  93. package/src/ummaya/tools/documents/tool_defs.py +523 -0
  94. package/src/ummaya/tools/documents/validate.py +347 -0
  95. package/src/ummaya/tools/executor.py +29 -0
  96. package/src/ummaya/tools/live_proxy.py +0 -3
  97. package/src/ummaya/tools/models.py +5 -1
  98. package/src/ummaya/tools/register_all.py +8 -0
  99. package/src/ummaya/tools/registry.py +10 -1
  100. package/src/ummaya/tools/routing/__init__.py +59 -0
  101. package/src/ummaya/tools/routing/builder.py +105 -0
  102. package/src/ummaya/tools/routing/cards.py +29 -0
  103. package/src/ummaya/tools/routing/decision_service.py +534 -0
  104. package/src/ummaya/tools/routing/decision_types.py +74 -0
  105. package/src/ummaya/tools/routing/feasibility.py +122 -0
  106. package/src/ummaya/tools/routing/intent.py +17 -0
  107. package/src/ummaya/tools/routing/intent_extractor.py +207 -0
  108. package/src/ummaya/tools/routing/intent_patterns.py +160 -0
  109. package/src/ummaya/tools/routing/intent_public_data.py +150 -0
  110. package/src/ummaya/tools/routing/intent_types.py +48 -0
  111. package/src/ummaya/tools/routing/lint.py +78 -0
  112. package/src/ummaya/tools/routing/metadata.py +174 -0
  113. package/src/ummaya/tools/routing/projection.py +340 -0
  114. package/src/ummaya/tools/routing/retrieval_policy.py +629 -0
  115. package/src/ummaya/tools/routing/schema.py +81 -0
  116. package/src/ummaya/tools/routing/types.py +96 -0
  117. package/src/ummaya/tools/routing_index.py +2 -2
  118. package/src/ummaya/tools/search.py +34 -746
  119. package/tests/fixtures/documents/public_forms/baselines.yaml +113 -0
  120. package/tui/package.json +1 -1
  121. package/tui/src/.cc-byte-identical-whitelist.yaml +266 -0
  122. package/tui/src/QueryEngine.ts +12 -8
  123. package/tui/src/bridge/inboundAttachments.ts +3 -3
  124. package/tui/src/cli/handlers/auth.ts +3 -12
  125. package/tui/src/cli/print.ts +7 -7
  126. package/tui/src/commands/insights.ts +1 -1
  127. package/tui/src/commands/install-github-app/types.ts +8 -30
  128. package/tui/src/commands/plugin/types.ts +6 -28
  129. package/tui/src/commands/plugin/unifiedTypes.ts +4 -26
  130. package/tui/src/commands/rename/generateSessionName.ts +1 -1
  131. package/tui/src/components/Feedback.tsx +1 -1
  132. package/tui/src/components/LogoV2/EmergencyTip.tsx +11 -2
  133. package/tui/src/components/LogoV2/WelcomeV2.tsx +1 -3
  134. package/tui/src/components/ScrollKeybindingHandler.tsx +6 -6
  135. package/tui/src/components/Spinner/types.ts +6 -28
  136. package/tui/src/components/agents/generateAgent.ts +1 -1
  137. package/tui/src/components/agents/new-agent-creation/types.ts +4 -26
  138. package/tui/src/components/config/EnvSecretIsolatedEditor.tsx +1 -1
  139. package/tui/src/components/mcp/types.ts +16 -38
  140. package/tui/src/components/messages/AssistantToolUseMessage.tsx +3 -2
  141. package/tui/src/components/messages/UserCrossSessionMessage.ts +16 -4
  142. package/tui/src/components/messages/UserForkBoilerplateMessage.ts +16 -4
  143. package/tui/src/components/messages/UserGitHubWebhookMessage.ts +16 -4
  144. package/tui/src/components/messages/UserToolResultMessage/utils.tsx +3 -2
  145. package/tui/src/components/permissions/MonitorPermissionRequest/MonitorPermissionRequest.ts +9 -4
  146. package/tui/src/components/permissions/ReviewArtifactPermissionRequest/ReviewArtifactPermissionRequest.ts +9 -4
  147. package/tui/src/components/primitive/DocumentSocraticReviewBlock.tsx +129 -0
  148. package/tui/src/components/primitive/DocumentToolResultCard.tsx +224 -0
  149. package/tui/src/components/primitive/documentSocraticReview.ts +215 -0
  150. package/tui/src/components/primitive/index.tsx +43 -1
  151. package/tui/src/components/primitive/types.ts +137 -0
  152. package/tui/src/components/ui/option.ts +4 -26
  153. package/tui/src/constants/common.ts +0 -2
  154. package/tui/src/constants/prompts.ts +4 -3
  155. package/tui/src/constants/querySource.ts +4 -26
  156. package/tui/src/entrypoints/sdk/controlTypes.ts +26 -48
  157. package/tui/src/entrypoints/sdk/coreTypes.generated.ts +3 -25
  158. package/tui/src/entrypoints/sdk/runtimeTypes.ts +38 -60
  159. package/tui/src/entrypoints/sdk/sdkUtilityTypes.ts +4 -26
  160. package/tui/src/entrypoints/sdk/settingsTypes.generated.ts +3 -25
  161. package/tui/src/entrypoints/sdk/toolTypes.ts +3 -25
  162. package/tui/src/hooks/toolPermission/handlers/interactiveHandler.ts +10 -0
  163. package/tui/src/hooks/useApiKeyVerification.ts +1 -1
  164. package/tui/src/hooks/useVirtualScroll.ts +1 -1
  165. package/tui/src/ink/ink.tsx +33 -14
  166. package/tui/src/ink/reconciler.ts +2 -3
  167. package/tui/src/ink/render-to-screen.ts +30 -10
  168. package/tui/src/ipc/bridge.ts +62 -15
  169. package/tui/src/ipc/bridgeSingleton.ts +5 -1
  170. package/tui/src/ipc/codec.ts +3 -3
  171. package/tui/src/ipc/frames.generated.ts +12 -12
  172. package/tui/src/ipc/llmClient.ts +151 -27
  173. package/tui/src/ipc/schema/frame.schema.json +1 -1
  174. package/tui/src/keybindings/defaultBindings.ts +4 -0
  175. package/tui/src/main.tsx +29 -11
  176. package/tui/src/native-ts/file-index/index.ts +33 -3
  177. package/tui/src/observability/surface.ts +2 -2
  178. package/tui/src/probes/toolRegistryProbe.tsx +3 -1
  179. package/tui/src/projectOnboardingState.ts +7 -6
  180. package/tui/src/query/chatMessageTypes.ts +18 -0
  181. package/tui/src/query/chatMessagesBuilder.ts +1 -1
  182. package/tui/src/query/deps.ts +1 -1
  183. package/tui/src/query/messageGuards.ts +106 -0
  184. package/tui/src/query/publicDataTerminalRepair.ts +384 -0
  185. package/tui/src/query/run.ts +1075 -0
  186. package/tui/src/query/supportBoundary.ts +168 -0
  187. package/tui/src/query/toolResultErrors.ts +103 -0
  188. package/tui/src/query/toolRunner.ts +687 -0
  189. package/tui/src/query/unavailableToolRepair.ts +118 -0
  190. package/tui/src/query.ts +9 -2186
  191. package/tui/src/screens/REPL.tsx +40 -29
  192. package/tui/src/services/api/adapterManifest.ts +4 -0
  193. package/tui/src/services/api/backendChat/events.ts +117 -0
  194. package/tui/src/services/api/backendChat/finalMessage.ts +40 -0
  195. package/tui/src/services/api/backendChat/frame.ts +9 -0
  196. package/tui/src/services/api/backendChat/streaming.ts +430 -0
  197. package/tui/src/services/api/backendChat/types.ts +62 -0
  198. package/tui/src/services/api/backendChat.ts +1 -0
  199. package/tui/src/services/api/client.ts +65 -2
  200. package/tui/src/services/api/errorUtils.ts +5 -5
  201. package/tui/src/services/api/errors.ts +1 -1
  202. package/tui/src/services/api/logging.ts +1 -1
  203. package/tui/src/services/api/ummaya/evidence.ts +194 -0
  204. package/tui/src/services/api/ummaya/messages.ts +255 -0
  205. package/tui/src/services/api/ummaya/nonStreaming.ts +66 -0
  206. package/tui/src/services/api/ummaya/provider.ts +200 -0
  207. package/tui/src/services/api/ummaya/reasoning.ts +24 -0
  208. package/tui/src/services/api/ummaya/request.ts +200 -0
  209. package/tui/src/services/api/ummaya/selectionContext.ts +240 -0
  210. package/tui/src/services/api/ummaya/streaming.ts +365 -0
  211. package/tui/src/services/api/ummaya/streamingPayload.ts +129 -0
  212. package/tui/src/services/api/ummaya/streamingReader.ts +40 -0
  213. package/tui/src/services/api/ummaya/toolSelection.ts +217 -0
  214. package/tui/src/services/api/ummaya/types.ts +110 -0
  215. package/tui/src/services/api/ummaya/usage.ts +30 -0
  216. package/tui/src/services/api/ummaya.ts +26 -418
  217. package/tui/src/services/api/withRetry.ts +1 -1
  218. package/tui/src/services/awaySummary.ts +2 -2
  219. package/tui/src/services/claudeAiLimits.ts +1 -1
  220. package/tui/src/services/compact/autoCompact.ts +1 -1
  221. package/tui/src/services/compact/compact.ts +1 -1
  222. package/tui/src/services/lsp/types.ts +8 -30
  223. package/tui/src/services/tips/types.ts +6 -28
  224. package/tui/src/services/tokenEstimation.ts +1 -1
  225. package/tui/src/services/toolRegistry/bootGuard.ts +5 -5
  226. package/tui/src/services/toolUseSummary/toolUseSummaryGenerator.ts +1 -1
  227. package/tui/src/services/tools/toolExecution.ts +94 -1
  228. package/tui/src/store/pendingPermissionSlot.ts +1 -1
  229. package/tui/src/store/session-store.ts +10 -36
  230. package/tui/src/stubs/any-stub.ts +15 -10
  231. package/tui/src/stubs/color-diff-napi.ts +37 -23
  232. package/tui/src/stubs/globals.d.ts +3 -3
  233. package/tui/src/stubs/macro-preload.ts +23 -12
  234. package/tui/src/tools/AdapterTool/AdapterTool.ts +1207 -714
  235. package/tui/src/tools/AdapterTool/routeDiagnostics.ts +75 -0
  236. package/tui/src/tools/AgentTool/AgentTool.tsx +84 -1371
  237. package/tui/src/tools/AgentTool/agentToolHandoff.ts +114 -0
  238. package/tui/src/tools/AgentTool/agentToolPartialResult.ts +16 -0
  239. package/tui/src/tools/AgentTool/agentToolProgress.ts +32 -0
  240. package/tui/src/tools/AgentTool/agentToolResolver.ts +161 -0
  241. package/tui/src/tools/AgentTool/agentToolResult.ts +163 -0
  242. package/tui/src/tools/AgentTool/agentToolUtils.ts +14 -686
  243. package/tui/src/tools/AgentTool/asyncAgentLifecycle.ts +208 -0
  244. package/tui/src/tools/AgentTool/asyncLifecycle.ts +153 -0
  245. package/tui/src/tools/AgentTool/backgroundedCompletion.ts +126 -0
  246. package/tui/src/tools/AgentTool/backgroundedLifecycle.ts +174 -0
  247. package/tui/src/tools/AgentTool/foregroundBackground.ts +83 -0
  248. package/tui/src/tools/AgentTool/foregroundDrain.tsx +133 -0
  249. package/tui/src/tools/AgentTool/foregroundFinalize.ts +98 -0
  250. package/tui/src/tools/AgentTool/foregroundLifecycle.tsx +237 -0
  251. package/tui/src/tools/AgentTool/foregroundProgress.tsx +169 -0
  252. package/tui/src/tools/AgentTool/foregroundTask.ts +89 -0
  253. package/tui/src/tools/AgentTool/forkSubagent.ts +1 -12
  254. package/tui/src/tools/AgentTool/forkSubagentGate.ts +34 -0
  255. package/tui/src/tools/AgentTool/launchRouting.ts +203 -0
  256. package/tui/src/tools/AgentTool/lifecycle.ts +244 -0
  257. package/tui/src/tools/AgentTool/mcpRouting.ts +73 -0
  258. package/tui/src/tools/AgentTool/orchestrationSupport.ts +70 -0
  259. package/tui/src/tools/AgentTool/permissions.ts +39 -0
  260. package/tui/src/tools/AgentTool/promptSetup.ts +181 -0
  261. package/tui/src/tools/AgentTool/remoteRouting.ts +62 -0
  262. package/tui/src/tools/AgentTool/resultMapping.ts +116 -0
  263. package/tui/src/tools/AgentTool/resumeAgent.ts +39 -107
  264. package/tui/src/tools/AgentTool/resumeAgentHelpers.ts +140 -0
  265. package/tui/src/tools/AgentTool/runAgent.ts +1 -1
  266. package/tui/src/tools/AgentTool/runtimeConfig.ts +57 -0
  267. package/tui/src/tools/AgentTool/schemas.ts +196 -0
  268. package/tui/src/tools/AgentTool/sourceVerificationPropagation.ts +263 -0
  269. package/tui/src/tools/AgentTool/worktreeLifecycle.ts +105 -0
  270. package/tui/src/tools/AskUserQuestionTool/AskUserQuestionTool.tsx +174 -202
  271. package/tui/src/tools/BashTool/BashTool.tsx +71 -1072
  272. package/tui/src/tools/BashTool/bashCommandHelpers.ts +12 -12
  273. package/tui/src/tools/BashTool/bashPermissions/astPreflight.ts +173 -0
  274. package/tui/src/tools/BashTool/bashPermissions/classifierChecks.ts +199 -0
  275. package/tui/src/tools/BashTool/bashPermissions/compoundGuards.ts +53 -0
  276. package/tui/src/tools/BashTool/bashPermissions/constants.ts +99 -0
  277. package/tui/src/tools/BashTool/bashPermissions/index.ts +38 -0
  278. package/tui/src/tools/BashTool/bashPermissions/legacyMisparsing.ts +62 -0
  279. package/tui/src/tools/BashTool/bashPermissions/main.ts +135 -0
  280. package/tui/src/tools/BashTool/bashPermissions/normalizedCommands.ts +33 -0
  281. package/tui/src/tools/BashTool/bashPermissions/operatorFlow.ts +98 -0
  282. package/tui/src/tools/BashTool/bashPermissions/permissionChecks.ts +200 -0
  283. package/tui/src/tools/BashTool/bashPermissions/prefixSuggestions.ts +88 -0
  284. package/tui/src/tools/BashTool/bashPermissions/promptClassifierRules.ts +125 -0
  285. package/tui/src/tools/BashTool/bashPermissions/ruleDelegates.ts +19 -0
  286. package/tui/src/tools/BashTool/bashPermissions/ruleMatching.ts +145 -0
  287. package/tui/src/tools/BashTool/bashPermissions/sandboxAutoAllow.ts +75 -0
  288. package/tui/src/tools/BashTool/bashPermissions/subcommandFlow.ts +205 -0
  289. package/tui/src/tools/BashTool/bashPermissions/subcommandGuards.ts +73 -0
  290. package/tui/src/tools/BashTool/bashPermissions/subcommandResultHelpers.ts +116 -0
  291. package/tui/src/tools/BashTool/bashPermissions/types.ts +26 -0
  292. package/tui/src/tools/BashTool/bashPermissions/wrapperStripping.ts +139 -0
  293. package/tui/src/tools/BashTool/bashPermissions.ts +26 -2621
  294. package/tui/src/tools/BashTool/call.ts +202 -0
  295. package/tui/src/tools/BashTool/callLoader.ts +35 -0
  296. package/tui/src/tools/BashTool/commandClassification.ts +151 -0
  297. package/tui/src/tools/BashTool/commandClassificationLoader.ts +40 -0
  298. package/tui/src/tools/BashTool/cwdReset.ts +33 -0
  299. package/tui/src/tools/BashTool/lineTruncation.ts +11 -0
  300. package/tui/src/tools/BashTool/modeValidation.ts +13 -1
  301. package/tui/src/tools/BashTool/outputPersistence.ts +42 -0
  302. package/tui/src/tools/BashTool/permissionClassification.ts +66 -0
  303. package/tui/src/tools/BashTool/permissionLoader.ts +44 -0
  304. package/tui/src/tools/BashTool/resultLoader.ts +29 -0
  305. package/tui/src/tools/BashTool/resultMapping.ts +83 -0
  306. package/tui/src/tools/BashTool/sandboxPolicy.ts +79 -0
  307. package/tui/src/tools/BashTool/schemas.ts +65 -0
  308. package/tui/src/tools/BashTool/sedEditExecution.ts +59 -0
  309. package/tui/src/tools/BashTool/shellExecution.tsx +245 -0
  310. package/tui/src/tools/BashTool/shellOutputUtils.ts +85 -0
  311. package/tui/src/tools/BashTool/shellPermissionGauntlet.ts +97 -0
  312. package/tui/src/tools/BashTool/uiLoader.ts +37 -0
  313. package/tui/src/tools/BriefTool/upload.ts +1 -1
  314. package/tui/src/tools/CalculatorTool/parser.ts +2 -2
  315. package/tui/src/tools/DocumentPrimitive/DocumentPrimitive.ts +262 -0
  316. package/tui/src/tools/DocumentPrimitive/dispatchNormalization.ts +270 -0
  317. package/tui/src/tools/DocumentPrimitive/documentDestinationPath.ts +18 -0
  318. package/tui/src/tools/DocumentPrimitive/documentMutationGuard.ts +22 -0
  319. package/tui/src/tools/DocumentPrimitive/documentPatchNormalization.ts +248 -0
  320. package/tui/src/tools/DocumentPrimitive/documentSourceVerification.ts +245 -0
  321. package/tui/src/tools/DocumentPrimitive/documentSourceVerificationFields.ts +103 -0
  322. package/tui/src/tools/DocumentPrimitive/modelVisibleOutput.ts +40 -0
  323. package/tui/src/tools/DocumentPrimitive/prompt.ts +35 -0
  324. package/tui/src/tools/FileEditTool/FileEditTool.ts +9 -507
  325. package/tui/src/tools/FileEditTool/call.ts +228 -0
  326. package/tui/src/tools/FileEditTool/validateInput.ts +196 -0
  327. package/tui/src/tools/FileReadTool/imageProcessor.ts +13 -0
  328. package/tui/src/tools/FileWriteTool/FileWriteTool.ts +7 -300
  329. package/tui/src/tools/FileWriteTool/call.ts +223 -0
  330. package/tui/src/tools/FileWriteTool/validateInput.ts +80 -0
  331. package/tui/src/tools/ListMcpResourcesTool/ListMcpResourcesTool.ts +19 -3
  332. package/tui/src/tools/LookupPrimitive/LookupPrimitive.ts +25 -32
  333. package/tui/src/tools/LookupPrimitive/prompt.ts +0 -2
  334. package/tui/src/tools/MCPTool/trustPolicy.ts +118 -0
  335. package/tui/src/tools/McpAuthTool/McpAuthTool.ts +21 -3
  336. package/tui/src/tools/NotebookEditTool/NotebookEditTool.ts +7 -326
  337. package/tui/src/tools/NotebookEditTool/call.ts +254 -0
  338. package/tui/src/tools/NotebookEditTool/notebookModel.ts +51 -0
  339. package/tui/src/tools/NotebookEditTool/validateInput.ts +142 -0
  340. package/tui/src/tools/PowerShellTool/PowerShellTool.tsx +46 -937
  341. package/tui/src/tools/PowerShellTool/acceptEditsCommandValidation.ts +162 -0
  342. package/tui/src/tools/PowerShellTool/call.ts +179 -0
  343. package/tui/src/tools/PowerShellTool/callLoader.ts +37 -0
  344. package/tui/src/tools/PowerShellTool/commandClassification.ts +86 -0
  345. package/tui/src/tools/PowerShellTool/modeValidation.ts +25 -332
  346. package/tui/src/tools/PowerShellTool/outputPersistence.ts +42 -0
  347. package/tui/src/tools/PowerShellTool/permissionClassification.ts +28 -0
  348. package/tui/src/tools/PowerShellTool/resultLoader.ts +31 -0
  349. package/tui/src/tools/PowerShellTool/resultMapping.ts +75 -0
  350. package/tui/src/tools/PowerShellTool/schemas.ts +40 -0
  351. package/tui/src/tools/PowerShellTool/shellExecution.tsx +258 -0
  352. package/tui/src/tools/PowerShellTool/symlinkModeValidation.ts +44 -0
  353. package/tui/src/tools/PowerShellTool/uiLoader.ts +37 -0
  354. package/tui/src/tools/PowerShellTool/validation.ts +39 -0
  355. package/tui/src/tools/ReadMcpResourceTool/ReadMcpResourceTool.ts +19 -3
  356. package/tui/src/tools/ResolveLocationPrimitive/ResolveLocationPrimitive.ts +1 -11
  357. package/tui/src/tools/ResolveLocationPrimitive/prompt.ts +2 -6
  358. package/tui/src/tools/SkillTool/SkillTool.ts +2 -2
  359. package/tui/src/tools/SubmitPrimitive/SubmitPrimitive.ts +27 -10
  360. package/tui/src/tools/TaskCreateTool/TaskCreateTool.ts +16 -2
  361. package/tui/src/tools/TaskGetTool/TaskGetTool.ts +23 -3
  362. package/tui/src/tools/TaskListTool/TaskListTool.ts +22 -4
  363. package/tui/src/tools/TaskOutputTool/TaskOutputTool.tsx +46 -547
  364. package/tui/src/tools/TaskOutputTool/lookup.ts +216 -0
  365. package/tui/src/tools/TaskOutputTool/render.tsx +257 -0
  366. package/tui/src/tools/TaskOutputTool/schemas.ts +55 -0
  367. package/tui/src/tools/TaskOutputTool/serialization.ts +36 -0
  368. package/tui/src/tools/TaskStopTool/TaskStopTool.ts +10 -0
  369. package/tui/src/tools/TaskUpdateTool/TaskUpdateTool.ts +14 -364
  370. package/tui/src/tools/TaskUpdateTool/completion.ts +62 -0
  371. package/tui/src/tools/TaskUpdateTool/schemas.ts +62 -0
  372. package/tui/src/tools/TaskUpdateTool/serialization.ts +46 -0
  373. package/tui/src/tools/TaskUpdateTool/statusUpdate.ts +247 -0
  374. package/tui/src/tools/TodoWriteTool/TodoWriteTool.ts +21 -2
  375. package/tui/src/tools/ToolSearchTool/ToolSearchTool.ts +21 -302
  376. package/tui/src/tools/ToolSearchTool/ccSupportTools.ts +223 -0
  377. package/tui/src/tools/ToolSearchTool/descriptionCache.ts +50 -0
  378. package/tui/src/tools/ToolSearchTool/keywordSearch.ts +216 -0
  379. package/tui/src/tools/ToolSearchTool/prompt.ts +10 -4
  380. package/tui/src/tools/ToolSearchTool/resultMapping.ts +30 -0
  381. package/tui/src/tools/ToolSearchTool/schemas.ts +30 -0
  382. package/tui/src/tools/ToolSearchTool/searchPool.ts +47 -0
  383. package/tui/src/tools/ToolSearchTool/supportIntentHints.ts +140 -0
  384. package/tui/src/tools/TranslateTool/TranslateTool.ts +1 -1
  385. package/tui/src/tools/VerifyPrimitive/VerifyPrimitive.ts +2 -1
  386. package/tui/src/tools/WebFetchTool/WebFetchTool.ts +43 -138
  387. package/tui/src/tools/WebFetchTool/call.ts +227 -0
  388. package/tui/src/tools/WebFetchTool/resolvedAddressSafety.ts +78 -0
  389. package/tui/src/tools/WebFetchTool/sourceVerification.ts +204 -0
  390. package/tui/src/tools/WebFetchTool/types.ts +23 -0
  391. package/tui/src/tools/WebFetchTool/urlSafety.ts +181 -0
  392. package/tui/src/tools/WebFetchTool/utils.ts +1 -1
  393. package/tui/src/tools/WebSearchTool/UI.tsx +0 -1
  394. package/tui/src/tools/WebSearchTool/WebSearchTool.ts +9 -313
  395. package/tui/src/tools/WebSearchTool/call.ts +33 -0
  396. package/tui/src/tools/WebSearchTool/responseMapping.ts +190 -0
  397. package/tui/src/tools/WebSearchTool/resultBlock.ts +47 -0
  398. package/tui/src/tools/WebSearchTool/schemas.ts +47 -0
  399. package/tui/src/tools/WebSearchTool/toolSchema.ts +12 -0
  400. package/tui/src/tools/WorkspaceToolAdapter/WorkspaceToolAdapter.ts +79 -0
  401. package/tui/src/tools/WorkspaceToolAdapter/allowedRootPolicy.ts +85 -0
  402. package/tui/src/tools/WorkspaceToolAdapter/documentFormatGuards.ts +73 -0
  403. package/tui/src/tools/WorkspaceToolAdapter/inputNormalization.ts +105 -0
  404. package/tui/src/tools/WorkspaceToolAdapter/mcpExposurePolicy.ts +64 -0
  405. package/tui/src/tools/WorkspaceToolAdapter/toolDefFactory.ts +215 -0
  406. package/tui/src/tools/WorkspaceToolAdapter/toolNames.ts +6 -0
  407. package/tui/src/tools/WorkspaceToolAdapter/workspacePolicy.ts +15 -0
  408. package/tui/src/tools/_shared/dispatchPrimitive.ts +6 -6
  409. package/tui/src/tools/_shared/documentChangeToPatch.ts +125 -0
  410. package/tui/src/tools/_shared/documentDispatchArguments.ts +87 -0
  411. package/tui/src/tools/_shared/documentPrimitiveTimeout.ts +13 -0
  412. package/tui/src/tools/_shared/documentToolResultRender.ts +98 -0
  413. package/tui/src/tools/_shared/pendingCallRegistry.ts +1 -6
  414. package/tui/src/tools/_shared/rootPrimitiveInput.ts +1 -0
  415. package/tui/src/tools/_shared/toolChoiceRepair/documentCompletionPatterns.ts +58 -0
  416. package/tui/src/tools/_shared/toolChoiceRepair/documentCompletionPrompt.ts +271 -0
  417. package/tui/src/tools/_shared/toolChoiceRepair/documentRepair.ts +452 -0
  418. package/tui/src/tools/_shared/toolChoiceRepair/messageAccess.ts +80 -0
  419. package/tui/src/tools/_shared/toolChoiceRepair/publicDataRepair.ts +92 -0
  420. package/tui/src/tools/_shared/toolChoiceRepair/supportRepair.ts +135 -0
  421. package/tui/src/tools/_shared/toolChoiceRepair.ts +55 -860
  422. package/tui/src/tools/shared/mockDisclaimer.ts +1 -1
  423. package/tui/src/tools.ts +39 -190
  424. package/tui/src/types/fileSuggestion.ts +4 -26
  425. package/tui/src/types/generated/events_mono/claude_code/v1/claude_code_internal_event.ts +186 -148
  426. package/tui/src/types/generated/events_mono/common/v1/auth.ts +25 -11
  427. package/tui/src/types/generated/events_mono/growthbook/v1/growthbook_experiment_event.ts +47 -30
  428. package/tui/src/types/generated/google/protobuf/timestamp.ts +21 -7
  429. package/tui/src/types/message.ts +80 -102
  430. package/tui/src/types/messageQueueTypes.ts +6 -28
  431. package/tui/src/types/notebook.ts +16 -38
  432. package/tui/src/types/statusLine.ts +4 -26
  433. package/tui/src/types/tools.ts +24 -46
  434. package/tui/src/types/utils.ts +6 -28
  435. package/tui/src/upstreamproxy/relay.ts +7 -3
  436. package/tui/src/upstreamproxy/upstreamproxy.ts +1 -1
  437. package/tui/src/utils/assistantMessageFactories.ts +9 -3
  438. package/tui/src/utils/auth.ts +129 -139
  439. package/tui/src/utils/bash/ast.ts +23 -23
  440. package/tui/src/utils/bash/bashParser.ts +5 -5
  441. package/tui/src/utils/billing.ts +1 -1
  442. package/tui/src/utils/collapseReadSearch.ts +3 -3
  443. package/tui/src/utils/cronTasks.ts +1 -1
  444. package/tui/src/utils/execFileNoThrow.ts +1 -1
  445. package/tui/src/utils/filePersistence/types.ts +16 -38
  446. package/tui/src/utils/forkedAgent.ts +1 -1
  447. package/tui/src/utils/gracefulShutdown.ts +4 -4
  448. package/tui/src/utils/heapDumpService.ts +12 -8
  449. package/tui/src/utils/hooks/apiQueryHookHelper.ts +1 -1
  450. package/tui/src/utils/hooks/execPromptHook.ts +1 -1
  451. package/tui/src/utils/hooks/skillImprovement.ts +1 -1
  452. package/tui/src/utils/mcp/dateTimeParser.ts +1 -1
  453. package/tui/src/utils/messages.ts +18 -0
  454. package/tui/src/utils/migrateSessions.ts +3 -3
  455. package/tui/src/utils/model/model.ts +6 -6
  456. package/tui/src/utils/permissions/yoloClassifier.ts +1 -1
  457. package/tui/src/utils/plugins/headlessPluginInstall.ts +1 -1
  458. package/tui/src/utils/plugins/mcpPluginIntegration.ts +1 -1
  459. package/tui/src/utils/plugins/mcpbHandler.ts +1 -1
  460. package/tui/src/utils/plugins/pluginLoader.ts +8 -8
  461. package/tui/src/utils/protectedNamespace.ts +5 -3
  462. package/tui/src/utils/rawJsonToolCall.ts +242 -0
  463. package/tui/src/utils/ripgrep.ts +16 -7
  464. package/tui/src/utils/sessionTitle.ts +1 -1
  465. package/tui/src/utils/settings/permissionValidation.ts +14 -2
  466. package/tui/src/utils/shell/prefix.ts +1 -1
  467. package/tui/src/utils/sideQuery.ts +1 -1
  468. package/tui/src/utils/systemThemeWatcher.ts +13 -3
  469. package/tui/src/utils/teleport.tsx +1 -1
  470. package/uv.lock +400 -14
  471. package/tui/src/services/api/claude.ts +0 -3540
  472. package/tui/src/tools/_shared/directPublicDataGuard.ts +0 -362
  473. package/tui/src/tools/_shared/kmaAnalysisGuard.ts +0 -197
  474. package/tui/src/tools/_shared/kmaAviationGuard.ts +0 -70
  475. package/tui/src/tools/_shared/nmcAedGuard.ts +0 -234
  476. package/tui/src/tools/_shared/protectedCheckGuard.ts +0 -207
  477. package/tui/src/tools/_shared/textToolCallGuard.ts +0 -91
@@ -0,0 +1,113 @@
1
+ version: 1
2
+ catalog_id: public-form-conformance-baselines-v1
3
+ source_policy: offline_fixtures_only
4
+ live_network_allowed: false
5
+ baselines:
6
+ - template_id: birth-benefit-application-hwpx
7
+ schema_id: birth-benefit-application-v1
8
+ format: hwpx
9
+ authoritative_standard: KS X 6101 OWPML/HWPX
10
+ authority_refs:
11
+ - specs/2803-document-production-hardening/spec.md#FR-002
12
+ - specs/2803-document-production-hardening/spec.md#FR-012
13
+ supports_conformance: true
14
+ expected_page_count: 2
15
+ required_fields:
16
+ - field_id: applicant_name
17
+ label: Applicant name
18
+ path: /body/section[1]/field[applicant_name]
19
+ - field_id: child_birth_date
20
+ label: Child birth date
21
+ path: /body/section[1]/field[child_birth_date]
22
+ protected_text:
23
+ - text: Birth benefit application
24
+ anchor: /body/section[1]/p[1]
25
+ - text: Required attachments
26
+ anchor: /body/section[2]/p[1]
27
+ required_labels:
28
+ - text: Applicant
29
+ anchor: /body/section[1]/table[1]/cell[1,1]
30
+ - text: Name
31
+ anchor: /body/section[1]/table[1]/cell[1,2]
32
+ - text: Child
33
+ anchor: /body/section[1]/table[1]/cell[2,1]
34
+ - text: Date of birth
35
+ anchor: /body/section[1]/table[1]/cell[2,2]
36
+ table_geometries:
37
+ - table_id: applicant-table
38
+ anchor: /body/section[1]/table[1]
39
+ rows: 2
40
+ columns: 2
41
+ signature_regions:
42
+ - text: Applicant signature or seal
43
+ anchor: /body/section[1]/p[2]
44
+ metadata_exact_matches:
45
+ page_count: 2
46
+ margin_top_mm: 20
47
+ margin_bottom_mm: 15
48
+ - template_id: civil-form-docx
49
+ schema_id: civil-form-ooxml-v1
50
+ format: docx
51
+ authoritative_standard: ECMA-376 Office Open XML
52
+ authority_refs:
53
+ - specs/2803-document-production-hardening/spec.md#FR-012
54
+ supports_conformance: true
55
+ required_fields: []
56
+ protected_text: []
57
+ required_labels: []
58
+ table_geometries: []
59
+ signature_regions: []
60
+ metadata_exact_matches: {}
61
+ - template_id: civil-ledger-xlsx
62
+ schema_id: civil-ledger-ooxml-v1
63
+ format: xlsx
64
+ authoritative_standard: ECMA-376 Office Open XML
65
+ authority_refs:
66
+ - specs/2803-document-production-hardening/spec.md#FR-012
67
+ supports_conformance: true
68
+ required_fields: []
69
+ protected_text: []
70
+ required_labels: []
71
+ table_geometries: []
72
+ signature_regions: []
73
+ metadata_exact_matches: {}
74
+ - template_id: civil-briefing-pptx
75
+ schema_id: civil-briefing-ooxml-v1
76
+ format: pptx
77
+ authoritative_standard: ECMA-376 Office Open XML
78
+ authority_refs:
79
+ - specs/2803-document-production-hardening/spec.md#FR-012
80
+ supports_conformance: true
81
+ required_fields: []
82
+ protected_text: []
83
+ required_labels: []
84
+ table_geometries: []
85
+ signature_regions: []
86
+ metadata_exact_matches: {}
87
+ - template_id: fillable-permit-pdf
88
+ schema_id: fillable-permit-pdf-v1
89
+ format: pdf
90
+ authoritative_standard: PDF AcroForm and rendered appearance
91
+ authority_refs:
92
+ - specs/2803-document-production-hardening/spec.md#FR-014
93
+ supports_conformance: true
94
+ required_fields: []
95
+ protected_text: []
96
+ required_labels: []
97
+ table_geometries: []
98
+ signature_regions: []
99
+ metadata_exact_matches: {}
100
+ - template_id: legacy-hwp-readonly
101
+ schema_id: legacy-hwp-readonly-v1
102
+ format: hwp
103
+ authoritative_standard: HWP binary read-only boundary
104
+ authority_refs:
105
+ - specs/2803-document-production-hardening/spec.md#FR-017
106
+ supports_conformance: false
107
+ unsupported_reason: HWP binary write is blocked in this epic; conformance-ready output requires HWPX or another promoted editable derivative.
108
+ required_fields: []
109
+ protected_text: []
110
+ required_labels: []
111
+ table_geometries: []
112
+ signature_regions: []
113
+ metadata_exact_matches: {}
package/tui/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ummaya",
3
- "version": "0.2.4",
3
+ "version": "0.2.5",
4
4
  "private": true,
5
5
  "type": "module",
6
6
  "engines": {
@@ -377,3 +377,269 @@ entries:
377
377
  cause: W13
378
378
  spec_ref: "Epic #2639 D1 (TeleportResumeWrapper DROP)"
379
379
  notes: "launchTeleportResumeWrapper export removed; underlying TeleportResumeWrapper.tsx is in NEVER-PORT registry (tui/src/components/.never-port.md row 7)."
380
+ - path: tui/src/components/AutoModeOptInDialog.tsx
381
+ cause: W2,W14
382
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2; specs/2639-s3-ui-guard/spec.md"
383
+ notes: "Visible opt-in copy and brand surface align with UMMAYA while preserving CC dialog semantics."
384
+ - path: tui/src/components/BypassPermissionsModeDialog.tsx
385
+ cause: W2,W14
386
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2; specs/2639-s3-ui-guard/spec.md"
387
+ notes: "Permission-bypass warning copy is UMMAYA-branded without changing the underlying approval contract."
388
+ - path: tui/src/components/ClaudeInChromeOnboarding.tsx
389
+ cause: W2,W7
390
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2; specs/cc-migration-audit/scope-S3-components-screens.md § 7"
391
+ notes: "Claude 1P browser onboarding surface is rewritten or inert for the UMMAYA public-service client."
392
+ - path: tui/src/components/ClaudeMdExternalIncludesDialog.tsx
393
+ cause: W2,W14
394
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2; specs/2639-s3-ui-guard/spec.md"
395
+ notes: "External include warning copy uses UMMAYA terms while preserving CC trust semantics."
396
+ - path: tui/src/components/CostThresholdDialog.tsx
397
+ cause: W7,W14
398
+ spec_ref: "#1633; docs/requirements/ummaya-migration-tree.md § UI L2"
399
+ notes: "Claude billing threshold language is removed or neutralized for the single-provider UMMAYA harness."
400
+ - path: tui/src/components/DesktopHandoff.tsx
401
+ cause: W7,W13
402
+ spec_ref: "#1633; specs/cc-migration-audit/scope-S3-components-screens.md § 7"
403
+ notes: "Anthropic desktop handoff surface is retained only where needed for unreachable compatibility."
404
+ - path: tui/src/components/DesktopUpsell/DesktopUpsellStartup.tsx
405
+ cause: W7,W13
406
+ spec_ref: "#1633; specs/cc-migration-audit/scope-S3-components-screens.md § 7"
407
+ notes: "Claude desktop upsell is removed from the UMMAYA runtime surface."
408
+ - path: tui/src/components/Feedback.tsx
409
+ cause: W7,W13
410
+ spec_ref: "#1633; tui/src/components/.never-port.md"
411
+ notes: "Anthropic feedback endpoint surface is never-port for UMMAYA."
412
+ - path: tui/src/components/FeedbackSurvey/FeedbackSurveyView.tsx
413
+ cause: W7,W13
414
+ spec_ref: "#1633; specs/cc-migration-audit/scope-S3-components-screens.md § 7"
415
+ notes: "Anthropic survey copy and endpoint behavior are removed from the citizen harness."
416
+ - path: tui/src/components/FeedbackSurvey/TranscriptSharePrompt.tsx
417
+ cause: W7,W13
418
+ spec_ref: "#1633; specs/cc-migration-audit/scope-S3-components-screens.md § 7"
419
+ notes: "Transcript-sharing prompt no longer routes to Anthropic 1P survey infrastructure."
420
+ - path: tui/src/components/HelpV2/General.tsx
421
+ cause: W2,W14
422
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2; specs/2639-s3-ui-guard/spec.md"
423
+ notes: "Help text is UMMAYA-branded and adjusted for public-service workflows."
424
+ - path: tui/src/components/InterruptedByUser.tsx
425
+ cause: W14
426
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
427
+ notes: "Interruption wording follows the UMMAYA TUI copy audit without changing control flow."
428
+ - path: tui/src/components/LogSelector.tsx
429
+ cause: W2,W14
430
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
431
+ notes: "Log selection labels are UMMAYA-facing while preserving the CC selector behavior."
432
+ - path: tui/src/components/ScrollKeybindingHandler.tsx
433
+ cause: W14
434
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2; specs/2639-s3-ui-guard/spec.md"
435
+ notes: "Comment-only terminal selection and scroll wording cleanup from the real-use TUI audit; runtime behavior is unchanged."
436
+ expected_sha256: 2d751caa56cdc06adfdd727221219ef027b5f6211a7a2a69b2bbfcfa0427c57b
437
+ - path: tui/src/components/LogoV2/ChannelsNotice.tsx
438
+ cause: W2,W7
439
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § 마스코트 · 브랜딩 확정; specs/cc-migration-audit/scope-S3-components-screens.md § 7"
440
+ notes: "Claude channels notice is replaced by UMMAYA channel language."
441
+ - path: tui/src/components/LogoV2/EmergencyTip.tsx
442
+ cause: W2,W7
443
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § 마스코트 · 브랜딩 확정; specs/cc-migration-audit/scope-S3-components-screens.md § 7"
444
+ notes: "Dynamic top-of-feed notices are sanitized so upstream provider or SaaS copy cannot surface in the UMMAYA terminal."
445
+ expected_sha256: 03e6b435d81d7019fb4f0ee960514b100b59bba17959754fa2a0e803c5ab7e27
446
+ - path: tui/src/components/LogoV2/GuestPassesUpsell.tsx
447
+ cause: W7,W13
448
+ spec_ref: "tui/src/components/.never-port.md; specs/cc-migration-audit/scope-S3-components-screens.md § 7"
449
+ notes: "Guest-pass upsell is an Anthropic 1P business surface and is never-port for UMMAYA."
450
+ - path: tui/src/components/MCPServerDesktopImportDialog.tsx
451
+ cause: W2,W14
452
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2; specs/2639-s3-ui-guard/spec.md"
453
+ notes: "Desktop import copy is UMMAYA-facing while retaining MCP import semantics."
454
+ - path: tui/src/components/MCPServerDialogCopy.tsx
455
+ cause: W2,W14
456
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2; specs/2639-s3-ui-guard/spec.md"
457
+ notes: "MCP server dialog copy is adjusted for UMMAYA terminology."
458
+ - path: tui/src/components/ManagedSettingsSecurityDialog/ManagedSettingsSecurityDialog.tsx
459
+ cause: W2,W14
460
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
461
+ notes: "Managed-settings security text is UMMAYA-branded without changing policy enforcement."
462
+ - path: tui/src/components/ModelPicker.tsx
463
+ cause: W2,W14
464
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § L1-A; docs/requirements/ummaya-migration-tree.md § UI L2"
465
+ notes: "Model picker reflects the fixed K-EXAONE provider surface instead of Claude model selection."
466
+ - path: tui/src/components/OutputStylePicker.tsx
467
+ cause: W14
468
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
469
+ notes: "Output-style picker copy follows the UMMAYA TUI copy audit."
470
+ - path: tui/src/components/PackageManagerAutoUpdater.tsx
471
+ cause: W2,W14
472
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
473
+ notes: "Package-manager updater visible copy uses UMMAYA package identity."
474
+ - path: tui/src/components/Passes/Passes.tsx
475
+ cause: W7,W13
476
+ spec_ref: "tui/src/components/.never-port.md; specs/cc-migration-audit/scope-S3-components-screens.md § 7"
477
+ notes: "Claude subscription pass UI is never-port for the UMMAYA public-service harness."
478
+ - path: tui/src/components/RemoteCallout.tsx
479
+ cause: W7,W13
480
+ spec_ref: "#1633; specs/cc-migration-audit/scope-S3-components-screens.md § 7"
481
+ notes: "Anthropic remote-session callout is kept only as an unreachable compatibility surface."
482
+ - path: tui/src/components/Settings/Config.tsx
483
+ cause: W2,W14
484
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
485
+ notes: "Settings configuration copy uses UMMAYA terms while preserving setting keys."
486
+ - path: tui/src/components/Stats.tsx
487
+ cause: W2,W14
488
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
489
+ notes: "Stats display text follows UMMAYA terminology without altering metrics aggregation."
490
+ - path: tui/src/components/TeleportError.tsx
491
+ cause: W7,W13
492
+ spec_ref: "#1633; #1978 T011"
493
+ notes: "Teleport error surface remains stubbed after Anthropic teleport module deletion."
494
+ - path: tui/src/components/TeleportRepoMismatchDialog.tsx
495
+ cause: W7,W13
496
+ spec_ref: "#1633; #1978 T011"
497
+ notes: "Teleport repository mismatch dialog is retained only for compile compatibility."
498
+ - path: tui/src/components/ThemePicker.tsx
499
+ cause: W14
500
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
501
+ notes: "Theme picker text and defaults follow UMMAYA TUI audit output."
502
+ - path: tui/src/components/ThinkingToggle.tsx
503
+ cause: W2,W9
504
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § L1-A; #2521"
505
+ notes: "Thinking toggle reflects K-EXAONE reasoning behavior rather than Claude thinking copy."
506
+ - path: tui/src/components/WorkflowMultiselectDialog.tsx
507
+ cause: W14
508
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
509
+ notes: "Workflow selector copy follows UMMAYA workflow terminology."
510
+ - path: tui/src/components/agents/AgentDetail.tsx
511
+ cause: W14,W15
512
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2; .github/workflows/tui-boot-smoke.yml"
513
+ notes: "Agent detail surface uses UMMAYA copy with stable runtime imports."
514
+ - path: tui/src/components/agents/AgentsList.tsx
515
+ cause: W14,W15
516
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2; .github/workflows/tui-boot-smoke.yml"
517
+ notes: "Agent list surface uses UMMAYA copy with stable runtime imports."
518
+ - path: tui/src/components/agents/new-agent-creation/wizard-steps/ConfirmStep.tsx
519
+ cause: W14
520
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
521
+ notes: "Agent wizard confirmation copy follows UMMAYA terminology."
522
+ - path: tui/src/components/agents/new-agent-creation/wizard-steps/DescriptionStep.tsx
523
+ cause: W14
524
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
525
+ notes: "Agent wizard description copy follows UMMAYA terminology."
526
+ - path: tui/src/components/agents/new-agent-creation/wizard-steps/MethodStep.tsx
527
+ cause: W14
528
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
529
+ notes: "Agent wizard method copy follows UMMAYA terminology."
530
+ - path: tui/src/components/design-system/LoadingState.tsx
531
+ cause: W14
532
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
533
+ notes: "Loading state copy and layout are adjusted by the UMMAYA TUI audit."
534
+ - path: tui/src/components/grove/Grove.tsx
535
+ cause: W7,W13
536
+ spec_ref: "tui/src/components/.never-port.md; specs/cc-migration-audit/scope-S3-components-screens.md § 7"
537
+ notes: "Anthropic Grove surface is never-port for UMMAYA."
538
+ - path: tui/src/components/hooks/HooksConfigMenu.tsx
539
+ cause: W14,W15
540
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2; .github/workflows/tui-boot-smoke.yml"
541
+ notes: "Hooks config menu copy and imports are adjusted for the UMMAYA runtime."
542
+ - path: tui/src/components/hooks/SelectEventMode.tsx
543
+ cause: W14
544
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
545
+ notes: "Hook event selector copy follows UMMAYA terminology."
546
+ - path: tui/src/components/hooks/SelectHookMode.tsx
547
+ cause: W14
548
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
549
+ notes: "Hook selector copy follows UMMAYA terminology."
550
+ - path: tui/src/components/hooks/SelectMatcherMode.tsx
551
+ cause: W14
552
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
553
+ notes: "Hook matcher selector copy follows UMMAYA terminology."
554
+ - path: tui/src/components/hooks/ViewHookMode.tsx
555
+ cause: W14
556
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
557
+ notes: "Hook view mode copy follows UMMAYA terminology."
558
+ - path: tui/src/components/mcp/ElicitationDialog.tsx
559
+ cause: W14
560
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
561
+ notes: "MCP elicitation dialog copy is adjusted for UMMAYA."
562
+ - path: tui/src/components/mcp/MCPListPanel.tsx
563
+ cause: W14,W15
564
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2; .github/workflows/tui-boot-smoke.yml"
565
+ notes: "MCP list panel copy and imports are stabilized for the UMMAYA runtime."
566
+ - path: tui/src/components/mcp/MCPSettings.tsx
567
+ cause: W14,W15
568
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2; .github/workflows/tui-boot-smoke.yml"
569
+ notes: "MCP settings copy and imports are stabilized for the UMMAYA runtime."
570
+ - path: tui/src/components/mcp/McpParsingWarnings.tsx
571
+ cause: W14
572
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
573
+ notes: "MCP warning copy follows UMMAYA terminology."
574
+ - path: tui/src/components/messages/UserToolResultMessage/RejectedPlanMessage.tsx
575
+ cause: W14
576
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
577
+ notes: "Rejected-plan message copy follows the UMMAYA terminal audit."
578
+ - path: tui/src/components/permissions/BashPermissionRequest/bashToolUseOptions.tsx
579
+ cause: W14
580
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
581
+ notes: "Bash permission option copy follows UMMAYA permission UX wording."
582
+ - path: tui/src/components/permissions/ComputerUseApproval/ComputerUseApproval.tsx
583
+ cause: W14
584
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
585
+ notes: "Computer-use approval copy follows UMMAYA permission UX wording."
586
+ - path: tui/src/components/permissions/EnterPlanModePermissionRequest/EnterPlanModePermissionRequest.tsx
587
+ cause: W14
588
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
589
+ notes: "Plan-mode permission copy follows UMMAYA permission UX wording."
590
+ - path: tui/src/components/permissions/FilePermissionDialog/permissionOptions.tsx
591
+ cause: W14
592
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
593
+ notes: "File permission option copy follows UMMAYA permission UX wording."
594
+ - path: tui/src/components/permissions/PermissionPrompt.tsx
595
+ cause: W14
596
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
597
+ notes: "Permission prompt copy follows UMMAYA permission UX wording."
598
+ - path: tui/src/components/permissions/PowerShellPermissionRequest/powershellToolUseOptions.tsx
599
+ cause: W14
600
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
601
+ notes: "PowerShell permission option copy follows UMMAYA permission UX wording."
602
+ - path: tui/src/components/permissions/SandboxPermissionRequest.tsx
603
+ cause: W11,W14
604
+ spec_ref: "specs/cc-migration-audit/scope-S3-components-screens.md § 5.2; docs/requirements/ummaya-migration-tree.md § UI L2"
605
+ notes: "Sandbox permission surface removes Anthropic runtime hints and uses UMMAYA permission wording."
606
+ - path: tui/src/components/permissions/SkillPermissionRequest/SkillPermissionRequest.tsx
607
+ cause: W14
608
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
609
+ notes: "Skill permission copy follows UMMAYA permission UX wording."
610
+ - path: tui/src/components/permissions/WebFetchPermissionRequest/WebFetchPermissionRequest.tsx
611
+ cause: W14
612
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
613
+ notes: "Web fetch permission copy follows UMMAYA permission UX wording."
614
+ - path: tui/src/components/permissions/rules/AddPermissionRules.tsx
615
+ cause: W14
616
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
617
+ notes: "Permission-rule authoring copy follows UMMAYA permission UX wording."
618
+ - path: tui/src/components/permissions/rules/AddWorkspaceDirectory.tsx
619
+ cause: W14
620
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
621
+ notes: "Workspace-directory permission copy follows UMMAYA permission UX wording."
622
+ - path: tui/src/components/permissions/rules/PermissionRuleList.tsx
623
+ cause: W14
624
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
625
+ notes: "Permission-rule list copy follows UMMAYA permission UX wording."
626
+ - path: tui/src/components/permissions/rules/RemoveWorkspaceDirectory.tsx
627
+ cause: W14
628
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2"
629
+ notes: "Workspace-directory removal copy follows UMMAYA permission UX wording."
630
+ - path: tui/src/components/sandbox/SandboxOverridesTab.tsx
631
+ cause: W11,W14
632
+ spec_ref: "specs/cc-migration-audit/scope-S3-components-screens.md § 5.2; docs/requirements/ummaya-migration-tree.md § UI L2"
633
+ notes: "Sandbox override copy removes Anthropic runtime assumptions."
634
+ - path: tui/src/components/sandbox/SandboxSettings.tsx
635
+ cause: W11,W14
636
+ spec_ref: "specs/cc-migration-audit/scope-S3-components-screens.md § 5.2; docs/requirements/ummaya-migration-tree.md § UI L2"
637
+ notes: "Sandbox settings copy removes Anthropic runtime assumptions."
638
+ - path: tui/src/components/skills/SkillsMenu.tsx
639
+ cause: W14,W15
640
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2; .github/workflows/tui-boot-smoke.yml"
641
+ notes: "Skills menu copy and imports are stabilized for the UMMAYA runtime."
642
+ - path: tui/src/screens/Doctor.tsx
643
+ cause: W2,W14
644
+ spec_ref: "docs/requirements/ummaya-migration-tree.md § UI L2; specs/2639-s3-ui-guard/spec.md"
645
+ notes: "Doctor screen output is UMMAYA-branded while preserving diagnostic flow."
@@ -29,6 +29,11 @@ const updateUsage = (current: _NNU, delta: _NNU): _NNU => {
29
29
  return out
30
30
  }
31
31
  const accumulateUsage = (total: _NNU, current: _NNU): _NNU => updateUsage(total, current)
32
+ export function getMessageStartUsageDelta(event: {
33
+ readonly message?: { readonly usage?: NonNullableUsage }
34
+ }): NonNullableUsage | undefined {
35
+ return event.message?.usage
36
+ }
32
37
  import stripAnsi from 'strip-ansi'
33
38
  import type { Command } from './commands.js'
34
39
  import { getSlashCommandToolSkills } from './commands.js'
@@ -53,10 +58,6 @@ import type { AppState } from './state/AppState.js'
53
58
  import { type Tools, type ToolUseContext, toolMatchesName } from './Tool.js'
54
59
  import type { AgentDefinition } from './tools/AgentTool/loadAgentsDir.js'
55
60
  import { SYNTHETIC_OUTPUT_TOOL_NAME } from './tools/SyntheticOutputTool/SyntheticOutputTool.js'
56
- import {
57
- stripTextToolCallBlocks,
58
- textContainsToolCall,
59
- } from './tools/_shared/textToolCallGuard.js'
60
61
  import type { Message } from './types/message.js'
61
62
  import type { OrphanedPermission } from './types/textInputTypes.js'
62
63
  import { createAbortController } from './utils/abortController.js'
@@ -808,10 +809,13 @@ export class QueryEngine {
808
809
  if (message.event.type === 'message_start') {
809
810
  // Reset current message usage for new message
810
811
  currentMessageUsage = EMPTY_USAGE
811
- currentMessageUsage = updateUsage(
812
- currentMessageUsage,
813
- message.event.message.usage,
814
- )
812
+ const messageStartUsage = getMessageStartUsageDelta(message.event)
813
+ if (messageStartUsage !== undefined) {
814
+ currentMessageUsage = updateUsage(
815
+ currentMessageUsage,
816
+ messageStartUsage,
817
+ )
818
+ }
815
819
  }
816
820
  if (message.event.type === 'message_delta') {
817
821
  currentMessageUsage = updateUsage(
@@ -6,7 +6,7 @@
6
6
  * (oauth-authed, same store), write to ~/.claude/uploads/{sessionId}/, and
7
7
  * return @path refs to prepend. Claude's Read tool takes it from there.
8
8
  *
9
- * Best-effort: any failure (no token, network, non-2xx, disk) logs debug and
9
+ * Best-effort: each failure (no token, network, non-2xx, disk) logs debug and
10
10
  * skips that attachment. The message still reaches Claude, just without @path.
11
11
  */
12
12
 
@@ -63,7 +63,7 @@ function uploadsDir(): string {
63
63
 
64
64
  /**
65
65
  * Fetch + write one attachment. Returns the absolute path on success,
66
- * undefined on any failure.
66
+ * undefined when resolution fails.
67
67
  */
68
68
  async function resolveOne(att: InboundAttachment): Promise<string | undefined> {
69
69
  const token = getBridgeAccessToken()
@@ -129,7 +129,7 @@ export async function resolveInboundAttachments(
129
129
  const ok = paths.filter((p): p is string => p !== undefined)
130
130
  if (ok.length === 0) return ''
131
131
  // Quoted form — extractAtMentionedFiles truncates unquoted @refs at the
132
- // first space, which breaks any home dir with spaces (/Users/John Smith/).
132
+ // first space, which breaks home dirs with spaces (/Users/John Smith/).
133
133
  return ok.map(p => `@"${p}"`).join(' ') + ' '
134
134
  }
135
135
 
@@ -113,23 +113,14 @@ export async function authLogin({
113
113
  email,
114
114
  sso,
115
115
  console: useConsole,
116
- claudeai,
117
116
  }: {
118
117
  email?: string
119
118
  sso?: boolean
120
119
  console?: boolean
121
- claudeai?: boolean
122
120
  }): Promise<void> {
123
- if (useConsole && claudeai) {
124
- process.stderr.write(
125
- 'Error: --console and --claudeai cannot be used together.\n',
126
- )
127
- process.exit(1)
128
- }
129
-
130
121
  const settings = getInitialSettings()
131
122
  // forceLoginMethod is a hard constraint (enterprise setting) — matches ConsoleOAuthFlow behavior.
132
- // Without it, --console selects Console; --claudeai (or no flag) selects claude.ai.
123
+ // Without it, --console selects Console; otherwise use the managed account flow.
133
124
  const loginWithClaudeAi = settings.forceLoginMethod
134
125
  ? settings.forceLoginMethod === 'claudeai'
135
126
  : !useConsole
@@ -247,7 +238,7 @@ export async function authStatus(opts: {
247
238
  if (using3P) {
248
239
  authMethod = 'third_party'
249
240
  } else if (authTokenSource === 'claude.ai') {
250
- authMethod = 'claude.ai'
241
+ authMethod = 'managed_account'
251
242
  } else if (authTokenSource === 'apiKeyHelper') {
252
243
  authMethod = 'api_key_helper'
253
244
  } else if (authTokenSource !== 'none') {
@@ -307,7 +298,7 @@ export async function authStatus(opts: {
307
298
  if (resolvedApiKeySource) {
308
299
  output.apiKeySource = resolvedApiKeySource
309
300
  }
310
- if (authMethod === 'claude.ai') {
301
+ if (authMethod === 'managed_account') {
311
302
  output.email = oauthAccount?.emailAddress ?? null
312
303
  output.orgId = oauthAccount?.organizationUuid ?? null
313
304
  output.orgName = oauthAccount?.organizationName ?? null
@@ -25,9 +25,9 @@ import type { ToolPermissionContext } from 'src/Tool.js'
25
25
  import type { ThinkingConfig } from 'src/utils/thinking.js'
26
26
  import { assembleToolPool, filterToolsByDenyRules } from 'src/tools.js'
27
27
  import {
28
- stripTextToolCallBlocks,
29
- textContainsToolCall,
30
- } from 'src/tools/_shared/textToolCallGuard.js'
28
+ stripToolCallProposalText,
29
+ textContainsToolCallProposal,
30
+ } from 'src/utils/rawJsonToolCall.js'
31
31
  import uniqBy from 'lodash-es/uniqBy.js'
32
32
  import { uniq } from 'src/utils/array.js'
33
33
  import { mergeAndFilterTools } from 'src/utils/toolPool.js'
@@ -883,12 +883,12 @@ export async function runHeadless(
883
883
  if (
884
884
  block.type !== 'text' ||
885
885
  typeof block.text !== 'string' ||
886
- !textContainsToolCall(block.text)
886
+ !textContainsToolCallProposal(block.text)
887
887
  ) {
888
888
  return block
889
889
  }
890
890
  changed = true
891
- const stripped = stripTextToolCallBlocks(block.text)
891
+ const stripped = stripToolCallProposalText(block.text)
892
892
  return {
893
893
  ...block,
894
894
  text:
@@ -909,9 +909,9 @@ export async function runHeadless(
909
909
  if (
910
910
  message.type === 'result' &&
911
911
  typeof message.result === 'string' &&
912
- textContainsToolCall(message.result)
912
+ textContainsToolCallProposal(message.result)
913
913
  ) {
914
- const stripped = stripTextToolCallBlocks(message.result)
914
+ const stripped = stripToolCallProposalText(message.result)
915
915
  return {
916
916
  ...message,
917
917
  result:
@@ -14,7 +14,7 @@ import {
14
14
  import { tmpdir } from 'os'
15
15
  import { extname, join } from 'path'
16
16
  import type { Command } from '../commands.js'
17
- import { queryWithModel } from '../services/api/claude.js'
17
+ import { queryWithModel } from '../services/api/ummaya.js'
18
18
  import {
19
19
  AGENT_TOOL_NAME,
20
20
  LEGACY_AGENT_TOOL_NAME,
@@ -1,36 +1,14 @@
1
1
  // [P0 reconstructed · rebuild-stubs.ts · symbol-complete stub]
2
2
  // Aggregated from every consumer import across src/.
3
- /* eslint-disable @typescript-eslint/no-explicit-any */
3
+ import { createStub } from '../../stubs/any-stub'
4
4
 
5
- const __noop = (..._args: unknown[]): any => undefined as any;
6
- const __stub: any = new Proxy(function () {} as any, {
7
- get(_t, p) {
8
- if (p === Symbol.toPrimitive) return () => ""
9
- if (p === Symbol.iterator) return function* () {}
10
- if (p === Symbol.asyncIterator) return async function* () {}
11
- if (p === Symbol.toStringTag) return "Stub"
12
- if (p === Symbol.for("nodejs.util.inspect.custom")) return () => "<Stub>"
13
- if (p === "inspect") return () => "<Stub>"
14
- if (p === "then") return undefined
15
- if (p === "toString") return () => ""
16
- if (p === "valueOf") return () => undefined
17
- if (p === "toJSON") return () => null
18
- if (p === "length") return 0
19
- if (p === "name") return "Stub"
20
- if (p === "message") return ""
21
- if (p === "stack") return ""
22
- if (p === "constructor") return Object
23
- return __stub
24
- },
25
- apply() { return __stub },
26
- construct() { return __stub },
27
- });
5
+ const __stub = createStub()
28
6
 
29
- export type State = any;
30
- export const State: any = __stub;
31
- export type Warning = any;
32
- export const Warning: any = __stub;
33
- export type Workflow = any;
34
- export const Workflow: any = __stub;
7
+ export type State = unknown;
8
+ export const State = __stub;
9
+ export type Warning = unknown;
10
+ export const Warning = __stub;
11
+ export type Workflow = unknown;
12
+ export const Workflow = __stub;
35
13
 
36
14
  export default __stub;
@@ -1,34 +1,12 @@
1
1
  // [P0 reconstructed · rebuild-stubs.ts · symbol-complete stub]
2
2
  // Aggregated from every consumer import across src/.
3
- /* eslint-disable @typescript-eslint/no-explicit-any */
3
+ import { createStub } from '../../stubs/any-stub'
4
4
 
5
- const __noop = (..._args: unknown[]): any => undefined as any;
6
- const __stub: any = new Proxy(function () {} as any, {
7
- get(_t, p) {
8
- if (p === Symbol.toPrimitive) return () => ""
9
- if (p === Symbol.iterator) return function* () {}
10
- if (p === Symbol.asyncIterator) return async function* () {}
11
- if (p === Symbol.toStringTag) return "Stub"
12
- if (p === Symbol.for("nodejs.util.inspect.custom")) return () => "<Stub>"
13
- if (p === "inspect") return () => "<Stub>"
14
- if (p === "then") return undefined
15
- if (p === "toString") return () => ""
16
- if (p === "valueOf") return () => undefined
17
- if (p === "toJSON") return () => null
18
- if (p === "length") return 0
19
- if (p === "name") return "Stub"
20
- if (p === "message") return ""
21
- if (p === "stack") return ""
22
- if (p === "constructor") return Object
23
- return __stub
24
- },
25
- apply() { return __stub },
26
- construct() { return __stub },
27
- });
5
+ const __stub = createStub()
28
6
 
29
- export type PluginSettingsProps = any;
30
- export const PluginSettingsProps: any = __stub;
31
- export type ViewState = any;
32
- export const ViewState: any = __stub;
7
+ export type PluginSettingsProps = unknown;
8
+ export const PluginSettingsProps = __stub;
9
+ export type ViewState = unknown;
10
+ export const ViewState = __stub;
33
11
 
34
12
  export default __stub;