akanjs 3.0.0-beta.2 → 3.0.0-beta.20

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 (1250) hide show
  1. package/base/base.ts +6 -11
  2. package/base/baseEnv.ts +17 -11
  3. package/base/databaseModes.ts +75 -0
  4. package/base/index.ts +1 -0
  5. package/base/primitiveRegistry.ts +38 -47
  6. package/base/symbols.ts +1 -1
  7. package/base/types.ts +1 -1
  8. package/base/utils.ts +3 -6
  9. package/capacitor.base.config.ts +2 -3
  10. package/client/capacitor.ts +18 -63
  11. package/client/cn.ts +3 -13
  12. package/client/cookie.ts +6 -15
  13. package/client/createFont.ts +0 -2
  14. package/client/csrTypes.ts +6 -59
  15. package/client/decorators.ts +1 -1
  16. package/client/device.ts +52 -44
  17. package/client/frameConfig.ts +15 -26
  18. package/client/index.ts +0 -1
  19. package/client/makePageProto.tsx +3 -4
  20. package/client/route/RootLayoutDefinition.ts +0 -6
  21. package/client/route/RouteDefinition.ts +5 -30
  22. package/client/route/resolveRouteModule.ts +1 -5
  23. package/client/router.ts +35 -39
  24. package/client/rscNavigation.ts +4 -5
  25. package/client/sharedContext.ts +2 -19
  26. package/client/storage.ts +29 -38
  27. package/client/translator.ts +5 -6
  28. package/client/types.ts +0 -3
  29. package/common/CodeAgentClient.ts +91 -0
  30. package/common/CodeTranscript.ts +325 -0
  31. package/common/Logger.ts +9 -34
  32. package/common/TrustedProxy.ts +6 -34
  33. package/common/applyMixins.ts +13 -2
  34. package/common/authToken.ts +0 -11
  35. package/common/capitalize.ts +3 -4
  36. package/common/clamp.ts +0 -1
  37. package/common/clientAddress.ts +1 -15
  38. package/common/codeAgentProfile.ts +181 -0
  39. package/common/codeAgentWire.ts +305 -0
  40. package/{server/routing → common}/eventStream.ts +1 -6
  41. package/common/fileUpload.ts +1 -12
  42. package/common/formatNumber.ts +3 -12
  43. package/common/index.ts +104 -19
  44. package/common/interpolateTranslation.ts +1 -6
  45. package/common/isEmail.ts +0 -1
  46. package/common/isRecord.ts +2 -0
  47. package/common/isThenable.ts +1 -8
  48. package/common/isValidDate.ts +3 -5
  49. package/common/logContext.ts +1 -1
  50. package/{ui/Agent → common}/markdownBlocks.ts +0 -3
  51. package/common/markdownSpans.ts +47 -0
  52. package/{ui/Agent → common}/markdownTable.ts +1 -5
  53. package/common/mcpExposure.ts +4 -27
  54. package/common/objectPath.ts +67 -0
  55. package/common/objectify.ts +52 -0
  56. package/common/{isPhoneNumber.ts → phone.ts} +7 -1
  57. package/common/randomPick.ts +13 -0
  58. package/common/requestOrigin.ts +0 -17
  59. package/common/restClient.ts +8 -13
  60. package/common/round.ts +4 -0
  61. package/common/routeConvention.ts +21 -14
  62. package/common/sleep.ts +1 -8
  63. package/common/subRoute.ts +4 -7
  64. package/common/toError.ts +1 -0
  65. package/common/tunnelWire.ts +263 -0
  66. package/common/types.ts +6 -7
  67. package/common/{splitVersion.ts → version.ts} +3 -6
  68. package/common/{websocketBinaryFrame.ts → websocketContract.ts} +43 -9
  69. package/constant/cascadePaths.ts +6 -9
  70. package/constant/constantRegistry.ts +21 -57
  71. package/constant/crystalize.ts +2 -12
  72. package/constant/dateSlot.ts +0 -15
  73. package/constant/fieldInfo.ts +30 -109
  74. package/constant/fieldQueryMeta.ts +2 -10
  75. package/constant/getDefault.ts +16 -8
  76. package/constant/hydrationPlan.ts +1 -9
  77. package/constant/index.ts +0 -1
  78. package/constant/labelOf.ts +1 -6
  79. package/constant/mask.ts +36 -38
  80. package/constant/purify.ts +6 -14
  81. package/constant/serialize.ts +82 -5
  82. package/constant/textFieldPaths.ts +2 -3
  83. package/constant/types.ts +2 -6
  84. package/constant/via.ts +20 -60
  85. package/dictionary/DictionaryLookup.ts +1 -7
  86. package/dictionary/agent.dictionary.ts +43 -11
  87. package/dictionary/base.dictionary.ts +11 -0
  88. package/dictionary/dictInfo.ts +145 -626
  89. package/dictionary/dictShape.ts +54 -0
  90. package/dictionary/dictionary.ts +1 -2
  91. package/dictionary/dictionaryRegistry.ts +7 -28
  92. package/dictionary/locale.ts +24 -116
  93. package/dictionary/trans.ts +18 -56
  94. package/document/dataLoader.ts +77 -78
  95. package/document/database.ts +52 -56
  96. package/document/documentQuery.ts +32 -32
  97. package/document/documentSchema.ts +21 -26
  98. package/document/filterMeta.ts +11 -31
  99. package/document/index.ts +0 -1
  100. package/document/into.ts +8 -18
  101. package/document/loaderInfo.ts +28 -7
  102. package/document/noDocumentError.ts +2 -7
  103. package/document/queryEvaluator.ts +21 -43
  104. package/document/types.ts +0 -1
  105. package/fetch/client/fetchClient.ts +66 -105
  106. package/fetch/client/fetchHandle.ts +4 -12
  107. package/fetch/client/httpClient.ts +35 -68
  108. package/fetch/client/remoteError.ts +2 -8
  109. package/fetch/client/sliceInitHandle.ts +3 -6
  110. package/fetch/client/sliceQueryArgs.ts +11 -0
  111. package/fetch/client/wsClient.ts +75 -64
  112. package/fetch/fetchType/appliedReturn.type.ts +5 -24
  113. package/fetch/fetchType/buildFetch.type.ts +28 -1
  114. package/fetch/fetchType/index.ts +0 -1
  115. package/fetch/requestStorage.ts +7 -28
  116. package/fetch/types.ts +0 -1
  117. package/index.ts +31 -64
  118. package/package.json +19 -5
  119. package/server/akanApp.ts +138 -289
  120. package/server/akanAppHeaders.ts +2 -3
  121. package/server/akanOption.ts +25 -27
  122. package/server/akanServer.ts +98 -219
  123. package/server/animatedImage.ts +2 -11
  124. package/server/artifact/builderRpc.ts +24 -64
  125. package/server/artifact/index.ts +0 -1
  126. package/server/artifact/ipcTypes.ts +27 -30
  127. package/server/artifact/routeClientCache.ts +18 -37
  128. package/server/artifact/routeSeedIndexStore.ts +2 -35
  129. package/server/artifact/routesManifestStore.ts +13 -38
  130. package/server/binaryPubsub.ts +0 -9
  131. package/server/cachePolicy.ts +10 -44
  132. package/server/console.ts +12 -16
  133. package/server/consoleSession.ts +55 -12
  134. package/server/contentEncoding.ts +42 -27
  135. package/server/decorators.ts +4 -70
  136. package/server/devtools/constantSerializer.ts +2 -14
  137. package/server/devtools/depsSerializer.ts +14 -46
  138. package/server/devtools/devtoolsJson.ts +6 -18
  139. package/server/devtools/devtoolsRouter.ts +2 -12
  140. package/server/devtools/signalSerializer.ts +5 -44
  141. package/server/devtools/types.ts +0 -12
  142. package/server/di/diLifecycle.ts +141 -221
  143. package/server/di/predefinedAdaptor.ts +11 -5
  144. package/server/di/resolveHierarchy.ts +114 -5
  145. package/server/di/utils.ts +13 -29
  146. package/server/head.tsx +53 -0
  147. package/server/hmr/clientScript.ts +2 -8
  148. package/server/hmr/devHmrController.ts +28 -32
  149. package/server/hmr/wsHub.ts +9 -7
  150. package/server/imageOptimizer.ts +5 -26
  151. package/server/index.ts +1 -1
  152. package/server/lifecycle/portInUse.ts +1 -4
  153. package/server/lifecycle/runtimeDir.ts +0 -4
  154. package/server/lifecycle/shutdownManager.ts +4 -29
  155. package/server/logging/childOutputReader.ts +0 -12
  156. package/server/logging/hubFileSink.ts +10 -6
  157. package/server/logging/logControlSocket.ts +13 -7
  158. package/server/logging/logForwarder.ts +19 -22
  159. package/server/logging/logHub.ts +0 -0
  160. package/server/logging/logQuery.ts +4 -7
  161. package/server/logging/logStdoutWriter.ts +1 -11
  162. package/server/logging/logStreamRoute.ts +4 -21
  163. package/server/logging/logTailClient.ts +1 -8
  164. package/server/logging/rotatingLogWriter.ts +4 -6
  165. package/server/mcp/McpAuth.ts +5 -79
  166. package/server/mcp/McpDispatcher.ts +13 -90
  167. package/server/mcp/McpEventStream.ts +2 -12
  168. package/server/mcp/McpExecutionContext.ts +1 -42
  169. package/server/mcp/McpRateLimiter.ts +61 -30
  170. package/server/mcp/McpRouter.ts +49 -208
  171. package/server/mcp/PagePromptComposer.ts +7 -29
  172. package/server/memoryLimit.ts +1 -13
  173. package/server/oauth/OAuthAuthorize.ts +3 -7
  174. package/server/oauth/OAuthClientIdMetadata.ts +2 -27
  175. package/server/oauth/OAuthErrors.ts +0 -13
  176. package/server/oauth/OAuthMetadata.ts +1 -7
  177. package/server/oauth/OAuthPkce.ts +0 -2
  178. package/server/oauth/OAuthRedirect.ts +0 -9
  179. package/server/oauth/OAuthRegistration.ts +0 -2
  180. package/server/oauth/OAuthRevocation.ts +1 -11
  181. package/server/oauth/OAuthToken.ts +3 -14
  182. package/server/oauth/oauthTypes.ts +1 -2
  183. package/server/ops/ageEncryption.ts +317 -0
  184. package/server/ops/appInfo.ts +92 -0
  185. package/server/ops/opsCommand.ts +116 -0
  186. package/server/ops/opsRoute.ts +151 -0
  187. package/server/ops/opsToken.ts +93 -0
  188. package/server/ops/snapshotJobs.ts +133 -0
  189. package/server/ops/snapshotRestore.ts +118 -0
  190. package/server/ops/snapshotTypes.ts +52 -0
  191. package/server/ops/sqliteFiles.ts +20 -0
  192. package/server/ops/sqliteSnapshot.ts +149 -0
  193. package/server/processMetricsCollector.ts +12 -14
  194. package/server/proxy/hostBasePathWebProxy.ts +20 -13
  195. package/server/proxy/index.ts +2 -3
  196. package/server/proxy/localeWebProxy.ts +3 -17
  197. package/server/proxy/types.ts +14 -0
  198. package/server/proxy/webProxyRunner.ts +13 -1
  199. package/server/resolver/CascadeRunner.ts +7 -23
  200. package/server/resolver/database.resolver.ts +57 -123
  201. package/server/resolver/service.resolver.ts +9 -161
  202. package/server/resolver/signal.resolver.ts +73 -98
  203. package/server/routeElementComposer.tsx +23 -52
  204. package/server/routeState.ts +15 -34
  205. package/server/routeTreeBuilder.ts +24 -83
  206. package/server/routing/apiRouter.ts +17 -49
  207. package/server/routing/appWsData.ts +4 -28
  208. package/server/routing/soloAppRoutes.ts +5 -5
  209. package/server/rscClient.tsx +31 -37
  210. package/server/rscClientFetch.ts +7 -3
  211. package/server/rscClientPatch.ts +4 -25
  212. package/server/rscHttp.ts +1 -1
  213. package/server/rscNavigationState.ts +10 -25
  214. package/server/rscPagePrompts.ts +4 -24
  215. package/server/rscSegmentOutlet.tsx +1 -5
  216. package/server/rscWorker.tsx +146 -285
  217. package/server/rscWorkerCache.ts +74 -8
  218. package/server/rscWorkerHost.ts +45 -192
  219. package/server/semaphore.ts +1 -1
  220. package/server/sitemap.ts +1 -3
  221. package/server/ssrFromRscRenderer.tsx +31 -124
  222. package/server/ssrTypes.ts +3 -29
  223. package/server/staticPath.ts +0 -16
  224. package/server/systemPageDocument.tsx +65 -2
  225. package/server/systemPages.tsx +4 -2
  226. package/server/tunnel/TunnelAgent.ts +237 -0
  227. package/server/tunnel/TunnelDataSocket.ts +146 -0
  228. package/server/tunnel/TunnelHttpStream.ts +86 -0
  229. package/server/tunnel/TunnelTcpStream.ts +96 -0
  230. package/server/tunnel/TunnelWebsocketStream.ts +110 -0
  231. package/server/tunnel/index.ts +6 -0
  232. package/server/tunnel/tunnelStream.ts +32 -0
  233. package/server/types.tsx +2 -9
  234. package/server/webRouter.ts +88 -306
  235. package/service/agent.service.ts +66 -35
  236. package/service/injectInfo.ts +106 -75
  237. package/service/ipcTypes.ts +4 -1
  238. package/service/liveSyncHub.ts +4 -34
  239. package/service/predefinedAdaptor/anthropicLlm.ts +65 -75
  240. package/service/predefinedAdaptor/cache.adaptor.ts +257 -75
  241. package/service/predefinedAdaptor/database.adaptor.ts +366 -108
  242. package/service/predefinedAdaptor/documentTransfer.ts +89 -0
  243. package/service/predefinedAdaptor/index.ts +2 -1
  244. package/service/predefinedAdaptor/insightQuery.ts +89 -79
  245. package/service/predefinedAdaptor/llm.adaptor.ts +64 -54
  246. package/service/predefinedAdaptor/llmOverflow.ts +63 -0
  247. package/service/predefinedAdaptor/openaiDialect.ts +56 -64
  248. package/service/predefinedAdaptor/openaiLlm.ts +24 -27
  249. package/service/predefinedAdaptor/queue.adaptor.ts +41 -22
  250. package/service/predefinedAdaptor/schedule.adaptor.ts +69 -9
  251. package/service/predefinedAdaptor/searchIndex.ts +76 -325
  252. package/service/predefinedAdaptor/solidCache.adaptor.ts +135 -12
  253. package/service/predefinedAdaptor/solidPubsub.adaptor.ts +28 -16
  254. package/service/predefinedAdaptor/solidQueue.adaptor.ts +61 -10
  255. package/service/predefinedAdaptor/solidSqlite.ts +10 -16
  256. package/service/predefinedAdaptor/sql/PendingStoreEnsures.ts +1 -0
  257. package/service/predefinedAdaptor/sql/PostgresInsightSession.ts +113 -0
  258. package/service/predefinedAdaptor/sql/QueryCompiler.ts +50 -30
  259. package/service/predefinedAdaptor/sql/SqlDocumentStore.ts +290 -138
  260. package/service/predefinedAdaptor/sql/SqliteInsightSession.ts +85 -0
  261. package/service/predefinedAdaptor/sql/UpdateCompiler.ts +1 -7
  262. package/service/predefinedAdaptor/sql/dialect/postgres.ts +138 -53
  263. package/service/predefinedAdaptor/sql/dialect/sqlite.ts +18 -15
  264. package/service/predefinedAdaptor/sql/driver/bunSqlite.ts +31 -4
  265. package/service/predefinedAdaptor/sql/driver/libsql.ts +20 -12
  266. package/service/predefinedAdaptor/sql/driver/postgres.ts +13 -7
  267. package/service/predefinedAdaptor/sql/search/fts5.ts +249 -0
  268. package/service/predefinedAdaptor/sql/search/mirror.ts +76 -0
  269. package/service/predefinedAdaptor/sql/search/postgres.ts +453 -0
  270. package/service/predefinedAdaptor/sql/search/types.ts +50 -0
  271. package/service/predefinedAdaptor/sql/types.ts +76 -17
  272. package/service/predefinedAdaptor/sql/values.ts +40 -2
  273. package/service/predefinedAdaptor/sqlitePath.ts +12 -0
  274. package/service/predefinedAdaptor/sseData.ts +23 -0
  275. package/service/predefinedAdaptor/storage.adaptor.ts +19 -7
  276. package/service/predefinedAdaptor/websocket.adaptor.ts +154 -184
  277. package/service/serve.ts +1 -2
  278. package/service/serviceModule.ts +52 -70
  279. package/service/toolNames.ts +5 -22
  280. package/service/types.ts +3 -9
  281. package/signal/CrossSiteGuard.ts +5 -40
  282. package/signal/SignalFailure.ts +2 -15
  283. package/signal/agent/AgentCatalogue.ts +9 -55
  284. package/signal/agent.signal.ts +9 -6
  285. package/signal/agentMeter.ts +45 -0
  286. package/signal/agentTurnStream.ts +48 -46
  287. package/signal/endpoint.ts +12 -2
  288. package/signal/endpointCache.ts +59 -0
  289. package/signal/endpointInfo.ts +13 -27
  290. package/signal/exception.ts +3 -34
  291. package/signal/guard.ts +4 -21
  292. package/signal/guards.ts +2 -10
  293. package/signal/index.ts +1 -0
  294. package/signal/internal.ts +3 -7
  295. package/signal/internalArg.ts +10 -13
  296. package/signal/internalInfo.ts +1 -1
  297. package/signal/mcp/McpDocument.ts +21 -90
  298. package/signal/mcp/McpProgress.ts +6 -19
  299. package/signal/mcp/McpUriTemplate.ts +1 -27
  300. package/signal/mcp/Msg.ts +13 -122
  301. package/signal/mcp/mcpProtocol.ts +3 -26
  302. package/signal/mcp/pagePrompt.ts +3 -9
  303. package/signal/middleware.ts +15 -65
  304. package/signal/openapi/openapi.ts +0 -4
  305. package/signal/schema/JsonSchemaBuilder.ts +32 -46
  306. package/signal/serializer/fetch.serializer.ts +37 -43
  307. package/signal/serverSignal.ts +6 -8
  308. package/signal/signalContext.ts +70 -161
  309. package/signal/signalRegistry.ts +11 -17
  310. package/signal/slice.ts +6 -12
  311. package/signal/sliceInfo.ts +5 -30
  312. package/signal/trace.ts +11 -84
  313. package/signal/types.ts +27 -57
  314. package/store/SliceRequest.ts +1 -11
  315. package/store/action.ts +153 -395
  316. package/store/actionTag.ts +1 -10
  317. package/store/agent/AgentBridge.ts +3 -25
  318. package/store/agent/AgentContext.ts +2 -9
  319. package/store/agent/AgentCursor.ts +160 -0
  320. package/store/agent/AgentPrompts.ts +0 -15
  321. package/store/agent/AgentVisual.ts +152 -0
  322. package/store/agent/ScreenFlash.ts +67 -0
  323. package/store/agent/ScreenReader.ts +3 -52
  324. package/store/agent/ScreenSettle.ts +1 -13
  325. package/store/agent/ScreenTarget.ts +15 -32
  326. package/store/agent/StoreCatalogue.ts +12 -24
  327. package/store/agent/StoreSurfaceSource.ts +35 -65
  328. package/store/agent/index.ts +4 -4
  329. package/store/agentic/AgentValue.ts +9 -26
  330. package/store/agentic/StExposeBuilder.ts +3 -12
  331. package/store/agentic/StExposeDraft.ts +0 -6
  332. package/store/agentic/StStateBuilder.ts +3 -11
  333. package/store/agentic/StStateDraft.ts +0 -5
  334. package/store/agentic/StToolBuilder.ts +48 -41
  335. package/store/agentic/StToolDraft.ts +0 -7
  336. package/store/agentic/attachAgentic.ts +2 -10
  337. package/store/agentic/formFields.ts +8 -42
  338. package/store/agentic/index.ts +1 -1
  339. package/store/agentic/useAgentReference.ts +31 -0
  340. package/store/agentic/useFieldTool.ts +176 -58
  341. package/store/agentic/useFormTools.ts +4 -21
  342. package/store/agentic/useRelationFieldTool.ts +2 -15
  343. package/store/databaseStateNames.ts +0 -9
  344. package/store/draftStore.ts +4 -54
  345. package/store/formSetterNames.ts +2 -19
  346. package/store/hooks.ts +1 -1
  347. package/store/liveInsert.ts +1 -30
  348. package/store/sliceKeys.ts +37 -0
  349. package/store/sliceRole.ts +1 -10
  350. package/store/state.ts +4 -50
  351. package/store/stateBuilder.ts +1 -23
  352. package/store/storeInstance.ts +21 -114
  353. package/store/storeRegistry.ts +1 -8
  354. package/store/types.ts +1 -1
  355. package/test/conformance.ts +299 -0
  356. package/test/index.ts +2 -2
  357. package/test/sampleOf.ts +52 -28
  358. package/test/signalTestRuntime.ts +6 -10
  359. package/test/testServer.ts +66 -31
  360. package/types/base/base.d.ts +2 -3
  361. package/types/base/baseEnv.d.ts +7 -10
  362. package/types/base/databaseModes.d.ts +28 -0
  363. package/types/base/index.d.ts +1 -0
  364. package/types/base/primitiveRegistry.d.ts +23 -10
  365. package/types/base/symbols.d.ts +1 -1
  366. package/types/capacitor.base.config.d.ts +1 -1
  367. package/types/client/cn.d.ts +3 -13
  368. package/types/client/cookie.d.ts +3 -12
  369. package/types/client/csrTypes.d.ts +6 -57
  370. package/types/client/decorators.d.ts +1 -1
  371. package/types/client/device.d.ts +2 -1
  372. package/types/client/index.d.ts +0 -1
  373. package/types/client/route/RootLayoutDefinition.d.ts +0 -1
  374. package/types/client/route/RouteDefinition.d.ts +4 -16
  375. package/types/client/route/resolveRouteModule.d.ts +1 -5
  376. package/types/client/router.d.ts +8 -4
  377. package/types/client/rscNavigation.d.ts +4 -5
  378. package/types/client/sharedContext.d.ts +2 -19
  379. package/types/client/storage.d.ts +1 -1
  380. package/types/client/types.d.ts +0 -3
  381. package/types/common/CodeAgentClient.d.ts +20 -0
  382. package/types/common/CodeTranscript.d.ts +72 -0
  383. package/types/common/Logger.d.ts +4 -20
  384. package/types/common/TrustedProxy.d.ts +2 -28
  385. package/types/common/applyMixins.d.ts +3 -0
  386. package/types/common/authToken.d.ts +0 -11
  387. package/types/common/capitalize.d.ts +1 -1
  388. package/types/common/clamp.d.ts +0 -1
  389. package/types/common/clientAddress.d.ts +1 -15
  390. package/types/common/codeAgentProfile.d.ts +115 -0
  391. package/types/common/codeAgentWire.d.ts +279 -0
  392. package/types/{server/routing → common}/eventStream.d.ts +0 -5
  393. package/types/common/fileUpload.d.ts +6 -11
  394. package/types/common/index.d.ts +20 -19
  395. package/types/common/interpolateTranslation.d.ts +1 -6
  396. package/types/common/isEmail.d.ts +0 -1
  397. package/types/common/isRecord.d.ts +1 -0
  398. package/types/common/isThenable.d.ts +0 -8
  399. package/types/common/logContext.d.ts +1 -1
  400. package/types/{ui/Agent → common}/markdownBlocks.d.ts +0 -3
  401. package/types/common/markdownSpans.d.ts +30 -0
  402. package/types/{ui/Agent → common}/markdownTable.d.ts +0 -2
  403. package/types/common/mcpExposure.d.ts +3 -23
  404. package/types/common/objectPath.d.ts +10 -0
  405. package/types/common/objectify.d.ts +7 -0
  406. package/types/common/phone.d.ts +2 -0
  407. package/types/common/randomPick.d.ts +1 -0
  408. package/types/common/requestOrigin.d.ts +0 -17
  409. package/types/common/restClient.d.ts +0 -7
  410. package/types/common/round.d.ts +1 -0
  411. package/types/common/routeConvention.d.ts +2 -5
  412. package/types/common/sleep.d.ts +0 -1
  413. package/types/common/subRoute.d.ts +4 -6
  414. package/types/common/toError.d.ts +1 -0
  415. package/types/common/tunnelWire.d.ts +161 -0
  416. package/types/common/types.d.ts +7 -7
  417. package/types/common/version.d.ts +6 -0
  418. package/types/common/websocketContract.d.ts +41 -0
  419. package/types/constant/cascadePaths.d.ts +2 -5
  420. package/types/constant/constantRegistry.d.ts +4 -4
  421. package/types/constant/dateSlot.d.ts +0 -5
  422. package/types/constant/fieldInfo.d.ts +2 -21
  423. package/types/constant/fieldQueryMeta.d.ts +2 -10
  424. package/types/constant/getDefault.d.ts +5 -7
  425. package/types/constant/hydrationPlan.d.ts +0 -8
  426. package/types/constant/index.d.ts +0 -1
  427. package/types/constant/labelOf.d.ts +1 -6
  428. package/types/constant/mask.d.ts +11 -36
  429. package/types/constant/serialize.d.ts +10 -2
  430. package/types/constant/types.d.ts +2 -6
  431. package/types/constant/via.d.ts +0 -1
  432. package/types/dictionary/DictionaryLookup.d.ts +1 -7
  433. package/types/dictionary/agent.dictionary.d.ts +2 -1
  434. package/types/dictionary/base.dictionary.d.ts +1 -1
  435. package/types/dictionary/dictInfo.d.ts +25 -92
  436. package/types/dictionary/dictShape.d.ts +26 -0
  437. package/types/dictionary/dictionary.d.ts +9 -9
  438. package/types/dictionary/dictionaryRegistry.d.ts +1 -15
  439. package/types/dictionary/locale.d.ts +9 -28
  440. package/types/dictionary/trans.d.ts +5 -14
  441. package/types/document/dataLoader.d.ts +2 -2
  442. package/types/document/database.d.ts +21 -14
  443. package/types/document/documentQuery.d.ts +6 -1
  444. package/types/document/documentSchema.d.ts +3 -7
  445. package/types/document/filterMeta.d.ts +3 -8
  446. package/types/document/index.d.ts +0 -1
  447. package/types/document/into.d.ts +3 -2
  448. package/types/document/loaderInfo.d.ts +9 -4
  449. package/types/document/noDocumentError.d.ts +2 -7
  450. package/types/document/queryEvaluator.d.ts +7 -24
  451. package/types/document/types.d.ts +0 -1
  452. package/types/fetch/client/fetchClient.d.ts +6 -9
  453. package/types/fetch/client/fetchHandle.d.ts +3 -11
  454. package/types/fetch/client/httpClient.d.ts +5 -1
  455. package/types/fetch/client/remoteError.d.ts +2 -8
  456. package/types/fetch/client/sliceInitHandle.d.ts +2 -5
  457. package/types/fetch/client/sliceQueryArgs.d.ts +3 -0
  458. package/types/fetch/client/wsClient.d.ts +10 -15
  459. package/types/fetch/fetchType/appliedReturn.type.d.ts +5 -23
  460. package/types/fetch/fetchType/buildFetch.type.d.ts +15 -1
  461. package/types/fetch/fetchType/index.d.ts +0 -1
  462. package/types/fetch/requestStorage.d.ts +3 -16
  463. package/types/fetch/types.d.ts +0 -1
  464. package/types/index.d.ts +30 -64
  465. package/types/server/akanApp.d.ts +5 -28
  466. package/types/server/akanAppHeaders.d.ts +0 -1
  467. package/types/server/akanOption.d.ts +12 -24
  468. package/types/server/akanServer.d.ts +16 -56
  469. package/types/server/animatedImage.d.ts +0 -6
  470. package/types/server/artifact/builderRpc.d.ts +7 -30
  471. package/types/server/artifact/index.d.ts +0 -1
  472. package/types/server/artifact/ipcTypes.d.ts +22 -29
  473. package/types/server/artifact/routeClientCache.d.ts +3 -11
  474. package/types/server/artifact/routeSeedIndexStore.d.ts +0 -16
  475. package/types/server/artifact/routesManifestStore.d.ts +1 -1
  476. package/types/server/binaryPubsub.d.ts +0 -8
  477. package/types/server/cachePolicy.d.ts +2 -21
  478. package/types/server/console.d.ts +3 -6
  479. package/types/server/consoleSession.d.ts +2 -2
  480. package/types/server/contentEncoding.d.ts +6 -14
  481. package/types/server/decorators.d.ts +0 -12
  482. package/types/server/devtools/constantSerializer.d.ts +1 -6
  483. package/types/server/devtools/depsSerializer.d.ts +1 -7
  484. package/types/server/devtools/devtoolsJson.d.ts +1 -7
  485. package/types/server/devtools/devtoolsRouter.d.ts +2 -11
  486. package/types/server/devtools/signalSerializer.d.ts +1 -9
  487. package/types/server/devtools/types.d.ts +0 -11
  488. package/types/server/di/diLifecycle.d.ts +0 -36
  489. package/types/server/di/predefinedAdaptor.d.ts +3 -2
  490. package/types/server/di/resolveHierarchy.d.ts +22 -5
  491. package/types/server/di/utils.d.ts +4 -17
  492. package/types/server/head.d.ts +9 -0
  493. package/types/server/hmr/devHmrController.d.ts +0 -2
  494. package/types/server/hmr/wsHub.d.ts +6 -1
  495. package/types/server/index.d.ts +1 -1
  496. package/types/server/lifecycle/portInUse.d.ts +1 -4
  497. package/types/server/lifecycle/runtimeDir.d.ts +0 -4
  498. package/types/server/lifecycle/shutdownManager.d.ts +0 -9
  499. package/types/server/logging/childOutputReader.d.ts +0 -12
  500. package/types/server/logging/hubFileSink.d.ts +1 -5
  501. package/types/server/logging/logControlSocket.d.ts +2 -7
  502. package/types/server/logging/logForwarder.d.ts +3 -15
  503. package/types/server/logging/logHub.d.ts +1 -15
  504. package/types/server/logging/logQuery.d.ts +3 -6
  505. package/types/server/logging/logStdoutWriter.d.ts +0 -6
  506. package/types/server/logging/logStreamRoute.d.ts +0 -9
  507. package/types/server/logging/logTailClient.d.ts +0 -5
  508. package/types/server/mcp/McpAuth.d.ts +3 -71
  509. package/types/server/mcp/McpDispatcher.d.ts +0 -23
  510. package/types/server/mcp/McpEventStream.d.ts +1 -12
  511. package/types/server/mcp/McpExecutionContext.d.ts +0 -33
  512. package/types/server/mcp/McpRateLimiter.d.ts +10 -13
  513. package/types/server/mcp/McpRouter.d.ts +1 -47
  514. package/types/server/mcp/PagePromptComposer.d.ts +1 -13
  515. package/types/server/memoryLimit.d.ts +1 -13
  516. package/types/server/oauth/OAuthAuthorize.d.ts +1 -6
  517. package/types/server/oauth/OAuthClientIdMetadata.d.ts +2 -26
  518. package/types/server/oauth/OAuthErrors.d.ts +0 -13
  519. package/types/server/oauth/OAuthMetadata.d.ts +1 -7
  520. package/types/server/oauth/OAuthPkce.d.ts +0 -1
  521. package/types/server/oauth/OAuthRedirect.d.ts +0 -9
  522. package/types/server/oauth/OAuthRegistration.d.ts +0 -1
  523. package/types/server/oauth/OAuthRevocation.d.ts +1 -11
  524. package/types/server/oauth/OAuthToken.d.ts +1 -13
  525. package/types/server/oauth/oauthTypes.d.ts +1 -2
  526. package/types/server/ops/ageEncryption.d.ts +19 -0
  527. package/types/server/ops/appInfo.d.ts +36 -0
  528. package/types/server/ops/opsCommand.d.ts +5 -0
  529. package/types/server/ops/opsRoute.d.ts +24 -0
  530. package/types/server/ops/opsToken.d.ts +26 -0
  531. package/types/server/ops/snapshotJobs.d.ts +24 -0
  532. package/types/server/ops/snapshotRestore.d.ts +24 -0
  533. package/types/server/ops/snapshotTypes.d.ts +45 -0
  534. package/types/server/ops/sqliteFiles.d.ts +5 -0
  535. package/types/server/ops/sqliteSnapshot.d.ts +32 -0
  536. package/types/server/processMetricsCollector.d.ts +3 -1
  537. package/types/server/proxy/hostBasePathWebProxy.d.ts +7 -1
  538. package/types/server/proxy/index.d.ts +2 -3
  539. package/types/server/proxy/localeWebProxy.d.ts +1 -1
  540. package/types/server/proxy/types.d.ts +5 -0
  541. package/types/server/proxy/webProxyRunner.d.ts +1 -0
  542. package/types/server/resolver/CascadeRunner.d.ts +0 -4
  543. package/types/server/resolver/database.resolver.d.ts +1 -1
  544. package/types/server/resolver/service.resolver.d.ts +2 -2
  545. package/types/server/resolver/signal.resolver.d.ts +1 -15
  546. package/types/server/routeElementComposer.d.ts +2 -8
  547. package/types/server/routeState.d.ts +1 -1
  548. package/types/server/routing/apiRouter.d.ts +2 -20
  549. package/types/server/routing/appWsData.d.ts +0 -26
  550. package/types/server/routing/soloAppRoutes.d.ts +2 -6
  551. package/types/server/rscClient.d.ts +0 -9
  552. package/types/server/rscClientFetch.d.ts +6 -6
  553. package/types/server/rscClientPatch.d.ts +1 -1
  554. package/types/server/rscHttp.d.ts +1 -0
  555. package/types/server/rscNavigationState.d.ts +3 -2
  556. package/types/server/rscPagePrompts.d.ts +0 -9
  557. package/types/server/rscWorkerCache.d.ts +41 -3
  558. package/types/server/rscWorkerHost.d.ts +5 -61
  559. package/types/server/ssrFromRscRenderer.d.ts +0 -12
  560. package/types/server/ssrTypes.d.ts +2 -29
  561. package/types/server/staticPath.d.ts +0 -16
  562. package/types/server/systemPageDocument.d.ts +8 -0
  563. package/types/server/systemPages.d.ts +2 -3
  564. package/types/server/tunnel/TunnelAgent.d.ts +29 -0
  565. package/types/server/tunnel/TunnelDataSocket.d.ts +22 -0
  566. package/types/server/tunnel/TunnelHttpStream.d.ts +10 -0
  567. package/types/server/tunnel/TunnelTcpStream.d.ts +11 -0
  568. package/types/server/tunnel/TunnelWebsocketStream.d.ts +10 -0
  569. package/types/server/tunnel/index.d.ts +6 -0
  570. package/types/server/tunnel/tunnelStream.d.ts +19 -0
  571. package/types/server/tunnel.d.ts +1 -0
  572. package/types/server/types.d.ts +2 -9
  573. package/types/server/webRouter.d.ts +2 -19
  574. package/types/service/agent.service.d.ts +16 -29
  575. package/types/service/injectInfo.d.ts +26 -15
  576. package/types/service/ipcTypes.d.ts +6 -0
  577. package/types/service/liveSyncHub.d.ts +4 -22
  578. package/types/service/predefinedAdaptor/anthropicLlm.d.ts +20 -29
  579. package/types/service/predefinedAdaptor/cache.adaptor.d.ts +42 -12
  580. package/types/service/predefinedAdaptor/database.adaptor.d.ts +20 -16
  581. package/types/service/predefinedAdaptor/documentTransfer.d.ts +15 -0
  582. package/types/service/predefinedAdaptor/index.d.ts +2 -1
  583. package/types/service/predefinedAdaptor/insightQuery.d.ts +7 -30
  584. package/types/service/predefinedAdaptor/llm.adaptor.d.ts +54 -54
  585. package/types/service/predefinedAdaptor/llmOverflow.d.ts +16 -0
  586. package/types/service/predefinedAdaptor/openaiDialect.d.ts +19 -29
  587. package/types/service/predefinedAdaptor/openaiLlm.d.ts +9 -14
  588. package/types/service/predefinedAdaptor/queue.adaptor.d.ts +12 -7
  589. package/types/service/predefinedAdaptor/schedule.adaptor.d.ts +7 -2
  590. package/types/service/predefinedAdaptor/searchIndex.d.ts +17 -47
  591. package/types/service/predefinedAdaptor/solidCache.adaptor.d.ts +15 -6
  592. package/types/service/predefinedAdaptor/solidPubsub.adaptor.d.ts +6 -4
  593. package/types/service/predefinedAdaptor/solidSqlite.d.ts +2 -1
  594. package/types/service/predefinedAdaptor/sql/PostgresInsightSession.d.ts +20 -0
  595. package/types/service/predefinedAdaptor/sql/QueryCompiler.d.ts +9 -11
  596. package/types/service/predefinedAdaptor/sql/SqlDocumentStore.d.ts +11 -25
  597. package/types/service/predefinedAdaptor/sql/SqliteInsightSession.d.ts +15 -0
  598. package/types/service/predefinedAdaptor/sql/UpdateCompiler.d.ts +0 -4
  599. package/types/service/predefinedAdaptor/sql/dialect/postgres.d.ts +18 -10
  600. package/types/service/predefinedAdaptor/sql/dialect/sqlite.d.ts +5 -2
  601. package/types/service/predefinedAdaptor/sql/driver/bunSqlite.d.ts +9 -3
  602. package/types/service/predefinedAdaptor/sql/driver/libsql.d.ts +8 -5
  603. package/types/service/predefinedAdaptor/sql/driver/postgres.d.ts +4 -4
  604. package/types/service/predefinedAdaptor/sql/search/fts5.d.ts +28 -0
  605. package/types/service/predefinedAdaptor/sql/search/mirror.d.ts +20 -0
  606. package/types/service/predefinedAdaptor/sql/search/postgres.d.ts +53 -0
  607. package/types/service/predefinedAdaptor/sql/search/types.d.ts +45 -0
  608. package/types/service/predefinedAdaptor/sql/types.d.ts +69 -15
  609. package/types/service/predefinedAdaptor/sql/values.d.ts +8 -0
  610. package/types/service/predefinedAdaptor/sqlitePath.d.ts +1 -0
  611. package/types/service/predefinedAdaptor/sseData.d.ts +1 -0
  612. package/types/service/predefinedAdaptor/storage.adaptor.d.ts +3 -2
  613. package/types/service/predefinedAdaptor/websocket.adaptor.d.ts +26 -26
  614. package/types/service/serviceModule.d.ts +7 -7
  615. package/types/service/toolNames.d.ts +4 -21
  616. package/types/service/types.d.ts +3 -3
  617. package/types/signal/CrossSiteGuard.d.ts +3 -28
  618. package/types/signal/SignalFailure.d.ts +1 -15
  619. package/types/signal/agent/AgentCatalogue.d.ts +8 -54
  620. package/types/signal/agent.signal.d.ts +4 -1
  621. package/types/signal/agentMeter.d.ts +24 -0
  622. package/types/signal/agentTurnStream.d.ts +10 -11
  623. package/types/signal/endpoint.d.ts +0 -1
  624. package/types/signal/endpointCache.d.ts +5 -0
  625. package/types/signal/endpointInfo.d.ts +1 -9
  626. package/types/signal/exception.d.ts +1 -34
  627. package/types/signal/guard.d.ts +4 -15
  628. package/types/signal/guards.d.ts +2 -10
  629. package/types/signal/index.d.ts +1 -0
  630. package/types/signal/internal.d.ts +1 -5
  631. package/types/signal/internalArg.d.ts +7 -13
  632. package/types/signal/mcp/McpDocument.d.ts +5 -45
  633. package/types/signal/mcp/McpProgress.d.ts +6 -19
  634. package/types/signal/mcp/McpUriTemplate.d.ts +1 -19
  635. package/types/signal/mcp/Msg.d.ts +13 -70
  636. package/types/signal/mcp/mcpProtocol.d.ts +1 -26
  637. package/types/signal/mcp/pagePrompt.d.ts +3 -9
  638. package/types/signal/middleware.d.ts +0 -18
  639. package/types/signal/schema/JsonSchemaBuilder.d.ts +15 -43
  640. package/types/signal/serializer/fetch.serializer.d.ts +1 -6
  641. package/types/signal/serverSignal.d.ts +0 -1
  642. package/types/signal/signalContext.d.ts +14 -61
  643. package/types/signal/signalRegistry.d.ts +0 -1
  644. package/types/signal/slice.d.ts +3 -9
  645. package/types/signal/sliceInfo.d.ts +5 -30
  646. package/types/signal/trace.d.ts +2 -30
  647. package/types/signal/types.d.ts +27 -57
  648. package/types/store/SliceRequest.d.ts +1 -11
  649. package/types/store/action.d.ts +2 -6
  650. package/types/store/actionTag.d.ts +1 -10
  651. package/types/store/agent/AgentBridge.d.ts +3 -22
  652. package/types/store/agent/AgentContext.d.ts +1 -7
  653. package/types/store/agent/AgentCursor.d.ts +24 -0
  654. package/types/store/agent/AgentPrompts.d.ts +0 -5
  655. package/types/store/agent/AgentVisual.d.ts +25 -0
  656. package/types/store/agent/ScreenFlash.d.ts +23 -0
  657. package/types/store/agent/ScreenReader.d.ts +3 -26
  658. package/types/store/agent/ScreenSettle.d.ts +1 -12
  659. package/types/store/agent/ScreenTarget.d.ts +3 -23
  660. package/types/store/agent/StoreCatalogue.d.ts +12 -16
  661. package/types/store/agent/StoreSurfaceSource.d.ts +11 -23
  662. package/types/store/agent/index.d.ts +4 -3
  663. package/types/store/agentic/AgentValue.d.ts +3 -23
  664. package/types/store/agentic/StExposeBuilder.d.ts +2 -11
  665. package/types/store/agentic/StExposeDraft.d.ts +0 -6
  666. package/types/store/agentic/StStateBuilder.d.ts +1 -7
  667. package/types/store/agentic/StStateDraft.d.ts +0 -5
  668. package/types/store/agentic/StToolBuilder.d.ts +14 -37
  669. package/types/store/agentic/StToolDraft.d.ts +0 -7
  670. package/types/store/agentic/attachAgentic.d.ts +2 -10
  671. package/types/store/agentic/formFields.d.ts +5 -41
  672. package/types/store/agentic/index.d.ts +1 -1
  673. package/types/store/agentic/useAgentReference.d.ts +14 -0
  674. package/types/store/agentic/useFieldTool.d.ts +19 -16
  675. package/types/store/agentic/useFormTools.d.ts +1 -18
  676. package/types/store/agentic/useRelationFieldTool.d.ts +1 -14
  677. package/types/store/baseSt.d.ts +2 -2
  678. package/types/store/databaseStateNames.d.ts +0 -9
  679. package/types/store/draftStore.d.ts +4 -30
  680. package/types/store/formSetterNames.d.ts +0 -19
  681. package/types/store/hooks.d.ts +1 -1
  682. package/types/store/liveInsert.d.ts +0 -23
  683. package/types/store/sliceKeys.d.ts +31 -0
  684. package/types/store/sliceRole.d.ts +1 -10
  685. package/types/store/state.d.ts +2 -9
  686. package/types/store/stateBuilder.d.ts +0 -14
  687. package/types/store/storeInstance.d.ts +6 -20
  688. package/types/store/storeRegistry.d.ts +0 -2
  689. package/types/test/conformance.d.ts +73 -0
  690. package/types/test/index.d.ts +2 -2
  691. package/types/test/sampleOf.d.ts +17 -2
  692. package/types/test/signalTestRuntime.d.ts +1 -1
  693. package/types/test/testServer.d.ts +4 -3
  694. package/types/ui/Agent/Attach.d.ts +2 -2
  695. package/types/ui/Agent/Bubble.d.ts +3 -14
  696. package/types/ui/Agent/Chat.d.ts +31 -64
  697. package/types/ui/Agent/ChatCommands.d.ts +4 -14
  698. package/types/ui/Agent/Composer.d.ts +18 -5
  699. package/types/ui/Agent/Dock.d.ts +38 -10
  700. package/types/ui/Agent/Guide.d.ts +1 -5
  701. package/types/ui/Agent/History.d.ts +1 -18
  702. package/types/ui/Agent/Launcher.d.ts +2 -2
  703. package/types/ui/Agent/Markdown.d.ts +2 -6
  704. package/types/ui/Agent/MentionNode.d.ts +18 -0
  705. package/types/ui/Agent/Menu.d.ts +4 -4
  706. package/types/ui/Agent/Question.d.ts +1 -6
  707. package/types/ui/Agent/Queued.d.ts +1 -6
  708. package/types/ui/Agent/Refer.d.ts +9 -0
  709. package/types/ui/Agent/RichInput.d.ts +14 -0
  710. package/types/ui/Agent/Skip.d.ts +3 -15
  711. package/types/ui/Agent/Steps.d.ts +17 -0
  712. package/types/ui/Agent/ToolCard.d.ts +9 -0
  713. package/types/ui/Agent/Zone.d.ts +13 -30
  714. package/types/ui/Agent/agentSessionOf.d.ts +20 -16
  715. package/types/ui/Agent/attachment.d.ts +4 -38
  716. package/types/ui/Agent/fetchRunner.d.ts +1 -8
  717. package/types/ui/Agent/index.d.ts +2 -6
  718. package/types/ui/Agent/mentionDraft.d.ts +9 -0
  719. package/types/ui/Agent/tokenCount.d.ts +1 -5
  720. package/types/ui/Agent/useChatAttachments.d.ts +0 -5
  721. package/types/ui/Agent/useChatQueue.d.ts +3 -14
  722. package/types/ui/Agent/useChatReferences.d.ts +15 -0
  723. package/types/ui/Agent/useChatVoice.d.ts +0 -12
  724. package/types/ui/Agent/useDraftRecall.d.ts +0 -8
  725. package/types/ui/Agent/useKeyboardInset.d.ts +0 -7
  726. package/types/ui/Agent/useReferenceMenu.d.ts +35 -0
  727. package/types/ui/Agent/useSlashMenu.d.ts +0 -2
  728. package/types/ui/Agent/voice.d.ts +8 -42
  729. package/types/ui/Badge.d.ts +0 -1
  730. package/types/ui/BottomSheet.d.ts +2 -5
  731. package/types/ui/Button.d.ts +6 -23
  732. package/types/ui/ClientSide.d.ts +0 -2
  733. package/types/ui/Constant/schemaGraph.d.ts +0 -4
  734. package/types/ui/Copy.d.ts +2 -3
  735. package/types/ui/CsrImage.d.ts +2 -1
  736. package/types/ui/Data/Dashboard.d.ts +1 -4
  737. package/types/ui/Data/Item.d.ts +1 -1
  738. package/types/ui/Data/ListContainer.d.ts +1 -10
  739. package/types/ui/Data/Pagination.d.ts +0 -2
  740. package/types/ui/Data/QueryMaker.d.ts +0 -7
  741. package/types/ui/Data/RefPicker.d.ts +0 -7
  742. package/types/ui/DatePicker.d.ts +0 -11
  743. package/types/ui/Dialog/LegacyModal.d.ts +1 -4
  744. package/types/ui/Dialog/Provider.d.ts +37 -4
  745. package/types/ui/Dialog/index.d.ts +4 -4
  746. package/types/ui/Dropdown.d.ts +1 -9
  747. package/types/ui/Empty.d.ts +3 -10
  748. package/types/ui/Field/Collection.d.ts +1 -16
  749. package/types/ui/Field/Relation.d.ts +10 -37
  750. package/types/ui/Field/Text.d.ts +9 -66
  751. package/types/ui/Field/index.d.ts +0 -9
  752. package/types/ui/Field/lightRefCache.d.ts +11 -0
  753. package/types/ui/Field/useRelationOptions.d.ts +28 -0
  754. package/types/ui/Image.d.ts +8 -12
  755. package/types/ui/InfiniteScroll.d.ts +2 -6
  756. package/types/ui/Input.d.ts +8 -15
  757. package/types/ui/Layout/Role.d.ts +23 -0
  758. package/types/ui/Layout/Sider.d.ts +21 -0
  759. package/types/ui/Layout/TopInset.d.ts +5 -0
  760. package/types/ui/Layout/index.d.ts +7 -7
  761. package/types/ui/LegacyModal.d.ts +1 -12
  762. package/types/ui/Link/Action.d.ts +11 -0
  763. package/types/ui/Link/Anchor.d.ts +20 -0
  764. package/types/ui/Link/index.d.ts +4 -7
  765. package/types/ui/Load/Edit_Client.d.ts +1 -1
  766. package/types/ui/Load/Page.d.ts +3 -5
  767. package/types/ui/Load/Stream.d.ts +0 -12
  768. package/types/ui/Load/Units.d.ts +1 -1
  769. package/types/ui/Load/View.d.ts +2 -7
  770. package/types/ui/Loading/ProgressBar.d.ts +0 -4
  771. package/types/ui/Loading/Skeleton.d.ts +2 -0
  772. package/types/ui/Loading/Spin.d.ts +12 -2
  773. package/types/ui/Loading/index.d.ts +3 -8
  774. package/types/ui/Loading/index_.d.ts +3 -10
  775. package/types/ui/Menu.d.ts +0 -5
  776. package/types/ui/Modal.d.ts +0 -17
  777. package/types/ui/Model/AdminPanel.d.ts +1 -4
  778. package/types/ui/Model/DraftBar.d.ts +2 -7
  779. package/types/ui/Model/EditModal.d.ts +7 -22
  780. package/types/ui/Model/LoadStore.d.ts +18 -0
  781. package/types/ui/Model/Remove.d.ts +0 -2
  782. package/types/ui/Model/SureToRemove.d.ts +0 -3
  783. package/types/ui/Model/ViewEditModal.d.ts +0 -2
  784. package/types/ui/Model/draftScope.d.ts +0 -7
  785. package/types/ui/Model/index.d.ts +2 -2
  786. package/types/ui/Model/index_.d.ts +2 -2
  787. package/types/ui/Pagination.d.ts +4 -12
  788. package/types/ui/Popconfirm.d.ts +3 -17
  789. package/types/ui/Radio.d.ts +0 -4
  790. package/types/ui/RecentTime.d.ts +5 -9
  791. package/types/ui/Reference/Panel.d.ts +44 -6
  792. package/types/ui/Reference/Segmented.d.ts +0 -3
  793. package/types/ui/Reference/{style.d.ts → docUi.d.ts} +6 -2
  794. package/types/ui/Reference/index.d.ts +3 -7
  795. package/types/ui/Refresh.d.ts +1 -1
  796. package/types/ui/ScreenNavigator.d.ts +2 -2
  797. package/types/ui/Select.d.ts +4 -19
  798. package/types/ui/Signal/Endpoint.d.ts +43 -0
  799. package/types/ui/Signal/WebSocket.d.ts +23 -0
  800. package/types/ui/Signal/endpointEntries.d.ts +2 -4
  801. package/types/ui/Signal/index.d.ts +1 -3
  802. package/types/ui/Signal/style.d.ts +1 -2
  803. package/types/ui/Switch.d.ts +1 -5
  804. package/types/ui/System/CSR.d.ts +2 -2
  805. package/types/ui/System/Client.d.ts +2 -6
  806. package/types/ui/System/Common.d.ts +11 -22
  807. package/types/ui/System/Root.d.ts +1 -4
  808. package/types/ui/System/SSR.d.ts +2 -2
  809. package/types/ui/System/ThemeToggle.d.ts +1 -0
  810. package/types/ui/System/index.d.ts +1 -0
  811. package/types/ui/Tab/Provider.d.ts +24 -4
  812. package/types/ui/Tab/index.d.ts +3 -3
  813. package/types/ui/Table.d.ts +7 -23
  814. package/types/ui/Toast.d.ts +9 -16
  815. package/types/ui/ToggleSelect.d.ts +0 -5
  816. package/types/ui/Tooltip.d.ts +1 -2
  817. package/types/ui/UiOverride/{context.d.ts → UiOverride.d.ts} +24 -40
  818. package/types/ui/UiOverride/index.d.ts +2 -5
  819. package/types/ui/UiOverride/override.d.ts +2 -18
  820. package/types/ui/Unauthorized.d.ts +0 -6
  821. package/types/ui/agentAttrs.d.ts +4 -11
  822. package/types/ui/index.d.ts +9 -5
  823. package/types/ui/overlayLayer.d.ts +4 -24
  824. package/types/ui/overlayPosition.d.ts +0 -12
  825. package/types/ui/recipe/badgeRecipe.d.ts +2 -2
  826. package/types/ui/recipe/buttonRecipe.d.ts +2 -2
  827. package/types/ui/recipe/factory.d.ts +1 -21
  828. package/types/ui/recipe/index.d.ts +0 -14
  829. package/types/ui/recipe/inputRecipe.d.ts +3 -3
  830. package/types/ui/sliceNamesOf.d.ts +78 -0
  831. package/types/ui/triggerSlot.d.ts +2 -12
  832. package/types/vendor/use-agentic/AgentProgress.d.ts +12 -0
  833. package/types/vendor/use-agentic/AgentSession.d.ts +94 -2
  834. package/types/vendor/use-agentic/Compaction.d.ts +42 -5
  835. package/types/vendor/use-agentic/Reference.d.ts +56 -0
  836. package/types/vendor/use-agentic/ToolRunner.d.ts +31 -1
  837. package/types/vendor/use-agentic/Transcript.d.ts +4 -1
  838. package/types/vendor/use-agentic/index.d.ts +1 -0
  839. package/types/vendor/use-agentic/types.d.ts +109 -7
  840. package/types/webkit/RenderLayer.d.ts +11 -0
  841. package/types/webkit/index.d.ts +1 -2
  842. package/types/webkit/lazy.d.ts +3 -12
  843. package/types/webkit/{createRobotPage.d.ts → seoPages.d.ts} +4 -0
  844. package/types/webkit/useBodyScrollLock.d.ts +0 -1
  845. package/types/webkit/useCamera.d.ts +1 -1
  846. package/types/webkit/useContact.d.ts +1 -1
  847. package/types/webkit/useDebounce.d.ts +0 -1
  848. package/types/webkit/useEscapeKey.d.ts +1 -4
  849. package/types/webkit/useFetch.d.ts +1 -6
  850. package/types/webkit/useFrameRuntime.d.ts +1 -1
  851. package/types/webkit/useGeoLocation.d.ts +1 -1
  852. package/types/webkit/usePageTool.d.ts +2 -9
  853. package/types/webkit/usePurchase.d.ts +1 -4
  854. package/types/webkit/useScreenScope.d.ts +2 -13
  855. package/ui/Agent/Attach.tsx +5 -4
  856. package/ui/Agent/Bubble.tsx +51 -31
  857. package/ui/Agent/Chat.tsx +114 -102
  858. package/ui/Agent/ChatCommands.ts +5 -21
  859. package/ui/Agent/Composer.tsx +110 -28
  860. package/ui/Agent/Dock.tsx +176 -16
  861. package/ui/Agent/Guide.tsx +1 -5
  862. package/ui/Agent/History.tsx +1 -18
  863. package/ui/Agent/Launcher.tsx +2 -2
  864. package/ui/Agent/Markdown.tsx +40 -14
  865. package/ui/Agent/MentionNode.ts +54 -0
  866. package/ui/Agent/Menu.tsx +8 -5
  867. package/ui/Agent/Question.tsx +1 -6
  868. package/ui/Agent/Queued.tsx +3 -6
  869. package/ui/Agent/Refer.tsx +40 -0
  870. package/ui/Agent/RichInput.tsx +146 -0
  871. package/ui/Agent/Skip.tsx +3 -15
  872. package/ui/Agent/Steps.tsx +33 -0
  873. package/ui/Agent/ToolCard.tsx +32 -0
  874. package/ui/Agent/Zone.tsx +15 -31
  875. package/ui/Agent/agentSessionOf.ts +115 -15
  876. package/ui/Agent/attachment.ts +5 -42
  877. package/ui/Agent/fetchRunner.ts +3 -15
  878. package/ui/Agent/index.ts +1 -6
  879. package/ui/Agent/mentionDraft.ts +91 -0
  880. package/ui/Agent/tokenCount.ts +1 -5
  881. package/ui/Agent/useChatAttachments.ts +2 -9
  882. package/ui/Agent/useChatQueue.ts +12 -14
  883. package/ui/Agent/useChatReferences.ts +51 -0
  884. package/ui/Agent/useChatVoice.ts +2 -23
  885. package/ui/Agent/useDraftRecall.ts +0 -9
  886. package/ui/Agent/useKeyboardInset.ts +0 -7
  887. package/ui/Agent/useReferenceMenu.ts +93 -0
  888. package/ui/Agent/useSlashMenu.ts +0 -3
  889. package/ui/Agent/voice.ts +8 -43
  890. package/ui/Badge.tsx +0 -2
  891. package/ui/BottomSheet.tsx +2 -5
  892. package/ui/Button.tsx +9 -45
  893. package/ui/ClientSide.tsx +0 -2
  894. package/ui/Clipboard.tsx +0 -1
  895. package/ui/Constant/Doc.tsx +274 -265
  896. package/ui/Constant/Graph.tsx +11 -3
  897. package/ui/Constant/schemaGraph.ts +0 -9
  898. package/ui/Copy.tsx +2 -3
  899. package/ui/CsrImage.tsx +9 -9
  900. package/ui/Data/CardList.tsx +2 -17
  901. package/ui/Data/Dashboard.tsx +2 -5
  902. package/ui/Data/Item.tsx +2 -3
  903. package/ui/Data/ListContainer.tsx +15 -61
  904. package/ui/Data/Pagination.tsx +3 -22
  905. package/ui/Data/QueryMaker.tsx +1 -8
  906. package/ui/Data/RefPicker.tsx +1 -8
  907. package/ui/Data/TableList.tsx +2 -15
  908. package/ui/DatePicker.tsx +1 -12
  909. package/ui/Dialog/LegacyModal.tsx +3 -7
  910. package/ui/Dialog/Modal.tsx +3 -4
  911. package/ui/Dialog/Provider.tsx +85 -7
  912. package/ui/Dialog/index.tsx +1 -5
  913. package/ui/DraggableList.tsx +1 -4
  914. package/ui/Dropdown.tsx +4 -17
  915. package/ui/Empty.tsx +4 -12
  916. package/ui/Field/Choice.tsx +1 -1
  917. package/ui/Field/Collection.tsx +7 -29
  918. package/ui/Field/DateField.tsx +2 -7
  919. package/ui/Field/Label.tsx +0 -1
  920. package/ui/Field/NumberField.tsx +0 -1
  921. package/ui/Field/Relation.tsx +79 -199
  922. package/ui/Field/Text.tsx +25 -86
  923. package/ui/Field/index.tsx +0 -9
  924. package/ui/Field/lightRefCache.ts +61 -0
  925. package/ui/Field/useRelationOptions.ts +97 -0
  926. package/ui/Image.tsx +35 -65
  927. package/ui/InfiniteScroll.tsx +3 -21
  928. package/ui/Input.tsx +82 -174
  929. package/ui/Layout/Role.tsx +42 -0
  930. package/ui/Layout/Sider.tsx +82 -1
  931. package/ui/Layout/TopInset.tsx +23 -1
  932. package/ui/Layout/index.ts +3 -9
  933. package/ui/LegacyModal.tsx +1 -12
  934. package/ui/Link/Action.tsx +29 -0
  935. package/ui/Link/Anchor.tsx +118 -0
  936. package/ui/Link/index.tsx +7 -8
  937. package/ui/Load/Edit_Client.tsx +2 -37
  938. package/ui/Load/Page.tsx +3 -6
  939. package/ui/Load/Pagination.tsx +4 -19
  940. package/ui/Load/Stream.tsx +0 -12
  941. package/ui/Load/Units.tsx +13 -86
  942. package/ui/Load/View.tsx +4 -21
  943. package/ui/Loading/ProgressBar.tsx +0 -4
  944. package/ui/Loading/Skeleton.tsx +14 -0
  945. package/ui/Loading/Spin.tsx +34 -5
  946. package/ui/Loading/index.ts +0 -5
  947. package/ui/Loading/index_.tsx +2 -12
  948. package/ui/Menu.tsx +3 -21
  949. package/ui/Modal.tsx +0 -17
  950. package/ui/Model/AdminPanel.tsx +2 -5
  951. package/ui/Model/DraftBar.tsx +3 -14
  952. package/ui/Model/EditModal.tsx +11 -48
  953. package/ui/Model/EditWrapper.tsx +2 -3
  954. package/ui/Model/LoadStore.tsx +18 -0
  955. package/ui/Model/NewWrapper_Client.tsx +1 -1
  956. package/ui/Model/Remove.tsx +4 -12
  957. package/ui/Model/RemoveWrapper.tsx +2 -3
  958. package/ui/Model/SureToRemove.tsx +4 -13
  959. package/ui/Model/ViewEditModal.tsx +0 -6
  960. package/ui/Model/ViewModal.tsx +1 -5
  961. package/ui/Model/ViewWrapper.tsx +1 -2
  962. package/ui/Model/draftScope.ts +0 -7
  963. package/ui/Model/index_.tsx +2 -22
  964. package/ui/Pagination.tsx +4 -12
  965. package/ui/Popconfirm.tsx +3 -18
  966. package/ui/Portal.tsx +2 -3
  967. package/ui/Radio.tsx +1 -5
  968. package/ui/RecentTime.tsx +19 -31
  969. package/ui/Reference/Panel.tsx +102 -6
  970. package/ui/Reference/Segmented.tsx +5 -11
  971. package/ui/Reference/{style.ts → docUi.ts} +10 -2
  972. package/ui/Reference/index.ts +3 -7
  973. package/ui/Refresh.tsx +79 -13
  974. package/ui/ScreenNavigator.tsx +8 -13
  975. package/ui/Select.tsx +29 -37
  976. package/ui/Signal/Endpoint.tsx +154 -0
  977. package/ui/Signal/Listener.tsx +1 -4
  978. package/ui/Signal/Object.tsx +67 -73
  979. package/ui/Signal/RestApi.tsx +30 -76
  980. package/ui/Signal/WebSocket.tsx +253 -2
  981. package/ui/Signal/endpointEntries.ts +3 -5
  982. package/ui/Signal/index.ts +1 -3
  983. package/ui/Signal/style.ts +1 -2
  984. package/ui/Switch.tsx +1 -5
  985. package/ui/System/CSR.tsx +29 -109
  986. package/ui/System/Client.tsx +15 -19
  987. package/ui/System/Common.tsx +31 -22
  988. package/ui/System/Messages.tsx +2 -2
  989. package/ui/System/Reconnect.tsx +1 -6
  990. package/ui/System/Root.tsx +1 -4
  991. package/ui/System/SSR.tsx +10 -16
  992. package/ui/System/ThemeToggle.tsx +15 -0
  993. package/ui/System/index.tsx +2 -2
  994. package/ui/Tab/Provider.tsx +115 -7
  995. package/ui/Tab/index.tsx +1 -4
  996. package/ui/Table.tsx +7 -23
  997. package/ui/Toast.tsx +9 -16
  998. package/ui/ToggleSelect.tsx +10 -24
  999. package/ui/Tooltip.tsx +2 -8
  1000. package/ui/UiOverride/{context.ts → UiOverride.tsx} +54 -42
  1001. package/ui/UiOverride/index.ts +9 -6
  1002. package/ui/UiOverride/override.ts +2 -18
  1003. package/ui/Unauthorized.tsx +1 -8
  1004. package/ui/agentAttrs.ts +9 -12
  1005. package/ui/index.ts +20 -5
  1006. package/ui/overlayLayer.ts +4 -25
  1007. package/ui/overlayPosition.ts +2 -14
  1008. package/ui/recipe/badgeRecipe.ts +1 -1
  1009. package/ui/recipe/buttonRecipe.ts +4 -4
  1010. package/ui/recipe/factory.ts +1 -22
  1011. package/ui/recipe/index.ts +1 -14
  1012. package/ui/recipe/inputRecipe.ts +2 -2
  1013. package/ui/sliceNamesOf.ts +26 -0
  1014. package/ui/styles.css +195 -1
  1015. package/ui/triggerSlot.tsx +2 -12
  1016. package/vendor/use-agentic/AgentProgress.ts +13 -1
  1017. package/vendor/use-agentic/AgentSession.ts +313 -29
  1018. package/vendor/use-agentic/AgenticSurface.ts +2 -0
  1019. package/vendor/use-agentic/Compaction.ts +91 -9
  1020. package/vendor/use-agentic/Reference.ts +99 -0
  1021. package/vendor/use-agentic/ToolRunner.ts +77 -2
  1022. package/vendor/use-agentic/Transcript.ts +15 -4
  1023. package/vendor/use-agentic/WIRE.md +16 -2
  1024. package/vendor/use-agentic/httpRunner.ts +19 -4
  1025. package/vendor/use-agentic/index.ts +1 -1
  1026. package/vendor/use-agentic/types.ts +121 -10
  1027. package/webkit/RenderLayer.tsx +45 -0
  1028. package/webkit/bootCsr.tsx +4 -57
  1029. package/webkit/index.ts +1 -2
  1030. package/webkit/lazy.tsx +3 -13
  1031. package/webkit/{createRobotPage.ts → seoPages.ts} +5 -0
  1032. package/webkit/useBodyScrollLock.tsx +0 -6
  1033. package/webkit/useCamera.tsx +10 -28
  1034. package/webkit/useCodepush.tsx +8 -31
  1035. package/webkit/useContact.tsx +1 -8
  1036. package/webkit/useCsrValues.ts +203 -428
  1037. package/webkit/useDebounce.ts +0 -3
  1038. package/webkit/useEscapeKey.tsx +1 -12
  1039. package/webkit/useFetch.ts +7 -13
  1040. package/webkit/useFrameRuntime.ts +5 -43
  1041. package/webkit/useGeoLocation.tsx +1 -1
  1042. package/webkit/useLocation.ts +5 -8
  1043. package/webkit/usePageTool.tsx +2 -9
  1044. package/webkit/usePurchase.tsx +17 -33
  1045. package/webkit/useScreenScope.tsx +2 -13
  1046. package/client/fetch.ts +0 -1
  1047. package/client/frameDebug.ts +0 -29
  1048. package/common/deepObjectify.ts +0 -42
  1049. package/common/dynamicRecord.ts +0 -12
  1050. package/common/formatPhone.ts +0 -7
  1051. package/common/getAllPropertyDescriptors.ts +0 -13
  1052. package/common/lowerlize.ts +0 -4
  1053. package/common/mergeVersion.ts +0 -10
  1054. package/common/pathGet.ts +0 -13
  1055. package/common/pathGetLoose.ts +0 -31
  1056. package/common/pathSet.ts +0 -28
  1057. package/common/plainFieldsOf.ts +0 -13
  1058. package/common/randomPicks.ts +0 -12
  1059. package/common/websocketAuth.ts +0 -24
  1060. package/constant/deserialize.ts +0 -98
  1061. package/dictionary/agentTurn.dictionary.ts +0 -33
  1062. package/document/schema.ts +0 -24
  1063. package/fetch/fetchType/clientSignal.type.ts +0 -22
  1064. package/local/apps/akan/akan-local.db +0 -0
  1065. package/local/apps/akan/akan-local.db-shm +0 -0
  1066. package/local/apps/akan/akan-local.db-wal +0 -0
  1067. package/local/apps/akan/akan-local_solid.db +0 -0
  1068. package/local/apps/akan/akan-local_solid.db-shm +0 -0
  1069. package/local/apps/akan/akan-local_solid.db-wal +0 -0
  1070. package/local/apps/serverLifecycle/serverLifecycle-local.db +0 -0
  1071. package/local/apps/serverLifecycle/serverLifecycle-local.db-shm +0 -0
  1072. package/local/apps/serverLifecycle/serverLifecycle-local.db-wal +0 -0
  1073. package/local/apps/serverLifecycle/serverLifecycle-local_solid.db +0 -0
  1074. package/local/apps/serverLifecycle/serverLifecycle-local_solid.db-shm +0 -0
  1075. package/local/apps/serverLifecycle/serverLifecycle-local_solid.db-wal +0 -0
  1076. package/server/artifact/manifestTypes.ts +0 -19
  1077. package/server/assetEncoding.ts +0 -27
  1078. package/server/consoleEvaluator.ts +0 -51
  1079. package/server/di/index.ts +0 -4
  1080. package/server/di/resolveAdaptorHierarchy.ts +0 -91
  1081. package/server/di/resolveServiceHierarchy.ts +0 -47
  1082. package/server/hmr/changeBatch.ts +0 -14
  1083. package/server/hmr/index.ts +0 -4
  1084. package/server/metadata.tsx +0 -198
  1085. package/server/proxy/akanResponse.ts +0 -16
  1086. package/server/proxy/bunRequestFields.ts +0 -12
  1087. package/server/rscPartialCommit.ts +0 -3
  1088. package/server/rscPatchSafety.ts +0 -57
  1089. package/server/rscWorkerReplay.ts +0 -49
  1090. package/server/subRouteIndexDocument.tsx +0 -61
  1091. package/service/predefinedAdaptor/deepseekLlm.ts +0 -82
  1092. package/service/predefinedAdaptor/sqlDescriptor.ts +0 -25
  1093. package/store/agent/storeSurface.ts +0 -28
  1094. package/store/agent/types.ts +0 -16
  1095. package/store/agentic/useFileFieldTool.ts +0 -221
  1096. package/store/stateInfo.ts +0 -66
  1097. package/test/playwright.config.base.ts +0 -48
  1098. package/test/playwright.pageAgent.ts +0 -41
  1099. package/test/sample.ts +0 -19
  1100. package/types/client/fetch.d.ts +0 -1
  1101. package/types/client/frameDebug.d.ts +0 -3
  1102. package/types/common/deepObjectify.d.ts +0 -6
  1103. package/types/common/dynamicRecord.d.ts +0 -14
  1104. package/types/common/formatPhone.d.ts +0 -2
  1105. package/types/common/getAllPropertyDescriptors.d.ts +0 -5
  1106. package/types/common/isPhoneNumber.d.ts +0 -2
  1107. package/types/common/lowerlize.d.ts +0 -2
  1108. package/types/common/mergeVersion.d.ts +0 -10
  1109. package/types/common/pathGet.d.ts +0 -1
  1110. package/types/common/pathGetLoose.d.ts +0 -8
  1111. package/types/common/pathSet.d.ts +0 -3
  1112. package/types/common/plainFieldsOf.d.ts +0 -6
  1113. package/types/common/randomPicks.d.ts +0 -1
  1114. package/types/common/splitVersion.d.ts +0 -11
  1115. package/types/common/websocketAuth.d.ts +0 -19
  1116. package/types/common/websocketBinaryFrame.d.ts +0 -17
  1117. package/types/constant/deserialize.d.ts +0 -10
  1118. package/types/dictionary/agentTurn.dictionary.d.ts +0 -1
  1119. package/types/document/schema.d.ts +0 -5
  1120. package/types/fetch/fetchType/clientSignal.type.d.ts +0 -16
  1121. package/types/server/artifact/manifestTypes.d.ts +0 -16
  1122. package/types/server/assetEncoding.d.ts +0 -7
  1123. package/types/server/consoleEvaluator.d.ts +0 -2
  1124. package/types/server/di/index.d.ts +0 -4
  1125. package/types/server/di/resolveAdaptorHierarchy.d.ts +0 -21
  1126. package/types/server/di/resolveServiceHierarchy.d.ts +0 -13
  1127. package/types/server/di.d.ts +0 -1
  1128. package/types/server/hmr/changeBatch.d.ts +0 -13
  1129. package/types/server/hmr/index.d.ts +0 -4
  1130. package/types/server/hmr.d.ts +0 -1
  1131. package/types/server/metadata.d.ts +0 -22
  1132. package/types/server/proxy/akanResponse.d.ts +0 -7
  1133. package/types/server/proxy/bunRequestFields.d.ts +0 -1
  1134. package/types/server/rscPartialCommit.d.ts +0 -1
  1135. package/types/server/rscPatchSafety.d.ts +0 -8
  1136. package/types/server/rscWorkerReplay.d.ts +0 -32
  1137. package/types/server/subRouteIndexDocument.d.ts +0 -8
  1138. package/types/service/predefinedAdaptor/deepseekLlm.d.ts +0 -19
  1139. package/types/service/predefinedAdaptor/sqlDescriptor.d.ts +0 -5
  1140. package/types/store/agent/storeSurface.d.ts +0 -14
  1141. package/types/store/agent/types.d.ts +0 -15
  1142. package/types/store/agentic/useFileFieldTool.d.ts +0 -41
  1143. package/types/store/stateInfo.d.ts +0 -23
  1144. package/types/test/playwright.config.base.d.ts +0 -9
  1145. package/types/test/playwright.pageAgent.d.ts +0 -12
  1146. package/types/test/sample.d.ts +0 -15
  1147. package/types/ui/Agent/Context.d.ts +0 -13
  1148. package/types/ui/Agent/Mic.d.ts +0 -8
  1149. package/types/ui/Agent/Section.d.ts +0 -10
  1150. package/types/ui/Agent/StateKey.d.ts +0 -16
  1151. package/types/ui/Agent/Tool.d.ts +0 -15
  1152. package/types/ui/Agent/Transcript.d.ts +0 -13
  1153. package/types/ui/Agent/markdownSpans.d.ts +0 -2
  1154. package/types/ui/Agent/sessionHistory.d.ts +0 -14
  1155. package/types/ui/Agent/sessionView.d.ts +0 -15
  1156. package/types/ui/Dialog/Action.d.ts +0 -5
  1157. package/types/ui/Dialog/Close.d.ts +0 -6
  1158. package/types/ui/Dialog/Content.d.ts +0 -6
  1159. package/types/ui/Dialog/Title.d.ts +0 -5
  1160. package/types/ui/Dialog/Trigger.d.ts +0 -6
  1161. package/types/ui/Dialog/context.d.ts +0 -18
  1162. package/types/ui/Layout/LeftSider.d.ts +0 -11
  1163. package/types/ui/Layout/RightSider.d.ts +0 -12
  1164. package/types/ui/Layout/Template.d.ts +0 -7
  1165. package/types/ui/Layout/TopLeftAction.d.ts +0 -6
  1166. package/types/ui/Layout/Unit.d.ts +0 -9
  1167. package/types/ui/Layout/View.d.ts +0 -8
  1168. package/types/ui/Layout/Zone.d.ts +0 -6
  1169. package/types/ui/Link/Back.d.ts +0 -7
  1170. package/types/ui/Link/Close.d.ts +0 -7
  1171. package/types/ui/Link/CsrLink.d.ts +0 -2
  1172. package/types/ui/Link/Lang.d.ts +0 -8
  1173. package/types/ui/Link/SsrLink.d.ts +0 -2
  1174. package/types/ui/Link/types.d.ts +0 -50
  1175. package/types/ui/Loading/Area.d.ts +0 -9
  1176. package/types/ui/Loading/Button.d.ts +0 -7
  1177. package/types/ui/Loading/Input.d.ts +0 -7
  1178. package/types/ui/Model/LoadInit.d.ts +0 -10
  1179. package/types/ui/Model/LoadView.d.ts +0 -10
  1180. package/types/ui/Reference/Collapse.d.ts +0 -11
  1181. package/types/ui/Reference/Summary.d.ts +0 -13
  1182. package/types/ui/Reference/Toolbar.d.ts +0 -21
  1183. package/types/ui/Reference/dictText.d.ts +0 -6
  1184. package/types/ui/Signal/Message.d.ts +0 -23
  1185. package/types/ui/Signal/PubSub.d.ts +0 -24
  1186. package/types/ui/Signal/Request.d.ts +0 -8
  1187. package/types/ui/System/DevModeToggle.d.ts +0 -1
  1188. package/types/ui/System/Gtag.d.ts +0 -4
  1189. package/types/ui/System/frameCssVars.d.ts +0 -5
  1190. package/types/ui/Tab/Menu.d.ts +0 -12
  1191. package/types/ui/Tab/Menus.d.ts +0 -6
  1192. package/types/ui/Tab/Panel.d.ts +0 -8
  1193. package/types/ui/Tab/context.d.ts +0 -11
  1194. package/types/ui/UiOverride/Provider.d.ts +0 -15
  1195. package/types/ui/UiOverride/createOverridable.d.ts +0 -9
  1196. package/types/ui/UiOverride/useUiOverride.d.ts +0 -7
  1197. package/types/ui/UiOverride/useUiRecipe.d.ts +0 -8
  1198. package/types/webkit/createSitemapPage.d.ts +0 -4
  1199. package/ui/Agent/Context.tsx +0 -49
  1200. package/ui/Agent/Mic.tsx +0 -27
  1201. package/ui/Agent/Section.tsx +0 -24
  1202. package/ui/Agent/StateKey.tsx +0 -46
  1203. package/ui/Agent/Tool.tsx +0 -59
  1204. package/ui/Agent/Transcript.tsx +0 -33
  1205. package/ui/Agent/markdownSpans.tsx +0 -49
  1206. package/ui/Agent/sessionHistory.ts +0 -62
  1207. package/ui/Agent/sessionView.ts +0 -38
  1208. package/ui/Dialog/Action.tsx +0 -15
  1209. package/ui/Dialog/Close.tsx +0 -18
  1210. package/ui/Dialog/Content.tsx +0 -11
  1211. package/ui/Dialog/Title.tsx +0 -15
  1212. package/ui/Dialog/Trigger.tsx +0 -18
  1213. package/ui/Dialog/context.ts +0 -32
  1214. package/ui/Layout/LeftSider.tsx +0 -43
  1215. package/ui/Layout/RightSider.tsx +0 -47
  1216. package/ui/Layout/Template.tsx +0 -11
  1217. package/ui/Layout/TopLeftAction.tsx +0 -28
  1218. package/ui/Layout/Unit.tsx +0 -19
  1219. package/ui/Layout/View.tsx +0 -12
  1220. package/ui/Layout/Zone.tsx +0 -10
  1221. package/ui/Link/Back.tsx +0 -15
  1222. package/ui/Link/Close.tsx +0 -20
  1223. package/ui/Link/CsrLink.tsx +0 -46
  1224. package/ui/Link/Lang.tsx +0 -16
  1225. package/ui/Link/SsrLink.tsx +0 -72
  1226. package/ui/Link/types.ts +0 -55
  1227. package/ui/Loading/Area.tsx +0 -27
  1228. package/ui/Loading/Button.tsx +0 -15
  1229. package/ui/Loading/Input.tsx +0 -15
  1230. package/ui/Model/LoadInit.tsx +0 -11
  1231. package/ui/Model/LoadView.tsx +0 -11
  1232. package/ui/Reference/Collapse.tsx +0 -26
  1233. package/ui/Reference/Summary.tsx +0 -25
  1234. package/ui/Reference/Toolbar.tsx +0 -44
  1235. package/ui/Reference/dictText.ts +0 -9
  1236. package/ui/Signal/Message.tsx +0 -215
  1237. package/ui/Signal/PubSub.tsx +0 -201
  1238. package/ui/Signal/Request.tsx +0 -11
  1239. package/ui/System/DevModeToggle.tsx +0 -19
  1240. package/ui/System/Gtag.tsx +0 -69
  1241. package/ui/System/frameCssVars.ts +0 -25
  1242. package/ui/Tab/Menu.tsx +0 -70
  1243. package/ui/Tab/Menus.tsx +0 -13
  1244. package/ui/Tab/Panel.tsx +0 -25
  1245. package/ui/Tab/context.ts +0 -20
  1246. package/ui/UiOverride/Provider.tsx +0 -26
  1247. package/ui/UiOverride/createOverridable.tsx +0 -25
  1248. package/ui/UiOverride/useUiOverride.ts +0 -15
  1249. package/ui/UiOverride/useUiRecipe.ts +0 -15
  1250. package/webkit/createSitemapPage.ts +0 -4
