paracosm 0.4.346 → 0.4.377

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 (671) hide show
  1. package/README.md +186 -14
  2. package/config/leaders.example.json +32 -0
  3. package/config/leaders.json +32 -0
  4. package/dist/cli/cli-run-options.d.ts +11 -0
  5. package/dist/cli/cli-run-options.d.ts.map +1 -0
  6. package/dist/cli/cli-run-options.js +39 -0
  7. package/dist/cli/cli-run-options.js.map +1 -0
  8. package/dist/cli/compile-cli-options.d.ts +14 -0
  9. package/dist/cli/compile-cli-options.d.ts.map +1 -0
  10. package/dist/cli/compile-cli-options.js +48 -0
  11. package/dist/cli/compile-cli-options.js.map +1 -0
  12. package/dist/cli/compile.d.ts +11 -0
  13. package/dist/cli/compile.d.ts.map +1 -0
  14. package/dist/cli/compile.js +92 -0
  15. package/dist/cli/compile.js.map +1 -0
  16. package/dist/cli/custom-scenarios.d.ts +10 -0
  17. package/dist/cli/custom-scenarios.d.ts.map +1 -0
  18. package/dist/cli/custom-scenarios.js +93 -0
  19. package/dist/cli/custom-scenarios.js.map +1 -0
  20. package/dist/cli/leaders-resolver.d.ts +26 -0
  21. package/dist/cli/leaders-resolver.d.ts.map +1 -0
  22. package/dist/cli/leaders-resolver.js +66 -0
  23. package/dist/cli/leaders-resolver.js.map +1 -0
  24. package/dist/cli/pair-runner.d.ts +23 -0
  25. package/dist/cli/pair-runner.d.ts.map +1 -0
  26. package/dist/cli/pair-runner.js +225 -0
  27. package/dist/cli/pair-runner.js.map +1 -0
  28. package/dist/cli/rate-limiter.d.ts +78 -0
  29. package/dist/cli/rate-limiter.d.ts.map +1 -0
  30. package/dist/cli/rate-limiter.js +193 -0
  31. package/dist/cli/rate-limiter.js.map +1 -0
  32. package/dist/cli/retry-stats.d.ts +179 -0
  33. package/dist/cli/retry-stats.d.ts.map +1 -0
  34. package/dist/cli/retry-stats.js +167 -0
  35. package/dist/cli/retry-stats.js.map +1 -0
  36. package/dist/cli/run-a.d.ts +2 -0
  37. package/dist/cli/run-a.d.ts.map +1 -0
  38. package/dist/cli/run-a.js +13 -0
  39. package/dist/cli/run-a.js.map +1 -0
  40. package/dist/cli/run-b.d.ts +2 -0
  41. package/dist/cli/run-b.d.ts.map +1 -0
  42. package/dist/cli/run-b.js +13 -0
  43. package/dist/cli/run-b.js.map +1 -0
  44. package/dist/cli/run.d.ts +18 -0
  45. package/dist/cli/run.d.ts.map +1 -0
  46. package/dist/cli/run.js +135 -0
  47. package/dist/cli/run.js.map +1 -0
  48. package/dist/cli/serve.d.ts +10 -0
  49. package/dist/cli/serve.d.ts.map +1 -0
  50. package/dist/cli/serve.js +71 -0
  51. package/dist/cli/serve.js.map +1 -0
  52. package/dist/cli/server/routes/platform-api.d.ts +8 -0
  53. package/dist/cli/server/routes/platform-api.d.ts.map +1 -0
  54. package/dist/cli/server/routes/platform-api.js +41 -0
  55. package/dist/cli/server/routes/platform-api.js.map +1 -0
  56. package/dist/cli/server/routes/public-demo.d.ts +4 -0
  57. package/dist/cli/server/routes/public-demo.d.ts.map +1 -0
  58. package/dist/cli/server/routes/public-demo.js +16 -0
  59. package/dist/cli/server/routes/public-demo.js.map +1 -0
  60. package/dist/cli/server/run-history-store.d.ts +8 -0
  61. package/dist/cli/server/run-history-store.d.ts.map +1 -0
  62. package/dist/cli/server/run-history-store.js +8 -0
  63. package/dist/cli/server/run-history-store.js.map +1 -0
  64. package/dist/cli/server/run-record.d.ts +14 -0
  65. package/dist/cli/server/run-record.d.ts.map +1 -0
  66. package/dist/cli/server/run-record.js +12 -0
  67. package/dist/cli/server/run-record.js.map +1 -0
  68. package/dist/cli/server/server-mode.d.ts +3 -0
  69. package/dist/cli/server/server-mode.d.ts.map +1 -0
  70. package/dist/cli/server/server-mode.js +8 -0
  71. package/dist/cli/server/server-mode.js.map +1 -0
  72. package/dist/cli/server-app.d.ts +46 -0
  73. package/dist/cli/server-app.d.ts.map +1 -0
  74. package/dist/cli/server-app.js +1846 -0
  75. package/dist/cli/server-app.js.map +1 -0
  76. package/dist/cli/session-store.d.ts +103 -0
  77. package/dist/cli/session-store.d.ts.map +1 -0
  78. package/dist/cli/session-store.js +254 -0
  79. package/dist/cli/session-store.js.map +1 -0
  80. package/dist/cli/session-title.d.ts +81 -0
  81. package/dist/cli/session-title.d.ts.map +1 -0
  82. package/dist/cli/session-title.js +229 -0
  83. package/dist/cli/session-title.js.map +1 -0
  84. package/dist/cli/sim-config.d.ts.map +1 -0
  85. package/dist/cli/sim-config.js.map +1 -0
  86. package/dist/cli/types.d.ts.map +1 -0
  87. package/dist/{src/cli → cli}/types.js.map +1 -1
  88. package/dist/engine/_template/index.d.ts.map +1 -0
  89. package/dist/engine/_template/index.js.map +1 -0
  90. package/dist/engine/compiler/cache.d.ts.map +1 -0
  91. package/dist/engine/compiler/cache.js.map +1 -0
  92. package/dist/engine/compiler/generate-director.d.ts.map +1 -0
  93. package/dist/engine/compiler/generate-director.js.map +1 -0
  94. package/dist/engine/compiler/generate-fingerprint.d.ts.map +1 -0
  95. package/dist/engine/compiler/generate-fingerprint.js.map +1 -0
  96. package/dist/engine/compiler/generate-milestones.d.ts.map +1 -0
  97. package/dist/engine/compiler/generate-milestones.js.map +1 -0
  98. package/dist/engine/compiler/generate-politics.d.ts.map +1 -0
  99. package/dist/engine/compiler/generate-politics.js.map +1 -0
  100. package/dist/engine/compiler/generate-progression.d.ts.map +1 -0
  101. package/dist/engine/compiler/generate-progression.js.map +1 -0
  102. package/dist/engine/compiler/generate-prompts.d.ts.map +1 -0
  103. package/dist/engine/compiler/generate-prompts.js.map +1 -0
  104. package/dist/engine/compiler/generate-reactions.d.ts.map +1 -0
  105. package/dist/engine/compiler/generate-reactions.js.map +1 -0
  106. package/dist/engine/compiler/index.d.ts.map +1 -0
  107. package/dist/engine/compiler/index.js.map +1 -0
  108. package/dist/engine/compiler/llm-invocations/generateValidatedCode.d.ts.map +1 -0
  109. package/dist/engine/compiler/llm-invocations/generateValidatedCode.js.map +1 -0
  110. package/dist/engine/compiler/llm-invocations/generateValidatedJson.d.ts.map +1 -0
  111. package/dist/engine/compiler/llm-invocations/generateValidatedJson.js.map +1 -0
  112. package/dist/engine/compiler/llm-invocations/generateValidatedObject.d.ts.map +1 -0
  113. package/dist/engine/compiler/llm-invocations/generateValidatedObject.js.map +1 -0
  114. package/dist/engine/compiler/llm-invocations/generateValidatedProse.d.ts.map +1 -0
  115. package/dist/engine/compiler/llm-invocations/generateValidatedProse.js.map +1 -0
  116. package/dist/engine/compiler/schemas/index.d.ts.map +1 -0
  117. package/dist/engine/compiler/schemas/index.js.map +1 -0
  118. package/dist/engine/compiler/schemas/milestones.d.ts.map +1 -0
  119. package/dist/engine/compiler/schemas/milestones.js.map +1 -0
  120. package/dist/engine/compiler/seed-ingestion.d.ts.map +1 -0
  121. package/dist/engine/compiler/seed-ingestion.js.map +1 -0
  122. package/dist/engine/compiler/telemetry.d.ts.map +1 -0
  123. package/dist/engine/compiler/telemetry.js.map +1 -0
  124. package/dist/engine/compiler/types.d.ts.map +1 -0
  125. package/dist/engine/compiler/types.js.map +1 -0
  126. package/dist/engine/compiler/validate.d.ts.map +1 -0
  127. package/dist/engine/compiler/validate.js.map +1 -0
  128. package/dist/engine/core/agent-generator.d.ts.map +1 -0
  129. package/dist/engine/core/agent-generator.js.map +1 -0
  130. package/dist/engine/core/kernel.d.ts.map +1 -0
  131. package/dist/engine/core/kernel.js.map +1 -0
  132. package/dist/engine/core/progression.d.ts.map +1 -0
  133. package/dist/engine/core/progression.js.map +1 -0
  134. package/dist/engine/core/rng.d.ts.map +1 -0
  135. package/dist/engine/core/rng.js.map +1 -0
  136. package/dist/engine/core/state.d.ts.map +1 -0
  137. package/dist/engine/core/state.js.map +1 -0
  138. package/dist/engine/effect-registry.d.ts.map +1 -0
  139. package/dist/engine/effect-registry.js.map +1 -0
  140. package/dist/engine/event-taxonomy.d.ts.map +1 -0
  141. package/dist/engine/event-taxonomy.js.map +1 -0
  142. package/dist/{src/engine → engine}/index.d.ts +2 -0
  143. package/dist/engine/index.d.ts.map +1 -0
  144. package/dist/{src/engine → engine}/index.js +5 -0
  145. package/dist/engine/index.js.map +1 -0
  146. package/dist/engine/lunar/effects.d.ts.map +1 -0
  147. package/dist/engine/lunar/effects.js.map +1 -0
  148. package/dist/engine/lunar/events.d.ts.map +1 -0
  149. package/dist/engine/lunar/events.js.map +1 -0
  150. package/dist/engine/lunar/fingerprint.d.ts.map +1 -0
  151. package/dist/engine/lunar/fingerprint.js.map +1 -0
  152. package/dist/engine/lunar/hooks.d.ts.map +1 -0
  153. package/dist/engine/lunar/hooks.js.map +1 -0
  154. package/dist/engine/lunar/index.d.ts.map +1 -0
  155. package/dist/engine/lunar/index.js.map +1 -0
  156. package/dist/engine/lunar/metrics.d.ts.map +1 -0
  157. package/dist/engine/lunar/metrics.js.map +1 -0
  158. package/dist/engine/lunar/milestones.d.ts.map +1 -0
  159. package/dist/engine/lunar/milestones.js.map +1 -0
  160. package/dist/engine/lunar/names.d.ts.map +1 -0
  161. package/dist/engine/lunar/names.js.map +1 -0
  162. package/dist/engine/lunar/politics.d.ts.map +1 -0
  163. package/dist/engine/lunar/politics.js.map +1 -0
  164. package/dist/engine/lunar/presets.d.ts.map +1 -0
  165. package/dist/engine/lunar/presets.js.map +1 -0
  166. package/dist/engine/lunar/progression-hooks.d.ts.map +1 -0
  167. package/dist/engine/lunar/progression-hooks.js.map +1 -0
  168. package/dist/engine/lunar/prompts.d.ts.map +1 -0
  169. package/dist/engine/lunar/prompts.js.map +1 -0
  170. package/dist/engine/lunar/reactions.d.ts.map +1 -0
  171. package/dist/engine/lunar/reactions.js.map +1 -0
  172. package/dist/engine/lunar/research-bundle.d.ts.map +1 -0
  173. package/dist/engine/lunar/research-bundle.js.map +1 -0
  174. package/dist/engine/mars/effects.d.ts.map +1 -0
  175. package/dist/engine/mars/effects.js.map +1 -0
  176. package/dist/engine/mars/events.d.ts.map +1 -0
  177. package/dist/engine/mars/events.js.map +1 -0
  178. package/dist/engine/mars/fingerprint.d.ts.map +1 -0
  179. package/dist/engine/mars/fingerprint.js.map +1 -0
  180. package/dist/engine/mars/hooks.d.ts.map +1 -0
  181. package/dist/engine/mars/hooks.js.map +1 -0
  182. package/dist/engine/mars/index.d.ts.map +1 -0
  183. package/dist/engine/mars/index.js.map +1 -0
  184. package/dist/engine/mars/metrics.d.ts.map +1 -0
  185. package/dist/engine/mars/metrics.js.map +1 -0
  186. package/dist/engine/mars/milestones.d.ts.map +1 -0
  187. package/dist/engine/mars/milestones.js.map +1 -0
  188. package/dist/engine/mars/names.d.ts.map +1 -0
  189. package/dist/engine/mars/names.js.map +1 -0
  190. package/dist/engine/mars/politics.d.ts.map +1 -0
  191. package/dist/engine/mars/politics.js.map +1 -0
  192. package/dist/engine/mars/presets.d.ts.map +1 -0
  193. package/dist/engine/mars/presets.js.map +1 -0
  194. package/dist/engine/mars/progression-hooks.d.ts.map +1 -0
  195. package/dist/engine/mars/progression-hooks.js.map +1 -0
  196. package/dist/engine/mars/prompts.d.ts.map +1 -0
  197. package/dist/engine/mars/prompts.js.map +1 -0
  198. package/dist/engine/mars/reactions.d.ts.map +1 -0
  199. package/dist/engine/mars/reactions.js.map +1 -0
  200. package/dist/engine/mars/research-bundle.d.ts.map +1 -0
  201. package/dist/engine/mars/research-bundle.js.map +1 -0
  202. package/dist/engine/metric-registry.d.ts.map +1 -0
  203. package/dist/engine/metric-registry.js.map +1 -0
  204. package/dist/engine/provider-resolver.d.ts.map +1 -0
  205. package/dist/{src/engine → engine}/provider-resolver.js +2 -1
  206. package/dist/engine/provider-resolver.js.map +1 -0
  207. package/dist/engine/types.d.ts.map +1 -0
  208. package/dist/{src/engine → engine}/types.js.map +1 -1
  209. package/dist/runtime/agent-memory.d.ts.map +1 -0
  210. package/dist/runtime/agent-memory.js.map +1 -0
  211. package/dist/runtime/agent-reactions.d.ts.map +1 -0
  212. package/dist/runtime/agent-reactions.js.map +1 -0
  213. package/dist/runtime/batch.d.ts.map +1 -0
  214. package/dist/runtime/batch.js.map +1 -0
  215. package/dist/runtime/chat-agents.d.ts.map +1 -0
  216. package/dist/runtime/chat-agents.js.map +1 -0
  217. package/dist/runtime/citations-catalog.d.ts.map +1 -0
  218. package/dist/runtime/citations-catalog.js.map +1 -0
  219. package/dist/runtime/commander-setup.d.ts.map +1 -0
  220. package/dist/runtime/commander-setup.js.map +1 -0
  221. package/dist/runtime/contracts.d.ts.map +1 -0
  222. package/dist/{src/runtime → runtime}/contracts.js.map +1 -1
  223. package/dist/runtime/cost-tracker.d.ts.map +1 -0
  224. package/dist/runtime/cost-tracker.js.map +1 -0
  225. package/dist/runtime/departments.d.ts.map +1 -0
  226. package/dist/runtime/departments.js.map +1 -0
  227. package/dist/runtime/director.d.ts.map +1 -0
  228. package/dist/runtime/director.js.map +1 -0
  229. package/dist/runtime/economics-profile.d.ts.map +1 -0
  230. package/dist/runtime/economics-profile.js.map +1 -0
  231. package/dist/runtime/emergent-setup.d.ts.map +1 -0
  232. package/dist/runtime/emergent-setup.js.map +1 -0
  233. package/dist/runtime/generic-fingerprint.d.ts.map +1 -0
  234. package/dist/runtime/generic-fingerprint.js.map +1 -0
  235. package/dist/runtime/hexaco-cues/trajectory.d.ts.map +1 -0
  236. package/dist/runtime/hexaco-cues/trajectory.js.map +1 -0
  237. package/dist/runtime/hexaco-cues/translation.d.ts.map +1 -0
  238. package/dist/runtime/hexaco-cues/translation.js.map +1 -0
  239. package/dist/runtime/index.d.ts.map +1 -0
  240. package/dist/runtime/index.js.map +1 -0
  241. package/dist/runtime/llm-invocations/generateValidatedObject.d.ts.map +1 -0
  242. package/dist/runtime/llm-invocations/generateValidatedObject.js.map +1 -0
  243. package/dist/runtime/llm-invocations/sendAndValidate.d.ts.map +1 -0
  244. package/dist/runtime/llm-invocations/sendAndValidate.js.map +1 -0
  245. package/dist/runtime/orchestrator.d.ts.map +1 -0
  246. package/dist/runtime/orchestrator.js.map +1 -0
  247. package/dist/runtime/output-writer.d.ts.map +1 -0
  248. package/dist/runtime/output-writer.js.map +1 -0
  249. package/dist/runtime/parsers.d.ts.map +1 -0
  250. package/dist/runtime/parsers.js.map +1 -0
  251. package/dist/runtime/pricing.d.ts.map +1 -0
  252. package/dist/runtime/pricing.js.map +1 -0
  253. package/dist/runtime/provider-errors.d.ts.map +1 -0
  254. package/dist/runtime/provider-errors.js.map +1 -0
  255. package/dist/runtime/reaction-step.d.ts.map +1 -0
  256. package/dist/runtime/reaction-step.js.map +1 -0
  257. package/dist/runtime/research/knowledge-base.d.ts.map +1 -0
  258. package/dist/runtime/research/knowledge-base.js.map +1 -0
  259. package/dist/runtime/research/research-memory.d.ts.map +1 -0
  260. package/dist/runtime/research/research-memory.js.map +1 -0
  261. package/dist/runtime/research/research.d.ts.map +1 -0
  262. package/dist/runtime/research/research.js.map +1 -0
  263. package/dist/runtime/research/scenario-research.d.ts.map +1 -0
  264. package/dist/runtime/research/scenario-research.js.map +1 -0
  265. package/dist/runtime/research/scenarios.d.ts.map +1 -0
  266. package/dist/runtime/research/scenarios.js.map +1 -0
  267. package/dist/runtime/runtime-helpers.d.ts.map +1 -0
  268. package/dist/runtime/runtime-helpers.js.map +1 -0
  269. package/dist/runtime/schemas/commander.d.ts.map +1 -0
  270. package/dist/runtime/schemas/commander.js.map +1 -0
  271. package/dist/runtime/schemas/department.d.ts.map +1 -0
  272. package/dist/runtime/schemas/department.js.map +1 -0
  273. package/dist/runtime/schemas/director.d.ts.map +1 -0
  274. package/dist/runtime/schemas/director.js.map +1 -0
  275. package/dist/runtime/schemas/index.d.ts.map +1 -0
  276. package/dist/runtime/schemas/index.js.map +1 -0
  277. package/dist/runtime/schemas/reactions.d.ts.map +1 -0
  278. package/dist/runtime/schemas/reactions.js.map +1 -0
  279. package/dist/runtime/schemas/verdict.d.ts.map +1 -0
  280. package/dist/runtime/schemas/verdict.js.map +1 -0
  281. package/dist/runtime/tool-ledger.d.ts.map +1 -0
  282. package/dist/runtime/tool-ledger.js.map +1 -0
  283. package/package.json +8 -2
  284. package/dist/src/cli/sim-config.d.ts.map +0 -1
  285. package/dist/src/cli/sim-config.js.map +0 -1
  286. package/dist/src/cli/types.d.ts.map +0 -1
  287. package/dist/src/engine/_template/index.d.ts.map +0 -1
  288. package/dist/src/engine/_template/index.js.map +0 -1
  289. package/dist/src/engine/compiler/cache.d.ts.map +0 -1
  290. package/dist/src/engine/compiler/cache.js.map +0 -1
  291. package/dist/src/engine/compiler/generate-director.d.ts.map +0 -1
  292. package/dist/src/engine/compiler/generate-director.js.map +0 -1
  293. package/dist/src/engine/compiler/generate-fingerprint.d.ts.map +0 -1
  294. package/dist/src/engine/compiler/generate-fingerprint.js.map +0 -1
  295. package/dist/src/engine/compiler/generate-milestones.d.ts.map +0 -1
  296. package/dist/src/engine/compiler/generate-milestones.js.map +0 -1
  297. package/dist/src/engine/compiler/generate-politics.d.ts.map +0 -1
  298. package/dist/src/engine/compiler/generate-politics.js.map +0 -1
  299. package/dist/src/engine/compiler/generate-progression.d.ts.map +0 -1
  300. package/dist/src/engine/compiler/generate-progression.js.map +0 -1
  301. package/dist/src/engine/compiler/generate-prompts.d.ts.map +0 -1
  302. package/dist/src/engine/compiler/generate-prompts.js.map +0 -1
  303. package/dist/src/engine/compiler/generate-reactions.d.ts.map +0 -1
  304. package/dist/src/engine/compiler/generate-reactions.js.map +0 -1
  305. package/dist/src/engine/compiler/index.d.ts.map +0 -1
  306. package/dist/src/engine/compiler/index.js.map +0 -1
  307. package/dist/src/engine/compiler/llm-invocations/generateValidatedCode.d.ts.map +0 -1
  308. package/dist/src/engine/compiler/llm-invocations/generateValidatedCode.js.map +0 -1
  309. package/dist/src/engine/compiler/llm-invocations/generateValidatedJson.d.ts.map +0 -1
  310. package/dist/src/engine/compiler/llm-invocations/generateValidatedJson.js.map +0 -1
  311. package/dist/src/engine/compiler/llm-invocations/generateValidatedObject.d.ts.map +0 -1
  312. package/dist/src/engine/compiler/llm-invocations/generateValidatedObject.js.map +0 -1
  313. package/dist/src/engine/compiler/llm-invocations/generateValidatedProse.d.ts.map +0 -1
  314. package/dist/src/engine/compiler/llm-invocations/generateValidatedProse.js.map +0 -1
  315. package/dist/src/engine/compiler/schemas/index.d.ts.map +0 -1
  316. package/dist/src/engine/compiler/schemas/index.js.map +0 -1
  317. package/dist/src/engine/compiler/schemas/milestones.d.ts.map +0 -1
  318. package/dist/src/engine/compiler/schemas/milestones.js.map +0 -1
  319. package/dist/src/engine/compiler/seed-ingestion.d.ts.map +0 -1
  320. package/dist/src/engine/compiler/seed-ingestion.js.map +0 -1
  321. package/dist/src/engine/compiler/telemetry.d.ts.map +0 -1
  322. package/dist/src/engine/compiler/telemetry.js.map +0 -1
  323. package/dist/src/engine/compiler/types.d.ts.map +0 -1
  324. package/dist/src/engine/compiler/types.js.map +0 -1
  325. package/dist/src/engine/compiler/validate.d.ts.map +0 -1
  326. package/dist/src/engine/compiler/validate.js.map +0 -1
  327. package/dist/src/engine/core/agent-generator.d.ts.map +0 -1
  328. package/dist/src/engine/core/agent-generator.js.map +0 -1
  329. package/dist/src/engine/core/kernel.d.ts.map +0 -1
  330. package/dist/src/engine/core/kernel.js.map +0 -1
  331. package/dist/src/engine/core/progression.d.ts.map +0 -1
  332. package/dist/src/engine/core/progression.js.map +0 -1
  333. package/dist/src/engine/core/rng.d.ts.map +0 -1
  334. package/dist/src/engine/core/rng.js.map +0 -1
  335. package/dist/src/engine/core/state.d.ts.map +0 -1
  336. package/dist/src/engine/core/state.js.map +0 -1
  337. package/dist/src/engine/effect-registry.d.ts.map +0 -1
  338. package/dist/src/engine/effect-registry.js.map +0 -1
  339. package/dist/src/engine/event-taxonomy.d.ts.map +0 -1
  340. package/dist/src/engine/event-taxonomy.js.map +0 -1
  341. package/dist/src/engine/index.d.ts.map +0 -1
  342. package/dist/src/engine/index.js.map +0 -1
  343. package/dist/src/engine/lunar/effects.d.ts.map +0 -1
  344. package/dist/src/engine/lunar/effects.js.map +0 -1
  345. package/dist/src/engine/lunar/events.d.ts.map +0 -1
  346. package/dist/src/engine/lunar/events.js.map +0 -1
  347. package/dist/src/engine/lunar/fingerprint.d.ts.map +0 -1
  348. package/dist/src/engine/lunar/fingerprint.js.map +0 -1
  349. package/dist/src/engine/lunar/hooks.d.ts.map +0 -1
  350. package/dist/src/engine/lunar/hooks.js.map +0 -1
  351. package/dist/src/engine/lunar/index.d.ts.map +0 -1
  352. package/dist/src/engine/lunar/index.js.map +0 -1
  353. package/dist/src/engine/lunar/metrics.d.ts.map +0 -1
  354. package/dist/src/engine/lunar/metrics.js.map +0 -1
  355. package/dist/src/engine/lunar/milestones.d.ts.map +0 -1
  356. package/dist/src/engine/lunar/milestones.js.map +0 -1
  357. package/dist/src/engine/lunar/names.d.ts.map +0 -1
  358. package/dist/src/engine/lunar/names.js.map +0 -1
  359. package/dist/src/engine/lunar/politics.d.ts.map +0 -1
  360. package/dist/src/engine/lunar/politics.js.map +0 -1
  361. package/dist/src/engine/lunar/presets.d.ts.map +0 -1
  362. package/dist/src/engine/lunar/presets.js.map +0 -1
  363. package/dist/src/engine/lunar/progression-hooks.d.ts.map +0 -1
  364. package/dist/src/engine/lunar/progression-hooks.js.map +0 -1
  365. package/dist/src/engine/lunar/prompts.d.ts.map +0 -1
  366. package/dist/src/engine/lunar/prompts.js.map +0 -1
  367. package/dist/src/engine/lunar/reactions.d.ts.map +0 -1
  368. package/dist/src/engine/lunar/reactions.js.map +0 -1
  369. package/dist/src/engine/lunar/research-bundle.d.ts.map +0 -1
  370. package/dist/src/engine/lunar/research-bundle.js.map +0 -1
  371. package/dist/src/engine/mars/effects.d.ts.map +0 -1
  372. package/dist/src/engine/mars/effects.js.map +0 -1
  373. package/dist/src/engine/mars/events.d.ts.map +0 -1
  374. package/dist/src/engine/mars/events.js.map +0 -1
  375. package/dist/src/engine/mars/fingerprint.d.ts.map +0 -1
  376. package/dist/src/engine/mars/fingerprint.js.map +0 -1
  377. package/dist/src/engine/mars/hooks.d.ts.map +0 -1
  378. package/dist/src/engine/mars/hooks.js.map +0 -1
  379. package/dist/src/engine/mars/index.d.ts.map +0 -1
  380. package/dist/src/engine/mars/index.js.map +0 -1
  381. package/dist/src/engine/mars/metrics.d.ts.map +0 -1
  382. package/dist/src/engine/mars/metrics.js.map +0 -1
  383. package/dist/src/engine/mars/milestones.d.ts.map +0 -1
  384. package/dist/src/engine/mars/milestones.js.map +0 -1
  385. package/dist/src/engine/mars/names.d.ts.map +0 -1
  386. package/dist/src/engine/mars/names.js.map +0 -1
  387. package/dist/src/engine/mars/politics.d.ts.map +0 -1
  388. package/dist/src/engine/mars/politics.js.map +0 -1
  389. package/dist/src/engine/mars/presets.d.ts.map +0 -1
  390. package/dist/src/engine/mars/presets.js.map +0 -1
  391. package/dist/src/engine/mars/progression-hooks.d.ts.map +0 -1
  392. package/dist/src/engine/mars/progression-hooks.js.map +0 -1
  393. package/dist/src/engine/mars/prompts.d.ts.map +0 -1
  394. package/dist/src/engine/mars/prompts.js.map +0 -1
  395. package/dist/src/engine/mars/reactions.d.ts.map +0 -1
  396. package/dist/src/engine/mars/reactions.js.map +0 -1
  397. package/dist/src/engine/mars/research-bundle.d.ts.map +0 -1
  398. package/dist/src/engine/mars/research-bundle.js.map +0 -1
  399. package/dist/src/engine/metric-registry.d.ts.map +0 -1
  400. package/dist/src/engine/metric-registry.js.map +0 -1
  401. package/dist/src/engine/provider-resolver.d.ts.map +0 -1
  402. package/dist/src/engine/provider-resolver.js.map +0 -1
  403. package/dist/src/engine/types.d.ts.map +0 -1
  404. package/dist/src/runtime/agent-memory.d.ts.map +0 -1
  405. package/dist/src/runtime/agent-memory.js.map +0 -1
  406. package/dist/src/runtime/agent-reactions.d.ts.map +0 -1
  407. package/dist/src/runtime/agent-reactions.js.map +0 -1
  408. package/dist/src/runtime/batch.d.ts.map +0 -1
  409. package/dist/src/runtime/batch.js.map +0 -1
  410. package/dist/src/runtime/chat-agents.d.ts.map +0 -1
  411. package/dist/src/runtime/chat-agents.js.map +0 -1
  412. package/dist/src/runtime/citations-catalog.d.ts.map +0 -1
  413. package/dist/src/runtime/citations-catalog.js.map +0 -1
  414. package/dist/src/runtime/commander-setup.d.ts.map +0 -1
  415. package/dist/src/runtime/commander-setup.js.map +0 -1
  416. package/dist/src/runtime/contracts.d.ts.map +0 -1
  417. package/dist/src/runtime/cost-tracker.d.ts.map +0 -1
  418. package/dist/src/runtime/cost-tracker.js.map +0 -1
  419. package/dist/src/runtime/departments.d.ts.map +0 -1
  420. package/dist/src/runtime/departments.js.map +0 -1
  421. package/dist/src/runtime/director.d.ts.map +0 -1
  422. package/dist/src/runtime/director.js.map +0 -1
  423. package/dist/src/runtime/economics-profile.d.ts.map +0 -1
  424. package/dist/src/runtime/economics-profile.js.map +0 -1
  425. package/dist/src/runtime/emergent-setup.d.ts.map +0 -1
  426. package/dist/src/runtime/emergent-setup.js.map +0 -1
  427. package/dist/src/runtime/generic-fingerprint.d.ts.map +0 -1
  428. package/dist/src/runtime/generic-fingerprint.js.map +0 -1
  429. package/dist/src/runtime/hexaco-cues/trajectory.d.ts.map +0 -1
  430. package/dist/src/runtime/hexaco-cues/trajectory.js.map +0 -1
  431. package/dist/src/runtime/hexaco-cues/translation.d.ts.map +0 -1
  432. package/dist/src/runtime/hexaco-cues/translation.js.map +0 -1
  433. package/dist/src/runtime/index.d.ts.map +0 -1
  434. package/dist/src/runtime/index.js.map +0 -1
  435. package/dist/src/runtime/llm-invocations/generateValidatedObject.d.ts.map +0 -1
  436. package/dist/src/runtime/llm-invocations/generateValidatedObject.js.map +0 -1
  437. package/dist/src/runtime/llm-invocations/sendAndValidate.d.ts.map +0 -1
  438. package/dist/src/runtime/llm-invocations/sendAndValidate.js.map +0 -1
  439. package/dist/src/runtime/orchestrator.d.ts.map +0 -1
  440. package/dist/src/runtime/orchestrator.js.map +0 -1
  441. package/dist/src/runtime/output-writer.d.ts.map +0 -1
  442. package/dist/src/runtime/output-writer.js.map +0 -1
  443. package/dist/src/runtime/parsers.d.ts.map +0 -1
  444. package/dist/src/runtime/parsers.js.map +0 -1
  445. package/dist/src/runtime/pricing.d.ts.map +0 -1
  446. package/dist/src/runtime/pricing.js.map +0 -1
  447. package/dist/src/runtime/provider-errors.d.ts.map +0 -1
  448. package/dist/src/runtime/provider-errors.js.map +0 -1
  449. package/dist/src/runtime/reaction-step.d.ts.map +0 -1
  450. package/dist/src/runtime/reaction-step.js.map +0 -1
  451. package/dist/src/runtime/research/knowledge-base.d.ts.map +0 -1
  452. package/dist/src/runtime/research/knowledge-base.js.map +0 -1
  453. package/dist/src/runtime/research/research-memory.d.ts.map +0 -1
  454. package/dist/src/runtime/research/research-memory.js.map +0 -1
  455. package/dist/src/runtime/research/research.d.ts.map +0 -1
  456. package/dist/src/runtime/research/research.js.map +0 -1
  457. package/dist/src/runtime/research/scenario-research.d.ts.map +0 -1
  458. package/dist/src/runtime/research/scenario-research.js.map +0 -1
  459. package/dist/src/runtime/research/scenarios.d.ts.map +0 -1
  460. package/dist/src/runtime/research/scenarios.js.map +0 -1
  461. package/dist/src/runtime/runtime-helpers.d.ts.map +0 -1
  462. package/dist/src/runtime/runtime-helpers.js.map +0 -1
  463. package/dist/src/runtime/schemas/commander.d.ts.map +0 -1
  464. package/dist/src/runtime/schemas/commander.js.map +0 -1
  465. package/dist/src/runtime/schemas/department.d.ts.map +0 -1
  466. package/dist/src/runtime/schemas/department.js.map +0 -1
  467. package/dist/src/runtime/schemas/director.d.ts.map +0 -1
  468. package/dist/src/runtime/schemas/director.js.map +0 -1
  469. package/dist/src/runtime/schemas/index.d.ts.map +0 -1
  470. package/dist/src/runtime/schemas/index.js.map +0 -1
  471. package/dist/src/runtime/schemas/reactions.d.ts.map +0 -1
  472. package/dist/src/runtime/schemas/reactions.js.map +0 -1
  473. package/dist/src/runtime/schemas/verdict.d.ts.map +0 -1
  474. package/dist/src/runtime/schemas/verdict.js.map +0 -1
  475. package/dist/src/runtime/tool-ledger.d.ts.map +0 -1
  476. package/dist/src/runtime/tool-ledger.js.map +0 -1
  477. /package/dist/{src/cli → cli}/sim-config.d.ts +0 -0
  478. /package/dist/{src/cli → cli}/sim-config.js +0 -0
  479. /package/dist/{src/cli → cli}/types.d.ts +0 -0
  480. /package/dist/{src/cli → cli}/types.js +0 -0
  481. /package/dist/{src/engine → engine}/_template/index.d.ts +0 -0
  482. /package/dist/{src/engine → engine}/_template/index.js +0 -0
  483. /package/dist/{src/engine → engine}/compiler/cache.d.ts +0 -0
  484. /package/dist/{src/engine → engine}/compiler/cache.js +0 -0
  485. /package/dist/{src/engine → engine}/compiler/generate-director.d.ts +0 -0
  486. /package/dist/{src/engine → engine}/compiler/generate-director.js +0 -0
  487. /package/dist/{src/engine → engine}/compiler/generate-fingerprint.d.ts +0 -0
  488. /package/dist/{src/engine → engine}/compiler/generate-fingerprint.js +0 -0
  489. /package/dist/{src/engine → engine}/compiler/generate-milestones.d.ts +0 -0
  490. /package/dist/{src/engine → engine}/compiler/generate-milestones.js +0 -0
  491. /package/dist/{src/engine → engine}/compiler/generate-politics.d.ts +0 -0
  492. /package/dist/{src/engine → engine}/compiler/generate-politics.js +0 -0
  493. /package/dist/{src/engine → engine}/compiler/generate-progression.d.ts +0 -0
  494. /package/dist/{src/engine → engine}/compiler/generate-progression.js +0 -0
  495. /package/dist/{src/engine → engine}/compiler/generate-prompts.d.ts +0 -0
  496. /package/dist/{src/engine → engine}/compiler/generate-prompts.js +0 -0
  497. /package/dist/{src/engine → engine}/compiler/generate-reactions.d.ts +0 -0
  498. /package/dist/{src/engine → engine}/compiler/generate-reactions.js +0 -0
  499. /package/dist/{src/engine → engine}/compiler/index.d.ts +0 -0
  500. /package/dist/{src/engine → engine}/compiler/index.js +0 -0
  501. /package/dist/{src/engine → engine}/compiler/llm-invocations/generateValidatedCode.d.ts +0 -0
  502. /package/dist/{src/engine → engine}/compiler/llm-invocations/generateValidatedCode.js +0 -0
  503. /package/dist/{src/engine → engine}/compiler/llm-invocations/generateValidatedJson.d.ts +0 -0
  504. /package/dist/{src/engine → engine}/compiler/llm-invocations/generateValidatedJson.js +0 -0
  505. /package/dist/{src/engine → engine}/compiler/llm-invocations/generateValidatedObject.d.ts +0 -0
  506. /package/dist/{src/engine → engine}/compiler/llm-invocations/generateValidatedObject.js +0 -0
  507. /package/dist/{src/engine → engine}/compiler/llm-invocations/generateValidatedProse.d.ts +0 -0
  508. /package/dist/{src/engine → engine}/compiler/llm-invocations/generateValidatedProse.js +0 -0
  509. /package/dist/{src/engine → engine}/compiler/schemas/index.d.ts +0 -0
  510. /package/dist/{src/engine → engine}/compiler/schemas/index.js +0 -0
  511. /package/dist/{src/engine → engine}/compiler/schemas/milestones.d.ts +0 -0
  512. /package/dist/{src/engine → engine}/compiler/schemas/milestones.js +0 -0
  513. /package/dist/{src/engine → engine}/compiler/seed-ingestion.d.ts +0 -0
  514. /package/dist/{src/engine → engine}/compiler/seed-ingestion.js +0 -0
  515. /package/dist/{src/engine → engine}/compiler/telemetry.d.ts +0 -0
  516. /package/dist/{src/engine → engine}/compiler/telemetry.js +0 -0
  517. /package/dist/{src/engine → engine}/compiler/types.d.ts +0 -0
  518. /package/dist/{src/engine → engine}/compiler/types.js +0 -0
  519. /package/dist/{src/engine → engine}/compiler/validate.d.ts +0 -0
  520. /package/dist/{src/engine → engine}/compiler/validate.js +0 -0
  521. /package/dist/{src/engine → engine}/core/agent-generator.d.ts +0 -0
  522. /package/dist/{src/engine → engine}/core/agent-generator.js +0 -0
  523. /package/dist/{src/engine → engine}/core/kernel.d.ts +0 -0
  524. /package/dist/{src/engine → engine}/core/kernel.js +0 -0
  525. /package/dist/{src/engine → engine}/core/progression.d.ts +0 -0
  526. /package/dist/{src/engine → engine}/core/progression.js +0 -0
  527. /package/dist/{src/engine → engine}/core/rng.d.ts +0 -0
  528. /package/dist/{src/engine → engine}/core/rng.js +0 -0
  529. /package/dist/{src/engine → engine}/core/state.d.ts +0 -0
  530. /package/dist/{src/engine → engine}/core/state.js +0 -0
  531. /package/dist/{src/engine → engine}/effect-registry.d.ts +0 -0
  532. /package/dist/{src/engine → engine}/effect-registry.js +0 -0
  533. /package/dist/{src/engine → engine}/event-taxonomy.d.ts +0 -0
  534. /package/dist/{src/engine → engine}/event-taxonomy.js +0 -0
  535. /package/dist/{src/engine → engine}/lunar/effects.d.ts +0 -0
  536. /package/dist/{src/engine → engine}/lunar/effects.js +0 -0
  537. /package/dist/{src/engine → engine}/lunar/events.d.ts +0 -0
  538. /package/dist/{src/engine → engine}/lunar/events.js +0 -0
  539. /package/dist/{src/engine → engine}/lunar/fingerprint.d.ts +0 -0
  540. /package/dist/{src/engine → engine}/lunar/fingerprint.js +0 -0
  541. /package/dist/{src/engine → engine}/lunar/hooks.d.ts +0 -0
  542. /package/dist/{src/engine → engine}/lunar/hooks.js +0 -0
  543. /package/dist/{src/engine → engine}/lunar/index.d.ts +0 -0
  544. /package/dist/{src/engine → engine}/lunar/index.js +0 -0
  545. /package/dist/{src/engine → engine}/lunar/metrics.d.ts +0 -0
  546. /package/dist/{src/engine → engine}/lunar/metrics.js +0 -0
  547. /package/dist/{src/engine → engine}/lunar/milestones.d.ts +0 -0
  548. /package/dist/{src/engine → engine}/lunar/milestones.js +0 -0
  549. /package/dist/{src/engine → engine}/lunar/names.d.ts +0 -0
  550. /package/dist/{src/engine → engine}/lunar/names.js +0 -0
  551. /package/dist/{src/engine → engine}/lunar/politics.d.ts +0 -0
  552. /package/dist/{src/engine → engine}/lunar/politics.js +0 -0
  553. /package/dist/{src/engine → engine}/lunar/presets.d.ts +0 -0
  554. /package/dist/{src/engine → engine}/lunar/presets.js +0 -0
  555. /package/dist/{src/engine → engine}/lunar/progression-hooks.d.ts +0 -0
  556. /package/dist/{src/engine → engine}/lunar/progression-hooks.js +0 -0
  557. /package/dist/{src/engine → engine}/lunar/prompts.d.ts +0 -0
  558. /package/dist/{src/engine → engine}/lunar/prompts.js +0 -0
  559. /package/dist/{src/engine → engine}/lunar/reactions.d.ts +0 -0
  560. /package/dist/{src/engine → engine}/lunar/reactions.js +0 -0
  561. /package/dist/{src/engine → engine}/lunar/research-bundle.d.ts +0 -0
  562. /package/dist/{src/engine → engine}/lunar/research-bundle.js +0 -0
  563. /package/dist/{src/engine → engine}/lunar/scenario.json +0 -0
  564. /package/dist/{src/engine → engine}/mars/effects.d.ts +0 -0
  565. /package/dist/{src/engine → engine}/mars/effects.js +0 -0
  566. /package/dist/{src/engine → engine}/mars/events.d.ts +0 -0
  567. /package/dist/{src/engine → engine}/mars/events.js +0 -0
  568. /package/dist/{src/engine → engine}/mars/fingerprint.d.ts +0 -0
  569. /package/dist/{src/engine → engine}/mars/fingerprint.js +0 -0
  570. /package/dist/{src/engine → engine}/mars/hooks.d.ts +0 -0
  571. /package/dist/{src/engine → engine}/mars/hooks.js +0 -0
  572. /package/dist/{src/engine → engine}/mars/index.d.ts +0 -0
  573. /package/dist/{src/engine → engine}/mars/index.js +0 -0
  574. /package/dist/{src/engine → engine}/mars/metrics.d.ts +0 -0
  575. /package/dist/{src/engine → engine}/mars/metrics.js +0 -0
  576. /package/dist/{src/engine → engine}/mars/milestones.d.ts +0 -0
  577. /package/dist/{src/engine → engine}/mars/milestones.js +0 -0
  578. /package/dist/{src/engine → engine}/mars/names.d.ts +0 -0
  579. /package/dist/{src/engine → engine}/mars/names.js +0 -0
  580. /package/dist/{src/engine → engine}/mars/politics.d.ts +0 -0
  581. /package/dist/{src/engine → engine}/mars/politics.js +0 -0
  582. /package/dist/{src/engine → engine}/mars/presets.d.ts +0 -0
  583. /package/dist/{src/engine → engine}/mars/presets.js +0 -0
  584. /package/dist/{src/engine → engine}/mars/progression-hooks.d.ts +0 -0
  585. /package/dist/{src/engine → engine}/mars/progression-hooks.js +0 -0
  586. /package/dist/{src/engine → engine}/mars/prompts.d.ts +0 -0
  587. /package/dist/{src/engine → engine}/mars/prompts.js +0 -0
  588. /package/dist/{src/engine → engine}/mars/reactions.d.ts +0 -0
  589. /package/dist/{src/engine → engine}/mars/reactions.js +0 -0
  590. /package/dist/{src/engine → engine}/mars/research-bundle.d.ts +0 -0
  591. /package/dist/{src/engine → engine}/mars/research-bundle.js +0 -0
  592. /package/dist/{src/engine → engine}/mars/scenario.json +0 -0
  593. /package/dist/{src/engine → engine}/metric-registry.d.ts +0 -0
  594. /package/dist/{src/engine → engine}/metric-registry.js +0 -0
  595. /package/dist/{src/engine → engine}/provider-resolver.d.ts +0 -0
  596. /package/dist/{src/engine → engine}/types.d.ts +0 -0
  597. /package/dist/{src/engine → engine}/types.js +0 -0
  598. /package/dist/{src/runtime → runtime}/agent-memory.d.ts +0 -0
  599. /package/dist/{src/runtime → runtime}/agent-memory.js +0 -0
  600. /package/dist/{src/runtime → runtime}/agent-reactions.d.ts +0 -0
  601. /package/dist/{src/runtime → runtime}/agent-reactions.js +0 -0
  602. /package/dist/{src/runtime → runtime}/batch.d.ts +0 -0
  603. /package/dist/{src/runtime → runtime}/batch.js +0 -0
  604. /package/dist/{src/runtime → runtime}/chat-agents.d.ts +0 -0
  605. /package/dist/{src/runtime → runtime}/chat-agents.js +0 -0
  606. /package/dist/{src/runtime → runtime}/citations-catalog.d.ts +0 -0
  607. /package/dist/{src/runtime → runtime}/citations-catalog.js +0 -0
  608. /package/dist/{src/runtime → runtime}/commander-setup.d.ts +0 -0
  609. /package/dist/{src/runtime → runtime}/commander-setup.js +0 -0
  610. /package/dist/{src/runtime → runtime}/contracts.d.ts +0 -0
  611. /package/dist/{src/runtime → runtime}/contracts.js +0 -0
  612. /package/dist/{src/runtime → runtime}/cost-tracker.d.ts +0 -0
  613. /package/dist/{src/runtime → runtime}/cost-tracker.js +0 -0
  614. /package/dist/{src/runtime → runtime}/departments.d.ts +0 -0
  615. /package/dist/{src/runtime → runtime}/departments.js +0 -0
  616. /package/dist/{src/runtime → runtime}/director.d.ts +0 -0
  617. /package/dist/{src/runtime → runtime}/director.js +0 -0
  618. /package/dist/{src/runtime → runtime}/economics-profile.d.ts +0 -0
  619. /package/dist/{src/runtime → runtime}/economics-profile.js +0 -0
  620. /package/dist/{src/runtime → runtime}/emergent-setup.d.ts +0 -0
  621. /package/dist/{src/runtime → runtime}/emergent-setup.js +0 -0
  622. /package/dist/{src/runtime → runtime}/generic-fingerprint.d.ts +0 -0
  623. /package/dist/{src/runtime → runtime}/generic-fingerprint.js +0 -0
  624. /package/dist/{src/runtime → runtime}/hexaco-cues/trajectory.d.ts +0 -0
  625. /package/dist/{src/runtime → runtime}/hexaco-cues/trajectory.js +0 -0
  626. /package/dist/{src/runtime → runtime}/hexaco-cues/translation.d.ts +0 -0
  627. /package/dist/{src/runtime → runtime}/hexaco-cues/translation.js +0 -0
  628. /package/dist/{src/runtime → runtime}/index.d.ts +0 -0
  629. /package/dist/{src/runtime → runtime}/index.js +0 -0
  630. /package/dist/{src/runtime → runtime}/llm-invocations/generateValidatedObject.d.ts +0 -0
  631. /package/dist/{src/runtime → runtime}/llm-invocations/generateValidatedObject.js +0 -0
  632. /package/dist/{src/runtime → runtime}/llm-invocations/sendAndValidate.d.ts +0 -0
  633. /package/dist/{src/runtime → runtime}/llm-invocations/sendAndValidate.js +0 -0
  634. /package/dist/{src/runtime → runtime}/orchestrator.d.ts +0 -0
  635. /package/dist/{src/runtime → runtime}/orchestrator.js +0 -0
  636. /package/dist/{src/runtime → runtime}/output-writer.d.ts +0 -0
  637. /package/dist/{src/runtime → runtime}/output-writer.js +0 -0
  638. /package/dist/{src/runtime → runtime}/parsers.d.ts +0 -0
  639. /package/dist/{src/runtime → runtime}/parsers.js +0 -0
  640. /package/dist/{src/runtime → runtime}/pricing.d.ts +0 -0
  641. /package/dist/{src/runtime → runtime}/pricing.js +0 -0
  642. /package/dist/{src/runtime → runtime}/provider-errors.d.ts +0 -0
  643. /package/dist/{src/runtime → runtime}/provider-errors.js +0 -0
  644. /package/dist/{src/runtime → runtime}/reaction-step.d.ts +0 -0
  645. /package/dist/{src/runtime → runtime}/reaction-step.js +0 -0
  646. /package/dist/{src/runtime → runtime}/research/knowledge-base.d.ts +0 -0
  647. /package/dist/{src/runtime → runtime}/research/knowledge-base.js +0 -0
  648. /package/dist/{src/runtime → runtime}/research/research-memory.d.ts +0 -0
  649. /package/dist/{src/runtime → runtime}/research/research-memory.js +0 -0
  650. /package/dist/{src/runtime → runtime}/research/research.d.ts +0 -0
  651. /package/dist/{src/runtime → runtime}/research/research.js +0 -0
  652. /package/dist/{src/runtime → runtime}/research/scenario-research.d.ts +0 -0
  653. /package/dist/{src/runtime → runtime}/research/scenario-research.js +0 -0
  654. /package/dist/{src/runtime → runtime}/research/scenarios.d.ts +0 -0
  655. /package/dist/{src/runtime → runtime}/research/scenarios.js +0 -0
  656. /package/dist/{src/runtime → runtime}/runtime-helpers.d.ts +0 -0
  657. /package/dist/{src/runtime → runtime}/runtime-helpers.js +0 -0
  658. /package/dist/{src/runtime → runtime}/schemas/commander.d.ts +0 -0
  659. /package/dist/{src/runtime → runtime}/schemas/commander.js +0 -0
  660. /package/dist/{src/runtime → runtime}/schemas/department.d.ts +0 -0
  661. /package/dist/{src/runtime → runtime}/schemas/department.js +0 -0
  662. /package/dist/{src/runtime → runtime}/schemas/director.d.ts +0 -0
  663. /package/dist/{src/runtime → runtime}/schemas/director.js +0 -0
  664. /package/dist/{src/runtime → runtime}/schemas/index.d.ts +0 -0
  665. /package/dist/{src/runtime → runtime}/schemas/index.js +0 -0
  666. /package/dist/{src/runtime → runtime}/schemas/reactions.d.ts +0 -0
  667. /package/dist/{src/runtime → runtime}/schemas/reactions.js +0 -0
  668. /package/dist/{src/runtime → runtime}/schemas/verdict.d.ts +0 -0
  669. /package/dist/{src/runtime → runtime}/schemas/verdict.js +0 -0
  670. /package/dist/{src/runtime → runtime}/tool-ledger.d.ts +0 -0
  671. /package/dist/{src/runtime → runtime}/tool-ledger.js +0 -0
