@zergai/ztc 0.4.0-beta.1 → 0.5.0-beta.1

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 (718) hide show
  1. package/README.md +398 -45
  2. package/RUST_THIRD_PARTY_LICENSES.txt +1080 -822
  3. package/THIRD_PARTY_NOTICES.md +273 -12
  4. package/bin/zmux-darwin-arm64 +0 -0
  5. package/bin/ztc-audio-darwin-arm64 +0 -0
  6. package/bin/ztc-capture-darwin-arm64 +0 -0
  7. package/bin/ztc-computer-darwin-arm64 +0 -0
  8. package/bin/ztc-llm-darwin-arm64 +0 -0
  9. package/bin/ztc-tts-darwin-arm64 +0 -0
  10. package/bin/ztc-tui-darwin-arm64 +0 -0
  11. package/bin/ztc-zlicky-overlay-darwin-arm64 +0 -0
  12. package/bin/zterm-darwin-arm64 +0 -0
  13. package/dist/App.js +1206 -209
  14. package/dist/agent/agent.d.ts +74 -8
  15. package/dist/agent/agent.js +1073 -184
  16. package/dist/agent/backends/account_rotation.d.ts +4 -0
  17. package/dist/agent/backends/account_rotation.js +8 -2
  18. package/dist/agent/backends/anthropic.d.ts +13 -0
  19. package/dist/agent/backends/anthropic.js +169 -28
  20. package/dist/agent/backends/claude_cli.js +18 -8
  21. package/dist/agent/backends/codex_app_server.d.ts +1 -0
  22. package/dist/agent/backends/codex_app_server.js +55 -3
  23. package/dist/agent/backends/codex_auth.d.ts +1 -0
  24. package/dist/agent/backends/codex_auth.js +67 -13
  25. package/dist/agent/backends/codex_buffered_recovery.d.ts +27 -0
  26. package/dist/agent/backends/codex_buffered_recovery.js +293 -0
  27. package/dist/agent/backends/gemini.js +3 -1
  28. package/dist/agent/backends/http_error.d.ts +26 -0
  29. package/dist/agent/backends/http_error.js +221 -0
  30. package/dist/agent/backends/index.d.ts +9 -2
  31. package/dist/agent/backends/index.js +22 -2
  32. package/dist/agent/backends/openai.d.ts +0 -6
  33. package/dist/agent/backends/openai.js +5 -2
  34. package/dist/agent/backends/openai_compatible.d.ts +5 -4
  35. package/dist/agent/backends/openai_compatible.js +26 -19
  36. package/dist/agent/backends/openai_responses.d.ts +8 -3
  37. package/dist/agent/backends/openai_responses.js +77 -33
  38. package/dist/agent/backends/provider_ids.d.ts +1 -0
  39. package/dist/agent/backends/provider_ids.js +4 -0
  40. package/dist/agent/backends/request_metrics.js +12 -2
  41. package/dist/agent/backends/types.d.ts +109 -6
  42. package/dist/agent/backends/types.js +5 -1
  43. package/dist/agent/backends/zrouter_stream.d.ts +6 -1
  44. package/dist/agent/backends/zrouter_stream.js +160 -42
  45. package/dist/agent/background_registry.d.ts +2 -0
  46. package/dist/agent/background_registry.js +1 -0
  47. package/dist/agent/claim_observation.d.ts +6 -0
  48. package/dist/agent/claim_observation.js +54 -0
  49. package/dist/agent/commands/accounts.js +46 -177
  50. package/dist/agent/commands/attention.d.ts +2 -0
  51. package/dist/agent/commands/attention.js +67 -0
  52. package/dist/agent/commands/auth.js +18 -2
  53. package/dist/agent/commands/board.d.ts +2 -0
  54. package/dist/agent/commands/board.js +169 -0
  55. package/dist/agent/commands/clipboard.js +50 -1
  56. package/dist/agent/commands/compact.js +21 -13
  57. package/dist/agent/commands/config.js +4 -1
  58. package/dist/agent/commands/context.js +6 -1
  59. package/dist/agent/commands/desktop.d.ts +2 -0
  60. package/dist/agent/commands/desktop.js +29 -0
  61. package/dist/agent/commands/effort.js +14 -6
  62. package/dist/agent/commands/environment.d.ts +3 -0
  63. package/dist/agent/commands/environment.js +109 -0
  64. package/dist/agent/commands/evidence.d.ts +2 -0
  65. package/dist/agent/commands/evidence.js +9 -0
  66. package/dist/agent/commands/fork.js +4 -3
  67. package/dist/agent/commands/goal.d.ts +33 -1
  68. package/dist/agent/commands/goal.js +174 -14
  69. package/dist/agent/commands/goal_exit.d.ts +36 -0
  70. package/dist/agent/commands/goal_exit.js +120 -0
  71. package/dist/agent/commands/help.js +3 -1
  72. package/dist/agent/commands/history.js +3 -1
  73. package/dist/agent/commands/inbox.d.ts +2 -0
  74. package/dist/agent/commands/inbox.js +148 -0
  75. package/dist/agent/commands/index.js +16 -1
  76. package/dist/agent/commands/input_mode.js +8 -6
  77. package/dist/agent/commands/job.d.ts +2 -0
  78. package/dist/agent/commands/job.js +93 -0
  79. package/dist/agent/commands/keybindings.js +4 -1
  80. package/dist/agent/commands/label.d.ts +2 -0
  81. package/dist/agent/commands/label.js +77 -0
  82. package/dist/agent/commands/layout.d.ts +2 -0
  83. package/dist/agent/commands/layout.js +20 -0
  84. package/dist/agent/commands/mirror.js +16 -1
  85. package/dist/agent/commands/model.js +12 -2
  86. package/dist/agent/commands/permissions.d.ts +3 -1
  87. package/dist/agent/commands/permissions.js +79 -89
  88. package/dist/agent/commands/plan.js +5 -15
  89. package/dist/agent/commands/profile.js +21 -2
  90. package/dist/agent/commands/provider_selection.js +20 -1
  91. package/dist/agent/commands/rename.js +1 -1
  92. package/dist/agent/commands/resources.d.ts +2 -0
  93. package/dist/agent/commands/resources.js +67 -0
  94. package/dist/agent/commands/rewind.d.ts +3 -0
  95. package/dist/agent/commands/rewind.js +16 -0
  96. package/dist/agent/commands/runbooks.d.ts +2 -0
  97. package/dist/agent/commands/runbooks.js +73 -0
  98. package/dist/agent/commands/runbooks_lazy.d.ts +2 -0
  99. package/dist/agent/commands/runbooks_lazy.js +8 -0
  100. package/dist/agent/commands/sessions.d.ts +1 -1
  101. package/dist/agent/commands/sessions.js +33 -5
  102. package/dist/agent/commands/settings.js +185 -39
  103. package/dist/agent/commands/setup.d.ts +2 -0
  104. package/dist/agent/commands/setup.js +78 -0
  105. package/dist/agent/commands/share.d.ts +2 -0
  106. package/dist/agent/commands/share.js +64 -0
  107. package/dist/agent/commands/status.js +14 -2
  108. package/dist/agent/commands/types.d.ts +99 -6
  109. package/dist/agent/commands/update.js +8 -0
  110. package/dist/agent/commands/usage.d.ts +2 -0
  111. package/dist/agent/commands/usage.js +8 -0
  112. package/dist/agent/factory.d.ts +11 -0
  113. package/dist/agent/factory.js +113 -88
  114. package/dist/agent/loop_policy.d.ts +6 -3
  115. package/dist/agent/loop_policy.js +12 -3
  116. package/dist/agent/measurement_guidance.d.ts +2 -0
  117. package/dist/agent/measurement_guidance.js +5 -0
  118. package/dist/agent/request_encoder.d.ts +8 -1
  119. package/dist/agent/request_encoder.js +95 -23
  120. package/dist/agent/runtime/benchmark_comparison.d.ts +30 -0
  121. package/dist/agent/runtime/benchmark_comparison.js +94 -0
  122. package/dist/agent/runtime/benchmark_contract.d.ts +48 -0
  123. package/dist/agent/runtime/benchmark_contract.js +90 -0
  124. package/dist/agent/runtime/checked_commands.d.ts +32 -0
  125. package/dist/agent/runtime/checked_commands.js +119 -0
  126. package/dist/agent/runtime/command_execution_policy.d.ts +26 -0
  127. package/dist/agent/runtime/command_execution_policy.js +91 -0
  128. package/dist/agent/runtime/command_jobs.d.ts +36 -18
  129. package/dist/agent/runtime/command_jobs.js +151 -13
  130. package/dist/agent/runtime/command_panes.d.ts +59 -0
  131. package/dist/agent/runtime/command_panes.js +398 -0
  132. package/dist/agent/runtime/command_wait.d.ts +19 -0
  133. package/dist/agent/runtime/command_wait.js +167 -0
  134. package/dist/agent/runtime/cpu_benchmark.d.ts +30 -0
  135. package/dist/agent/runtime/cpu_benchmark.js +126 -0
  136. package/dist/agent/runtime/delegated_evidence.d.ts +26 -0
  137. package/dist/agent/runtime/delegated_evidence.js +80 -0
  138. package/dist/agent/runtime/evidence.d.ts +127 -0
  139. package/dist/agent/runtime/evidence.js +468 -0
  140. package/dist/agent/runtime/execution_context.d.ts +7 -0
  141. package/dist/agent/runtime/execution_context.js +39 -3
  142. package/dist/agent/runtime/json_verifier_recipe.d.ts +8 -0
  143. package/dist/agent/runtime/json_verifier_recipe.js +66 -0
  144. package/dist/agent/runtime/measurements.d.ts +110 -0
  145. package/dist/agent/runtime/measurements.js +317 -0
  146. package/dist/agent/runtime/policy.d.ts +4 -0
  147. package/dist/agent/runtime/policy.js +31 -20
  148. package/dist/agent/runtime/provider_native_evidence.d.ts +20 -0
  149. package/dist/agent/runtime/provider_native_evidence.js +86 -0
  150. package/dist/agent/runtime/recovery.d.ts +2 -0
  151. package/dist/agent/runtime/recovery.js +45 -2
  152. package/dist/agent/runtime/remote_broker_transport.d.ts +10 -0
  153. package/dist/agent/runtime/remote_broker_transport.js +84 -0
  154. package/dist/agent/runtime/remote_deletion_receipts.d.ts +3 -0
  155. package/dist/agent/runtime/remote_deletion_receipts.js +43 -0
  156. package/dist/agent/runtime/remote_journal_replay.d.ts +13 -0
  157. package/dist/agent/runtime/remote_journal_replay.js +233 -0
  158. package/dist/agent/runtime/remote_mutation_journal.d.ts +25 -0
  159. package/dist/agent/runtime/remote_mutation_journal.js +208 -0
  160. package/dist/agent/runtime/remote_resource_endpoint.d.ts +7 -0
  161. package/dist/agent/runtime/remote_resource_endpoint.js +6 -0
  162. package/dist/agent/runtime/remote_resource_errors.d.ts +5 -0
  163. package/dist/agent/runtime/remote_resource_errors.js +9 -0
  164. package/dist/agent/runtime/remote_resource_script.d.ts +2 -0
  165. package/dist/agent/runtime/remote_resource_script.js +1009 -0
  166. package/dist/agent/runtime/remote_resources.d.ts +29 -0
  167. package/dist/agent/runtime/remote_resources.js +160 -0
  168. package/dist/agent/runtime/source_verification.d.ts +12 -0
  169. package/dist/agent/runtime/source_verification.js +210 -0
  170. package/dist/agent/runtime/source_verification_contract.d.ts +75 -0
  171. package/dist/agent/runtime/source_verification_contract.js +203 -0
  172. package/dist/agent/runtime/tool_checkpoints.d.ts +11 -0
  173. package/dist/agent/runtime/tool_checkpoints.js +26 -0
  174. package/dist/agent/runtime/tool_effects.d.ts +5 -0
  175. package/dist/agent/runtime/tool_progress.d.ts +12 -0
  176. package/dist/agent/runtime/tool_progress.js +76 -0
  177. package/dist/agent/runtime/tool_runtime.d.ts +16 -1
  178. package/dist/agent/runtime/tool_runtime.js +204 -10
  179. package/dist/agent/runtime/tracing.d.ts +1 -1
  180. package/dist/agent/runtime/verifier_capture.d.ts +9 -0
  181. package/dist/agent/runtime/verifier_capture.js +100 -0
  182. package/dist/agent/runtime/verifier_contract.d.ts +24 -0
  183. package/dist/agent/runtime/verifier_contract.js +41 -0
  184. package/dist/agent/subagent.d.ts +20 -10
  185. package/dist/agent/subagent.js +266 -29
  186. package/dist/agent/tool_response_directory.d.ts +24 -0
  187. package/dist/agent/tool_response_directory.js +61 -0
  188. package/dist/agent/tool_response_source.d.ts +8 -0
  189. package/dist/agent/tool_response_source.js +49 -0
  190. package/dist/agent/tool_response_store.d.ts +75 -4
  191. package/dist/agent/tool_response_store.js +583 -64
  192. package/dist/agent/tools/ask_user.d.ts +3 -1
  193. package/dist/agent/tools/ask_user.js +30 -11
  194. package/dist/agent/tools/background.js +1 -0
  195. package/dist/agent/tools/benchmark_cpu.d.ts +2 -0
  196. package/dist/agent/tools/benchmark_cpu.js +102 -0
  197. package/dist/agent/tools/compare_benchmarks.d.ts +2 -0
  198. package/dist/agent/tools/compare_benchmarks.js +53 -0
  199. package/dist/agent/tools/deferred.js +1 -0
  200. package/dist/agent/tools/delegate.js +18 -2
  201. package/dist/agent/tools/helper_requirements.d.ts +7 -0
  202. package/dist/agent/tools/helper_requirements.js +19 -0
  203. package/dist/agent/tools/index.d.ts +1 -0
  204. package/dist/agent/tools/index.js +3 -0
  205. package/dist/agent/tools/measurement_report.d.ts +22 -0
  206. package/dist/agent/tools/measurement_report.js +190 -0
  207. package/dist/agent/tools/pane.d.ts +0 -7
  208. package/dist/agent/tools/pane.js +5 -4
  209. package/dist/agent/tools/project_context.d.ts +3 -0
  210. package/dist/agent/tools/project_context.js +45 -0
  211. package/dist/agent/tools/recall_tool_response.d.ts +3 -5
  212. package/dist/agent/tools/recall_tool_response.js +19 -29
  213. package/dist/agent/tools/registry.d.ts +1 -0
  214. package/dist/agent/tools/registry.js +23 -0
  215. package/dist/agent/tools/related_sessions.d.ts +2 -0
  216. package/dist/agent/tools/related_sessions.js +156 -0
  217. package/dist/agent/tools/routine.js +13 -3
  218. package/dist/agent/tools/session_evidence.d.ts +3 -0
  219. package/dist/agent/tools/session_evidence.js +72 -0
  220. package/dist/agent/tools/shell.d.ts +4 -3
  221. package/dist/agent/tools/shell.js +174 -47
  222. package/dist/agent/tools/tool_search.js +3 -2
  223. package/dist/agent/tools/types.d.ts +28 -0
  224. package/dist/agent/tools/verify_artifact.d.ts +2 -0
  225. package/dist/agent/tools/verify_artifact.js +60 -0
  226. package/dist/agent/tools/workflow.js +1 -0
  227. package/dist/app/activity.d.ts +6 -1
  228. package/dist/app/activity.js +81 -12
  229. package/dist/app/agent_runner.d.ts +6 -1
  230. package/dist/app/agent_runner.js +34 -19
  231. package/dist/app/command_context.js +106 -10
  232. package/dist/app/controller.d.ts +15 -4
  233. package/dist/app/controller.js +29 -3
  234. package/dist/app/escape_stop.d.ts +11 -0
  235. package/dist/app/escape_stop.js +15 -0
  236. package/dist/app/liveness.d.ts +6 -4
  237. package/dist/app/liveness.js +13 -3
  238. package/dist/app/model_catalog_cache.d.ts +5 -0
  239. package/dist/app/model_catalog_cache.js +138 -0
  240. package/dist/app/ordered_transcript.js +43 -4
  241. package/dist/app/prompt_turn.d.ts +14 -0
  242. package/dist/app/prompt_turn.js +53 -0
  243. package/dist/app/recap.d.ts +3 -0
  244. package/dist/app/recap.js +9 -3
  245. package/dist/app/restart.d.ts +3 -2
  246. package/dist/app/restart.js +22 -7
  247. package/dist/app/rewind.d.ts +3 -3
  248. package/dist/app/rewind.js +3 -3
  249. package/dist/app/selection_completion.d.ts +17 -2
  250. package/dist/app/selection_completion.js +84 -9
  251. package/dist/app/session_manager.d.ts +38 -6
  252. package/dist/app/session_manager.js +263 -60
  253. package/dist/app/session_messages.d.ts +3 -0
  254. package/dist/app/session_messages.js +60 -0
  255. package/dist/app/task_scope_router.d.ts +20 -0
  256. package/dist/app/task_scope_router.js +173 -0
  257. package/dist/app/transcript_window.d.ts +2 -0
  258. package/dist/app/transcript_window.js +4 -0
  259. package/dist/app/workspace_admission_details.d.ts +3 -0
  260. package/dist/app/workspace_admission_details.js +26 -0
  261. package/dist/app/workspace_layout_controller.d.ts +11 -0
  262. package/dist/app/workspace_layout_controller.js +88 -0
  263. package/dist/app/workspace_monitor.d.ts +1 -0
  264. package/dist/app/workspace_monitor.js +216 -0
  265. package/dist/app/workspace_presets.d.ts +29 -0
  266. package/dist/app/workspace_presets.js +192 -0
  267. package/dist/attention/queue.d.ts +37 -0
  268. package/dist/attention/queue.js +183 -0
  269. package/dist/bench/rf_shared.d.ts +2 -0
  270. package/dist/board/binding.d.ts +42 -0
  271. package/dist/board/binding.js +38 -0
  272. package/dist/board/client.d.ts +42 -0
  273. package/dist/board/client.js +60 -0
  274. package/dist/cli.js +1 -1
  275. package/dist/cli_args.js +19 -17
  276. package/dist/cli_main.js +110 -13
  277. package/dist/cli_ratatui.d.ts +183 -16
  278. package/dist/cli_ratatui.js +3989 -1255
  279. package/dist/components/ActivityLine.d.ts +3 -2
  280. package/dist/components/ActivityLine.js +2 -2
  281. package/dist/components/InputArea.d.ts +19 -1
  282. package/dist/components/InputArea.js +264 -190
  283. package/dist/components/MessageList.d.ts +2 -0
  284. package/dist/components/MessageList.js +3 -1
  285. package/dist/components/SingleMessage.d.ts +2 -0
  286. package/dist/components/SingleMessage.js +4 -2
  287. package/dist/components/StatusBar.d.ts +4 -2
  288. package/dist/components/StatusBar.js +3 -1
  289. package/dist/conductor_branch.js +3 -0
  290. package/dist/config/api_retry.d.ts +6 -1
  291. package/dist/config/api_retry.js +19 -1
  292. package/dist/config/defaults.d.ts +2 -1
  293. package/dist/config/defaults.js +9 -2
  294. package/dist/config/message_display.d.ts +1 -0
  295. package/dist/config/message_display.js +17 -2
  296. package/dist/config/permissions.d.ts +21 -0
  297. package/dist/config/permissions.js +89 -0
  298. package/dist/config/resolved.d.ts +2 -2
  299. package/dist/config/types.d.ts +32 -5
  300. package/dist/config.d.ts +38 -4
  301. package/dist/config.js +290 -42
  302. package/dist/context/project_intelligence.d.ts +44 -0
  303. package/dist/context/project_intelligence.js +246 -0
  304. package/dist/desktop/cli_launch.d.ts +8 -0
  305. package/dist/desktop/cli_launch.js +6 -0
  306. package/dist/desktop/cli_shim.d.ts +8 -0
  307. package/dist/desktop/cli_shim.js +120 -0
  308. package/dist/desktop/runtime.d.ts +16 -0
  309. package/dist/desktop/runtime.js +161 -0
  310. package/dist/desktop/worker_launch.d.ts +7 -0
  311. package/dist/desktop/worker_launch.js +7 -0
  312. package/dist/diagnostics/cargo_mutants_selection.d.ts +27 -0
  313. package/dist/diagnostics/cargo_mutants_selection.js +48 -0
  314. package/dist/diagnostics/native_terminal_benchmark.d.ts +58 -0
  315. package/dist/diagnostics/native_terminal_benchmark.js +1247 -0
  316. package/dist/diagnostics/session_evidence_package.d.ts +40 -0
  317. package/dist/diagnostics/session_evidence_package.js +234 -0
  318. package/dist/diagnostics/session_export.d.ts +93 -0
  319. package/dist/diagnostics/session_export.js +634 -0
  320. package/dist/emulation/tool_adapters.js +48 -18
  321. package/dist/emulation/ztc_addendum.d.ts +1 -0
  322. package/dist/emulation/ztc_addendum.js +13 -12
  323. package/dist/environment/service_runner.d.ts +1 -0
  324. package/dist/environment/service_runner.js +68 -0
  325. package/dist/environment/store.d.ts +120 -0
  326. package/dist/environment/store.js +387 -0
  327. package/dist/events.d.ts +40 -1
  328. package/dist/events.js +10 -17
  329. package/dist/goal_contract.d.ts +25 -0
  330. package/dist/goal_contract.js +44 -0
  331. package/dist/headless.d.ts +31 -0
  332. package/dist/headless.js +578 -70
  333. package/dist/headless_cli.js +8 -0
  334. package/dist/headless_cli_args.d.ts +1 -0
  335. package/dist/headless_cli_args.js +1 -0
  336. package/dist/intake/cli.d.ts +1 -0
  337. package/dist/intake/cli.js +33 -0
  338. package/dist/intake/format.d.ts +2 -0
  339. package/dist/intake/format.js +14 -0
  340. package/dist/intake/notifications.d.ts +16 -0
  341. package/dist/intake/notifications.js +132 -0
  342. package/dist/intake/store.d.ts +56 -0
  343. package/dist/intake/store.js +238 -0
  344. package/dist/library.d.ts +8 -0
  345. package/dist/library.js +19 -10
  346. package/dist/mcp/client.d.ts +1 -0
  347. package/dist/mcp/client.js +20 -0
  348. package/dist/modes/builtin/plan.yaml +2 -2
  349. package/dist/modes/handlers.js +1 -1
  350. package/dist/onboarding/first_run.d.ts +3 -0
  351. package/dist/onboarding/first_run.js +33 -25
  352. package/dist/onboarding/setup.d.ts +32 -0
  353. package/dist/onboarding/setup.js +133 -0
  354. package/dist/onboarding/setup_agent_health.d.ts +17 -0
  355. package/dist/onboarding/setup_agent_health.js +79 -0
  356. package/dist/onboarding/setup_environment.d.ts +66 -0
  357. package/dist/onboarding/setup_environment.js +219 -0
  358. package/dist/onboarding/setup_workspace.d.ts +17 -0
  359. package/dist/onboarding/setup_workspace.js +129 -0
  360. package/dist/optimize/adapters/index.d.ts +4 -1
  361. package/dist/optimize/adapters/index.js +7 -0
  362. package/dist/optimize/adapters/kernelbench.js +14 -5
  363. package/dist/optimize/adapters/popcorn.js +3 -2
  364. package/dist/optimize/adapters/profile_benchmark.js +13 -7
  365. package/dist/optimize/adapters/rfbench.js +25 -14
  366. package/dist/optimize/adapters/types.d.ts +3 -0
  367. package/dist/optimize/adapters/zergpod.js +5 -2
  368. package/dist/optimize/baseline.js +10 -21
  369. package/dist/optimize/branch.js +9 -12
  370. package/dist/optimize/combine.js +2 -3
  371. package/dist/optimize/executor.js +34 -48
  372. package/dist/optimize/measurements.d.ts +55 -0
  373. package/dist/optimize/measurements.js +173 -0
  374. package/dist/optimize/results.d.ts +1 -0
  375. package/dist/optimize/results.js +11 -33
  376. package/dist/optimize/tge.js +2 -1
  377. package/dist/panes/initial_input.d.ts +19 -0
  378. package/dist/panes/initial_input.js +206 -0
  379. package/dist/panes/labels.d.ts +16 -0
  380. package/dist/panes/labels.js +42 -0
  381. package/dist/panes/model_catalog.d.ts +3 -3
  382. package/dist/panes/model_catalog.js +28 -4
  383. package/dist/panes/pane_registry.js +6 -2
  384. package/dist/panes/types.d.ts +3 -0
  385. package/dist/panes/ztc_launch.js +19 -0
  386. package/dist/plugin/optimization.d.ts +2 -0
  387. package/dist/plugin/optimization.js +1 -0
  388. package/dist/plugin/runtime.d.ts +2 -0
  389. package/dist/plugin/simulation.d.ts +6 -1
  390. package/dist/plugin/simulation_contract.d.ts +836 -1
  391. package/dist/plugin/simulation_documents.d.ts +22 -0
  392. package/dist/plugin/simulation_documents.js +1 -0
  393. package/dist/plugin/simulation_interventions.d.ts +103 -0
  394. package/dist/plugin/simulation_interventions.js +1 -0
  395. package/dist/plugin/simulation_living.d.ts +1 -0
  396. package/dist/plugin/simulation_living.js +3 -0
  397. package/dist/plugin/simulation_meetings.d.ts +121 -0
  398. package/dist/plugin/simulation_meetings.js +1 -0
  399. package/dist/plugin/simulation_story_review.d.ts +111 -0
  400. package/dist/plugin/simulation_story_review.js +1 -0
  401. package/dist/plugin/simulation_storyteller.d.ts +91 -0
  402. package/dist/plugin/simulation_storyteller.js +1 -0
  403. package/dist/plugin/simulation_structured.d.ts +2 -0
  404. package/dist/plugin/simulation_structured.js +2 -0
  405. package/dist/plugin/simulation_toolkit.d.ts +21 -0
  406. package/dist/plugin/simulation_toolkit.js +24 -0
  407. package/dist/prompts/tool_delegate_task.j2 +1 -1
  408. package/dist/remote-broker/Dockerfile +10 -0
  409. package/dist/remote-broker/archive.py +1227 -0
  410. package/dist/remote-broker/cutover.py +761 -0
  411. package/dist/remote-broker/requirements.txt +5 -0
  412. package/dist/remote-broker/resources.json +6 -0
  413. package/dist/remote-broker/resources.write-staging.example.json +18 -0
  414. package/dist/remote-broker/retained.py +686 -0
  415. package/dist/remote-broker/retained_cleanup.py +550 -0
  416. package/dist/remote-broker/server.py +648 -0
  417. package/dist/remote-broker/worker.py +1007 -0
  418. package/dist/router_auth.d.ts +31 -0
  419. package/dist/router_auth.js +155 -9
  420. package/dist/runbooks/catalog.d.ts +3 -0
  421. package/dist/runbooks/catalog.js +26 -0
  422. package/dist/runbooks/library.d.ts +11 -0
  423. package/dist/runbooks/library.js +95 -0
  424. package/dist/runbooks/package.d.ts +43 -0
  425. package/dist/runbooks/package.js +102 -0
  426. package/dist/session.d.ts +65 -13
  427. package/dist/session.js +548 -43
  428. package/dist/session_handoff.d.ts +25 -0
  429. package/dist/session_handoff.js +322 -0
  430. package/dist/session_handoff_contract.d.ts +89 -0
  431. package/dist/session_handoff_contract.js +179 -0
  432. package/dist/session_media.d.ts +41 -0
  433. package/dist/session_media.js +357 -0
  434. package/dist/session_ownership.d.ts +16 -0
  435. package/dist/session_ownership.js +221 -0
  436. package/dist/session_public.d.ts +10 -2
  437. package/dist/session_public.js +6 -1
  438. package/dist/simulation/dynamic_history.d.ts +42 -0
  439. package/dist/simulation/dynamic_history.js +173 -0
  440. package/dist/simulation/engines/swarm/pane_manager.js +7 -6
  441. package/dist/simulation/inference.d.ts +3 -1
  442. package/dist/simulation/inference.js +19 -1
  443. package/dist/simulation/intervention_generation.d.ts +27 -0
  444. package/dist/simulation/intervention_generation.js +246 -0
  445. package/dist/simulation/intervention_material.d.ts +4 -0
  446. package/dist/simulation/intervention_material.js +81 -0
  447. package/dist/simulation/living/context.d.ts +3130 -0
  448. package/dist/simulation/living/context.js +944 -0
  449. package/dist/simulation/living/definer.d.ts +12 -0
  450. package/dist/simulation/living/definer.js +223 -0
  451. package/dist/simulation/living/definition.d.ts +257 -0
  452. package/dist/simulation/living/definition.js +341 -0
  453. package/dist/simulation/living/frame.d.ts +259 -0
  454. package/dist/simulation/living/frame.js +223 -0
  455. package/dist/simulation/living/identifiers.d.ts +2 -0
  456. package/dist/simulation/living/identifiers.js +12 -0
  457. package/dist/simulation/living/index.d.ts +15 -0
  458. package/dist/simulation/living/index.js +15 -0
  459. package/dist/simulation/living/inference.d.ts +219 -0
  460. package/dist/simulation/living/inference.js +576 -0
  461. package/dist/simulation/living/mechanics.d.ts +54 -0
  462. package/dist/simulation/living/mechanics.js +588 -0
  463. package/dist/simulation/living/model-input.d.ts +25 -0
  464. package/dist/simulation/living/model-input.js +215 -0
  465. package/dist/simulation/living/open-world.d.ts +257 -0
  466. package/dist/simulation/living/open-world.js +102 -0
  467. package/dist/simulation/living/projection.d.ts +7 -0
  468. package/dist/simulation/living/projection.js +31 -0
  469. package/dist/simulation/living/recall.d.ts +17 -0
  470. package/dist/simulation/living/recall.js +25 -0
  471. package/dist/simulation/living/reduce.d.ts +15 -0
  472. package/dist/simulation/living/reduce.js +1853 -0
  473. package/dist/simulation/living/replay.d.ts +6 -0
  474. package/dist/simulation/living/replay.js +22 -0
  475. package/dist/simulation/living/runtime.d.ts +140 -0
  476. package/dist/simulation/living/runtime.js +3020 -0
  477. package/dist/simulation/living/shared-kinds.d.ts +24 -0
  478. package/dist/simulation/living/shared-kinds.js +96 -0
  479. package/dist/simulation/living/types.d.ts +2785 -0
  480. package/dist/simulation/living/types.js +669 -0
  481. package/dist/simulation/llm.d.ts +3 -1
  482. package/dist/simulation/llm.js +90 -30
  483. package/dist/simulation/memory/embedding.d.ts +1 -1
  484. package/dist/simulation/memory/embedding.js +9 -3
  485. package/dist/simulation/memory/filesystem.d.ts +2 -0
  486. package/dist/simulation/memory/filesystem.js +5 -1
  487. package/dist/simulation/memory/filesystem_file_tree.d.ts +4 -1
  488. package/dist/simulation/memory/filesystem_file_tree.js +41 -10
  489. package/dist/simulation/memory/filesystem_invariants.js +1 -2
  490. package/dist/simulation/memory/filesystem_types.d.ts +1 -0
  491. package/dist/simulation/memory/memory.d.ts +2 -0
  492. package/dist/simulation/memory/memory.js +5 -1
  493. package/dist/simulation/orchestration/intent.js +0 -2
  494. package/dist/simulation/orchestration/lifecycle.js +0 -2
  495. package/dist/simulation/plugin_host.d.ts +25 -1
  496. package/dist/simulation/plugin_host.js +334 -17
  497. package/dist/simulation/session_documents.d.ts +20 -0
  498. package/dist/simulation/session_documents.js +62 -0
  499. package/dist/simulation/session_input_validation.d.ts +43 -0
  500. package/dist/simulation/session_input_validation.js +364 -0
  501. package/dist/simulation/session_inputs.d.ts +32 -0
  502. package/dist/simulation/session_inputs.js +154 -0
  503. package/dist/simulation/telemetry.d.ts +11 -14
  504. package/dist/simulation/telemetry.js +177 -54
  505. package/dist/simulation/toolkit/bounded_turns.d.ts +13 -0
  506. package/dist/simulation/toolkit/bounded_turns.js +80 -0
  507. package/dist/simulation/toolkit/dynamic_agents.d.ts +25 -0
  508. package/dist/simulation/toolkit/dynamic_agents.js +218 -0
  509. package/dist/simulation/toolkit/dynamic_digest.d.ts +1 -0
  510. package/dist/simulation/toolkit/dynamic_digest.js +8 -0
  511. package/dist/simulation/toolkit/dynamic_documents.d.ts +7 -0
  512. package/dist/simulation/toolkit/dynamic_documents.js +71 -0
  513. package/dist/simulation/toolkit/dynamic_driver.d.ts +8 -0
  514. package/dist/simulation/toolkit/dynamic_driver.js +269 -0
  515. package/dist/simulation/toolkit/dynamic_game.d.ts +53 -0
  516. package/dist/simulation/toolkit/dynamic_game.js +805 -0
  517. package/dist/simulation/toolkit/dynamic_knowledge.d.ts +15 -0
  518. package/dist/simulation/toolkit/dynamic_knowledge.js +91 -0
  519. package/dist/simulation/toolkit/dynamic_mechanics.d.ts +22 -0
  520. package/dist/simulation/toolkit/dynamic_mechanics.js +910 -0
  521. package/dist/simulation/toolkit/dynamic_meetings.d.ts +239 -0
  522. package/dist/simulation/toolkit/dynamic_meetings.js +350 -0
  523. package/dist/simulation/toolkit/dynamic_progress.d.ts +131 -0
  524. package/dist/simulation/toolkit/dynamic_progress.js +214 -0
  525. package/dist/simulation/toolkit/dynamic_projection.d.ts +9 -0
  526. package/dist/simulation/toolkit/dynamic_projection.js +219 -0
  527. package/dist/simulation/toolkit/dynamic_runtime.d.ts +412 -0
  528. package/dist/simulation/toolkit/dynamic_runtime.js +6536 -0
  529. package/dist/simulation/toolkit/dynamic_state.d.ts +111 -0
  530. package/dist/simulation/toolkit/dynamic_state.js +1967 -0
  531. package/dist/simulation/toolkit/dynamic_story_review.d.ts +508 -0
  532. package/dist/simulation/toolkit/dynamic_story_review.js +333 -0
  533. package/dist/simulation/toolkit/dynamic_storyteller.d.ts +77 -0
  534. package/dist/simulation/toolkit/dynamic_storyteller.js +114 -0
  535. package/dist/simulation/toolkit/dynamic_storyteller_runtime.d.ts +26 -0
  536. package/dist/simulation/toolkit/dynamic_storyteller_runtime.js +126 -0
  537. package/dist/simulation/toolkit/dynamic_world.d.ts +22 -0
  538. package/dist/simulation/toolkit/dynamic_world.js +377 -0
  539. package/dist/simulation/toolkit/structured_output.d.ts +5 -0
  540. package/dist/simulation/toolkit/structured_output.js +321 -0
  541. package/dist/simulation/types/world.d.ts +2 -0
  542. package/dist/simulation/world/artifact_store.js +1 -1
  543. package/dist/simulation/world/memory_manager.d.ts +5 -0
  544. package/dist/simulation/world/memory_manager.js +17 -2
  545. package/dist/simulation/world/state.d.ts +3 -2
  546. package/dist/simulation/world/state.js +15 -5
  547. package/dist/skills/bundled/measurement-validation/SKILL.md +144 -0
  548. package/dist/terminal_attach.d.ts +1 -0
  549. package/dist/terminal_attach.js +113 -0
  550. package/dist/tool_progress.d.ts +3 -0
  551. package/dist/tool_progress.js +27 -0
  552. package/dist/types.d.ts +145 -10
  553. package/dist/types.js +3 -0
  554. package/dist/ui/core/input.d.ts +3 -0
  555. package/dist/ui/core/input_segments.d.ts +18 -1
  556. package/dist/ui/core/input_segments.js +131 -47
  557. package/dist/ui/core/input_state.d.ts +12 -0
  558. package/dist/ui/core/layout_yoga.d.ts +1 -1
  559. package/dist/ui/core/turn_metadata.d.ts +5 -0
  560. package/dist/ui/core/turn_metadata.js +22 -0
  561. package/dist/ui/ink/render.d.ts +2 -1
  562. package/dist/ui/ink/render.js +6 -5
  563. package/dist/ui/ratatui/headless_pane_manager.d.ts +14 -1
  564. package/dist/ui/ratatui/headless_pane_manager.js +293 -104
  565. package/dist/ui/ratatui/index.d.ts +1 -0
  566. package/dist/ui/ratatui/input.d.ts +4 -0
  567. package/dist/ui/ratatui/input.js +15 -0
  568. package/dist/ui/ratatui/ipc_path.d.ts +2 -0
  569. package/dist/ui/ratatui/ipc_path.js +29 -1
  570. package/dist/ui/ratatui/mux_persistence.d.ts +3 -1
  571. package/dist/ui/ratatui/mux_persistence.js +139 -1
  572. package/dist/ui/ratatui/pane_relay.d.ts +1 -1
  573. package/dist/ui/ratatui/pane_relay.js +55 -27
  574. package/dist/ui/ratatui/process.d.ts +17 -1
  575. package/dist/ui/ratatui/process.js +80 -7
  576. package/dist/ui/ratatui/protocol.d.ts +236 -1
  577. package/dist/ui/ratatui/protocol.js +90 -0
  578. package/dist/ui/scrollback.d.ts +2 -1
  579. package/dist/ui/scrollback.js +9 -4
  580. package/dist/ui/stream_typewriter.d.ts +8 -3
  581. package/dist/ui/stream_typewriter.js +30 -1
  582. package/dist/ui/streaming_scrollback.d.ts +1 -0
  583. package/dist/ui/streaming_scrollback.js +1 -1
  584. package/dist/ui/transcript_render_cache.js +10 -0
  585. package/dist/ui/views/activity_line.d.ts +5 -3
  586. package/dist/ui/views/activity_line.js +65 -7
  587. package/dist/ui/views/app.d.ts +6 -3
  588. package/dist/ui/views/app.js +17 -6
  589. package/dist/ui/views/completion_menu.js +10 -5
  590. package/dist/ui/views/input_area.d.ts +7 -3
  591. package/dist/ui/views/input_area.js +15 -9
  592. package/dist/ui/views/message_list.d.ts +4 -1
  593. package/dist/ui/views/message_list.js +89 -19
  594. package/dist/ui/views/queue_panel.d.ts +3 -1
  595. package/dist/ui/views/queue_panel.js +9 -2
  596. package/dist/ui/views/status_bar.d.ts +4 -2
  597. package/dist/ui/views/status_bar.js +28 -13
  598. package/dist/ui/views/theme.d.ts +2 -0
  599. package/dist/ui/views/theme.js +2 -0
  600. package/dist/ui/widgets/color_panel.js +18 -0
  601. package/dist/ui/widgets/form.js +8 -0
  602. package/dist/ui/widgets/log_view.js +7 -0
  603. package/dist/ui/widgets/navigator_panel.js +8 -0
  604. package/dist/ui/widgets/prompt_viewer.js +2 -0
  605. package/dist/ui/widgets/questionnaire.d.ts +2 -0
  606. package/dist/ui/widgets/questionnaire.js +79 -16
  607. package/dist/ui/widgets/resume_panel.d.ts +2 -0
  608. package/dist/ui/widgets/resume_panel.js +26 -15
  609. package/dist/ui/widgets/rewind_panel.d.ts +2 -2
  610. package/dist/ui/widgets/rewind_panel.js +4 -2
  611. package/dist/ui/widgets/select.js +16 -27
  612. package/dist/ui/widgets/settings_panel.js +16 -0
  613. package/dist/ui/widgets/status_line_panel.d.ts +1 -0
  614. package/dist/ui/widgets/status_line_panel.js +30 -4
  615. package/dist/ui/widgets/text_input.d.ts +2 -0
  616. package/dist/ui/widgets/text_input.js +15 -1
  617. package/dist/ui/widgets/types.d.ts +2 -0
  618. package/dist/usage_projection.d.ts +24 -0
  619. package/dist/usage_projection.js +130 -0
  620. package/dist/usage_snapshot.d.ts +36 -0
  621. package/dist/usage_snapshot.js +131 -0
  622. package/dist/utils/assistant_message.d.ts +2 -0
  623. package/dist/utils/assistant_message.js +5 -0
  624. package/dist/utils/atomic_write.d.ts +6 -2
  625. package/dist/utils/atomic_write.js +29 -4
  626. package/dist/utils/checked_shell.d.ts +25 -0
  627. package/dist/utils/checked_shell.js +107 -0
  628. package/dist/utils/compaction.d.ts +4 -1
  629. package/dist/utils/compaction.js +31 -7
  630. package/dist/utils/context.d.ts +4 -4
  631. package/dist/utils/context.js +14 -12
  632. package/dist/utils/deepseek.d.ts +2 -2
  633. package/dist/utils/deepseek.js +13 -5
  634. package/dist/utils/ephemeral.js +4 -0
  635. package/dist/utils/ephemeral_tools.d.ts +18 -0
  636. package/dist/utils/ephemeral_tools.js +97 -0
  637. package/dist/utils/jev_client.d.ts +4 -0
  638. package/dist/utils/jev_client.js +15 -0
  639. package/dist/utils/model_cache.d.ts +15 -0
  640. package/dist/utils/model_cache.js +143 -0
  641. package/dist/utils/models.d.ts +4 -2
  642. package/dist/utils/models.js +12 -16
  643. package/dist/utils/reasoning.d.ts +8 -1
  644. package/dist/utils/reasoning.js +31 -11
  645. package/dist/utils/router_catalog.d.ts +49 -0
  646. package/dist/utils/router_catalog.js +271 -0
  647. package/dist/utils/sandbox.d.ts +9 -0
  648. package/dist/utils/sandbox.js +118 -15
  649. package/dist/utils/shell.d.ts +7 -0
  650. package/dist/utils/shell.js +98 -34
  651. package/dist/utils/subprocess_env.d.ts +3 -0
  652. package/dist/utils/subprocess_env.js +27 -1
  653. package/dist/web/accounts_mirror.d.ts +3 -1
  654. package/dist/web/accounts_mirror.js +13 -9
  655. package/dist/web/child_publication.d.ts +17 -0
  656. package/dist/web/child_publication.js +45 -0
  657. package/dist/web/mirror_authenticator.d.ts +31 -11
  658. package/dist/web/mirror_authenticator.js +67 -17
  659. package/dist/web/mirror_client.d.ts +31 -4
  660. package/dist/web/mirror_client.js +189 -23
  661. package/dist/web/mirror_stream.d.ts +84 -22
  662. package/dist/web/mirror_stream.js +676 -95
  663. package/dist/web/observer_query_redaction.d.ts +6 -0
  664. package/dist/web/observer_query_redaction.js +58 -0
  665. package/dist/web/pane_registry.d.ts +2 -0
  666. package/dist/web/pane_registry.js +86 -22
  667. package/dist/web/tool_image.d.ts +6 -0
  668. package/dist/web/tool_image.js +17 -0
  669. package/dist/web/view_plugin.d.ts +14 -0
  670. package/dist/web/view_plugin.js +23 -1
  671. package/dist/worker/executor.js +31 -12
  672. package/dist/worker/index.d.ts +1 -0
  673. package/dist/worker/toolsets.js +3 -1
  674. package/dist/worker/types.d.ts +12 -1
  675. package/dist/workflows/registry.js +1 -0
  676. package/dist/workflows/registry_handle.d.ts +2 -0
  677. package/dist/workflows/runtime.d.ts +2 -0
  678. package/dist/workflows/runtime.js +1 -0
  679. package/dist/workspace_agent.d.ts +7 -0
  680. package/dist/workspace_agent.js +36 -0
  681. package/dist/workspace_collision.d.ts +76 -0
  682. package/dist/workspace_collision.js +688 -0
  683. package/dist/workspace_layout.d.ts +18 -0
  684. package/dist/workspace_layout.js +121 -0
  685. package/dist/workspace_runtime.d.ts +44 -0
  686. package/dist/workspace_runtime.js +82 -0
  687. package/dist/workspace_session_context.d.ts +62 -0
  688. package/dist/workspace_session_context.js +160 -0
  689. package/dist/zlm-embed.mjs +32518 -9615
  690. package/dist/zlm.js +1 -0
  691. package/node_modules/@zerg/model-contracts/LICENSE.md +375 -0
  692. package/node_modules/@zerg/model-contracts/README.md +90 -0
  693. package/node_modules/@zerg/model-contracts/index.d.ts +20 -0
  694. package/node_modules/@zerg/model-contracts/index.js +223 -0
  695. package/node_modules/@zerg/model-contracts/package.json +8 -0
  696. package/node_modules/glob/node_modules/brace-expansion/index.js +78 -22
  697. package/node_modules/glob/node_modules/brace-expansion/package.json +1 -1
  698. package/node_modules/readdir-glob/node_modules/brace-expansion/index.js +78 -22
  699. package/node_modules/readdir-glob/node_modules/brace-expansion/package.json +1 -1
  700. package/package.json +45 -24
  701. package/packages/model-contracts/LICENSE.md +375 -0
  702. package/packages/model-contracts/README.md +90 -0
  703. package/packages/model-contracts/index.d.ts +20 -0
  704. package/packages/model-contracts/index.js +223 -0
  705. package/packages/model-contracts/package.json +8 -0
  706. package/remote-broker/Dockerfile +10 -0
  707. package/remote-broker/README.md +308 -0
  708. package/remote-broker/archive.py +1227 -0
  709. package/remote-broker/cutover.py +761 -0
  710. package/remote-broker/requirements.txt +5 -0
  711. package/remote-broker/resources.example.json +6 -0
  712. package/remote-broker/resources.write-staging.example.json +18 -0
  713. package/remote-broker/retained.py +686 -0
  714. package/remote-broker/retained_cleanup.py +550 -0
  715. package/remote-broker/server.py +648 -0
  716. package/scripts/build-remote-broker.mjs +13 -0
  717. package/scripts/ensure-local-packages.mjs +6 -0
  718. package/scripts/node-pty-helpers.mjs +103 -0