@@ -26,7 +26,7 @@ import {
26
26
  type RouteModuleSource,
27
27
  resolveRouteModule,
28
28
  } from "../client/route/resolveRouteModule";
29
- import { resolveHeadExport, resolveMetadataHead } from "./metadata";
29
+ import { matchRoutePrefix } from "../common/routeConvention";
30
30
 
31
31
  type RouteModuleKindWithOverrides = "page" | "layout" | "overrides";
32
32
 
@@ -116,7 +116,7 @@ export class RouteTreeBuilder {
116
116
  const candidates = fallbackRoutes
117
117
  .map((fallbackRoute) => ({
118
118
  fallbackRoute,
119
- params: RouteTreeBuilder.#matchRoutePrefix(fallbackRoute.path, pathname),
119
+ params: matchRoutePrefix(fallbackRoute.path, pathname),
120
120
  }))
121
121
  .filter((entry): entry is { fallbackRoute: LayoutFallbackRoute; params: Record<string, string> } =>
122
122
  Boolean(entry.params),
@@ -153,7 +153,6 @@ export class RouteTreeBuilder {
153
153
  if (!children) throw new Error("No children");
154
154
  return children;
155
155
  }, this.#routeMap);
156
- if (!targetRouteMap) return;
157
156
 
158
157
  const targetPath = pathSegments[pathSegments.length - 1];
159
158
  if (!targetPath) return;
@@ -261,10 +260,6 @@ export class RouteTreeBuilder {
261
260
  };
262
261
  }
263
262
 
264
- /**
265
- * A `page()` / `layout()` chain is unfolded into the named-export shape the rest of this file reads. The legacy
266
- * shape still loads, and is named once per module so an app finds every file the migration guide covers.
267
- */
268
263
  static #resolveModule(key: string, kind: RouteModuleKindWithOverrides, mod: RouteModuleSource): ResolvedRouteModule {
269
264
  if (kind === "overrides") return { module: mod as RouteModule };
270
265
  const parsed = parseRouteModuleKey(key);
@@ -280,7 +275,6 @@ export class RouteTreeBuilder {
280
275
 
281
276
  static #validateRouteModuleExports(key: string, kind: RouteModuleKindWithOverrides, mod: RouteModule) {
282
277
  if (kind === "overrides") {
283
-
284
278
  if (!mod.default) throw new Error(`[route-convention] ${key} generated override wrapper has no default export`);
285
279
  return;
286
280
  }
@@ -295,22 +289,25 @@ export class RouteTreeBuilder {
295
289
  if ("head" in mod && "generateHead" in mod) {
296
290
  throw new Error(`[route-convention] head and generateHead cannot both be exported in ${key}`);
297
291
  }
298
- if (
299
- !parsed.isInternalRootLayout &&
300
- ("head" in mod || "generateHead" in mod) &&
301
- ("metadata" in mod || "generateMetadata" in mod)
302
- ) {
303
- throw new Error(
304
- `[route-convention] head/generateHead and metadata/generateMetadata cannot both be exported in ${key}`,
305
- );
306
- }
307
- if ("metadata" in mod && "generateMetadata" in mod) {
308
- throw new Error(`[route-convention] metadata and generateMetadata cannot both be exported in ${key}`);
309
- }
310
292
  }
311
293
 
312
294
  static #makeRouteRender(key: string, kind: "page" | "layout", loader: () => Promise<RouteModuleSource>): RouteRender {
313
295
  const loadModule = RouteTreeBuilder.#makeLazyModule(key, kind, loader);
296
+ const syncFallbacks = (mod: LayoutModule) => {
297
+ routeRender.NotFound = mod.NotFound;
298
+ routeRender.Error = mod.Error;
299
+ return mod;
300
+ };
301
+ const loadSynced = async () => {
302
+ const { module: mod } = await loadModule();
303
+ routeRender.Loading = mod.Loading as never;
304
+ if (kind === "layout") syncFallbacks(mod as LayoutModule);
305
+ return mod;
306
+ };
307
+ const pageConfigOf = async () => {
308
+ const { module: mod } = await loadModule();
309
+ return "pageConfig" in mod ? mod.pageConfig : undefined;
310
+ };
314
311
  const routeRender: RouteRender = {
315
312
  isAsync: true,
316
313
  resolveLoading: async () => {
@@ -318,60 +315,22 @@ export class RouteTreeBuilder {
318
315
  routeRender.Loading = mod.Loading as never;
319
316
  },
320
317
  render: async (props: LayoutProps | PageProps) => {
321
- const { module: mod } = await loadModule();
322
- routeRender.Loading = mod.Loading as never;
323
- if (kind === "layout") {
324
- const layoutMod = mod as LayoutModule;
325
- routeRender.NotFound = layoutMod.NotFound;
326
- routeRender.Error = layoutMod.Error;
327
- }
318
+ const mod = await loadSynced();
328
319
  if (!mod.default) throw new Error(`[route-convention] ${key} has no default export`);
329
320
  return mod.default(props as never);
330
321
  },
331
322
  resolveHead: async (props: PageProps) => {
332
- const { module: mod } = await loadModule();
333
- routeRender.Loading = mod.Loading as never;
334
- if (kind === "layout") {
335
- const layoutMod = mod as LayoutModule;
336
- routeRender.NotFound = layoutMod.NotFound;
337
- routeRender.Error = layoutMod.Error;
338
- }
339
- if (mod.generateHead) {
340
- const head = await mod.generateHead(props);
341
- if (head !== null && head !== undefined) return resolveHeadExport(head, { includeHeadSnapshot: false });
342
- }
343
- if (mod.generateMetadata) {
344
- const metadata = await mod.generateMetadata(props);
345
- return metadata === null || metadata === undefined ? metadata : resolveMetadataHead(metadata);
346
- }
347
- if (mod.head !== undefined)
348
- return mod.head === null ? null : resolveHeadExport(mod.head, { includeHeadSnapshot: false });
349
- return mod.metadata === undefined ? undefined : resolveMetadataHead(mod.metadata);
323
+ const mod = await loadSynced();
324
+ return mod.generateHead ? await mod.generateHead(props) : mod.head;
350
325
  },
351
326
  };
352
327
  if (kind === "page") {
353
- routeRender.getPageConfig = async () => {
354
- const { module: mod } = await loadModule();
355
- return "pageConfig" in mod ? mod.pageConfig : undefined;
356
- };
328
+ routeRender.getPageConfig = pageConfigOf;
357
329
  routeRender.getRouteDefinition = async () => (await loadModule()).definition;
358
330
  } else {
359
- routeRender.getLayoutPageConfig = async () => {
360
- const { module: mod } = await loadModule();
361
- return "pageConfig" in mod ? mod.pageConfig : undefined;
362
- };
363
- routeRender.resolveNotFound = async () => {
364
- const mod = (await loadModule()).module as LayoutModule;
365
- routeRender.NotFound = mod.NotFound;
366
- routeRender.Error = mod.Error;
367
- return mod.NotFound;
368
- };
369
- routeRender.resolveError = async () => {
370
- const mod = (await loadModule()).module as LayoutModule;
371
- routeRender.NotFound = mod.NotFound;
372
- routeRender.Error = mod.Error;
373
- return mod.Error;
374
- };
331
+ routeRender.getLayoutPageConfig = pageConfigOf;
332
+ routeRender.resolveNotFound = async () => syncFallbacks((await loadModule()).module as LayoutModule).NotFound;
333
+ routeRender.resolveError = async () => syncFallbacks((await loadModule()).module as LayoutModule).Error;
375
334
  }
376
335
  return routeRender;
377
336
  }
@@ -399,22 +358,4 @@ export class RouteTreeBuilder {
399
358
  return undefined;
400
359
  };
401
360
  }
402
-
403
- static #matchRoutePrefix(pattern: string, pathname: string): Record<string, string> | null {
404
- const patternParts = pattern.split("/").filter(Boolean);
405
- const pathParts = pathname.split("/").filter(Boolean);
406
- if (patternParts.length > pathParts.length) return null;
407
- const params: Record<string, string> = {};
408
- for (let index = 0; index < patternParts.length; index++) {
409
- const patternPart = patternParts[index];
410
- const pathPart = pathParts[index];
411
- if (!patternPart || !pathPart) return null;
412
- if (patternPart.startsWith(":")) {
413
- params[patternPart.slice(1)] = decodeURIComponent(pathPart);
414
- continue;
415
- }
416
- if (patternPart !== pathPart) return null;
417
- }
418
- return params;
419
- }
420
361
  }