@@ -0,0 +1,193 @@
1
+ /**
2
+ * IP-based rate limiter with optional JSON-file persistence.
3
+ *
4
+ * Extracted from server-app.ts so the quota machinery can be unit-tested
5
+ * without spinning up the whole HTTP server and so createMarsServer reads
6
+ * more like a route file. Behavior is unchanged.
7
+ *
8
+ * Three buckets keyed by IP:
9
+ * - simStore / maxPerDay: /setup (most expensive action, daily)
10
+ * - compileStore / maxCompilePerDay: /compile (~$0.10 per call, daily)
11
+ * - chatStore / maxChatPerHour: /chat (hourly, users legitimately
12
+ * burst but scripts/loops flatten the
13
+ * budget if unlimited)
14
+ *
15
+ * When a persistencePath is supplied, state is loaded on construct and
16
+ * flushed on every mutation via a 500ms-debounced atomic write
17
+ * (tmp + rename). pm2 restarts preserve user quotas. Missing or corrupt
18
+ * files self-heal at next mutation.
19
+ *
20
+ * @module paracosm/cli/rate-limiter
21
+ */
22
+ import { readFileSync, existsSync, writeFileSync, renameSync } from 'node:fs';
23
+ export class IpRateLimiter {
24
+ simStore = new Map();
25
+ compileStore = new Map();
26
+ chatStore = new Map();
27
+ maxPerDay;
28
+ maxCompilePerDay;
29
+ maxChatPerHour;
30
+ cleanupTimer;
31
+ persistencePath = null;
32
+ persistTimer = null;
33
+ constructor(maxPerDay = 3, maxCompilePerDay = 5, maxChatPerHour = 200, persistencePath = null) {
34
+ this.maxPerDay = maxPerDay;
35
+ this.maxCompilePerDay = maxCompilePerDay;
36
+ this.maxChatPerHour = maxChatPerHour;
37
+ this.persistencePath = persistencePath;
38
+ this.cleanupTimer = setInterval(() => this.cleanup(), 60 * 60 * 1000);
39
+ this.load();
40
+ }
41
+ /** Load persisted state from disk. Silently tolerates missing/corrupt files. */
42
+ load() {
43
+ if (!this.persistencePath)
44
+ return;
45
+ try {
46
+ if (!existsSync(this.persistencePath))
47
+ return;
48
+ const raw = readFileSync(this.persistencePath, 'utf-8');
49
+ const data = JSON.parse(raw);
50
+ const now = Date.now();
51
+ const hydrate = (store, src) => {
52
+ if (!src)
53
+ return;
54
+ for (const [ip, entry] of Object.entries(src)) {
55
+ if (entry?.resetAt && entry.resetAt > now)
56
+ store.set(ip, entry);
57
+ }
58
+ };
59
+ hydrate(this.simStore, data.sim);
60
+ hydrate(this.compileStore, data.compile);
61
+ hydrate(this.chatStore, data.chat);
62
+ }
63
+ catch {
64
+ // Missing file, permission denied, corrupt JSON — start fresh.
65
+ }
66
+ }
67
+ /** Debounced flush to disk. Writes atomically via tmp+rename. */
68
+ persist() {
69
+ if (!this.persistencePath)
70
+ return;
71
+ if (this.persistTimer)
72
+ return;
73
+ this.persistTimer = setTimeout(() => {
74
+ this.persistTimer = null;
75
+ if (!this.persistencePath)
76
+ return;
77
+ try {
78
+ const dump = (s) => {
79
+ const out = {};
80
+ for (const [ip, e] of s)
81
+ out[ip] = e;
82
+ return out;
83
+ };
84
+ const payload = JSON.stringify({
85
+ sim: dump(this.simStore),
86
+ compile: dump(this.compileStore),
87
+ chat: dump(this.chatStore),
88
+ });
89
+ const tmp = `${this.persistencePath}.tmp`;
90
+ writeFileSync(tmp, payload, 'utf-8');
91
+ renameSync(tmp, this.persistencePath);
92
+ }
93
+ catch {
94
+ // Disk full, permission denied — swallow; logs would be noisy.
95
+ }
96
+ }, 500);
97
+ }
98
+ /** Extract client IP, respecting reverse proxy headers (nginx, Cloudflare, etc.) */
99
+ static getIp(req) {
100
+ const xff = req.headers['x-forwarded-for'];
101
+ if (xff) {
102
+ const first = (Array.isArray(xff) ? xff[0] : xff).split(',')[0].trim();
103
+ if (first)
104
+ return first;
105
+ }
106
+ const realIp = req.headers['x-real-ip'];
107
+ if (realIp)
108
+ return Array.isArray(realIp) ? realIp[0] : realIp;
109
+ const cfIp = req.headers['cf-connecting-ip'];
110
+ if (cfIp)
111
+ return Array.isArray(cfIp) ? cfIp[0] : cfIp;
112
+ return req.socket.remoteAddress || 'unknown';
113
+ }
114
+ nextReset(kind) {
115
+ if (kind === 'daily') {
116
+ const tomorrow = new Date();
117
+ tomorrow.setUTCHours(24, 0, 0, 0);
118
+ return tomorrow.getTime();
119
+ }
120
+ const nextHour = new Date();
121
+ nextHour.setUTCMinutes(60, 0, 0);
122
+ return nextHour.getTime();
123
+ }
124
+ bump(store, ip, limit, kind, mutate) {
125
+ const now = Date.now();
126
+ let entry = store.get(ip);
127
+ let mutated = false;
128
+ if (!entry || now >= entry.resetAt) {
129
+ entry = { count: 0, resetAt: this.nextReset(kind) };
130
+ store.set(ip, entry);
131
+ mutated = true;
132
+ }
133
+ const allowed = entry.count < limit;
134
+ if (allowed && mutate) {
135
+ entry.count++;
136
+ mutated = true;
137
+ }
138
+ const remaining = Math.max(0, limit - entry.count);
139
+ if (mutated)
140
+ this.persist();
141
+ return { allowed, remaining, resetAt: entry.resetAt, limit };
142
+ }
143
+ /** Check the simulation-per-day quota without consuming it. */
144
+ check(ip) {
145
+ return this.bump(this.simStore, ip, this.maxPerDay, 'daily', false);
146
+ }
147
+ /** Record a simulation start. Prefer `check` + `record` for legacy callers. */
148
+ record(ip) {
149
+ const entry = this.simStore.get(ip);
150
+ if (entry) {
151
+ entry.count++;
152
+ this.persist();
153
+ }
154
+ }
155
+ /** Check AND consume a slot for /compile (daily bucket, ~$0.10/call). */
156
+ consumeCompile(ip) {
157
+ return this.bump(this.compileStore, ip, this.maxCompilePerDay, 'daily', true);
158
+ }
159
+ /** Check AND consume a slot for /chat (hourly bucket). */
160
+ consumeChat(ip) {
161
+ return this.bump(this.chatStore, ip, this.maxChatPerHour, 'hourly', true);
162
+ }
163
+ /** Get stats for monitoring endpoints. */
164
+ stats() {
165
+ const dump = (s) => [...s.entries()].map(([ip, e]) => ({ ip, count: e.count, resetAt: new Date(e.resetAt).toISOString() }));
166
+ return {
167
+ totalIps: this.simStore.size + this.compileStore.size + this.chatStore.size,
168
+ sim: dump(this.simStore),
169
+ compile: dump(this.compileStore),
170
+ chat: dump(this.chatStore),
171
+ };
172
+ }
173
+ cleanup() {
174
+ const now = Date.now();
175
+ let mutated = false;
176
+ for (const store of [this.simStore, this.compileStore, this.chatStore]) {
177
+ for (const [ip, entry] of store) {
178
+ if (now >= entry.resetAt) {
179
+ store.delete(ip);
180
+ mutated = true;
181
+ }
182
+ }
183
+ }
184
+ if (mutated)
185
+ this.persist();
186
+ }
187
+ destroy() {
188
+ clearInterval(this.cleanupTimer);
189
+ if (this.persistTimer)
190
+ clearTimeout(this.persistTimer);
191
+ }
192
+ }
193
+ //# sourceMappingURL=rate-limiter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rate-limiter.js","sourceRoot":"","sources":["../../src/cli/rate-limiter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,179 @@
1
+ /**
2
+ * Cross-run schema-retry aggregation for production reliability telemetry.
3
+ *
4
+ * Each simulation reports per-schema `{ attempts, calls, fallbacks }` in
5
+ * its cost payload (see [cost-tracker.ts](../runtime/cost-tracker.ts)).
6
+ * This module sums those per-run buckets across the last N runs so the
7
+ * dashboard and `/retry-stats` endpoint can surface live reliability
8
+ * metrics without running an expensive replay.
9
+ *
10
+ * Metrics surfaced per schema across the aggregated window:
11
+ *
12
+ * - `calls` — total schema-validated LLM calls on this schema
13
+ * - `attempts` — total attempts (≥ calls; > calls when retries happened)
14
+ * - `avgAttempts`— attempts / calls. 1.0 = first-try success; > 1.0
15
+ * means the model is retrying on validation failures
16
+ * and maxRetries / schema discipline should be tuned
17
+ * - `fallbacks` — runs where retries were exhausted and the caller's
18
+ * empty skeleton was returned instead of a validated object
19
+ * - `fallbackRate` — fallbacks / calls. > 0 means the run served
20
+ * degraded data on at least one turn for this schema
21
+ * - `runsPresent`— number of runs in the window where this schema
22
+ * appeared at least once (not every run exercises every
23
+ * schema: agriculture dept only fires on some turns)
24
+ *
25
+ * @module paracosm/cli/retry-stats
26
+ */
27
+ /** Per-run payload emitted by the cost tracker. Keys are schema names. */
28
+ export type PerRunSchemaRetries = Record<string, {
29
+ attempts: number;
30
+ calls: number;
31
+ fallbacks: number;
32
+ }>;
33
+ /** Aggregate rollup across N runs. */
34
+ export interface SchemaRetryStats {
35
+ runCount: number;
36
+ schemas: Record<string, {
37
+ calls: number;
38
+ attempts: number;
39
+ fallbacks: number;
40
+ /** attempts / calls; rounded to two decimals. */
41
+ avgAttempts: number;
42
+ /** fallbacks / calls; rounded to four decimals. */
43
+ fallbackRate: number;
44
+ /** Count of runs in the window where this schema appeared. */
45
+ runsPresent: number;
46
+ }>;
47
+ }
48
+ /**
49
+ * Fold an array of per-run `schemaRetries` payloads into a single
50
+ * aggregate rollup. Safe with empty / missing entries — an empty run
51
+ * (`{}`) still contributes to `runCount` but doesn't add to any
52
+ * per-schema bucket.
53
+ */
54
+ export declare function aggregateSchemaRetries(runs: PerRunSchemaRetries[]): SchemaRetryStats;
55
+ /**
56
+ * Per-run forge-stats payload emitted by the cost tracker once any
57
+ * forge attempt (approved or rejected) has been captured. Mirrors the
58
+ * shape of {@link CostTracker.finalCost}'s `forgeStats` field.
59
+ */
60
+ export interface PerRunForgeStats {
61
+ attempts: number;
62
+ approved: number;
63
+ rejected: number;
64
+ /** Sum of judge confidence across approved forges; divide by approved for avg. */
65
+ approvedConfidenceSum: number;
66
+ /** Count of unique tool names attempted this run. Optional for back-compat
67
+ * with v2 entries that predate unique tracking. */
68
+ uniqueNames?: number;
69
+ /** Count of unique names that got approved at least once. */
70
+ uniqueApproved?: number;
71
+ /** Count of unique names that were only ever rejected. */
72
+ uniqueTerminalRejections?: number;
73
+ /** Rejection-reason histogram. Optional for back-compat with entries
74
+ * written before 2026-04-18. */
75
+ rejectionReasons?: {
76
+ schema_extra_field: number;
77
+ shape_check: number;
78
+ parse_error: number;
79
+ judge_correctness: number;
80
+ other: number;
81
+ };
82
+ }
83
+ /** Aggregate rollup across N runs' forge stats. */
84
+ export interface ForgeStatsRollup {
85
+ totalAttempts: number;
86
+ approved: number;
87
+ rejected: number;
88
+ /** approved / totalAttempts, rounded to 4 decimals. 0 when no attempts. */
89
+ approvalRate: number;
90
+ /** approvedConfidenceSum / approved, rounded to 2 decimals. 0 when no approvals. */
91
+ avgApprovedConfidence: number;
92
+ /** Sum of unique names attempted across all runs. */
93
+ totalUniqueNames: number;
94
+ /** Sum of unique names approved at least once across all runs. */
95
+ totalUniqueApproved: number;
96
+ /** Sum of unique names that were only rejected across all runs. */
97
+ totalUniqueTerminalRejections: number;
98
+ /** totalUniqueApproved / totalUniqueNames, rounded to 4 decimals. The
99
+ * "eventually-approved" rate — closer to the real quality signal than
100
+ * raw approvalRate when the retry loop re-forges under the same name. */
101
+ uniqueApprovalRate: number;
102
+ /** Summed rejection-reason histogram across all runs. Lets operators
103
+ * see the failure-mode distribution over time (e.g. did the
104
+ * 2026-04-18 forge-guidance prompt fix cut schema_extra_field). */
105
+ rejectionReasons: {
106
+ schema_extra_field: number;
107
+ shape_check: number;
108
+ parse_error: number;
109
+ judge_correctness: number;
110
+ other: number;
111
+ };
112
+ /** Count of runs in the window that recorded at least one forge attempt. */
113
+ runsPresent: number;
114
+ }
115
+ /**
116
+ * Fold an array of per-run forge-stats payloads into a single rollup
117
+ * for the /retry-stats response. Runs without any forge activity are
118
+ * counted in the window's runCount (see aggregateSchemaRetries) but do
119
+ * not contribute to the forge rollup (they have `attempts===0`).
120
+ */
121
+ export declare function aggregateForgeStats(runs: PerRunForgeStats[]): ForgeStatsRollup;
122
+ /**
123
+ * Per-run cache-stats payload emitted by the cost tracker when the
124
+ * provider returned non-zero cache counters (Anthropic reports these
125
+ * on every call). Matches {@link CostTracker.finalCost}'s `cacheStats`.
126
+ */
127
+ export interface PerRunCacheStats {
128
+ readTokens: number;
129
+ creationTokens: number;
130
+ savingsUSD: number;
131
+ }
132
+ /** Aggregate prompt-cache rollup across N runs. */
133
+ export interface CacheStatsRollup {
134
+ totalReadTokens: number;
135
+ totalCreationTokens: number;
136
+ /** Sum of savingsUSD across runs; rounded to 4 decimals. */
137
+ totalSavingsUSD: number;
138
+ /** readTokens / (readTokens + creationTokens), rounded to 4 decimals.
139
+ * Healthy caching shows ratios > 0.7 — most traffic is replays. */
140
+ readRatio: number;
141
+ /** Count of runs that reported any cache activity. */
142
+ runsPresent: number;
143
+ }
144
+ /**
145
+ * Fold an array of per-run cache-stats payloads into a rollup. Runs
146
+ * without cache activity (OpenAI with opaque counters, or very short
147
+ * runs that never crossed the auto-cache threshold) are skipped.
148
+ */
149
+ export declare function aggregateCacheStats(runs: PerRunCacheStats[]): CacheStatsRollup;
150
+ /**
151
+ * Per-run provider-error counters. Keys match the classifier's
152
+ * ProviderErrorKind; `total` is the sum for dashboard rendering
153
+ * convenience.
154
+ */
155
+ export interface PerRunProviderErrors {
156
+ auth: number;
157
+ quota: number;
158
+ rate_limit: number;
159
+ network: number;
160
+ unknown: number;
161
+ total: number;
162
+ }
163
+ /** Aggregate provider-error rollup across N runs. */
164
+ export interface ProviderErrorsRollup {
165
+ auth: number;
166
+ quota: number;
167
+ rate_limit: number;
168
+ network: number;
169
+ unknown: number;
170
+ total: number;
171
+ /** Count of runs that recorded at least one provider error. */
172
+ runsPresent: number;
173
+ }
174
+ /**
175
+ * Fold per-run provider-error counters into a rollup. Runs without any
176
+ * classified errors are skipped (total === 0).
177
+ */
178
+ export declare function aggregateProviderErrors(runs: PerRunProviderErrors[]): ProviderErrorsRollup;
179
+ //# sourceMappingURL=retry-stats.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retry-stats.d.ts","sourceRoot":"","sources":["../../src/cli/retry-stats.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,167 @@
1
+ /**
2
+ * Cross-run schema-retry aggregation for production reliability telemetry.
3
+ *
4
+ * Each simulation reports per-schema `{ attempts, calls, fallbacks }` in
5
+ * its cost payload (see [cost-tracker.ts](../runtime/cost-tracker.ts)).
6
+ * This module sums those per-run buckets across the last N runs so the
7
+ * dashboard and `/retry-stats` endpoint can surface live reliability
8
+ * metrics without running an expensive replay.
9
+ *
10
+ * Metrics surfaced per schema across the aggregated window:
11
+ *
12
+ * - `calls` — total schema-validated LLM calls on this schema
13
+ * - `attempts` — total attempts (≥ calls; > calls when retries happened)
14
+ * - `avgAttempts`— attempts / calls. 1.0 = first-try success; > 1.0
15
+ * means the model is retrying on validation failures
16
+ * and maxRetries / schema discipline should be tuned
17
+ * - `fallbacks` — runs where retries were exhausted and the caller's
18
+ * empty skeleton was returned instead of a validated object
19
+ * - `fallbackRate` — fallbacks / calls. > 0 means the run served
20
+ * degraded data on at least one turn for this schema
21
+ * - `runsPresent`— number of runs in the window where this schema
22
+ * appeared at least once (not every run exercises every
23
+ * schema: agriculture dept only fires on some turns)
24
+ *
25
+ * @module paracosm/cli/retry-stats
26
+ */
27
+ const round = (v, precision) => {
28
+ const f = Math.pow(10, precision);
29
+ return Math.round(v * f) / f;
30
+ };
31
+ /**
32
+ * Fold an array of per-run `schemaRetries` payloads into a single
33
+ * aggregate rollup. Safe with empty / missing entries — an empty run
34
+ * (`{}`) still contributes to `runCount` but doesn't add to any
35
+ * per-schema bucket.
36
+ */
37
+ export function aggregateSchemaRetries(runs) {
38
+ const rollup = new Map();
39
+ for (const run of runs) {
40
+ if (!run)
41
+ continue;
42
+ for (const [schemaName, bucket] of Object.entries(run)) {
43
+ const existing = rollup.get(schemaName) ?? { calls: 0, attempts: 0, fallbacks: 0, runsPresent: 0 };
44
+ existing.calls += bucket.calls;
45
+ existing.attempts += bucket.attempts;
46
+ existing.fallbacks += bucket.fallbacks;
47
+ existing.runsPresent += 1;
48
+ rollup.set(schemaName, existing);
49
+ }
50
+ }
51
+ const schemas = {};
52
+ for (const [name, r] of rollup.entries()) {
53
+ schemas[name] = {
54
+ calls: r.calls,
55
+ attempts: r.attempts,
56
+ fallbacks: r.fallbacks,
57
+ avgAttempts: r.calls > 0 ? round(r.attempts / r.calls, 2) : 0,
58
+ fallbackRate: r.calls > 0 ? round(r.fallbacks / r.calls, 4) : 0,
59
+ runsPresent: r.runsPresent,
60
+ };
61
+ }
62
+ return { runCount: runs.length, schemas };
63
+ }
64
+ /**
65
+ * Fold an array of per-run forge-stats payloads into a single rollup
66
+ * for the /retry-stats response. Runs without any forge activity are
67
+ * counted in the window's runCount (see aggregateSchemaRetries) but do
68
+ * not contribute to the forge rollup (they have `attempts===0`).
69
+ */
70
+ export function aggregateForgeStats(runs) {
71
+ let totalAttempts = 0;
72
+ let approved = 0;
73
+ let rejected = 0;
74
+ let approvedConfidenceSum = 0;
75
+ let totalUniqueNames = 0;
76
+ let totalUniqueApproved = 0;
77
+ let totalUniqueTerminalRejections = 0;
78
+ let runsPresent = 0;
79
+ const rejectionReasons = {
80
+ schema_extra_field: 0,
81
+ shape_check: 0,
82
+ parse_error: 0,
83
+ judge_correctness: 0,
84
+ other: 0,
85
+ };
86
+ for (const run of runs) {
87
+ if (!run || run.attempts === 0)
88
+ continue;
89
+ totalAttempts += run.attempts;
90
+ approved += run.approved;
91
+ rejected += run.rejected;
92
+ approvedConfidenceSum += run.approvedConfidenceSum;
93
+ totalUniqueNames += run.uniqueNames ?? 0;
94
+ totalUniqueApproved += run.uniqueApproved ?? 0;
95
+ totalUniqueTerminalRejections += run.uniqueTerminalRejections ?? 0;
96
+ if (run.rejectionReasons) {
97
+ rejectionReasons.schema_extra_field += run.rejectionReasons.schema_extra_field;
98
+ rejectionReasons.shape_check += run.rejectionReasons.shape_check;
99
+ rejectionReasons.parse_error += run.rejectionReasons.parse_error;
100
+ rejectionReasons.judge_correctness += run.rejectionReasons.judge_correctness;
101
+ rejectionReasons.other += run.rejectionReasons.other;
102
+ }
103
+ runsPresent += 1;
104
+ }
105
+ return {
106
+ totalAttempts,
107
+ approved,
108
+ rejected,
109
+ approvalRate: totalAttempts > 0 ? round(approved / totalAttempts, 4) : 0,
110
+ avgApprovedConfidence: approved > 0 ? round(approvedConfidenceSum / approved, 2) : 0,
111
+ totalUniqueNames,
112
+ totalUniqueApproved,
113
+ totalUniqueTerminalRejections,
114
+ uniqueApprovalRate: totalUniqueNames > 0 ? round(totalUniqueApproved / totalUniqueNames, 4) : 0,
115
+ rejectionReasons,
116
+ runsPresent,
117
+ };
118
+ }
119
+ /**
120
+ * Fold an array of per-run cache-stats payloads into a rollup. Runs
121
+ * without cache activity (OpenAI with opaque counters, or very short
122
+ * runs that never crossed the auto-cache threshold) are skipped.
123
+ */
124
+ export function aggregateCacheStats(runs) {
125
+ let totalReadTokens = 0;
126
+ let totalCreationTokens = 0;
127
+ let totalSavingsUSD = 0;
128
+ let runsPresent = 0;
129
+ for (const run of runs) {
130
+ if (!run || (run.readTokens === 0 && run.creationTokens === 0))
131
+ continue;
132
+ totalReadTokens += run.readTokens;
133
+ totalCreationTokens += run.creationTokens;
134
+ totalSavingsUSD += run.savingsUSD;
135
+ runsPresent += 1;
136
+ }
137
+ const denom = totalReadTokens + totalCreationTokens;
138
+ return {
139
+ totalReadTokens,
140
+ totalCreationTokens,
141
+ totalSavingsUSD: round(totalSavingsUSD, 4),
142
+ readRatio: denom > 0 ? round(totalReadTokens / denom, 4) : 0,
143
+ runsPresent,
144
+ };
145
+ }
146
+ /**
147
+ * Fold per-run provider-error counters into a rollup. Runs without any
148
+ * classified errors are skipped (total === 0).
149
+ */
150
+ export function aggregateProviderErrors(runs) {
151
+ const rollup = {
152
+ auth: 0, quota: 0, rate_limit: 0, network: 0, unknown: 0, total: 0, runsPresent: 0,
153
+ };
154
+ for (const run of runs) {
155
+ if (!run || run.total === 0)
156
+ continue;
157
+ rollup.auth += run.auth;
158
+ rollup.quota += run.quota;
159
+ rollup.rate_limit += run.rate_limit;
160
+ rollup.network += run.network;
161
+ rollup.unknown += run.unknown;
162
+ rollup.total += run.total;
163
+ rollup.runsPresent += 1;
164
+ }
165
+ return rollup;
166
+ }
167
+ //# sourceMappingURL=retry-stats.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retry-stats.js","sourceRoot":"","sources":["../../src/cli/retry-stats.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=run-a.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-a.d.ts","sourceRoot":"","sources":["../../src/cli/run-a.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,CAAC"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Mars Genesis: Leader A (first entry in leaders.json)
3
+ * Edit leaders.json to change who this runs.
4
+ *
5
+ * Usage:
6
+ * npx tsx src/run-a.ts # full 12 turns
7
+ * npx tsx src/run-a.ts 3 # 3-turn smoke test
8
+ * npx tsx src/run-a.ts 5 --live # 5 turns + live web search
9
+ */
10
+ process.argv.splice(2, 0, '--leader', '0');
11
+ await import('./run.js');
12
+ export {};
13
+ //# sourceMappingURL=run-a.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-a.js","sourceRoot":"","sources":["../../src/cli/run-a.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC;AAC3C,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=run-b.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-b.d.ts","sourceRoot":"","sources":["../../src/cli/run-b.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,CAAC"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Mars Genesis: Leader B (second entry in leaders.json)
3
+ * Edit leaders.json to change who this runs.
4
+ *
5
+ * Usage:
6
+ * npx tsx src/run-b.ts # full 12 turns
7
+ * npx tsx src/run-b.ts 3 # 3-turn smoke test
8
+ * npx tsx src/run-b.ts 5 --live # 5 turns + live web search
9
+ */
10
+ process.argv.splice(2, 0, '--leader', '1');
11
+ await import('./run.js');
12
+ export {};
13
+ //# sourceMappingURL=run-b.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-b.js","sourceRoot":"","sources":["../../src/cli/run-b.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC;AAC3C,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC"}
@@ -0,0 +1,18 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * Mars Genesis: General-purpose standalone simulation runner.
4
+ *
5
+ * Reads leader configs via `resolveLeaders` which walks a priority
6
+ * chain: --leaders flag, $CWD/leaders.json, $CWD/config/leaders.json,
7
+ * bundled config/leaders.json, bundled config/leaders.example.json.
8
+ * CLI flags on top of that override individual leader fields.
9
+ *
10
+ * Usage:
11
+ * npx tsx src/run.ts --leader 0 # Leader A
12
+ * npx tsx src/run.ts --leader 1 5 # Leader B, 5 turns
13
+ * npx tsx src/run.ts --leader 0 --live # live web search
14
+ * npx tsx src/run.ts --name "Custom" --openness 0.8 3 # Override fields
15
+ * npx tsx src/run.ts --leaders ./my-leaders.json # Custom config file
16
+ */
17
+ export {};
18
+ //# sourceMappingURL=run.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/cli/run.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;GAcG"}