@@ -0,0 +1,3130 @@
1
+ import { clockLabel, type LivingPerson, type LivingState } from './types.js';
2
+ export declare const PRESSING_MINUTES = 240;
3
+ export declare const PRESSING_IMPORTANCE = 6;
4
+ export declare const MIND_SLICE = 8;
5
+ export declare const SCENE_SLICE = 32;
6
+ export { clockLabel };
7
+ export declare function personLabel(state: LivingState, personId: string): string;
8
+ export declare function describeScene(state: LivingState, placeId: string, viewerId: string | null, kept?: ReadonlySet<string>): {
9
+ id: string;
10
+ name: string;
11
+ kind: "private" | "transit" | "room" | "outdoors";
12
+ summary: string;
13
+ conditions: string[];
14
+ people: {
15
+ holding: string[];
16
+ mood: null;
17
+ condition: string | null;
18
+ doing: string | null;
19
+ held: null;
20
+ incapacitated: boolean;
21
+ arrived?: string | undefined;
22
+ id: string;
23
+ name: string;
24
+ role: string;
25
+ pronouns: string;
26
+ summary: string;
27
+ }[];
28
+ objects: {
29
+ refereeOnly?: {
30
+ when: string;
31
+ what: string;
32
+ } | undefined;
33
+ id: string;
34
+ name: string;
35
+ summary: string;
36
+ condition: string;
37
+ singlePersonMovable: boolean;
38
+ ownerName: string | null;
39
+ }[];
40
+ entities: {
41
+ refereeOnly?: {
42
+ when: string;
43
+ what: string;
44
+ } | undefined;
45
+ properties: {
46
+ [k: string]: string | number | boolean | undefined;
47
+ };
48
+ relations: {
49
+ [k: string]: string;
50
+ };
51
+ members?: string[] | undefined;
52
+ condition?: string | undefined;
53
+ holderId?: string | null | undefined;
54
+ id: string;
55
+ kindId: string;
56
+ kindName: string;
57
+ name: string;
58
+ }[];
59
+ exits: {
60
+ id: string;
61
+ name: string;
62
+ }[];
63
+ };
64
+ export declare function recentEventsAt(state: LivingState, placeId: string, limit: number, viewerId: string | null, exceptSeq?: number | null): {
65
+ at: string;
66
+ summary: string;
67
+ }[];
68
+ export declare function recentImportant(state: LivingState, limit: number, shownHere?: ReadonlySet<number>): {
69
+ at: string;
70
+ place: string | null;
71
+ summary: string;
72
+ witnesses: string[];
73
+ }[];
74
+ export declare function openConversationAt(state: LivingState, placeId: string, participantId: string): {
75
+ id: string;
76
+ placeId: string;
77
+ participantIds: string[];
78
+ startedAt: number;
79
+ endedAt: number | null;
80
+ lines: {
81
+ seq: number;
82
+ at: number;
83
+ speakerId: string;
84
+ text: string;
85
+ toIds: string[];
86
+ }[];
87
+ } | null;
88
+ export declare function joinedPlaceSeq(state: LivingState, personId: string, placeId: string): number;
89
+ export declare const RECENT_LINES_MINUTES = 180;
90
+ export declare function recentLinesBy(state: LivingState, personId: string, limit: number): {
91
+ seq: number;
92
+ at: number;
93
+ speakerId: string;
94
+ text: string;
95
+ toIds: string[];
96
+ }[];
97
+ export declare function conversationLines(state: LivingState, placeId: string, participantId: string, limit: number): {
98
+ speaker: string;
99
+ speakerId: string;
100
+ to: string[];
101
+ text: string;
102
+ }[];
103
+ export declare function worldDirectory(state: LivingState, placeId: string): {
104
+ factsAsOf?: string | undefined;
105
+ elsewhere: {
106
+ id: string;
107
+ name: string;
108
+ }[];
109
+ objects: {
110
+ id: string;
111
+ name: string;
112
+ placeId: string | null;
113
+ holderId: string | null;
114
+ ownerId: string | null;
115
+ condition: string;
116
+ singlePersonMovable: boolean;
117
+ }[];
118
+ tensions: {
119
+ participants: {
120
+ id: string;
121
+ name: string;
122
+ }[];
123
+ openedBy?: string | undefined;
124
+ id: string;
125
+ title: string;
126
+ summary: string;
127
+ }[];
128
+ facts: string[];
129
+ away?: {
130
+ id: string;
131
+ name: string;
132
+ where: string;
133
+ }[] | undefined;
134
+ places: {
135
+ id: string;
136
+ name: string;
137
+ kind: "private" | "transit" | "room" | "outdoors";
138
+ connections: string[];
139
+ conditions: string[];
140
+ }[];
141
+ people: {
142
+ id: string;
143
+ name: string;
144
+ role: string;
145
+ pronouns: string;
146
+ placeId: string;
147
+ isPlayer: boolean;
148
+ incapacitated: boolean;
149
+ }[];
150
+ };
151
+ export declare function gameMasterAttemptInput(state: LivingState, actorId: string, attempt: string, previousErrors?: readonly string[], _fitted?: boolean, finishing?: {
152
+ begunAt: string;
153
+ changed: readonly string[];
154
+ }, focusIds?: readonly string[]): {
155
+ previousErrors?: string[] | undefined;
156
+ requests: {
157
+ id: string;
158
+ toId: string;
159
+ topic: string;
160
+ status: "done" | "open" | "refused" | "answered";
161
+ }[];
162
+ recentHere: {
163
+ at: string;
164
+ summary: string;
165
+ }[];
166
+ recentSerious: {
167
+ at: string;
168
+ place: string | null;
169
+ summary: string;
170
+ witnesses: string[];
171
+ }[];
172
+ world: {
173
+ factsAsOf?: string | undefined;
174
+ elsewhere: {
175
+ id: string;
176
+ name: string;
177
+ }[];
178
+ objects: {
179
+ id: string;
180
+ name: string;
181
+ placeId: string | null;
182
+ holderId: string | null;
183
+ ownerId: string | null;
184
+ condition: string;
185
+ singlePersonMovable: boolean;
186
+ }[];
187
+ tensions: {
188
+ participants: {
189
+ id: string;
190
+ name: string;
191
+ }[];
192
+ openedBy?: string | undefined;
193
+ id: string;
194
+ title: string;
195
+ summary: string;
196
+ }[];
197
+ facts: string[];
198
+ away?: {
199
+ id: string;
200
+ name: string;
201
+ where: string;
202
+ }[] | undefined;
203
+ places: {
204
+ id: string;
205
+ name: string;
206
+ kind: "private" | "transit" | "room" | "outdoors";
207
+ connections: string[];
208
+ conditions: string[];
209
+ }[];
210
+ people: {
211
+ id: string;
212
+ name: string;
213
+ role: string;
214
+ pronouns: string;
215
+ placeId: string;
216
+ isPlayer: boolean;
217
+ incapacitated: boolean;
218
+ }[];
219
+ };
220
+ possiblePerceiverIds: string[];
221
+ presentCharacterIds: string[];
222
+ textWrites?: "add";
223
+ kinds: {
224
+ id: string;
225
+ name: string;
226
+ meaning: string;
227
+ properties: {
228
+ id: string;
229
+ type: "number" | "id" | "flag" | "text" | "level" | "time";
230
+ requiredOnCreate?: boolean | undefined;
231
+ }[];
232
+ relations: {
233
+ id: string;
234
+ targetKindId: string;
235
+ }[];
236
+ mechanics: ({
237
+ kind: "spread";
238
+ propertyId: string;
239
+ relationId: string;
240
+ } | {
241
+ kind: "signal";
242
+ propertyId: string;
243
+ relationId: string;
244
+ channel: string;
245
+ } | {
246
+ kind: "change";
247
+ propertyId: string;
248
+ deltaPerMinute: number;
249
+ onEvent?: {
250
+ kind: "move";
251
+ subjectPropertyId: string;
252
+ value: string | number | boolean;
253
+ } | undefined;
254
+ } | {
255
+ kind: "trigger";
256
+ propertyId: string;
257
+ threshold: number;
258
+ direction: "at-least" | "at-most";
259
+ intent: string;
260
+ delayMinutes: number;
261
+ minImportance?: number | undefined;
262
+ } | {
263
+ kind: "gate";
264
+ propertyId: string;
265
+ subjectPropertyId: string;
266
+ blockedActionKinds: string[];
267
+ atLeast?: "none" | "low" | "medium" | "high" | undefined;
268
+ } | {
269
+ kind: "norm";
270
+ actionKind: string;
271
+ roleId: string | null;
272
+ forbidden: boolean;
273
+ } | {
274
+ kind: "authority";
275
+ roleId: string;
276
+ relationId: string | null;
277
+ propertyId: string | null;
278
+ })[];
279
+ }[];
280
+ promises?: undefined;
281
+ deadlines?: {
282
+ what: string;
283
+ due: string;
284
+ minutesLeft?: number;
285
+ minutesPast?: number;
286
+ outcome?: string;
287
+ averted?: boolean;
288
+ }[];
289
+ money?: undefined;
290
+ scene: {
291
+ id: string;
292
+ name: string;
293
+ kind: "private" | "transit" | "room" | "outdoors";
294
+ summary: string;
295
+ conditions: string[];
296
+ people: {
297
+ holding: string[];
298
+ mood: null;
299
+ condition: string | null;
300
+ doing: string | null;
301
+ held: null;
302
+ incapacitated: boolean;
303
+ arrived?: string | undefined;
304
+ id: string;
305
+ name: string;
306
+ role: string;
307
+ pronouns: string;
308
+ summary: string;
309
+ }[];
310
+ objects: {
311
+ refereeOnly?: {
312
+ when: string;
313
+ what: string;
314
+ } | undefined;
315
+ id: string;
316
+ name: string;
317
+ summary: string;
318
+ condition: string;
319
+ singlePersonMovable: boolean;
320
+ ownerName: string | null;
321
+ }[];
322
+ entities: {
323
+ refereeOnly?: {
324
+ when: string;
325
+ what: string;
326
+ } | undefined;
327
+ properties: {
328
+ [k: string]: string | number | boolean | undefined;
329
+ };
330
+ relations: {
331
+ [k: string]: string;
332
+ };
333
+ members?: string[] | undefined;
334
+ condition?: string | undefined;
335
+ holderId?: string | null | undefined;
336
+ id: string;
337
+ kindId: string;
338
+ kindName: string;
339
+ name: string;
340
+ }[];
341
+ exits: {
342
+ id: string;
343
+ name: string;
344
+ }[];
345
+ };
346
+ finishing?: {
347
+ begunAt: string;
348
+ changed: readonly string[];
349
+ note: string;
350
+ } | undefined;
351
+ phase: string;
352
+ clock: string;
353
+ clockMinutes: number;
354
+ setting: {
355
+ messages?: string;
356
+ world: string;
357
+ opening: {
358
+ asOf?: string | undefined;
359
+ title: string;
360
+ situation: string;
361
+ stakes: string;
362
+ };
363
+ };
364
+ actor: {
365
+ votes?: {
366
+ id: string;
367
+ question: string;
368
+ needed: number | null;
369
+ closes: string | null;
370
+ count: string | null;
371
+ }[];
372
+ id: string;
373
+ name: string;
374
+ role: string;
375
+ pronouns: string;
376
+ isPlayer: boolean;
377
+ money: number | null;
378
+ mood: string;
379
+ incapacitated: boolean;
380
+ holding: {
381
+ id: string;
382
+ name: string;
383
+ }[];
384
+ };
385
+ narrationVoice: string;
386
+ attempt: string;
387
+ actorSaid: {
388
+ at: string;
389
+ text: string;
390
+ }[];
391
+ } | {
392
+ previousErrors?: string[] | undefined;
393
+ requests: {
394
+ id: string;
395
+ toId: string;
396
+ topic: string;
397
+ status: "done" | "open" | "refused" | "answered";
398
+ }[];
399
+ recentHere: {
400
+ at: string;
401
+ summary: string;
402
+ }[];
403
+ recentSerious: {
404
+ at: string;
405
+ place: string | null;
406
+ summary: string;
407
+ witnesses: string[];
408
+ }[];
409
+ world: {
410
+ factsAsOf?: string | undefined;
411
+ elsewhere: {
412
+ id: string;
413
+ name: string;
414
+ }[];
415
+ objects: {
416
+ id: string;
417
+ name: string;
418
+ placeId: string | null;
419
+ holderId: string | null;
420
+ ownerId: string | null;
421
+ condition: string;
422
+ singlePersonMovable: boolean;
423
+ }[];
424
+ tensions: {
425
+ participants: {
426
+ id: string;
427
+ name: string;
428
+ }[];
429
+ openedBy?: string | undefined;
430
+ id: string;
431
+ title: string;
432
+ summary: string;
433
+ }[];
434
+ facts: string[];
435
+ away?: {
436
+ id: string;
437
+ name: string;
438
+ where: string;
439
+ }[] | undefined;
440
+ places: {
441
+ id: string;
442
+ name: string;
443
+ kind: "private" | "transit" | "room" | "outdoors";
444
+ connections: string[];
445
+ conditions: string[];
446
+ }[];
447
+ people: {
448
+ id: string;
449
+ name: string;
450
+ role: string;
451
+ pronouns: string;
452
+ placeId: string;
453
+ isPlayer: boolean;
454
+ incapacitated: boolean;
455
+ }[];
456
+ };
457
+ possiblePerceiverIds: string[];
458
+ presentCharacterIds: string[];
459
+ textWrites?: "add";
460
+ kinds: {
461
+ id: string;
462
+ name: string;
463
+ meaning: string;
464
+ properties: {
465
+ id: string;
466
+ type: "number" | "id" | "flag" | "text" | "level" | "time";
467
+ requiredOnCreate?: boolean | undefined;
468
+ }[];
469
+ relations: {
470
+ id: string;
471
+ targetKindId: string;
472
+ }[];
473
+ mechanics: ({
474
+ kind: "spread";
475
+ propertyId: string;
476
+ relationId: string;
477
+ } | {
478
+ kind: "signal";
479
+ propertyId: string;
480
+ relationId: string;
481
+ channel: string;
482
+ } | {
483
+ kind: "change";
484
+ propertyId: string;
485
+ deltaPerMinute: number;
486
+ onEvent?: {
487
+ kind: "move";
488
+ subjectPropertyId: string;
489
+ value: string | number | boolean;
490
+ } | undefined;
491
+ } | {
492
+ kind: "trigger";
493
+ propertyId: string;
494
+ threshold: number;
495
+ direction: "at-least" | "at-most";
496
+ intent: string;
497
+ delayMinutes: number;
498
+ minImportance?: number | undefined;
499
+ } | {
500
+ kind: "gate";
501
+ propertyId: string;
502
+ subjectPropertyId: string;
503
+ blockedActionKinds: string[];
504
+ atLeast?: "none" | "low" | "medium" | "high" | undefined;
505
+ } | {
506
+ kind: "norm";
507
+ actionKind: string;
508
+ roleId: string | null;
509
+ forbidden: boolean;
510
+ } | {
511
+ kind: "authority";
512
+ roleId: string;
513
+ relationId: string | null;
514
+ propertyId: string | null;
515
+ })[];
516
+ }[];
517
+ promises: {
518
+ due?: string | undefined;
519
+ by: string;
520
+ to: string;
521
+ text: string;
522
+ }[];
523
+ deadlines?: {
524
+ what: string;
525
+ due: string;
526
+ minutesLeft?: number;
527
+ minutesPast?: number;
528
+ outcome?: string;
529
+ averted?: boolean;
530
+ }[];
531
+ money?: undefined;
532
+ scene: {
533
+ id: string;
534
+ name: string;
535
+ kind: "private" | "transit" | "room" | "outdoors";
536
+ summary: string;
537
+ conditions: string[];
538
+ people: {
539
+ holding: string[];
540
+ mood: null;
541
+ condition: string | null;
542
+ doing: string | null;
543
+ held: null;
544
+ incapacitated: boolean;
545
+ arrived?: string | undefined;
546
+ id: string;
547
+ name: string;
548
+ role: string;
549
+ pronouns: string;
550
+ summary: string;
551
+ }[];
552
+ objects: {
553
+ refereeOnly?: {
554
+ when: string;
555
+ what: string;
556
+ } | undefined;
557
+ id: string;
558
+ name: string;
559
+ summary: string;
560
+ condition: string;
561
+ singlePersonMovable: boolean;
562
+ ownerName: string | null;
563
+ }[];
564
+ entities: {
565
+ refereeOnly?: {
566
+ when: string;
567
+ what: string;
568
+ } | undefined;
569
+ properties: {
570
+ [k: string]: string | number | boolean | undefined;
571
+ };
572
+ relations: {
573
+ [k: string]: string;
574
+ };
575
+ members?: string[] | undefined;
576
+ condition?: string | undefined;
577
+ holderId?: string | null | undefined;
578
+ id: string;
579
+ kindId: string;
580
+ kindName: string;
581
+ name: string;
582
+ }[];
583
+ exits: {
584
+ id: string;
585
+ name: string;
586
+ }[];
587
+ };
588
+ finishing?: {
589
+ begunAt: string;
590
+ changed: readonly string[];
591
+ note: string;
592
+ } | undefined;
593
+ phase: string;
594
+ clock: string;
595
+ clockMinutes: number;
596
+ setting: {
597
+ messages?: string;
598
+ world: string;
599
+ opening: {
600
+ asOf?: string | undefined;
601
+ title: string;
602
+ situation: string;
603
+ stakes: string;
604
+ };
605
+ };
606
+ actor: {
607
+ votes?: {
608
+ id: string;
609
+ question: string;
610
+ needed: number | null;
611
+ closes: string | null;
612
+ count: string | null;
613
+ }[];
614
+ id: string;
615
+ name: string;
616
+ role: string;
617
+ pronouns: string;
618
+ isPlayer: boolean;
619
+ money: number | null;
620
+ mood: string;
621
+ incapacitated: boolean;
622
+ holding: {
623
+ id: string;
624
+ name: string;
625
+ }[];
626
+ };
627
+ narrationVoice: string;
628
+ attempt: string;
629
+ actorSaid: {
630
+ at: string;
631
+ text: string;
632
+ }[];
633
+ } | {
634
+ previousErrors?: string[] | undefined;
635
+ requests: {
636
+ id: string;
637
+ toId: string;
638
+ topic: string;
639
+ status: "done" | "open" | "refused" | "answered";
640
+ }[];
641
+ recentHere: {
642
+ at: string;
643
+ summary: string;
644
+ }[];
645
+ recentSerious: {
646
+ at: string;
647
+ place: string | null;
648
+ summary: string;
649
+ witnesses: string[];
650
+ }[];
651
+ world: {
652
+ factsAsOf?: string | undefined;
653
+ elsewhere: {
654
+ id: string;
655
+ name: string;
656
+ }[];
657
+ objects: {
658
+ id: string;
659
+ name: string;
660
+ placeId: string | null;
661
+ holderId: string | null;
662
+ ownerId: string | null;
663
+ condition: string;
664
+ singlePersonMovable: boolean;
665
+ }[];
666
+ tensions: {
667
+ participants: {
668
+ id: string;
669
+ name: string;
670
+ }[];
671
+ openedBy?: string | undefined;
672
+ id: string;
673
+ title: string;
674
+ summary: string;
675
+ }[];
676
+ facts: string[];
677
+ away?: {
678
+ id: string;
679
+ name: string;
680
+ where: string;
681
+ }[] | undefined;
682
+ places: {
683
+ id: string;
684
+ name: string;
685
+ kind: "private" | "transit" | "room" | "outdoors";
686
+ connections: string[];
687
+ conditions: string[];
688
+ }[];
689
+ people: {
690
+ id: string;
691
+ name: string;
692
+ role: string;
693
+ pronouns: string;
694
+ placeId: string;
695
+ isPlayer: boolean;
696
+ incapacitated: boolean;
697
+ }[];
698
+ };
699
+ possiblePerceiverIds: string[];
700
+ presentCharacterIds: string[];
701
+ textWrites?: "add";
702
+ kinds: {
703
+ id: string;
704
+ name: string;
705
+ meaning: string;
706
+ properties: {
707
+ id: string;
708
+ type: "number" | "id" | "flag" | "text" | "level" | "time";
709
+ requiredOnCreate?: boolean | undefined;
710
+ }[];
711
+ relations: {
712
+ id: string;
713
+ targetKindId: string;
714
+ }[];
715
+ mechanics: ({
716
+ kind: "spread";
717
+ propertyId: string;
718
+ relationId: string;
719
+ } | {
720
+ kind: "signal";
721
+ propertyId: string;
722
+ relationId: string;
723
+ channel: string;
724
+ } | {
725
+ kind: "change";
726
+ propertyId: string;
727
+ deltaPerMinute: number;
728
+ onEvent?: {
729
+ kind: "move";
730
+ subjectPropertyId: string;
731
+ value: string | number | boolean;
732
+ } | undefined;
733
+ } | {
734
+ kind: "trigger";
735
+ propertyId: string;
736
+ threshold: number;
737
+ direction: "at-least" | "at-most";
738
+ intent: string;
739
+ delayMinutes: number;
740
+ minImportance?: number | undefined;
741
+ } | {
742
+ kind: "gate";
743
+ propertyId: string;
744
+ subjectPropertyId: string;
745
+ blockedActionKinds: string[];
746
+ atLeast?: "none" | "low" | "medium" | "high" | undefined;
747
+ } | {
748
+ kind: "norm";
749
+ actionKind: string;
750
+ roleId: string | null;
751
+ forbidden: boolean;
752
+ } | {
753
+ kind: "authority";
754
+ roleId: string;
755
+ relationId: string | null;
756
+ propertyId: string | null;
757
+ })[];
758
+ }[];
759
+ promises?: undefined;
760
+ deadlines?: {
761
+ what: string;
762
+ due: string;
763
+ minutesLeft?: number;
764
+ minutesPast?: number;
765
+ outcome?: string;
766
+ averted?: boolean;
767
+ }[];
768
+ money: {
769
+ unit: string;
770
+ balances: {
771
+ id: string;
772
+ name: string;
773
+ balance: number;
774
+ }[];
775
+ };
776
+ scene: {
777
+ id: string;
778
+ name: string;
779
+ kind: "private" | "transit" | "room" | "outdoors";
780
+ summary: string;
781
+ conditions: string[];
782
+ people: {
783
+ holding: string[];
784
+ mood: null;
785
+ condition: string | null;
786
+ doing: string | null;
787
+ held: null;
788
+ incapacitated: boolean;
789
+ arrived?: string | undefined;
790
+ id: string;
791
+ name: string;
792
+ role: string;
793
+ pronouns: string;
794
+ summary: string;
795
+ }[];
796
+ objects: {
797
+ refereeOnly?: {
798
+ when: string;
799
+ what: string;
800
+ } | undefined;
801
+ id: string;
802
+ name: string;
803
+ summary: string;
804
+ condition: string;
805
+ singlePersonMovable: boolean;
806
+ ownerName: string | null;
807
+ }[];
808
+ entities: {
809
+ refereeOnly?: {
810
+ when: string;
811
+ what: string;
812
+ } | undefined;
813
+ properties: {
814
+ [k: string]: string | number | boolean | undefined;
815
+ };
816
+ relations: {
817
+ [k: string]: string;
818
+ };
819
+ members?: string[] | undefined;
820
+ condition?: string | undefined;
821
+ holderId?: string | null | undefined;
822
+ id: string;
823
+ kindId: string;
824
+ kindName: string;
825
+ name: string;
826
+ }[];
827
+ exits: {
828
+ id: string;
829
+ name: string;
830
+ }[];
831
+ };
832
+ finishing?: {
833
+ begunAt: string;
834
+ changed: readonly string[];
835
+ note: string;
836
+ } | undefined;
837
+ phase: string;
838
+ clock: string;
839
+ clockMinutes: number;
840
+ setting: {
841
+ messages?: string;
842
+ world: string;
843
+ opening: {
844
+ asOf?: string | undefined;
845
+ title: string;
846
+ situation: string;
847
+ stakes: string;
848
+ };
849
+ };
850
+ actor: {
851
+ votes?: {
852
+ id: string;
853
+ question: string;
854
+ needed: number | null;
855
+ closes: string | null;
856
+ count: string | null;
857
+ }[];
858
+ id: string;
859
+ name: string;
860
+ role: string;
861
+ pronouns: string;
862
+ isPlayer: boolean;
863
+ money: number | null;
864
+ mood: string;
865
+ incapacitated: boolean;
866
+ holding: {
867
+ id: string;
868
+ name: string;
869
+ }[];
870
+ };
871
+ narrationVoice: string;
872
+ attempt: string;
873
+ actorSaid: {
874
+ at: string;
875
+ text: string;
876
+ }[];
877
+ } | {
878
+ previousErrors?: string[] | undefined;
879
+ requests: {
880
+ id: string;
881
+ toId: string;
882
+ topic: string;
883
+ status: "done" | "open" | "refused" | "answered";
884
+ }[];
885
+ recentHere: {
886
+ at: string;
887
+ summary: string;
888
+ }[];
889
+ recentSerious: {
890
+ at: string;
891
+ place: string | null;
892
+ summary: string;
893
+ witnesses: string[];
894
+ }[];
895
+ world: {
896
+ factsAsOf?: string | undefined;
897
+ elsewhere: {
898
+ id: string;
899
+ name: string;
900
+ }[];
901
+ objects: {
902
+ id: string;
903
+ name: string;
904
+ placeId: string | null;
905
+ holderId: string | null;
906
+ ownerId: string | null;
907
+ condition: string;
908
+ singlePersonMovable: boolean;
909
+ }[];
910
+ tensions: {
911
+ participants: {
912
+ id: string;
913
+ name: string;
914
+ }[];
915
+ openedBy?: string | undefined;
916
+ id: string;
917
+ title: string;
918
+ summary: string;
919
+ }[];
920
+ facts: string[];
921
+ away?: {
922
+ id: string;
923
+ name: string;
924
+ where: string;
925
+ }[] | undefined;
926
+ places: {
927
+ id: string;
928
+ name: string;
929
+ kind: "private" | "transit" | "room" | "outdoors";
930
+ connections: string[];
931
+ conditions: string[];
932
+ }[];
933
+ people: {
934
+ id: string;
935
+ name: string;
936
+ role: string;
937
+ pronouns: string;
938
+ placeId: string;
939
+ isPlayer: boolean;
940
+ incapacitated: boolean;
941
+ }[];
942
+ };
943
+ possiblePerceiverIds: string[];
944
+ presentCharacterIds: string[];
945
+ textWrites?: "add";
946
+ kinds: {
947
+ id: string;
948
+ name: string;
949
+ meaning: string;
950
+ properties: {
951
+ id: string;
952
+ type: "number" | "id" | "flag" | "text" | "level" | "time";
953
+ requiredOnCreate?: boolean | undefined;
954
+ }[];
955
+ relations: {
956
+ id: string;
957
+ targetKindId: string;
958
+ }[];
959
+ mechanics: ({
960
+ kind: "spread";
961
+ propertyId: string;
962
+ relationId: string;
963
+ } | {
964
+ kind: "signal";
965
+ propertyId: string;
966
+ relationId: string;
967
+ channel: string;
968
+ } | {
969
+ kind: "change";
970
+ propertyId: string;
971
+ deltaPerMinute: number;
972
+ onEvent?: {
973
+ kind: "move";
974
+ subjectPropertyId: string;
975
+ value: string | number | boolean;
976
+ } | undefined;
977
+ } | {
978
+ kind: "trigger";
979
+ propertyId: string;
980
+ threshold: number;
981
+ direction: "at-least" | "at-most";
982
+ intent: string;
983
+ delayMinutes: number;
984
+ minImportance?: number | undefined;
985
+ } | {
986
+ kind: "gate";
987
+ propertyId: string;
988
+ subjectPropertyId: string;
989
+ blockedActionKinds: string[];
990
+ atLeast?: "none" | "low" | "medium" | "high" | undefined;
991
+ } | {
992
+ kind: "norm";
993
+ actionKind: string;
994
+ roleId: string | null;
995
+ forbidden: boolean;
996
+ } | {
997
+ kind: "authority";
998
+ roleId: string;
999
+ relationId: string | null;
1000
+ propertyId: string | null;
1001
+ })[];
1002
+ }[];
1003
+ promises: {
1004
+ due?: string | undefined;
1005
+ by: string;
1006
+ to: string;
1007
+ text: string;
1008
+ }[];
1009
+ deadlines?: {
1010
+ what: string;
1011
+ due: string;
1012
+ minutesLeft?: number;
1013
+ minutesPast?: number;
1014
+ outcome?: string;
1015
+ averted?: boolean;
1016
+ }[];
1017
+ money: {
1018
+ unit: string;
1019
+ balances: {
1020
+ id: string;
1021
+ name: string;
1022
+ balance: number;
1023
+ }[];
1024
+ };
1025
+ scene: {
1026
+ id: string;
1027
+ name: string;
1028
+ kind: "private" | "transit" | "room" | "outdoors";
1029
+ summary: string;
1030
+ conditions: string[];
1031
+ people: {
1032
+ holding: string[];
1033
+ mood: null;
1034
+ condition: string | null;
1035
+ doing: string | null;
1036
+ held: null;
1037
+ incapacitated: boolean;
1038
+ arrived?: string | undefined;
1039
+ id: string;
1040
+ name: string;
1041
+ role: string;
1042
+ pronouns: string;
1043
+ summary: string;
1044
+ }[];
1045
+ objects: {
1046
+ refereeOnly?: {
1047
+ when: string;
1048
+ what: string;
1049
+ } | undefined;
1050
+ id: string;
1051
+ name: string;
1052
+ summary: string;
1053
+ condition: string;
1054
+ singlePersonMovable: boolean;
1055
+ ownerName: string | null;
1056
+ }[];
1057
+ entities: {
1058
+ refereeOnly?: {
1059
+ when: string;
1060
+ what: string;
1061
+ } | undefined;
1062
+ properties: {
1063
+ [k: string]: string | number | boolean | undefined;
1064
+ };
1065
+ relations: {
1066
+ [k: string]: string;
1067
+ };
1068
+ members?: string[] | undefined;
1069
+ condition?: string | undefined;
1070
+ holderId?: string | null | undefined;
1071
+ id: string;
1072
+ kindId: string;
1073
+ kindName: string;
1074
+ name: string;
1075
+ }[];
1076
+ exits: {
1077
+ id: string;
1078
+ name: string;
1079
+ }[];
1080
+ };
1081
+ finishing?: {
1082
+ begunAt: string;
1083
+ changed: readonly string[];
1084
+ note: string;
1085
+ } | undefined;
1086
+ phase: string;
1087
+ clock: string;
1088
+ clockMinutes: number;
1089
+ setting: {
1090
+ messages?: string;
1091
+ world: string;
1092
+ opening: {
1093
+ asOf?: string | undefined;
1094
+ title: string;
1095
+ situation: string;
1096
+ stakes: string;
1097
+ };
1098
+ };
1099
+ actor: {
1100
+ votes?: {
1101
+ id: string;
1102
+ question: string;
1103
+ needed: number | null;
1104
+ closes: string | null;
1105
+ count: string | null;
1106
+ }[];
1107
+ id: string;
1108
+ name: string;
1109
+ role: string;
1110
+ pronouns: string;
1111
+ isPlayer: boolean;
1112
+ money: number | null;
1113
+ mood: string;
1114
+ incapacitated: boolean;
1115
+ holding: {
1116
+ id: string;
1117
+ name: string;
1118
+ }[];
1119
+ };
1120
+ narrationVoice: string;
1121
+ attempt: string;
1122
+ actorSaid: {
1123
+ at: string;
1124
+ text: string;
1125
+ }[];
1126
+ };
1127
+ export declare function earlierTimes(state: LivingState, sourceSeq: number): {
1128
+ at: string;
1129
+ what: string;
1130
+ }[];
1131
+ export declare function gameMasterWorldInput(state: LivingState, happening: {
1132
+ intent: string;
1133
+ placeId: string;
1134
+ sourceSeq: number;
1135
+ everyMinutes?: number;
1136
+ targetId?: string | null;
1137
+ id?: string;
1138
+ alreadyTrue?: readonly string[];
1139
+ }, previousErrors?: readonly string[], _fitted?: boolean, focusIds?: readonly string[]): {
1140
+ previousErrors?: string[] | undefined;
1141
+ recentHere: {
1142
+ at: string;
1143
+ summary: string;
1144
+ }[];
1145
+ recentSerious: {
1146
+ at: string;
1147
+ place: string | null;
1148
+ summary: string;
1149
+ witnesses: string[];
1150
+ }[];
1151
+ world: {
1152
+ factsAsOf?: string | undefined;
1153
+ elsewhere: {
1154
+ id: string;
1155
+ name: string;
1156
+ }[];
1157
+ objects: {
1158
+ id: string;
1159
+ name: string;
1160
+ placeId: string | null;
1161
+ holderId: string | null;
1162
+ ownerId: string | null;
1163
+ condition: string;
1164
+ singlePersonMovable: boolean;
1165
+ }[];
1166
+ tensions: {
1167
+ participants: {
1168
+ id: string;
1169
+ name: string;
1170
+ }[];
1171
+ openedBy?: string | undefined;
1172
+ id: string;
1173
+ title: string;
1174
+ summary: string;
1175
+ }[];
1176
+ facts: string[];
1177
+ away?: {
1178
+ id: string;
1179
+ name: string;
1180
+ where: string;
1181
+ }[] | undefined;
1182
+ places: {
1183
+ id: string;
1184
+ name: string;
1185
+ kind: "private" | "transit" | "room" | "outdoors";
1186
+ connections: string[];
1187
+ conditions: string[];
1188
+ }[];
1189
+ people: {
1190
+ id: string;
1191
+ name: string;
1192
+ role: string;
1193
+ pronouns: string;
1194
+ placeId: string;
1195
+ isPlayer: boolean;
1196
+ incapacitated: boolean;
1197
+ }[];
1198
+ };
1199
+ possiblePerceiverIds: string[];
1200
+ presentCharacterIds: string[];
1201
+ textWrites?: "add";
1202
+ kinds: {
1203
+ id: string;
1204
+ name: string;
1205
+ meaning: string;
1206
+ properties: {
1207
+ id: string;
1208
+ type: "number" | "id" | "flag" | "text" | "level" | "time";
1209
+ requiredOnCreate?: boolean | undefined;
1210
+ }[];
1211
+ relations: {
1212
+ id: string;
1213
+ targetKindId: string;
1214
+ }[];
1215
+ mechanics: ({
1216
+ kind: "spread";
1217
+ propertyId: string;
1218
+ relationId: string;
1219
+ } | {
1220
+ kind: "signal";
1221
+ propertyId: string;
1222
+ relationId: string;
1223
+ channel: string;
1224
+ } | {
1225
+ kind: "change";
1226
+ propertyId: string;
1227
+ deltaPerMinute: number;
1228
+ onEvent?: {
1229
+ kind: "move";
1230
+ subjectPropertyId: string;
1231
+ value: string | number | boolean;
1232
+ } | undefined;
1233
+ } | {
1234
+ kind: "trigger";
1235
+ propertyId: string;
1236
+ threshold: number;
1237
+ direction: "at-least" | "at-most";
1238
+ intent: string;
1239
+ delayMinutes: number;
1240
+ minImportance?: number | undefined;
1241
+ } | {
1242
+ kind: "gate";
1243
+ propertyId: string;
1244
+ subjectPropertyId: string;
1245
+ blockedActionKinds: string[];
1246
+ atLeast?: "none" | "low" | "medium" | "high" | undefined;
1247
+ } | {
1248
+ kind: "norm";
1249
+ actionKind: string;
1250
+ roleId: string | null;
1251
+ forbidden: boolean;
1252
+ } | {
1253
+ kind: "authority";
1254
+ roleId: string;
1255
+ relationId: string | null;
1256
+ propertyId: string | null;
1257
+ })[];
1258
+ }[];
1259
+ promises?: undefined;
1260
+ deadlines?: {
1261
+ what: string;
1262
+ due: string;
1263
+ minutesLeft?: number;
1264
+ minutesPast?: number;
1265
+ outcome?: string;
1266
+ averted?: boolean;
1267
+ }[];
1268
+ money?: undefined;
1269
+ cause: {
1270
+ at: string;
1271
+ summary: string;
1272
+ } | null;
1273
+ narrationVoice: string;
1274
+ scene: {
1275
+ id: string;
1276
+ name: string;
1277
+ kind: "private" | "transit" | "room" | "outdoors";
1278
+ summary: string;
1279
+ conditions: string[];
1280
+ people: {
1281
+ holding: string[];
1282
+ mood: null;
1283
+ condition: string | null;
1284
+ doing: string | null;
1285
+ held: null;
1286
+ incapacitated: boolean;
1287
+ arrived?: string | undefined;
1288
+ id: string;
1289
+ name: string;
1290
+ role: string;
1291
+ pronouns: string;
1292
+ summary: string;
1293
+ }[];
1294
+ objects: {
1295
+ refereeOnly?: {
1296
+ when: string;
1297
+ what: string;
1298
+ } | undefined;
1299
+ id: string;
1300
+ name: string;
1301
+ summary: string;
1302
+ condition: string;
1303
+ singlePersonMovable: boolean;
1304
+ ownerName: string | null;
1305
+ }[];
1306
+ entities: {
1307
+ refereeOnly?: {
1308
+ when: string;
1309
+ what: string;
1310
+ } | undefined;
1311
+ properties: {
1312
+ [k: string]: string | number | boolean | undefined;
1313
+ };
1314
+ relations: {
1315
+ [k: string]: string;
1316
+ };
1317
+ members?: string[] | undefined;
1318
+ condition?: string | undefined;
1319
+ holderId?: string | null | undefined;
1320
+ id: string;
1321
+ kindId: string;
1322
+ kindName: string;
1323
+ name: string;
1324
+ }[];
1325
+ exits: {
1326
+ id: string;
1327
+ name: string;
1328
+ }[];
1329
+ };
1330
+ recurring?: {
1331
+ everyMinutes: number;
1332
+ earlier: {
1333
+ at: string;
1334
+ what: string;
1335
+ }[];
1336
+ } | undefined;
1337
+ about?: {
1338
+ id: string;
1339
+ name: string;
1340
+ kind: string;
1341
+ since?: string;
1342
+ } | undefined;
1343
+ happeningNote: string;
1344
+ nowTrue?: string[] | undefined;
1345
+ phase: string;
1346
+ clock: string;
1347
+ clockMinutes: number;
1348
+ setting: {
1349
+ messages?: string;
1350
+ world: string;
1351
+ opening: {
1352
+ asOf?: string | undefined;
1353
+ title: string;
1354
+ situation: string;
1355
+ stakes: string;
1356
+ };
1357
+ };
1358
+ happening: string;
1359
+ } | {
1360
+ previousErrors?: string[] | undefined;
1361
+ recentHere: {
1362
+ at: string;
1363
+ summary: string;
1364
+ }[];
1365
+ recentSerious: {
1366
+ at: string;
1367
+ place: string | null;
1368
+ summary: string;
1369
+ witnesses: string[];
1370
+ }[];
1371
+ world: {
1372
+ factsAsOf?: string | undefined;
1373
+ elsewhere: {
1374
+ id: string;
1375
+ name: string;
1376
+ }[];
1377
+ objects: {
1378
+ id: string;
1379
+ name: string;
1380
+ placeId: string | null;
1381
+ holderId: string | null;
1382
+ ownerId: string | null;
1383
+ condition: string;
1384
+ singlePersonMovable: boolean;
1385
+ }[];
1386
+ tensions: {
1387
+ participants: {
1388
+ id: string;
1389
+ name: string;
1390
+ }[];
1391
+ openedBy?: string | undefined;
1392
+ id: string;
1393
+ title: string;
1394
+ summary: string;
1395
+ }[];
1396
+ facts: string[];
1397
+ away?: {
1398
+ id: string;
1399
+ name: string;
1400
+ where: string;
1401
+ }[] | undefined;
1402
+ places: {
1403
+ id: string;
1404
+ name: string;
1405
+ kind: "private" | "transit" | "room" | "outdoors";
1406
+ connections: string[];
1407
+ conditions: string[];
1408
+ }[];
1409
+ people: {
1410
+ id: string;
1411
+ name: string;
1412
+ role: string;
1413
+ pronouns: string;
1414
+ placeId: string;
1415
+ isPlayer: boolean;
1416
+ incapacitated: boolean;
1417
+ }[];
1418
+ };
1419
+ possiblePerceiverIds: string[];
1420
+ presentCharacterIds: string[];
1421
+ textWrites?: "add";
1422
+ kinds: {
1423
+ id: string;
1424
+ name: string;
1425
+ meaning: string;
1426
+ properties: {
1427
+ id: string;
1428
+ type: "number" | "id" | "flag" | "text" | "level" | "time";
1429
+ requiredOnCreate?: boolean | undefined;
1430
+ }[];
1431
+ relations: {
1432
+ id: string;
1433
+ targetKindId: string;
1434
+ }[];
1435
+ mechanics: ({
1436
+ kind: "spread";
1437
+ propertyId: string;
1438
+ relationId: string;
1439
+ } | {
1440
+ kind: "signal";
1441
+ propertyId: string;
1442
+ relationId: string;
1443
+ channel: string;
1444
+ } | {
1445
+ kind: "change";
1446
+ propertyId: string;
1447
+ deltaPerMinute: number;
1448
+ onEvent?: {
1449
+ kind: "move";
1450
+ subjectPropertyId: string;
1451
+ value: string | number | boolean;
1452
+ } | undefined;
1453
+ } | {
1454
+ kind: "trigger";
1455
+ propertyId: string;
1456
+ threshold: number;
1457
+ direction: "at-least" | "at-most";
1458
+ intent: string;
1459
+ delayMinutes: number;
1460
+ minImportance?: number | undefined;
1461
+ } | {
1462
+ kind: "gate";
1463
+ propertyId: string;
1464
+ subjectPropertyId: string;
1465
+ blockedActionKinds: string[];
1466
+ atLeast?: "none" | "low" | "medium" | "high" | undefined;
1467
+ } | {
1468
+ kind: "norm";
1469
+ actionKind: string;
1470
+ roleId: string | null;
1471
+ forbidden: boolean;
1472
+ } | {
1473
+ kind: "authority";
1474
+ roleId: string;
1475
+ relationId: string | null;
1476
+ propertyId: string | null;
1477
+ })[];
1478
+ }[];
1479
+ promises: {
1480
+ due?: string | undefined;
1481
+ by: string;
1482
+ to: string;
1483
+ text: string;
1484
+ }[];
1485
+ deadlines?: {
1486
+ what: string;
1487
+ due: string;
1488
+ minutesLeft?: number;
1489
+ minutesPast?: number;
1490
+ outcome?: string;
1491
+ averted?: boolean;
1492
+ }[];
1493
+ money?: undefined;
1494
+ cause: {
1495
+ at: string;
1496
+ summary: string;
1497
+ } | null;
1498
+ narrationVoice: string;
1499
+ scene: {
1500
+ id: string;
1501
+ name: string;
1502
+ kind: "private" | "transit" | "room" | "outdoors";
1503
+ summary: string;
1504
+ conditions: string[];
1505
+ people: {
1506
+ holding: string[];
1507
+ mood: null;
1508
+ condition: string | null;
1509
+ doing: string | null;
1510
+ held: null;
1511
+ incapacitated: boolean;
1512
+ arrived?: string | undefined;
1513
+ id: string;
1514
+ name: string;
1515
+ role: string;
1516
+ pronouns: string;
1517
+ summary: string;
1518
+ }[];
1519
+ objects: {
1520
+ refereeOnly?: {
1521
+ when: string;
1522
+ what: string;
1523
+ } | undefined;
1524
+ id: string;
1525
+ name: string;
1526
+ summary: string;
1527
+ condition: string;
1528
+ singlePersonMovable: boolean;
1529
+ ownerName: string | null;
1530
+ }[];
1531
+ entities: {
1532
+ refereeOnly?: {
1533
+ when: string;
1534
+ what: string;
1535
+ } | undefined;
1536
+ properties: {
1537
+ [k: string]: string | number | boolean | undefined;
1538
+ };
1539
+ relations: {
1540
+ [k: string]: string;
1541
+ };
1542
+ members?: string[] | undefined;
1543
+ condition?: string | undefined;
1544
+ holderId?: string | null | undefined;
1545
+ id: string;
1546
+ kindId: string;
1547
+ kindName: string;
1548
+ name: string;
1549
+ }[];
1550
+ exits: {
1551
+ id: string;
1552
+ name: string;
1553
+ }[];
1554
+ };
1555
+ recurring?: {
1556
+ everyMinutes: number;
1557
+ earlier: {
1558
+ at: string;
1559
+ what: string;
1560
+ }[];
1561
+ } | undefined;
1562
+ about?: {
1563
+ id: string;
1564
+ name: string;
1565
+ kind: string;
1566
+ since?: string;
1567
+ } | undefined;
1568
+ happeningNote: string;
1569
+ nowTrue?: string[] | undefined;
1570
+ phase: string;
1571
+ clock: string;
1572
+ clockMinutes: number;
1573
+ setting: {
1574
+ messages?: string;
1575
+ world: string;
1576
+ opening: {
1577
+ asOf?: string | undefined;
1578
+ title: string;
1579
+ situation: string;
1580
+ stakes: string;
1581
+ };
1582
+ };
1583
+ happening: string;
1584
+ } | {
1585
+ previousErrors?: string[] | undefined;
1586
+ recentHere: {
1587
+ at: string;
1588
+ summary: string;
1589
+ }[];
1590
+ recentSerious: {
1591
+ at: string;
1592
+ place: string | null;
1593
+ summary: string;
1594
+ witnesses: string[];
1595
+ }[];
1596
+ world: {
1597
+ factsAsOf?: string | undefined;
1598
+ elsewhere: {
1599
+ id: string;
1600
+ name: string;
1601
+ }[];
1602
+ objects: {
1603
+ id: string;
1604
+ name: string;
1605
+ placeId: string | null;
1606
+ holderId: string | null;
1607
+ ownerId: string | null;
1608
+ condition: string;
1609
+ singlePersonMovable: boolean;
1610
+ }[];
1611
+ tensions: {
1612
+ participants: {
1613
+ id: string;
1614
+ name: string;
1615
+ }[];
1616
+ openedBy?: string | undefined;
1617
+ id: string;
1618
+ title: string;
1619
+ summary: string;
1620
+ }[];
1621
+ facts: string[];
1622
+ away?: {
1623
+ id: string;
1624
+ name: string;
1625
+ where: string;
1626
+ }[] | undefined;
1627
+ places: {
1628
+ id: string;
1629
+ name: string;
1630
+ kind: "private" | "transit" | "room" | "outdoors";
1631
+ connections: string[];
1632
+ conditions: string[];
1633
+ }[];
1634
+ people: {
1635
+ id: string;
1636
+ name: string;
1637
+ role: string;
1638
+ pronouns: string;
1639
+ placeId: string;
1640
+ isPlayer: boolean;
1641
+ incapacitated: boolean;
1642
+ }[];
1643
+ };
1644
+ possiblePerceiverIds: string[];
1645
+ presentCharacterIds: string[];
1646
+ textWrites?: "add";
1647
+ kinds: {
1648
+ id: string;
1649
+ name: string;
1650
+ meaning: string;
1651
+ properties: {
1652
+ id: string;
1653
+ type: "number" | "id" | "flag" | "text" | "level" | "time";
1654
+ requiredOnCreate?: boolean | undefined;
1655
+ }[];
1656
+ relations: {
1657
+ id: string;
1658
+ targetKindId: string;
1659
+ }[];
1660
+ mechanics: ({
1661
+ kind: "spread";
1662
+ propertyId: string;
1663
+ relationId: string;
1664
+ } | {
1665
+ kind: "signal";
1666
+ propertyId: string;
1667
+ relationId: string;
1668
+ channel: string;
1669
+ } | {
1670
+ kind: "change";
1671
+ propertyId: string;
1672
+ deltaPerMinute: number;
1673
+ onEvent?: {
1674
+ kind: "move";
1675
+ subjectPropertyId: string;
1676
+ value: string | number | boolean;
1677
+ } | undefined;
1678
+ } | {
1679
+ kind: "trigger";
1680
+ propertyId: string;
1681
+ threshold: number;
1682
+ direction: "at-least" | "at-most";
1683
+ intent: string;
1684
+ delayMinutes: number;
1685
+ minImportance?: number | undefined;
1686
+ } | {
1687
+ kind: "gate";
1688
+ propertyId: string;
1689
+ subjectPropertyId: string;
1690
+ blockedActionKinds: string[];
1691
+ atLeast?: "none" | "low" | "medium" | "high" | undefined;
1692
+ } | {
1693
+ kind: "norm";
1694
+ actionKind: string;
1695
+ roleId: string | null;
1696
+ forbidden: boolean;
1697
+ } | {
1698
+ kind: "authority";
1699
+ roleId: string;
1700
+ relationId: string | null;
1701
+ propertyId: string | null;
1702
+ })[];
1703
+ }[];
1704
+ promises?: undefined;
1705
+ deadlines?: {
1706
+ what: string;
1707
+ due: string;
1708
+ minutesLeft?: number;
1709
+ minutesPast?: number;
1710
+ outcome?: string;
1711
+ averted?: boolean;
1712
+ }[];
1713
+ money: {
1714
+ unit: string;
1715
+ balances: {
1716
+ id: string;
1717
+ name: string;
1718
+ balance: number;
1719
+ }[];
1720
+ };
1721
+ cause: {
1722
+ at: string;
1723
+ summary: string;
1724
+ } | null;
1725
+ narrationVoice: string;
1726
+ scene: {
1727
+ id: string;
1728
+ name: string;
1729
+ kind: "private" | "transit" | "room" | "outdoors";
1730
+ summary: string;
1731
+ conditions: string[];
1732
+ people: {
1733
+ holding: string[];
1734
+ mood: null;
1735
+ condition: string | null;
1736
+ doing: string | null;
1737
+ held: null;
1738
+ incapacitated: boolean;
1739
+ arrived?: string | undefined;
1740
+ id: string;
1741
+ name: string;
1742
+ role: string;
1743
+ pronouns: string;
1744
+ summary: string;
1745
+ }[];
1746
+ objects: {
1747
+ refereeOnly?: {
1748
+ when: string;
1749
+ what: string;
1750
+ } | undefined;
1751
+ id: string;
1752
+ name: string;
1753
+ summary: string;
1754
+ condition: string;
1755
+ singlePersonMovable: boolean;
1756
+ ownerName: string | null;
1757
+ }[];
1758
+ entities: {
1759
+ refereeOnly?: {
1760
+ when: string;
1761
+ what: string;
1762
+ } | undefined;
1763
+ properties: {
1764
+ [k: string]: string | number | boolean | undefined;
1765
+ };
1766
+ relations: {
1767
+ [k: string]: string;
1768
+ };
1769
+ members?: string[] | undefined;
1770
+ condition?: string | undefined;
1771
+ holderId?: string | null | undefined;
1772
+ id: string;
1773
+ kindId: string;
1774
+ kindName: string;
1775
+ name: string;
1776
+ }[];
1777
+ exits: {
1778
+ id: string;
1779
+ name: string;
1780
+ }[];
1781
+ };
1782
+ recurring?: {
1783
+ everyMinutes: number;
1784
+ earlier: {
1785
+ at: string;
1786
+ what: string;
1787
+ }[];
1788
+ } | undefined;
1789
+ about?: {
1790
+ id: string;
1791
+ name: string;
1792
+ kind: string;
1793
+ since?: string;
1794
+ } | undefined;
1795
+ happeningNote: string;
1796
+ nowTrue?: string[] | undefined;
1797
+ phase: string;
1798
+ clock: string;
1799
+ clockMinutes: number;
1800
+ setting: {
1801
+ messages?: string;
1802
+ world: string;
1803
+ opening: {
1804
+ asOf?: string | undefined;
1805
+ title: string;
1806
+ situation: string;
1807
+ stakes: string;
1808
+ };
1809
+ };
1810
+ happening: string;
1811
+ } | {
1812
+ previousErrors?: string[] | undefined;
1813
+ recentHere: {
1814
+ at: string;
1815
+ summary: string;
1816
+ }[];
1817
+ recentSerious: {
1818
+ at: string;
1819
+ place: string | null;
1820
+ summary: string;
1821
+ witnesses: string[];
1822
+ }[];
1823
+ world: {
1824
+ factsAsOf?: string | undefined;
1825
+ elsewhere: {
1826
+ id: string;
1827
+ name: string;
1828
+ }[];
1829
+ objects: {
1830
+ id: string;
1831
+ name: string;
1832
+ placeId: string | null;
1833
+ holderId: string | null;
1834
+ ownerId: string | null;
1835
+ condition: string;
1836
+ singlePersonMovable: boolean;
1837
+ }[];
1838
+ tensions: {
1839
+ participants: {
1840
+ id: string;
1841
+ name: string;
1842
+ }[];
1843
+ openedBy?: string | undefined;
1844
+ id: string;
1845
+ title: string;
1846
+ summary: string;
1847
+ }[];
1848
+ facts: string[];
1849
+ away?: {
1850
+ id: string;
1851
+ name: string;
1852
+ where: string;
1853
+ }[] | undefined;
1854
+ places: {
1855
+ id: string;
1856
+ name: string;
1857
+ kind: "private" | "transit" | "room" | "outdoors";
1858
+ connections: string[];
1859
+ conditions: string[];
1860
+ }[];
1861
+ people: {
1862
+ id: string;
1863
+ name: string;
1864
+ role: string;
1865
+ pronouns: string;
1866
+ placeId: string;
1867
+ isPlayer: boolean;
1868
+ incapacitated: boolean;
1869
+ }[];
1870
+ };
1871
+ possiblePerceiverIds: string[];
1872
+ presentCharacterIds: string[];
1873
+ textWrites?: "add";
1874
+ kinds: {
1875
+ id: string;
1876
+ name: string;
1877
+ meaning: string;
1878
+ properties: {
1879
+ id: string;
1880
+ type: "number" | "id" | "flag" | "text" | "level" | "time";
1881
+ requiredOnCreate?: boolean | undefined;
1882
+ }[];
1883
+ relations: {
1884
+ id: string;
1885
+ targetKindId: string;
1886
+ }[];
1887
+ mechanics: ({
1888
+ kind: "spread";
1889
+ propertyId: string;
1890
+ relationId: string;
1891
+ } | {
1892
+ kind: "signal";
1893
+ propertyId: string;
1894
+ relationId: string;
1895
+ channel: string;
1896
+ } | {
1897
+ kind: "change";
1898
+ propertyId: string;
1899
+ deltaPerMinute: number;
1900
+ onEvent?: {
1901
+ kind: "move";
1902
+ subjectPropertyId: string;
1903
+ value: string | number | boolean;
1904
+ } | undefined;
1905
+ } | {
1906
+ kind: "trigger";
1907
+ propertyId: string;
1908
+ threshold: number;
1909
+ direction: "at-least" | "at-most";
1910
+ intent: string;
1911
+ delayMinutes: number;
1912
+ minImportance?: number | undefined;
1913
+ } | {
1914
+ kind: "gate";
1915
+ propertyId: string;
1916
+ subjectPropertyId: string;
1917
+ blockedActionKinds: string[];
1918
+ atLeast?: "none" | "low" | "medium" | "high" | undefined;
1919
+ } | {
1920
+ kind: "norm";
1921
+ actionKind: string;
1922
+ roleId: string | null;
1923
+ forbidden: boolean;
1924
+ } | {
1925
+ kind: "authority";
1926
+ roleId: string;
1927
+ relationId: string | null;
1928
+ propertyId: string | null;
1929
+ })[];
1930
+ }[];
1931
+ promises: {
1932
+ due?: string | undefined;
1933
+ by: string;
1934
+ to: string;
1935
+ text: string;
1936
+ }[];
1937
+ deadlines?: {
1938
+ what: string;
1939
+ due: string;
1940
+ minutesLeft?: number;
1941
+ minutesPast?: number;
1942
+ outcome?: string;
1943
+ averted?: boolean;
1944
+ }[];
1945
+ money: {
1946
+ unit: string;
1947
+ balances: {
1948
+ id: string;
1949
+ name: string;
1950
+ balance: number;
1951
+ }[];
1952
+ };
1953
+ cause: {
1954
+ at: string;
1955
+ summary: string;
1956
+ } | null;
1957
+ narrationVoice: string;
1958
+ scene: {
1959
+ id: string;
1960
+ name: string;
1961
+ kind: "private" | "transit" | "room" | "outdoors";
1962
+ summary: string;
1963
+ conditions: string[];
1964
+ people: {
1965
+ holding: string[];
1966
+ mood: null;
1967
+ condition: string | null;
1968
+ doing: string | null;
1969
+ held: null;
1970
+ incapacitated: boolean;
1971
+ arrived?: string | undefined;
1972
+ id: string;
1973
+ name: string;
1974
+ role: string;
1975
+ pronouns: string;
1976
+ summary: string;
1977
+ }[];
1978
+ objects: {
1979
+ refereeOnly?: {
1980
+ when: string;
1981
+ what: string;
1982
+ } | undefined;
1983
+ id: string;
1984
+ name: string;
1985
+ summary: string;
1986
+ condition: string;
1987
+ singlePersonMovable: boolean;
1988
+ ownerName: string | null;
1989
+ }[];
1990
+ entities: {
1991
+ refereeOnly?: {
1992
+ when: string;
1993
+ what: string;
1994
+ } | undefined;
1995
+ properties: {
1996
+ [k: string]: string | number | boolean | undefined;
1997
+ };
1998
+ relations: {
1999
+ [k: string]: string;
2000
+ };
2001
+ members?: string[] | undefined;
2002
+ condition?: string | undefined;
2003
+ holderId?: string | null | undefined;
2004
+ id: string;
2005
+ kindId: string;
2006
+ kindName: string;
2007
+ name: string;
2008
+ }[];
2009
+ exits: {
2010
+ id: string;
2011
+ name: string;
2012
+ }[];
2013
+ };
2014
+ recurring?: {
2015
+ everyMinutes: number;
2016
+ earlier: {
2017
+ at: string;
2018
+ what: string;
2019
+ }[];
2020
+ } | undefined;
2021
+ about?: {
2022
+ id: string;
2023
+ name: string;
2024
+ kind: string;
2025
+ since?: string;
2026
+ } | undefined;
2027
+ happeningNote: string;
2028
+ nowTrue?: string[] | undefined;
2029
+ phase: string;
2030
+ clock: string;
2031
+ clockMinutes: number;
2032
+ setting: {
2033
+ messages?: string;
2034
+ world: string;
2035
+ opening: {
2036
+ asOf?: string | undefined;
2037
+ title: string;
2038
+ situation: string;
2039
+ stakes: string;
2040
+ };
2041
+ };
2042
+ happening: string;
2043
+ };
2044
+ export declare function pressingMatters(state: LivingState, person: LivingPerson, limit: number): {
2045
+ when: string;
2046
+ minutesAgo: number;
2047
+ text: string;
2048
+ }[];
2049
+ export declare function myMovements(state: LivingState, person: LivingPerson, limit: number): string[];
2050
+ export declare function speechSetting(state: LivingState): LivingState['opening'];
2051
+ export declare function fitSpeechInput<T extends Record<string, unknown>>(state: LivingState, input: T, close: ReadonlySet<string>, held: ReadonlySet<string>): T;
2052
+ export declare function characterMind(state: LivingState, person: LivingPerson, focusIds: readonly string[], shownElsewhere?: {
2053
+ line?: {
2054
+ speakerId: string | null;
2055
+ text: string;
2056
+ };
2057
+ }): {
2058
+ requests: {
2059
+ waitingMinutes?: number | undefined;
2060
+ answer?: string | undefined;
2061
+ id: string;
2062
+ fromId: string;
2063
+ toId: string;
2064
+ topic: string;
2065
+ status: "done" | "open" | "refused" | "answered";
2066
+ }[];
2067
+ stances: {
2068
+ actorId: string;
2069
+ status: "report" | "refuse" | "undecided" | "cooperate" | "avoid" | "confront";
2070
+ sourceSeq: number;
2071
+ }[];
2072
+ plan: {
2073
+ intent: string;
2074
+ due: string;
2075
+ placeId: string | null;
2076
+ targetId: string | null;
2077
+ } | null;
2078
+ scene: {
2079
+ id: string;
2080
+ name: string;
2081
+ kind: "private" | "transit" | "room" | "outdoors";
2082
+ summary: string;
2083
+ conditions: string[];
2084
+ people: {
2085
+ holding: string[];
2086
+ mood: null;
2087
+ condition: string | null;
2088
+ doing: string | null;
2089
+ held: null;
2090
+ incapacitated: boolean;
2091
+ arrived?: string | undefined;
2092
+ id: string;
2093
+ name: string;
2094
+ role: string;
2095
+ pronouns: string;
2096
+ summary: string;
2097
+ }[];
2098
+ objects: {
2099
+ refereeOnly?: {
2100
+ when: string;
2101
+ what: string;
2102
+ } | undefined;
2103
+ id: string;
2104
+ name: string;
2105
+ summary: string;
2106
+ condition: string;
2107
+ singlePersonMovable: boolean;
2108
+ ownerName: string | null;
2109
+ }[];
2110
+ entities: {
2111
+ refereeOnly?: {
2112
+ when: string;
2113
+ what: string;
2114
+ } | undefined;
2115
+ properties: {
2116
+ [k: string]: string | number | boolean | undefined;
2117
+ };
2118
+ relations: {
2119
+ [k: string]: string;
2120
+ };
2121
+ members?: string[] | undefined;
2122
+ condition?: string | undefined;
2123
+ holderId?: string | null | undefined;
2124
+ id: string;
2125
+ kindId: string;
2126
+ kindName: string;
2127
+ name: string;
2128
+ }[];
2129
+ exits: {
2130
+ id: string;
2131
+ name: string;
2132
+ }[];
2133
+ };
2134
+ conversation: {
2135
+ speaker: string;
2136
+ speakerId: string;
2137
+ to: string[];
2138
+ text: string;
2139
+ }[];
2140
+ myRecentLines: string[];
2141
+ clock: string;
2142
+ awakeSince?: string;
2143
+ papersInMind?: {
2144
+ id: string;
2145
+ name: string;
2146
+ words: string;
2147
+ }[];
2148
+ myPapers?: {
2149
+ id: string;
2150
+ name: string;
2151
+ words: string;
2152
+ }[];
2153
+ deadlines?: {
2154
+ what: string;
2155
+ due: string;
2156
+ minutesLeft?: number;
2157
+ minutesPast?: number;
2158
+ outcome?: string;
2159
+ averted?: boolean;
2160
+ }[];
2161
+ identity: {
2162
+ id: string;
2163
+ name: string;
2164
+ role: string;
2165
+ pronouns: string;
2166
+ character: {
2167
+ voice: string;
2168
+ values: string[];
2169
+ redLines: string[];
2170
+ privateConcerns: string[];
2171
+ };
2172
+ mood: string;
2173
+ condition: string | null;
2174
+ held: string | null;
2175
+ money: number | null;
2176
+ blocked: string[];
2177
+ };
2178
+ goals: {
2179
+ id: string;
2180
+ text: string;
2181
+ }[];
2182
+ relationships: {
2183
+ note?: string | undefined;
2184
+ id: string;
2185
+ name: string;
2186
+ trust: number;
2187
+ warmth: number;
2188
+ }[];
2189
+ pressing: {
2190
+ id: string;
2191
+ when: string;
2192
+ minutesAgo: number;
2193
+ text: string;
2194
+ }[];
2195
+ memories: {
2196
+ id: string;
2197
+ when: string;
2198
+ text: string;
2199
+ importance: number;
2200
+ evidence: string;
2201
+ }[];
2202
+ summaries: {
2203
+ id: string;
2204
+ when: string;
2205
+ text: string;
2206
+ importance: number;
2207
+ }[];
2208
+ landmarks: {
2209
+ id: string;
2210
+ when: string;
2211
+ text: string;
2212
+ importance: number;
2213
+ evidence: string;
2214
+ }[];
2215
+ recentlySeen: {
2216
+ id: string;
2217
+ when: string;
2218
+ text: string;
2219
+ evidence: string;
2220
+ }[];
2221
+ myMovements: string[];
2222
+ myEarlierActivities: {
2223
+ since: string;
2224
+ what: string;
2225
+ }[];
2226
+ beliefs: {
2227
+ id: string;
2228
+ subject: string;
2229
+ claim: string;
2230
+ source: string;
2231
+ }[];
2232
+ promisedToMe: {
2233
+ id: string;
2234
+ by: string;
2235
+ text: string;
2236
+ due: string | null;
2237
+ }[];
2238
+ commitments: ({
2239
+ id: string;
2240
+ to: string;
2241
+ text: string;
2242
+ due: string | null;
2243
+ } | {
2244
+ minutesLeft: number;
2245
+ id: string;
2246
+ to: string;
2247
+ text: string;
2248
+ due: string | null;
2249
+ } | {
2250
+ minutesPast: number;
2251
+ id: string;
2252
+ to: string;
2253
+ text: string;
2254
+ due: string | null;
2255
+ })[];
2256
+ messages?: string;
2257
+ setting: string;
2258
+ };
2259
+ export type ReactionTrigger = {
2260
+ kind: string;
2261
+ actorId: string | null;
2262
+ text: string;
2263
+ narration: string | null;
2264
+ pressure?: string | null;
2265
+ noticedFrom?: string | null;
2266
+ thingIds?: readonly string[];
2267
+ };
2268
+ export declare function modelContextPeople(state: LivingState, actorId: string | null, phase: string, input: Readonly<Record<string, unknown>>, requested: readonly string[]): {
2269
+ focusIds: string[];
2270
+ unavailable: string[];
2271
+ };
2272
+ export declare function characterReactionInput(state: LivingState, person: LivingPerson, trigger: ReactionTrigger, _fitted?: boolean, previousErrors?: readonly unknown[], focusIds?: readonly string[]): {
2273
+ playerId: string;
2274
+ playerName: string | null;
2275
+ playerPronouns: string | null;
2276
+ playerHere: boolean;
2277
+ exits: {
2278
+ id: string;
2279
+ name: string;
2280
+ }[];
2281
+ directory: {
2282
+ people: {
2283
+ noAnswerSince?: string;
2284
+ id: string;
2285
+ name: string;
2286
+ pronouns: string;
2287
+ role: string | null;
2288
+ here: boolean;
2289
+ }[];
2290
+ };
2291
+ votes?: {
2292
+ id: string;
2293
+ question: string;
2294
+ needed: number | null;
2295
+ closes: string | null;
2296
+ count: string | null;
2297
+ }[];
2298
+ happened: {
2299
+ kind: string;
2300
+ by: null;
2301
+ byId: null;
2302
+ text: string;
2303
+ narration: null;
2304
+ from: string | null;
2305
+ } | {
2306
+ to?: string[] | undefined;
2307
+ kind: string;
2308
+ by: string;
2309
+ byId: string | null;
2310
+ text: string;
2311
+ narration: string | null;
2312
+ pressure: string | null;
2313
+ from?: undefined;
2314
+ };
2315
+ requests: {
2316
+ waitingMinutes?: number | undefined;
2317
+ answer?: string | undefined;
2318
+ id: string;
2319
+ fromId: string;
2320
+ toId: string;
2321
+ topic: string;
2322
+ status: "done" | "open" | "refused" | "answered";
2323
+ }[];
2324
+ stances: {
2325
+ actorId: string;
2326
+ status: "report" | "refuse" | "undecided" | "cooperate" | "avoid" | "confront";
2327
+ sourceSeq: number;
2328
+ }[];
2329
+ plan: {
2330
+ intent: string;
2331
+ due: string;
2332
+ placeId: string | null;
2333
+ targetId: string | null;
2334
+ } | null;
2335
+ scene: {
2336
+ id: string;
2337
+ name: string;
2338
+ kind: "private" | "transit" | "room" | "outdoors";
2339
+ summary: string;
2340
+ conditions: string[];
2341
+ people: {
2342
+ holding: string[];
2343
+ mood: null;
2344
+ condition: string | null;
2345
+ doing: string | null;
2346
+ held: null;
2347
+ incapacitated: boolean;
2348
+ arrived?: string | undefined;
2349
+ id: string;
2350
+ name: string;
2351
+ role: string;
2352
+ pronouns: string;
2353
+ summary: string;
2354
+ }[];
2355
+ objects: {
2356
+ refereeOnly?: {
2357
+ when: string;
2358
+ what: string;
2359
+ } | undefined;
2360
+ id: string;
2361
+ name: string;
2362
+ summary: string;
2363
+ condition: string;
2364
+ singlePersonMovable: boolean;
2365
+ ownerName: string | null;
2366
+ }[];
2367
+ entities: {
2368
+ refereeOnly?: {
2369
+ when: string;
2370
+ what: string;
2371
+ } | undefined;
2372
+ properties: {
2373
+ [k: string]: string | number | boolean | undefined;
2374
+ };
2375
+ relations: {
2376
+ [k: string]: string;
2377
+ };
2378
+ members?: string[] | undefined;
2379
+ condition?: string | undefined;
2380
+ holderId?: string | null | undefined;
2381
+ id: string;
2382
+ kindId: string;
2383
+ kindName: string;
2384
+ name: string;
2385
+ }[];
2386
+ exits: {
2387
+ id: string;
2388
+ name: string;
2389
+ }[];
2390
+ };
2391
+ conversation: {
2392
+ speaker: string;
2393
+ speakerId: string;
2394
+ to: string[];
2395
+ text: string;
2396
+ }[];
2397
+ myRecentLines: string[];
2398
+ clock: string;
2399
+ awakeSince?: string;
2400
+ papersInMind?: {
2401
+ id: string;
2402
+ name: string;
2403
+ words: string;
2404
+ }[];
2405
+ myPapers?: {
2406
+ id: string;
2407
+ name: string;
2408
+ words: string;
2409
+ }[];
2410
+ deadlines?: {
2411
+ what: string;
2412
+ due: string;
2413
+ minutesLeft?: number;
2414
+ minutesPast?: number;
2415
+ outcome?: string;
2416
+ averted?: boolean;
2417
+ }[];
2418
+ identity: {
2419
+ id: string;
2420
+ name: string;
2421
+ role: string;
2422
+ pronouns: string;
2423
+ character: {
2424
+ voice: string;
2425
+ values: string[];
2426
+ redLines: string[];
2427
+ privateConcerns: string[];
2428
+ };
2429
+ mood: string;
2430
+ condition: string | null;
2431
+ held: string | null;
2432
+ money: number | null;
2433
+ blocked: string[];
2434
+ };
2435
+ goals: {
2436
+ id: string;
2437
+ text: string;
2438
+ }[];
2439
+ relationships: {
2440
+ note?: string | undefined;
2441
+ id: string;
2442
+ name: string;
2443
+ trust: number;
2444
+ warmth: number;
2445
+ }[];
2446
+ pressing: {
2447
+ id: string;
2448
+ when: string;
2449
+ minutesAgo: number;
2450
+ text: string;
2451
+ }[];
2452
+ memories: {
2453
+ id: string;
2454
+ when: string;
2455
+ text: string;
2456
+ importance: number;
2457
+ evidence: string;
2458
+ }[];
2459
+ summaries: {
2460
+ id: string;
2461
+ when: string;
2462
+ text: string;
2463
+ importance: number;
2464
+ }[];
2465
+ landmarks: {
2466
+ id: string;
2467
+ when: string;
2468
+ text: string;
2469
+ importance: number;
2470
+ evidence: string;
2471
+ }[];
2472
+ recentlySeen: {
2473
+ id: string;
2474
+ when: string;
2475
+ text: string;
2476
+ evidence: string;
2477
+ }[];
2478
+ myMovements: string[];
2479
+ myEarlierActivities: {
2480
+ since: string;
2481
+ what: string;
2482
+ }[];
2483
+ beliefs: {
2484
+ id: string;
2485
+ subject: string;
2486
+ claim: string;
2487
+ source: string;
2488
+ }[];
2489
+ promisedToMe: {
2490
+ id: string;
2491
+ by: string;
2492
+ text: string;
2493
+ due: string | null;
2494
+ }[];
2495
+ commitments: ({
2496
+ id: string;
2497
+ to: string;
2498
+ text: string;
2499
+ due: string | null;
2500
+ } | {
2501
+ minutesLeft: number;
2502
+ id: string;
2503
+ to: string;
2504
+ text: string;
2505
+ due: string | null;
2506
+ } | {
2507
+ minutesPast: number;
2508
+ id: string;
2509
+ to: string;
2510
+ text: string;
2511
+ due: string | null;
2512
+ })[];
2513
+ messages?: string;
2514
+ setting: string;
2515
+ previousErrors?: unknown[] | undefined;
2516
+ phase: string;
2517
+ };
2518
+ export declare function avertedAhead(state: LivingState, item: LivingState['schedule'][number]): boolean;
2519
+ export declare function awakeSince(state: LivingState, person: LivingPerson): {
2520
+ awakeSince?: string;
2521
+ };
2522
+ export declare function ownPapers(state: LivingState, personId: string): {
2523
+ myPapers?: {
2524
+ id: string;
2525
+ name: string;
2526
+ words: string;
2527
+ }[];
2528
+ };
2529
+ export declare function papersInMind(state: LivingState, person: LivingPerson, focusIds: readonly string[]): {
2530
+ papersInMind?: {
2531
+ id: string;
2532
+ name: string;
2533
+ words: string;
2534
+ }[];
2535
+ };
2536
+ export declare function openVotes(state: LivingState, personId: string, concerned?: ReadonlySet<string>): {
2537
+ votes?: {
2538
+ id: string;
2539
+ question: string;
2540
+ needed: number | null;
2541
+ closes: string | null;
2542
+ count: string | null;
2543
+ }[];
2544
+ };
2545
+ export declare function characterPlanInput(state: LivingState, person: LivingPerson, plan: string | {
2546
+ intent: string;
2547
+ overdueMinutes?: number;
2548
+ placeId?: string | null;
2549
+ targetId?: string | null;
2550
+ } | null, voteTurn?: boolean, focusIds?: readonly string[]): {
2551
+ directory: {
2552
+ places: {
2553
+ id: string;
2554
+ name: string;
2555
+ }[];
2556
+ people: {
2557
+ noAnswerSince?: string;
2558
+ id: string;
2559
+ name: string;
2560
+ pronouns: string;
2561
+ role: string | null;
2562
+ lastKnownPlaceId: string | null;
2563
+ }[];
2564
+ };
2565
+ playerId: string;
2566
+ votes?: {
2567
+ id: string;
2568
+ question: string;
2569
+ needed: number | null;
2570
+ closes: string | null;
2571
+ count: string | null;
2572
+ }[];
2573
+ duePlan: {
2574
+ intent: string;
2575
+ overdueMinutes?: number;
2576
+ placeId?: string | null;
2577
+ targetId?: string | null;
2578
+ } | null;
2579
+ requests: {
2580
+ waitingMinutes?: number | undefined;
2581
+ answer?: string | undefined;
2582
+ id: string;
2583
+ fromId: string;
2584
+ toId: string;
2585
+ topic: string;
2586
+ status: "done" | "open" | "refused" | "answered";
2587
+ }[];
2588
+ stances: {
2589
+ actorId: string;
2590
+ status: "report" | "refuse" | "undecided" | "cooperate" | "avoid" | "confront";
2591
+ sourceSeq: number;
2592
+ }[];
2593
+ plan: {
2594
+ intent: string;
2595
+ due: string;
2596
+ placeId: string | null;
2597
+ targetId: string | null;
2598
+ } | null;
2599
+ scene: {
2600
+ id: string;
2601
+ name: string;
2602
+ kind: "private" | "transit" | "room" | "outdoors";
2603
+ summary: string;
2604
+ conditions: string[];
2605
+ people: {
2606
+ holding: string[];
2607
+ mood: null;
2608
+ condition: string | null;
2609
+ doing: string | null;
2610
+ held: null;
2611
+ incapacitated: boolean;
2612
+ arrived?: string | undefined;
2613
+ id: string;
2614
+ name: string;
2615
+ role: string;
2616
+ pronouns: string;
2617
+ summary: string;
2618
+ }[];
2619
+ objects: {
2620
+ refereeOnly?: {
2621
+ when: string;
2622
+ what: string;
2623
+ } | undefined;
2624
+ id: string;
2625
+ name: string;
2626
+ summary: string;
2627
+ condition: string;
2628
+ singlePersonMovable: boolean;
2629
+ ownerName: string | null;
2630
+ }[];
2631
+ entities: {
2632
+ refereeOnly?: {
2633
+ when: string;
2634
+ what: string;
2635
+ } | undefined;
2636
+ properties: {
2637
+ [k: string]: string | number | boolean | undefined;
2638
+ };
2639
+ relations: {
2640
+ [k: string]: string;
2641
+ };
2642
+ members?: string[] | undefined;
2643
+ condition?: string | undefined;
2644
+ holderId?: string | null | undefined;
2645
+ id: string;
2646
+ kindId: string;
2647
+ kindName: string;
2648
+ name: string;
2649
+ }[];
2650
+ exits: {
2651
+ id: string;
2652
+ name: string;
2653
+ }[];
2654
+ };
2655
+ conversation: {
2656
+ speaker: string;
2657
+ speakerId: string;
2658
+ to: string[];
2659
+ text: string;
2660
+ }[];
2661
+ myRecentLines: string[];
2662
+ clock: string;
2663
+ awakeSince?: string;
2664
+ papersInMind?: {
2665
+ id: string;
2666
+ name: string;
2667
+ words: string;
2668
+ }[];
2669
+ myPapers?: {
2670
+ id: string;
2671
+ name: string;
2672
+ words: string;
2673
+ }[];
2674
+ deadlines?: {
2675
+ what: string;
2676
+ due: string;
2677
+ minutesLeft?: number;
2678
+ minutesPast?: number;
2679
+ outcome?: string;
2680
+ averted?: boolean;
2681
+ }[];
2682
+ identity: {
2683
+ id: string;
2684
+ name: string;
2685
+ role: string;
2686
+ pronouns: string;
2687
+ character: {
2688
+ voice: string;
2689
+ values: string[];
2690
+ redLines: string[];
2691
+ privateConcerns: string[];
2692
+ };
2693
+ mood: string;
2694
+ condition: string | null;
2695
+ held: string | null;
2696
+ money: number | null;
2697
+ blocked: string[];
2698
+ };
2699
+ goals: {
2700
+ id: string;
2701
+ text: string;
2702
+ }[];
2703
+ relationships: {
2704
+ note?: string | undefined;
2705
+ id: string;
2706
+ name: string;
2707
+ trust: number;
2708
+ warmth: number;
2709
+ }[];
2710
+ pressing: {
2711
+ id: string;
2712
+ when: string;
2713
+ minutesAgo: number;
2714
+ text: string;
2715
+ }[];
2716
+ memories: {
2717
+ id: string;
2718
+ when: string;
2719
+ text: string;
2720
+ importance: number;
2721
+ evidence: string;
2722
+ }[];
2723
+ summaries: {
2724
+ id: string;
2725
+ when: string;
2726
+ text: string;
2727
+ importance: number;
2728
+ }[];
2729
+ landmarks: {
2730
+ id: string;
2731
+ when: string;
2732
+ text: string;
2733
+ importance: number;
2734
+ evidence: string;
2735
+ }[];
2736
+ recentlySeen: {
2737
+ id: string;
2738
+ when: string;
2739
+ text: string;
2740
+ evidence: string;
2741
+ }[];
2742
+ myMovements: string[];
2743
+ myEarlierActivities: {
2744
+ since: string;
2745
+ what: string;
2746
+ }[];
2747
+ beliefs: {
2748
+ id: string;
2749
+ subject: string;
2750
+ claim: string;
2751
+ source: string;
2752
+ }[];
2753
+ promisedToMe: {
2754
+ id: string;
2755
+ by: string;
2756
+ text: string;
2757
+ due: string | null;
2758
+ }[];
2759
+ commitments: ({
2760
+ id: string;
2761
+ to: string;
2762
+ text: string;
2763
+ due: string | null;
2764
+ } | {
2765
+ minutesLeft: number;
2766
+ id: string;
2767
+ to: string;
2768
+ text: string;
2769
+ due: string | null;
2770
+ } | {
2771
+ minutesPast: number;
2772
+ id: string;
2773
+ to: string;
2774
+ text: string;
2775
+ due: string | null;
2776
+ })[];
2777
+ messages?: string;
2778
+ setting: string;
2779
+ phase: string;
2780
+ };
2781
+ export declare function characterMessageReplyInput(state: LivingState, person: LivingPerson, message: {
2782
+ fromId: string;
2783
+ text: string;
2784
+ }, focusIds?: readonly string[]): {
2785
+ message: {
2786
+ fromId: string;
2787
+ from: string;
2788
+ text: string;
2789
+ };
2790
+ directory: {
2791
+ people?: {
2792
+ id: string;
2793
+ name: string;
2794
+ }[] | undefined;
2795
+ places: {
2796
+ id: string;
2797
+ name: string;
2798
+ }[];
2799
+ };
2800
+ requests: {
2801
+ waitingMinutes?: number | undefined;
2802
+ answer?: string | undefined;
2803
+ id: string;
2804
+ fromId: string;
2805
+ toId: string;
2806
+ topic: string;
2807
+ status: "done" | "open" | "refused" | "answered";
2808
+ }[];
2809
+ stances: {
2810
+ actorId: string;
2811
+ status: "report" | "refuse" | "undecided" | "cooperate" | "avoid" | "confront";
2812
+ sourceSeq: number;
2813
+ }[];
2814
+ plan: {
2815
+ intent: string;
2816
+ due: string;
2817
+ placeId: string | null;
2818
+ targetId: string | null;
2819
+ } | null;
2820
+ scene: {
2821
+ id: string;
2822
+ name: string;
2823
+ kind: "private" | "transit" | "room" | "outdoors";
2824
+ summary: string;
2825
+ conditions: string[];
2826
+ people: {
2827
+ holding: string[];
2828
+ mood: null;
2829
+ condition: string | null;
2830
+ doing: string | null;
2831
+ held: null;
2832
+ incapacitated: boolean;
2833
+ arrived?: string | undefined;
2834
+ id: string;
2835
+ name: string;
2836
+ role: string;
2837
+ pronouns: string;
2838
+ summary: string;
2839
+ }[];
2840
+ objects: {
2841
+ refereeOnly?: {
2842
+ when: string;
2843
+ what: string;
2844
+ } | undefined;
2845
+ id: string;
2846
+ name: string;
2847
+ summary: string;
2848
+ condition: string;
2849
+ singlePersonMovable: boolean;
2850
+ ownerName: string | null;
2851
+ }[];
2852
+ entities: {
2853
+ refereeOnly?: {
2854
+ when: string;
2855
+ what: string;
2856
+ } | undefined;
2857
+ properties: {
2858
+ [k: string]: string | number | boolean | undefined;
2859
+ };
2860
+ relations: {
2861
+ [k: string]: string;
2862
+ };
2863
+ members?: string[] | undefined;
2864
+ condition?: string | undefined;
2865
+ holderId?: string | null | undefined;
2866
+ id: string;
2867
+ kindId: string;
2868
+ kindName: string;
2869
+ name: string;
2870
+ }[];
2871
+ exits: {
2872
+ id: string;
2873
+ name: string;
2874
+ }[];
2875
+ };
2876
+ conversation: {
2877
+ speaker: string;
2878
+ speakerId: string;
2879
+ to: string[];
2880
+ text: string;
2881
+ }[];
2882
+ myRecentLines: string[];
2883
+ clock: string;
2884
+ awakeSince?: string;
2885
+ papersInMind?: {
2886
+ id: string;
2887
+ name: string;
2888
+ words: string;
2889
+ }[];
2890
+ myPapers?: {
2891
+ id: string;
2892
+ name: string;
2893
+ words: string;
2894
+ }[];
2895
+ deadlines?: {
2896
+ what: string;
2897
+ due: string;
2898
+ minutesLeft?: number;
2899
+ minutesPast?: number;
2900
+ outcome?: string;
2901
+ averted?: boolean;
2902
+ }[];
2903
+ identity: {
2904
+ id: string;
2905
+ name: string;
2906
+ role: string;
2907
+ pronouns: string;
2908
+ character: {
2909
+ voice: string;
2910
+ values: string[];
2911
+ redLines: string[];
2912
+ privateConcerns: string[];
2913
+ };
2914
+ mood: string;
2915
+ condition: string | null;
2916
+ held: string | null;
2917
+ money: number | null;
2918
+ blocked: string[];
2919
+ };
2920
+ goals: {
2921
+ id: string;
2922
+ text: string;
2923
+ }[];
2924
+ relationships: {
2925
+ note?: string | undefined;
2926
+ id: string;
2927
+ name: string;
2928
+ trust: number;
2929
+ warmth: number;
2930
+ }[];
2931
+ pressing: {
2932
+ id: string;
2933
+ when: string;
2934
+ minutesAgo: number;
2935
+ text: string;
2936
+ }[];
2937
+ memories: {
2938
+ id: string;
2939
+ when: string;
2940
+ text: string;
2941
+ importance: number;
2942
+ evidence: string;
2943
+ }[];
2944
+ summaries: {
2945
+ id: string;
2946
+ when: string;
2947
+ text: string;
2948
+ importance: number;
2949
+ }[];
2950
+ landmarks: {
2951
+ id: string;
2952
+ when: string;
2953
+ text: string;
2954
+ importance: number;
2955
+ evidence: string;
2956
+ }[];
2957
+ recentlySeen: {
2958
+ id: string;
2959
+ when: string;
2960
+ text: string;
2961
+ evidence: string;
2962
+ }[];
2963
+ myMovements: string[];
2964
+ myEarlierActivities: {
2965
+ since: string;
2966
+ what: string;
2967
+ }[];
2968
+ beliefs: {
2969
+ id: string;
2970
+ subject: string;
2971
+ claim: string;
2972
+ source: string;
2973
+ }[];
2974
+ promisedToMe: {
2975
+ id: string;
2976
+ by: string;
2977
+ text: string;
2978
+ due: string | null;
2979
+ }[];
2980
+ commitments: ({
2981
+ id: string;
2982
+ to: string;
2983
+ text: string;
2984
+ due: string | null;
2985
+ } | {
2986
+ minutesLeft: number;
2987
+ id: string;
2988
+ to: string;
2989
+ text: string;
2990
+ due: string | null;
2991
+ } | {
2992
+ minutesPast: number;
2993
+ id: string;
2994
+ to: string;
2995
+ text: string;
2996
+ due: string | null;
2997
+ })[];
2998
+ messages?: string;
2999
+ setting: string;
3000
+ phase: string;
3001
+ };
3002
+ export declare function epilogueInput(state: LivingState): {
3003
+ relationships: never[];
3004
+ whereabouts: {
3005
+ name: string;
3006
+ place: string | null;
3007
+ mood: string | null;
3008
+ condition: string | null;
3009
+ incapacitated: boolean | null;
3010
+ }[];
3011
+ places: {
3012
+ name: string;
3013
+ conditions: string[];
3014
+ }[];
3015
+ objects: {
3016
+ name: string;
3017
+ condition: string;
3018
+ where: string | null;
3019
+ }[];
3020
+ commitments: {
3021
+ by: string;
3022
+ to: string;
3023
+ text: string;
3024
+ status: "open" | "kept" | "broken";
3025
+ }[];
3026
+ keyEvents: {
3027
+ kind: string;
3028
+ at: string;
3029
+ place: string | null;
3030
+ summary: string;
3031
+ outcome: string | null;
3032
+ witnesses: string[];
3033
+ }[];
3034
+ clock: string;
3035
+ votes?: undefined;
3036
+ phase: string;
3037
+ player: {
3038
+ name: string;
3039
+ role: string;
3040
+ pronouns: string;
3041
+ place: string | null;
3042
+ money: number | null;
3043
+ incapacitated: boolean;
3044
+ forcedEnding: string | null;
3045
+ };
3046
+ opening: {
3047
+ title: string;
3048
+ situation: string;
3049
+ stakes: string;
3050
+ };
3051
+ tensions: {
3052
+ title: string;
3053
+ summary: string;
3054
+ status: "settled" | "open";
3055
+ resolution: string | null;
3056
+ latest?: string | null | undefined;
3057
+ }[];
3058
+ } | {
3059
+ relationships: never[];
3060
+ whereabouts: {
3061
+ name: string;
3062
+ place: string | null;
3063
+ mood: string | null;
3064
+ condition: string | null;
3065
+ incapacitated: boolean | null;
3066
+ }[];
3067
+ places: {
3068
+ name: string;
3069
+ conditions: string[];
3070
+ }[];
3071
+ objects: {
3072
+ name: string;
3073
+ condition: string;
3074
+ where: string | null;
3075
+ }[];
3076
+ commitments: {
3077
+ by: string;
3078
+ to: string;
3079
+ text: string;
3080
+ status: "open" | "kept" | "broken";
3081
+ }[];
3082
+ keyEvents: {
3083
+ kind: string;
3084
+ at: string;
3085
+ place: string | null;
3086
+ summary: string;
3087
+ outcome: string | null;
3088
+ witnesses: string[];
3089
+ }[];
3090
+ clock: string;
3091
+ votes: {
3092
+ name: string;
3093
+ question: string;
3094
+ result: "failed" | "passed" | "lapsed" | null;
3095
+ count: string | null;
3096
+ ballots: {
3097
+ name: string;
3098
+ choice: "yes" | "no" | "abstain";
3099
+ }[];
3100
+ }[];
3101
+ phase: string;
3102
+ player: {
3103
+ name: string;
3104
+ role: string;
3105
+ pronouns: string;
3106
+ place: string | null;
3107
+ money: number | null;
3108
+ incapacitated: boolean;
3109
+ forcedEnding: string | null;
3110
+ };
3111
+ opening: {
3112
+ title: string;
3113
+ situation: string;
3114
+ stakes: string;
3115
+ };
3116
+ tensions: {
3117
+ title: string;
3118
+ summary: string;
3119
+ status: "settled" | "open";
3120
+ resolution: string | null;
3121
+ latest?: string | null | undefined;
3122
+ }[];
3123
+ };
3124
+ export declare const WORLD_PRINCIPLES = "People know only what they perceive, read or are told. They have their own aims, duties, feelings, and judgment. The setting decides what is physically and socially possible. An act can fail yet still cause a real result. A lasting result needs a typed change in state. Speech is a statement until evidence supports its claim. Describe only what a person in the scene can sense. Keep private thoughts and unseen causes in the objective record. Use ids for known people, things, places, kinds, problems. Let serious events affect later choices.";
3125
+ export declare const GAME_MASTER_SYSTEM: string;
3126
+ export declare const SPEECH_IMPACT_SYSTEM: string;
3127
+ export declare const CHARACTER_REACTION_SYSTEM: string;
3128
+ export declare const CHARACTER_PLAN_SYSTEM: string;
3129
+ export declare const CHARACTER_MESSAGE_SYSTEM: string;
3130
+ export declare const NARRATOR_EPILOGUE_SYSTEM: string;