@@ -1,5 +1,5 @@
1
1
  import { dayjs } from "akanjs/base";
2
- import { type Logger, websocketAuthContract } from "akanjs/common";
2
+ import { type Logger, websocketAuthContract, websocketHeartbeatContract } from "akanjs/common";
3
3
  import type { InjectRegistry, LiveRegistry } from "akanjs/service";
4
4
  import { isExceptionLike, SignalContext, SignalFailure, type WebsocketReqData } from "akanjs/signal";
5
5
  import { compressResponse } from "../contentEncoding";
@@ -9,12 +9,6 @@ import { SignalResolver } from "../resolver";
9
9
  import type { HttpRoutes, SignalRouteOptions, WebsocketRoutes } from "../types";
10
10
  import { AppWsData } from "./appWsData";
11
11
 
12
- /**
13
- * Minimal render-state view the HMR WS hello message needs.
14
- * `LazyHmrController` exposes this shape via `state.buildId` / `state.cssAssets`,
15
- * so the ws handler can greet freshly-connected clients
16
- * without reaching into the full controller.
17
- */
18
12
  export interface HmrStateSource {
19
13
  readonly state: {
20
14
  buildId: number;
@@ -31,7 +25,6 @@ export interface ApiRouteInputs {
31
25
  builtinRoutes?: HttpRoutes;
32
26
  routeOptions?: Record<string, SignalRouteOptions>;
33
27
  renderEnvRoutes: HttpRoutes;
34
- /** Upgrades the incoming request into an app-signal WebSocket. */
35
28
  upgradeAppWs: (req: Request, data: AppWsData) => boolean;
36
29
  webProxyRunner?: WebProxyRunner | null;
37
30
  }
@@ -42,7 +35,6 @@ type RouteHandler = (req: Request) => Response | Promise<Response | undefined> |
42
35
  export interface WebsocketHandlersInputs {
43
36
  wsRoutes: WebsocketRoutes;
44
37
  registry: InjectRegistry;
45
- /** Only live rooms need it — a room is released from the routing table when its last socket goes. */
46
38
  live?: LiveRegistry;
47
39
  hmrHub: HmrWsHub | null;
48
40
  hmrState: HmrStateSource | null;
@@ -53,12 +45,7 @@ export interface WebsocketHandlersInputs {
53
45
  type WsTaggedData = { kind?: string };
54
46
 
55
47
  export class ApiRouter {
56
- /**
57
- * Builds the full route table served by `Bun.serve`. Responsibilities:
58
- * 1. Expose the WS upgrade endpoint at `<prefix><websocketPrefix>`.
59
- * 2. Prefix every endpoint-generated route with `prefix`.
60
- * 3. Merge render-env routes (CSR/SSR) last so they can catch-all `/*`.
61
- */
48
+
62
49
  static buildRoutes({
63
50
  prefix,
64
51
  websocketPrefix,
@@ -71,7 +58,7 @@ export class ApiRouter {
71
58
  }: ApiRouteInputs): NonNullHttpRoutes {
72
59
  const endpointEntries = Object.entries(routes ?? {}).map(
73
60
  ([p, handler]) =>
74
- [ApiRouter.#applyGlobalPrefix(prefix, p, routeOptions?.[p]), ApiRouter.#compressRoute(handler)] as const,
61
+ [ApiRouter.applyGlobalPrefix(prefix, p, routeOptions?.[p]), ApiRouter.#compressRoute(handler)] as const,
75
62
  );
76
63
  const builtinEntries = Object.entries(builtinRoutes ?? {}).map(
77
64
  ([path, handler]) => [path, ApiRouter.#compressRoute(handler)] as const,
@@ -92,12 +79,6 @@ export class ApiRouter {
92
79
  : routeTable;
93
80
  }
94
81
 
95
- /**
96
- * Builds the `websocket` handler config for `Bun.serve`. Multiplexes two
97
- * logical channels on the same upgrade port:
98
- * - `kind === "akan-hmr"` — dev HMR, delegated to `HmrWsHub`.
99
- * - everything else — app signal channel, dispatched via `wsRoutes`.
100
- */
101
82
  static buildWebsocketHandlers({
102
83
  wsRoutes,
103
84
  registry,
@@ -111,7 +92,7 @@ export class ApiRouter {
111
92
 
112
93
  drain: () => onDrain?.(),
113
94
  open: (ws) => {
114
-
95
+
115
96
  const data = ws.data as WsTaggedData | undefined;
116
97
  if (data?.kind === "akan-hmr" && hmrHub && hmrState) {
117
98
  hmrHub.attach(ws as unknown as Bun.ServerWebSocket<HmrWsData>);
@@ -137,12 +118,16 @@ export class ApiRouter {
137
118
  const msg = JSON.parse(message) as WebsocketReqData;
138
119
  if (!msg.key) throw new Error("Message key is required");
139
120
  if (msg.key === websocketAuthContract.key) {
140
-
121
+
141
122
  AppWsData.applyCredential(AppWsData.of(ws), websocketAuthContract.readJwt(msg.data));
142
123
  const revokedRooms = await SignalResolver.revalidateWsRooms(ws, registry, live);
143
124
  ws.send(JSON.stringify(websocketAuthContract.makeAck(revokedRooms)));
144
125
  return;
145
126
  }
127
+ if (msg.key === websocketHeartbeatContract.key) {
128
+ ws.send(JSON.stringify(websocketHeartbeatContract.makeAck()));
129
+ return;
130
+ }
146
131
  const wsRoute = wsRoutes[msg.key];
147
132
  if (!wsRoute) throw new Error(`WebSocket route "${msg.key}" is not registered`);
148
133
  const eventType =
@@ -173,12 +158,12 @@ export class ApiRouter {
173
158
  };
174
159
  }
175
160
 
176
- static #applyGlobalPrefix(prefix: string, path: string, options?: SignalRouteOptions): string {
161
+ static applyGlobalPrefix(prefix: string, path: string, options?: SignalRouteOptions): string {
177
162
  if (options?.globalPrefix === false) return ApiRouter.#normalizeRoutePath(path);
178
- return ApiRouter.#joinRoutePath(prefix, path);
163
+ return ApiRouter.joinRoutePath(prefix, path);
179
164
  }
180
165
 
181
- static #joinRoutePath(prefix: string, path: string): string {
166
+ static joinRoutePath(prefix: string, path: string): string {
182
167
  const normalizedPrefix = ApiRouter.#normalizeRoutePath(prefix).replace(/\/$/, "");
183
168
  const normalizedPath = ApiRouter.#normalizeRoutePath(path);
184
169
  if (normalizedPrefix === "/") return normalizedPath;
@@ -203,7 +188,11 @@ export class ApiRouter {
203
188
  path,
204
189
  endpointPaths.has(path) || ApiRouter.#isApiRoute(path, apiPrefix) || ApiRouter.#isInternalRenderRoute(path)
205
190
  ? route
206
- : ApiRouter.#wrapRoute(route, runner),
191
+ : ApiRouter.#mapRoute(route, (handler) => async (req) => {
192
+ const result = await runner.run(req);
193
+ if (result.response) return result.response;
194
+ return await handler(copyBunRequestFields(result.request, req));
195
+ }),
207
196
  ]),
208
197
  ) as NonNullHttpRoutes;
209
198
  }
@@ -217,27 +206,6 @@ export class ApiRouter {
217
206
  return path === "/__csr" || path === "/__rsc" || path.startsWith("/__rsc/") || path.startsWith("/_akan/");
218
207
  }
219
208
 
220
- static #wrapRoute(route: RouteValue, runner: WebProxyRunner): RouteValue {
221
- return ApiRouter.#mapRoute(route, (handler) => ApiRouter.#wrapHandler(handler, runner));
222
- }
223
-
224
- static #wrapHandler(handler: RouteHandler, runner: WebProxyRunner): RouteHandler {
225
- return async (req) => {
226
- const result = await runner.run(req);
227
- if (result.response) return result.response;
228
- return await handler(copyBunRequestFields(result.request, req));
229
- };
230
- }
231
-
232
- /**
233
- * Signal endpoints answer with a fully-built JSON body, so this is the one place every model response passes
234
- * through with the request still in hand. The web routes are deliberately left out: their bodies stream, and
235
- * `compressResponse` buffers.
236
- *
237
- * Behind the gateway this finds `Accept-Encoding: identity` and does nothing — the gateway asks for an
238
- * identity body because Bun's `fetch` decodes any `Content-Encoding` it is handed, so a child that
239
- * compressed here would only be paying to have the gateway undo it. The gateway compresses instead.
240
- */
241
209
  static #compressRoute(route: RouteValue): RouteValue {
242
210
  return ApiRouter.#mapRoute(route, (handler) => async (req) => {
243
211
  const response = await handler(req);
@@ -8,16 +8,10 @@ import {
8
8
 
9
9
  const CREDENTIAL_HEADERS = ["authorization", "cookie", "user-agent"] as const;
10
10
 
11
- /**
12
- * Credential snapshot taken at the websocket handshake and carried on `ws.data` for the life of the
13
- * socket, so auth middleware and guards can read the caller the same way they read an HTTP request.
14
- * Only the credential headers are copied — retaining the whole `Request` would pin it for as long
15
- * as the socket stays open.
16
- */
17
11
  export class AppWsData {
18
12
  static fromRequest(req: Request): AppWsData {
19
13
  const headers = new Headers();
20
-
14
+
21
15
  for (const key of [...CREDENTIAL_HEADERS, ...forwardedHeaders]) {
22
16
  const value = req.headers.get(key);
23
17
  if (value) headers.set(key, value);
@@ -27,16 +21,11 @@ export class AppWsData {
27
21
  static of(ws: Bun.ServerWebSocket<unknown>): AppWsData {
28
22
  return ws.data as AppWsData;
29
23
  }
30
- /**
31
- * Swaps the credential the socket authenticates with. Callers must run this synchronously on the
32
- * auth frame: frames arrive in order, so a subscribe sent right after the credential must not be
33
- * able to observe the previous one.
34
- */
35
24
  static applyCredential(data: AppWsData, jwt: string | null) {
36
25
  if (jwt) data.headers.set("authorization", `Bearer ${jwt}`);
37
26
  else {
38
27
  data.headers.delete("authorization");
39
-
28
+
40
29
  for (const name of [...data.cookies].map(([name]) => name)) {
41
30
  if (isAuthTokenKey(name)) data.cookies.delete(name);
42
31
  }
@@ -50,28 +39,15 @@ export class AppWsData {
50
39
  headers: Headers;
51
40
  cookies: Bun.CookieMap;
52
41
  account?: unknown;
53
- /**
54
- * Identity of this connection, minted here so every app socket carries one from its first frame and
55
- * adaptors and endpoints only ever read it. Per-connection and process-local — a reconnect gets a new
56
- * one, and the federation gateway's own socket is a different one — so it is never a caller identity.
57
- * It outlives a credential swap on purpose: the socket is still the same socket.
58
- */
42
+
59
43
  socketId: string;
60
- /**
61
- * The caller's address as the nearest proxy recorded it, or null when nothing did.
62
- *
63
- * The handshake headers alone cannot say whether a proxy wrote them or the client did, so this trusts them —
64
- * a socket that reached a child came through the gateway, which already resolved the question. `ipOf` is what
65
- * an endpoint should read: it has the peer, so it can decide.
66
- */
44
+
67
45
  get ip(): string | null {
68
46
  return clientAddressFromHeaders(this.headers);
69
47
  }
70
- /** The caller's source port as the nearest proxy recorded it, or null when nothing did. */
71
48
  get port(): number | null {
72
49
  return clientPortFromHeaders(this.headers);
73
50
  }
74
- /** The address to answer on: what a proxy recorded, else this socket's own peer. */
75
51
  ipOf(ws: Bun.ServerWebSocket<unknown>): string | null {
76
52
  return TrustedProxy.clientAddress(this.headers, ws.remoteAddress);
77
53
  }
@@ -1,4 +1,6 @@
1
1
  import type { AkanChildRole, AkanMetricsReport } from "akanjs/service";
2
+ import { AppInfo } from "../ops/appInfo";
3
+ import type { OpsRoute } from "../ops/opsRoute";
2
4
  import type { HttpRoutes } from "../types";
3
5
 
4
6
  export interface SoloAppStatus {
@@ -9,14 +11,10 @@ export interface SoloAppStatus {
9
11
  metrics: AkanMetricsReport;
10
12
  }
11
13
 
12
- /**
13
- * The gateway's `/_akan/app/*` surface, answered by a process nothing is proxying. The payload keeps the
14
- * gateway's own shape — a `children` array with this process as its only entry — so a probe, a k8s check and
15
- * `akan` tooling read one contract whether or not a gateway is in front.
16
- */
17
14
  export const createSoloAppRoutes = (
18
15
  read: () => SoloAppStatus,
19
16
  logStream: { handle(req: Request): Response } | null = null,
17
+ ops: OpsRoute | null = null,
20
18
  ): HttpRoutes => {
21
19
  const child = () => {
22
20
  const { role, running, status, port } = read();
@@ -44,7 +42,9 @@ export const createSoloAppRoutes = (
44
42
  children: [{ ...child(), metrics: read().metrics }],
45
43
  }),
46
44
  },
45
+ [AppInfo.publicPath]: { GET: () => AppInfo.handlePublic() },
47
46
  "/_akan/bench/ping": { GET: () => new Response("ok") },
48
47
  ...(logStream ? { "/_akan/app/logs": { GET: (req: Request) => logStream.handle(req) } } : {}),
48
+ ...(ops ? { "/_akan/ops/*": (req: Request) => ops.handle(req) } : {}),
49
49
  };
50
50
  };
@@ -1,11 +1,13 @@
1
1
  import { createElement, type ReactNode, startTransition, type Usable, use, useLayoutEffect, useState } from "react";
2
2
  import { hydrateRoot } from "react-dom/client";
3
3
  import { createFromReadableStream } from "react-server-dom-webpack/client.browser";
4
+ import type {} from "../client/rscNavigation";
4
5
  import {
5
6
  type AkanHeadSnapshotV1,
6
7
  type AkanRouterStateV1,
7
8
  type AkanRscPatchMetadata,
8
9
  decodeAkanRouterState,
10
+ isAkanRscPartialCommitEnabled,
9
11
  readAkanRouterStateResponseHeader,
10
12
  } from "./routeState";
11
13
  import { fetchRscNavigationResponse } from "./rscClientFetch";
@@ -28,10 +30,8 @@ import {
28
30
  type RscNavigationCacheNode,
29
31
  type RscPatchNavigationCacheNode,
30
32
  rememberRscCacheNode,
31
- rememberRscPatchCacheNode,
32
33
  resolveCachedRscPatchNavigation,
33
34
  } from "./rscNavigationState";
34
- import { isAkanRscPartialCommitEnabled } from "./rscPartialCommit";
35
35
  import { commitAkanSegmentOutletPatch, resetAkanSegmentOutletPatches } from "./rscSegmentOutlet";
36
36
 
37
37
  type InlineRscChunk = [1, string] | [3, string];
@@ -42,29 +42,17 @@ declare global {
42
42
  var __RSC_PUSH__: ((type: InlineRscChunk[0], data: string) => void) | undefined;
43
43
  var __RSC_CLOSE__: (() => void) | undefined;
44
44
  var __AKAN_RSC_INITIAL_STATE__: string | undefined;
45
- var __AKAN_RSC_NAVIGATE__:
46
- | ((href: string, options?: { replace?: boolean; scrollToTop?: boolean }) => Promise<void>)
47
- | undefined;
48
45
  var __AKAN_RSC_REFRESH__: ((options?: { buildId?: number }) => Promise<void>) | undefined;
49
- var __AKAN_RSC_CLEAR_CACHE__: (() => void) | undefined;
50
- var __AKAN_RSC_IS_FROM_CACHE__: (() => boolean) | undefined;
51
- var __AKAN_DEV_SYNC_NAVIGATION__: ((href: string, kind: "push" | "replace" | "back" | "pop") => void) | undefined;
52
- var __AKAN_DEV_SYNC_NAVIGATION_APPLYING__: boolean | undefined;
53
- var __AKAN_GET_SYNC_ROUTE_HREF__: ((href: string) => string) | undefined;
54
46
  }
55
47
 
56
- function decodeBase64(b64: string): Uint8Array {
57
- const binary = atob(b64);
48
+ function decodeInlineRscChunk([type, data]: InlineRscChunk): Uint8Array {
49
+ if (type === 1) return new TextEncoder().encode(data);
50
+ const binary = atob(data);
58
51
  const bytes = new Uint8Array(binary.length);
59
52
  for (let i = 0; i < binary.length; i++) bytes[i] = binary.charCodeAt(i);
60
53
  return bytes;
61
54
  }
62
55
 
63
- function decodeInlineRscChunk([type, data]: InlineRscChunk): Uint8Array {
64
- if (type === 1) return new TextEncoder().encode(data);
65
- return decodeBase64(data);
66
- }
67
-
68
56
  type RscThenable = Promise<ReactNode> & {
69
57
  status?: "pending" | "fulfilled" | "rejected";
70
58
  value?: ReactNode;
@@ -82,6 +70,7 @@ type RscFetchResult =
82
70
  outletKey: string;
83
71
  headSnapshot: AkanHeadSnapshotV1;
84
72
  }
73
+ | { type: "not-found" }
85
74
  | { type: "redirected"; status?: number };
86
75
  const MAX_RSC_CACHE_ENTRIES = 32;
87
76
  let documentNavigationFallbackInFlight = false;
@@ -93,6 +82,13 @@ class RscRedirectNavigationStarted extends Error {
93
82
  }
94
83
  }
95
84
 
85
+ class RscRouteNotFound extends Error {
86
+ constructor(readonly href: string) {
87
+ super(`[rscClient] no route at ${href}`);
88
+ this.name = "RscRouteNotFound";
89
+ }
90
+ }
91
+
96
92
  function createInitialRscStream(): ReadableStream<Uint8Array> {
97
93
  return new ReadableStream<Uint8Array>({
98
94
  start(controller) {
@@ -115,17 +111,6 @@ function normalizeHref(href: string): string {
115
111
  return new URL(href, window.location.origin).href;
116
112
  }
117
113
 
118
- /**
119
- * Mirror React's thenable protocol (status/value/reason) onto the Flight thenable.
120
- *
121
- * Without this, `use(thenable)` cannot tell an already-resolved native Promise apart
122
- * from a pending one: it suspends the root transition once and relies on React's
123
- * ping -> retry -> re-commit path. That path intermittently lost the re-commit when
124
- * sync store updates raced the suspended transition, leaving the previous page DOM
125
- * visible even though the navigation pipeline completed. With the status tracked,
126
- * `use()` returns the fulfilled payload synchronously and the committed transition
127
- * renders the new tree in a single pass.
128
- */
129
114
  function trackRscThenable(thenable: RscThenable): RscThenable {
130
115
  if (thenable.status !== undefined) return thenable;
131
116
  thenable.status = "pending";
@@ -189,9 +174,7 @@ function commitRscPatchNavigation({
189
174
  startTransition(() => {
190
175
  try {
191
176
  headApplied = commitPreparedAkanHeadSnapshotPatch(preparedHeadPatch);
192
- if (!headApplied) {
193
- return;
194
- }
177
+ if (!headApplied) return;
195
178
  outletCommitted = commitAkanSegmentOutletPatch(patch.outletKey, patchThenable);
196
179
  if (!outletCommitted) {
197
180
  rollbackPreparedAkanHeadSnapshotPatch(preparedHeadPatch);
@@ -228,7 +211,7 @@ async function fetchRsc(
228
211
  sendRouterState: options.sendRouterState,
229
212
  shouldApplyNavigation,
230
213
  });
231
- if (responseResult.type === "redirected") return responseResult;
214
+ if (responseResult.type === "redirected" || responseResult.type === "not-found") return responseResult;
232
215
  if (responseResult.type === "patch") {
233
216
  const patchResult = await validateRscPatchForGuardedCommit({
234
217
  partialCommitEnabled: isAkanRscPartialCommitEnabled(),
@@ -364,6 +347,10 @@ function Root(): ReactNode {
364
347
  shouldApplyNavigation: () => navId === navigationSeq,
365
348
  });
366
349
  if (next.type === "redirected") return;
350
+ if (next.type === "not-found") {
351
+ console.warn(`[rscClient] refresh target ${target} no longer resolves; keeping the current page`);
352
+ return;
353
+ }
367
354
  if (next.type === "patched") return;
368
355
  observeRscNavigationNode({
369
356
  cache: rscCache,
@@ -373,7 +360,7 @@ function Root(): ReactNode {
373
360
  isExpectedNavigationError: (error) => error instanceof RscRedirectNavigationStarted,
374
361
  onLatestError: (error) => hardNavigateAfterRscFailure(target, true, error),
375
362
  });
376
-
363
+
377
364
  await next.node.thenable;
378
365
  const committed = commitLatestRscNavigation({
379
366
  cache: rscCache,
@@ -433,7 +420,7 @@ function Root(): ReactNode {
433
420
  ) {
434
421
  currentCommitFromCache = true;
435
422
  rememberPatchedRouteState(patchResult.tree, patchResult.patchedNode);
436
- rememberRscPatchCacheNode(rscPatchCache, cachedPatch, MAX_RSC_CACHE_ENTRIES);
423
+ rememberRscCacheNode(rscPatchCache, cachedPatch, MAX_RSC_CACHE_ENTRIES);
437
424
  return;
438
425
  }
439
426
  }
@@ -445,6 +432,7 @@ function Root(): ReactNode {
445
432
  shouldApplyNavigation: () => navId === navigationSeq,
446
433
  });
447
434
  if (fetched.type === "redirected") return;
435
+ if (fetched.type === "not-found") throw new RscRouteNotFound(target);
448
436
  if (fetched.type === "patched") {
449
437
  if (navId !== navigationSeq) return;
450
438
  if (
@@ -465,7 +453,7 @@ function Root(): ReactNode {
465
453
  outletKey: fetched.outletKey,
466
454
  headSnapshot: fetched.headSnapshot,
467
455
  });
468
- if (patchCacheNode) rememberRscPatchCacheNode(rscPatchCache, patchCacheNode, MAX_RSC_CACHE_ENTRIES);
456
+ if (patchCacheNode) rememberRscCacheNode(rscPatchCache, patchCacheNode, MAX_RSC_CACHE_ENTRIES);
469
457
  return;
470
458
  }
471
459
  rscPatchCache.delete(target);
@@ -476,6 +464,7 @@ function Root(): ReactNode {
476
464
  shouldApplyNavigation: () => navId === navigationSeq,
477
465
  });
478
466
  if (fallback.type === "redirected") return;
467
+ if (fallback.type === "not-found") throw new RscRouteNotFound(target);
479
468
  if (fallback.type === "patched") throw new Error("[rscClient] full fallback unexpectedly returned a patch");
480
469
  nextNode = fallback.node;
481
470
  } else {
@@ -492,7 +481,7 @@ function Root(): ReactNode {
492
481
  isExpectedNavigationError: (error) => error instanceof RscRedirectNavigationStarted,
493
482
  onLatestError: (error) => hardNavigateAfterRscFailure(target, options.replace, error),
494
483
  });
495
-
484
+
496
485
  await nextNode.thenable;
497
486
  const committed = commitLatestRscNavigation({
498
487
  cache: rscCache,
@@ -517,6 +506,8 @@ function Root(): ReactNode {
517
506
  if (committed) rememberCommittedRouteState(nextNode);
518
507
  } catch (error) {
519
508
  if (error instanceof RscRedirectNavigationStarted) return;
509
+
510
+ if (error instanceof RscRouteNotFound) throw error;
520
511
  if (navId === navigationSeq) hardNavigateAfterRscFailure(target, options.replace, error);
521
512
  }
522
513
  };
@@ -525,7 +516,10 @@ function Root(): ReactNode {
525
516
  }
526
517
 
527
518
  window.addEventListener("popstate", () => {
528
- void globalThis.__AKAN_RSC_NAVIGATE__?.(window.location.href, { replace: true, scrollToTop: false });
519
+
520
+ void globalThis
521
+ .__AKAN_RSC_NAVIGATE__?.(window.location.href, { replace: true, scrollToTop: false })
522
+ ?.catch((error: unknown) => hardNavigateAfterRscFailure(window.location.href, true, error));
529
523
  window.setTimeout(() => {
530
524
  if (globalThis.__AKAN_DEV_SYNC_NAVIGATION_APPLYING__) return;
531
525
  const href = globalThis.__AKAN_GET_SYNC_ROUTE_HREF__?.(window.location.href) ?? window.location.href;
@@ -5,11 +5,10 @@ import {
5
5
  readAkanRscPatchMetadataResponseHeaders,
6
6
  } from "./routeState";
7
7
 
8
- type RscNavigate = (href: string, options?: { replace?: boolean; scrollToTop?: boolean }) => Promise<void> | void;
9
-
10
8
  export type RscClientFetchResponseResult =
11
9
  | { type: "response"; response: Response }
12
10
  | { type: "patch"; response: Response; patch: AkanRscPatchMetadata }
11
+ | { type: "not-found" }
13
12
  | { type: "redirected"; status?: number };
14
13
 
15
14
  export async function fetchRscNavigationResponse(
@@ -17,7 +16,7 @@ export async function fetchRscNavigationResponse(
17
16
  options: {
18
17
  buildId?: number;
19
18
  currentRouterState: AkanRouterStateV1 | null;
20
- navigate?: RscNavigate;
19
+ navigate?: (href: string, options?: { replace?: boolean; scrollToTop?: boolean }) => Promise<void> | void;
21
20
  sendRouterState?: boolean;
22
21
  shouldApplyNavigation?: () => boolean;
23
22
  },
@@ -41,6 +40,11 @@ export async function fetchRscNavigationResponse(
41
40
  if (shouldApplyNavigation()) await options.navigate?.(redirect, { replace: method !== "push", scrollToTop: true });
42
41
  return { type: "redirected", status };
43
42
  }
43
+
44
+ if (response.status === 404) {
45
+ await response.body?.cancel();
46
+ return { type: "not-found" };
47
+ }
44
48
  if (response.headers.get("X-Akan-Rsc-Partial") === "patch") {
45
49
  const patch = readAkanRscPatchMetadataResponseHeaders(response.headers);
46
50
  if (options.sendRouterState === false) throw new Error("[rscClient] RSC full fallback returned a patch response");