@actalk/inkos-core 1.3.6 → 1.3.7

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 (444) hide show
  1. package/dist/agent/agent-session.d.ts +7 -7
  2. package/dist/agent/agent-session.d.ts.map +1 -1
  3. package/dist/agent/agent-session.js +392 -63
  4. package/dist/agent/agent-session.js.map +1 -1
  5. package/dist/agent/agent-system-prompt.d.ts.map +1 -1
  6. package/dist/agent/agent-system-prompt.js +20 -16
  7. package/dist/agent/agent-system-prompt.js.map +1 -1
  8. package/dist/agent/agent-tools.d.ts +4 -1
  9. package/dist/agent/agent-tools.d.ts.map +1 -1
  10. package/dist/agent/agent-tools.js +81 -64
  11. package/dist/agent/agent-tools.js.map +1 -1
  12. package/dist/agents/architect.d.ts +18 -20
  13. package/dist/agents/architect.d.ts.map +1 -1
  14. package/dist/agents/architect.js +513 -632
  15. package/dist/agents/architect.js.map +1 -1
  16. package/dist/agents/chapter-analyzer.d.ts.map +1 -1
  17. package/dist/agents/chapter-analyzer.js +10 -6
  18. package/dist/agents/chapter-analyzer.js.map +1 -1
  19. package/dist/agents/composer.d.ts +1 -13
  20. package/dist/agents/composer.d.ts.map +1 -1
  21. package/dist/agents/composer.js +297 -290
  22. package/dist/agents/composer.js.map +1 -1
  23. package/dist/agents/consolidator.d.ts +17 -1
  24. package/dist/agents/consolidator.d.ts.map +1 -1
  25. package/dist/agents/consolidator.js +44 -6
  26. package/dist/agents/consolidator.js.map +1 -1
  27. package/dist/agents/continuity.d.ts +4 -1
  28. package/dist/agents/continuity.d.ts.map +1 -1
  29. package/dist/agents/continuity.js +111 -21
  30. package/dist/agents/continuity.js.map +1 -1
  31. package/dist/agents/length-normalizer.d.ts.map +1 -1
  32. package/dist/agents/length-normalizer.js +1 -4
  33. package/dist/agents/length-normalizer.js.map +1 -1
  34. package/dist/agents/planner-context.d.ts +54 -0
  35. package/dist/agents/planner-context.d.ts.map +1 -0
  36. package/dist/agents/planner-context.js +245 -0
  37. package/dist/agents/planner-context.js.map +1 -0
  38. package/dist/agents/planner-prompts.d.ts +36 -0
  39. package/dist/agents/planner-prompts.d.ts.map +1 -0
  40. package/dist/agents/planner-prompts.js +350 -0
  41. package/dist/agents/planner-prompts.js.map +1 -0
  42. package/dist/agents/planner.d.ts +39 -11
  43. package/dist/agents/planner.d.ts.map +1 -1
  44. package/dist/agents/planner.js +212 -195
  45. package/dist/agents/planner.js.map +1 -1
  46. package/dist/agents/polisher.d.ts +33 -0
  47. package/dist/agents/polisher.d.ts.map +1 -0
  48. package/dist/agents/polisher.js +122 -0
  49. package/dist/agents/polisher.js.map +1 -0
  50. package/dist/agents/post-write-validator.d.ts +1 -0
  51. package/dist/agents/post-write-validator.d.ts.map +1 -1
  52. package/dist/agents/post-write-validator.js +13 -0
  53. package/dist/agents/post-write-validator.js.map +1 -1
  54. package/dist/agents/reviser.d.ts +6 -2
  55. package/dist/agents/reviser.d.ts.map +1 -1
  56. package/dist/agents/reviser.js +379 -98
  57. package/dist/agents/reviser.js.map +1 -1
  58. package/dist/agents/rules-reader.d.ts +15 -2
  59. package/dist/agents/rules-reader.d.ts.map +1 -1
  60. package/dist/agents/rules-reader.js +49 -6
  61. package/dist/agents/rules-reader.js.map +1 -1
  62. package/dist/agents/state-validator.d.ts +9 -1
  63. package/dist/agents/state-validator.d.ts.map +1 -1
  64. package/dist/agents/state-validator.js +37 -1
  65. package/dist/agents/state-validator.js.map +1 -1
  66. package/dist/agents/writer-prompts.d.ts +1 -0
  67. package/dist/agents/writer-prompts.d.ts.map +1 -1
  68. package/dist/agents/writer-prompts.js +272 -29
  69. package/dist/agents/writer-prompts.js.map +1 -1
  70. package/dist/agents/writer.d.ts +12 -3
  71. package/dist/agents/writer.d.ts.map +1 -1
  72. package/dist/agents/writer.js +77 -107
  73. package/dist/agents/writer.js.map +1 -1
  74. package/dist/index.d.ts +20 -5
  75. package/dist/index.d.ts.map +1 -1
  76. package/dist/index.js +19 -5
  77. package/dist/index.js.map +1 -1
  78. package/dist/interaction/book-session-store.d.ts.map +1 -1
  79. package/dist/interaction/book-session-store.js +84 -69
  80. package/dist/interaction/book-session-store.js.map +1 -1
  81. package/dist/interaction/events.d.ts +2 -2
  82. package/dist/interaction/project-tools.d.ts +1 -0
  83. package/dist/interaction/project-tools.d.ts.map +1 -1
  84. package/dist/interaction/project-tools.js +51 -3
  85. package/dist/interaction/project-tools.js.map +1 -1
  86. package/dist/interaction/session-transcript-legacy.d.ts +4 -0
  87. package/dist/interaction/session-transcript-legacy.d.ts.map +1 -0
  88. package/dist/interaction/session-transcript-legacy.js +100 -0
  89. package/dist/interaction/session-transcript-legacy.js.map +1 -0
  90. package/dist/interaction/session-transcript-restore.d.ts +17 -0
  91. package/dist/interaction/session-transcript-restore.d.ts.map +1 -0
  92. package/dist/interaction/session-transcript-restore.js +493 -0
  93. package/dist/interaction/session-transcript-restore.js.map +1 -0
  94. package/dist/interaction/session-transcript-schema.d.ts +402 -0
  95. package/dist/interaction/session-transcript-schema.d.ts.map +1 -0
  96. package/dist/interaction/session-transcript-schema.js +59 -0
  97. package/dist/interaction/session-transcript-schema.js.map +1 -0
  98. package/dist/interaction/session-transcript.d.ts +14 -0
  99. package/dist/interaction/session-transcript.d.ts.map +1 -0
  100. package/dist/interaction/session-transcript.js +152 -0
  101. package/dist/interaction/session-transcript.js.map +1 -0
  102. package/dist/interaction/session.d.ts +10 -10
  103. package/dist/interaction/session.d.ts.map +1 -1
  104. package/dist/interaction/session.js +5 -3
  105. package/dist/interaction/session.js.map +1 -1
  106. package/dist/llm/provider.d.ts +6 -9
  107. package/dist/llm/provider.d.ts.map +1 -1
  108. package/dist/llm/provider.js +255 -63
  109. package/dist/llm/provider.js.map +1 -1
  110. package/dist/llm/providers/endpoints/ai360.d.ts +10 -0
  111. package/dist/llm/providers/endpoints/ai360.d.ts.map +1 -0
  112. package/dist/llm/providers/endpoints/ai360.js +34 -0
  113. package/dist/llm/providers/endpoints/ai360.js.map +1 -0
  114. package/dist/llm/providers/endpoints/anthropic.d.ts +12 -0
  115. package/dist/llm/providers/endpoints/anthropic.d.ts.map +1 -0
  116. package/dist/llm/providers/endpoints/anthropic.js +72 -0
  117. package/dist/llm/providers/endpoints/anthropic.js.map +1 -0
  118. package/dist/llm/providers/endpoints/astronCodingPlan.d.ts +16 -0
  119. package/dist/llm/providers/endpoints/astronCodingPlan.d.ts.map +1 -0
  120. package/dist/llm/providers/endpoints/astronCodingPlan.js +16 -0
  121. package/dist/llm/providers/endpoints/astronCodingPlan.js.map +1 -0
  122. package/dist/llm/providers/endpoints/baichuan.d.ts +10 -0
  123. package/dist/llm/providers/endpoints/baichuan.d.ts.map +1 -0
  124. package/dist/llm/providers/endpoints/baichuan.js +20 -0
  125. package/dist/llm/providers/endpoints/baichuan.js.map +1 -0
  126. package/dist/llm/providers/endpoints/bailian.d.ts +25 -0
  127. package/dist/llm/providers/endpoints/bailian.d.ts.map +1 -0
  128. package/dist/llm/providers/endpoints/bailian.js +42 -0
  129. package/dist/llm/providers/endpoints/bailian.js.map +1 -0
  130. package/dist/llm/providers/endpoints/bailianCodingPlan.d.ts +10 -0
  131. package/dist/llm/providers/endpoints/bailianCodingPlan.d.ts.map +1 -0
  132. package/dist/llm/providers/endpoints/bailianCodingPlan.js +22 -0
  133. package/dist/llm/providers/endpoints/bailianCodingPlan.js.map +1 -0
  134. package/dist/llm/providers/endpoints/custom.d.ts +16 -0
  135. package/dist/llm/providers/endpoints/custom.d.ts.map +1 -0
  136. package/dist/llm/providers/endpoints/custom.js +15 -0
  137. package/dist/llm/providers/endpoints/custom.js.map +1 -0
  138. package/dist/llm/providers/endpoints/deepseek.d.ts +17 -0
  139. package/dist/llm/providers/endpoints/deepseek.d.ts.map +1 -0
  140. package/dist/llm/providers/endpoints/deepseek.js +20 -0
  141. package/dist/llm/providers/endpoints/deepseek.js.map +1 -0
  142. package/dist/llm/providers/endpoints/giteeai.d.ts +10 -0
  143. package/dist/llm/providers/endpoints/giteeai.d.ts.map +1 -0
  144. package/dist/llm/providers/endpoints/giteeai.js +33 -0
  145. package/dist/llm/providers/endpoints/giteeai.js.map +1 -0
  146. package/dist/llm/providers/endpoints/githubCopilot.d.ts +10 -0
  147. package/dist/llm/providers/endpoints/githubCopilot.d.ts.map +1 -0
  148. package/dist/llm/providers/endpoints/githubCopilot.js +35 -0
  149. package/dist/llm/providers/endpoints/githubCopilot.js.map +1 -0
  150. package/dist/llm/providers/endpoints/glmCodingPlan.d.ts +9 -0
  151. package/dist/llm/providers/endpoints/glmCodingPlan.d.ts.map +1 -0
  152. package/dist/llm/providers/endpoints/glmCodingPlan.js +21 -0
  153. package/dist/llm/providers/endpoints/glmCodingPlan.js.map +1 -0
  154. package/dist/llm/providers/endpoints/google.d.ts +12 -0
  155. package/dist/llm/providers/endpoints/google.d.ts.map +1 -0
  156. package/dist/llm/providers/endpoints/google.js +41 -0
  157. package/dist/llm/providers/endpoints/google.js.map +1 -0
  158. package/dist/llm/providers/endpoints/hunyuan.d.ts +10 -0
  159. package/dist/llm/providers/endpoints/hunyuan.d.ts.map +1 -0
  160. package/dist/llm/providers/endpoints/hunyuan.js +34 -0
  161. package/dist/llm/providers/endpoints/hunyuan.js.map +1 -0
  162. package/dist/llm/providers/endpoints/infiniai.d.ts +10 -0
  163. package/dist/llm/providers/endpoints/infiniai.d.ts.map +1 -0
  164. package/dist/llm/providers/endpoints/infiniai.js +64 -0
  165. package/dist/llm/providers/endpoints/infiniai.js.map +1 -0
  166. package/dist/llm/providers/endpoints/internlm.d.ts +10 -0
  167. package/dist/llm/providers/endpoints/internlm.d.ts.map +1 -0
  168. package/dist/llm/providers/endpoints/internlm.js +20 -0
  169. package/dist/llm/providers/endpoints/internlm.js.map +1 -0
  170. package/dist/llm/providers/endpoints/kimiCodingPlan.d.ts +9 -0
  171. package/dist/llm/providers/endpoints/kimiCodingPlan.d.ts.map +1 -0
  172. package/dist/llm/providers/endpoints/kimiCodingPlan.js +17 -0
  173. package/dist/llm/providers/endpoints/kimiCodingPlan.js.map +1 -0
  174. package/dist/llm/providers/endpoints/longcat.d.ts +9 -0
  175. package/dist/llm/providers/endpoints/longcat.d.ts.map +1 -0
  176. package/dist/llm/providers/endpoints/longcat.js +18 -0
  177. package/dist/llm/providers/endpoints/longcat.js.map +1 -0
  178. package/dist/llm/providers/endpoints/minimax.d.ts +15 -0
  179. package/dist/llm/providers/endpoints/minimax.d.ts.map +1 -0
  180. package/dist/llm/providers/endpoints/minimax.js +26 -0
  181. package/dist/llm/providers/endpoints/minimax.js.map +1 -0
  182. package/dist/llm/providers/endpoints/minimaxCodingPlan.d.ts +9 -0
  183. package/dist/llm/providers/endpoints/minimaxCodingPlan.d.ts.map +1 -0
  184. package/dist/llm/providers/endpoints/minimaxCodingPlan.js +21 -0
  185. package/dist/llm/providers/endpoints/minimaxCodingPlan.js.map +1 -0
  186. package/dist/llm/providers/endpoints/mistral.d.ts +11 -0
  187. package/dist/llm/providers/endpoints/mistral.d.ts.map +1 -0
  188. package/dist/llm/providers/endpoints/mistral.js +31 -0
  189. package/dist/llm/providers/endpoints/mistral.js.map +1 -0
  190. package/dist/llm/providers/endpoints/modelscope.d.ts +10 -0
  191. package/dist/llm/providers/endpoints/modelscope.d.ts.map +1 -0
  192. package/dist/llm/providers/endpoints/modelscope.js +22 -0
  193. package/dist/llm/providers/endpoints/modelscope.js.map +1 -0
  194. package/dist/llm/providers/endpoints/moonshot.d.ts +12 -0
  195. package/dist/llm/providers/endpoints/moonshot.d.ts.map +1 -0
  196. package/dist/llm/providers/endpoints/moonshot.js +29 -0
  197. package/dist/llm/providers/endpoints/moonshot.js.map +1 -0
  198. package/dist/llm/providers/endpoints/newapi.d.ts +14 -0
  199. package/dist/llm/providers/endpoints/newapi.d.ts.map +1 -0
  200. package/dist/llm/providers/endpoints/newapi.js +14 -0
  201. package/dist/llm/providers/endpoints/newapi.js.map +1 -0
  202. package/dist/llm/providers/endpoints/ollama.d.ts +12 -0
  203. package/dist/llm/providers/endpoints/ollama.d.ts.map +1 -0
  204. package/dist/llm/providers/endpoints/ollama.js +63 -0
  205. package/dist/llm/providers/endpoints/ollama.js.map +1 -0
  206. package/dist/llm/providers/endpoints/openai.d.ts +12 -0
  207. package/dist/llm/providers/endpoints/openai.d.ts.map +1 -0
  208. package/dist/llm/providers/endpoints/openai.js +67 -0
  209. package/dist/llm/providers/endpoints/openai.js.map +1 -0
  210. package/dist/llm/providers/endpoints/opencodeCodingPlan.d.ts +9 -0
  211. package/dist/llm/providers/endpoints/opencodeCodingPlan.d.ts.map +1 -0
  212. package/dist/llm/providers/endpoints/opencodeCodingPlan.js +23 -0
  213. package/dist/llm/providers/endpoints/opencodeCodingPlan.js.map +1 -0
  214. package/dist/llm/providers/endpoints/openrouter.d.ts +15 -0
  215. package/dist/llm/providers/endpoints/openrouter.d.ts.map +1 -0
  216. package/dist/llm/providers/endpoints/openrouter.js +74 -0
  217. package/dist/llm/providers/endpoints/openrouter.js.map +1 -0
  218. package/dist/llm/providers/endpoints/ppio.d.ts +15 -0
  219. package/dist/llm/providers/endpoints/ppio.d.ts.map +1 -0
  220. package/dist/llm/providers/endpoints/ppio.js +73 -0
  221. package/dist/llm/providers/endpoints/ppio.js.map +1 -0
  222. package/dist/llm/providers/endpoints/qiniu.d.ts +10 -0
  223. package/dist/llm/providers/endpoints/qiniu.d.ts.map +1 -0
  224. package/dist/llm/providers/endpoints/qiniu.js +24 -0
  225. package/dist/llm/providers/endpoints/qiniu.js.map +1 -0
  226. package/dist/llm/providers/endpoints/sensenova.d.ts +10 -0
  227. package/dist/llm/providers/endpoints/sensenova.d.ts.map +1 -0
  228. package/dist/llm/providers/endpoints/sensenova.js +37 -0
  229. package/dist/llm/providers/endpoints/sensenova.js.map +1 -0
  230. package/dist/llm/providers/endpoints/siliconcloud.d.ts +14 -0
  231. package/dist/llm/providers/endpoints/siliconcloud.d.ts.map +1 -0
  232. package/dist/llm/providers/endpoints/siliconcloud.js +114 -0
  233. package/dist/llm/providers/endpoints/siliconcloud.js.map +1 -0
  234. package/dist/llm/providers/endpoints/spark.d.ts +14 -0
  235. package/dist/llm/providers/endpoints/spark.d.ts.map +1 -0
  236. package/dist/llm/providers/endpoints/spark.js +21 -0
  237. package/dist/llm/providers/endpoints/spark.js.map +1 -0
  238. package/dist/llm/providers/endpoints/stepfun.d.ts +10 -0
  239. package/dist/llm/providers/endpoints/stepfun.d.ts.map +1 -0
  240. package/dist/llm/providers/endpoints/stepfun.js +27 -0
  241. package/dist/llm/providers/endpoints/stepfun.js.map +1 -0
  242. package/dist/llm/providers/endpoints/tencentcloud.d.ts +10 -0
  243. package/dist/llm/providers/endpoints/tencentcloud.d.ts.map +1 -0
  244. package/dist/llm/providers/endpoints/tencentcloud.js +17 -0
  245. package/dist/llm/providers/endpoints/tencentcloud.js.map +1 -0
  246. package/dist/llm/providers/endpoints/volcengine.d.ts +10 -0
  247. package/dist/llm/providers/endpoints/volcengine.d.ts.map +1 -0
  248. package/dist/llm/providers/endpoints/volcengine.js +44 -0
  249. package/dist/llm/providers/endpoints/volcengine.js.map +1 -0
  250. package/dist/llm/providers/endpoints/volcengineCodingPlan.d.ts +19 -0
  251. package/dist/llm/providers/endpoints/volcengineCodingPlan.d.ts.map +1 -0
  252. package/dist/llm/providers/endpoints/volcengineCodingPlan.js +25 -0
  253. package/dist/llm/providers/endpoints/volcengineCodingPlan.js.map +1 -0
  254. package/dist/llm/providers/endpoints/wenxin.d.ts +10 -0
  255. package/dist/llm/providers/endpoints/wenxin.d.ts.map +1 -0
  256. package/dist/llm/providers/endpoints/wenxin.js +98 -0
  257. package/dist/llm/providers/endpoints/wenxin.js.map +1 -0
  258. package/dist/llm/providers/endpoints/xai.d.ts +11 -0
  259. package/dist/llm/providers/endpoints/xai.d.ts.map +1 -0
  260. package/dist/llm/providers/endpoints/xai.js +25 -0
  261. package/dist/llm/providers/endpoints/xai.js.map +1 -0
  262. package/dist/llm/providers/endpoints/xiaomimimo.d.ts +12 -0
  263. package/dist/llm/providers/endpoints/xiaomimimo.d.ts.map +1 -0
  264. package/dist/llm/providers/endpoints/xiaomimimo.js +16 -0
  265. package/dist/llm/providers/endpoints/xiaomimimo.js.map +1 -0
  266. package/dist/llm/providers/endpoints/zeroone.d.ts +10 -0
  267. package/dist/llm/providers/endpoints/zeroone.d.ts.map +1 -0
  268. package/dist/llm/providers/endpoints/zeroone.js +26 -0
  269. package/dist/llm/providers/endpoints/zeroone.js.map +1 -0
  270. package/dist/llm/providers/endpoints/zhipu.d.ts +12 -0
  271. package/dist/llm/providers/endpoints/zhipu.d.ts.map +1 -0
  272. package/dist/llm/providers/endpoints/zhipu.js +51 -0
  273. package/dist/llm/providers/endpoints/zhipu.js.map +1 -0
  274. package/dist/llm/providers/index.d.ts +5 -0
  275. package/dist/llm/providers/index.d.ts.map +1 -0
  276. package/dist/llm/providers/index.js +67 -0
  277. package/dist/llm/providers/index.js.map +1 -0
  278. package/dist/llm/providers/lookup.d.ts +16 -0
  279. package/dist/llm/providers/lookup.d.ts.map +1 -0
  280. package/dist/llm/providers/lookup.js +68 -0
  281. package/dist/llm/providers/lookup.js.map +1 -0
  282. package/dist/llm/providers/probe.d.ts +11 -0
  283. package/dist/llm/providers/probe.d.ts.map +1 -0
  284. package/dist/llm/providers/probe.js +24 -0
  285. package/dist/llm/providers/probe.js.map +1 -0
  286. package/dist/llm/providers/types.d.ts +71 -0
  287. package/dist/llm/providers/types.d.ts.map +1 -0
  288. package/dist/llm/providers/types.js +9 -0
  289. package/dist/llm/providers/types.js.map +1 -0
  290. package/dist/llm/providers/verify.d.ts +27 -0
  291. package/dist/llm/providers/verify.d.ts.map +1 -0
  292. package/dist/llm/providers/verify.js +77 -0
  293. package/dist/llm/providers/verify.js.map +1 -0
  294. package/dist/llm/secrets.d.ts.map +1 -1
  295. package/dist/llm/secrets.js +27 -2
  296. package/dist/llm/secrets.js.map +1 -1
  297. package/dist/llm/service-presets.d.ts +13 -3
  298. package/dist/llm/service-presets.d.ts.map +1 -1
  299. package/dist/llm/service-presets.js +78 -42
  300. package/dist/llm/service-presets.js.map +1 -1
  301. package/dist/llm/service-resolver.d.ts +1 -1
  302. package/dist/llm/service-resolver.d.ts.map +1 -1
  303. package/dist/llm/service-resolver.js +13 -0
  304. package/dist/llm/service-resolver.js.map +1 -1
  305. package/dist/models/book-rules.d.ts +23 -1
  306. package/dist/models/book-rules.d.ts.map +1 -1
  307. package/dist/models/book-rules.js +54 -2
  308. package/dist/models/book-rules.js.map +1 -1
  309. package/dist/models/input-governance.d.ts +20 -244
  310. package/dist/models/input-governance.d.ts.map +1 -1
  311. package/dist/models/input-governance.js +7 -51
  312. package/dist/models/input-governance.js.map +1 -1
  313. package/dist/models/project.d.ts +29 -28
  314. package/dist/models/project.d.ts.map +1 -1
  315. package/dist/models/project.js +11 -9
  316. package/dist/models/project.js.map +1 -1
  317. package/dist/models/runtime-state.d.ts +120 -0
  318. package/dist/models/runtime-state.d.ts.map +1 -1
  319. package/dist/models/runtime-state.js +12 -0
  320. package/dist/models/runtime-state.js.map +1 -1
  321. package/dist/pipeline/agent.d.ts.map +1 -1
  322. package/dist/pipeline/agent.js +59 -10
  323. package/dist/pipeline/agent.js.map +1 -1
  324. package/dist/pipeline/chapter-review-cycle.d.ts +11 -4
  325. package/dist/pipeline/chapter-review-cycle.d.ts.map +1 -1
  326. package/dist/pipeline/chapter-review-cycle.js +156 -73
  327. package/dist/pipeline/chapter-review-cycle.js.map +1 -1
  328. package/dist/pipeline/chapter-truth-validation.d.ts +2 -1
  329. package/dist/pipeline/chapter-truth-validation.d.ts.map +1 -1
  330. package/dist/pipeline/chapter-truth-validation.js +1 -1
  331. package/dist/pipeline/chapter-truth-validation.js.map +1 -1
  332. package/dist/pipeline/persisted-governed-plan.d.ts +1 -0
  333. package/dist/pipeline/persisted-governed-plan.d.ts.map +1 -1
  334. package/dist/pipeline/persisted-governed-plan.js +181 -66
  335. package/dist/pipeline/persisted-governed-plan.js.map +1 -1
  336. package/dist/pipeline/runner.d.ts +20 -17
  337. package/dist/pipeline/runner.d.ts.map +1 -1
  338. package/dist/pipeline/runner.js +359 -84
  339. package/dist/pipeline/runner.js.map +1 -1
  340. package/dist/state/manager.d.ts.map +1 -1
  341. package/dist/state/manager.js +44 -4
  342. package/dist/state/manager.js.map +1 -1
  343. package/dist/state/memory-db.d.ts +6 -0
  344. package/dist/state/memory-db.d.ts.map +1 -1
  345. package/dist/state/memory-db.js.map +1 -1
  346. package/dist/state/runtime-state-store.d.ts.map +1 -1
  347. package/dist/state/runtime-state-store.js +4 -1
  348. package/dist/state/runtime-state-store.js.map +1 -1
  349. package/dist/state/state-projections.d.ts +3 -1
  350. package/dist/state/state-projections.d.ts.map +1 -1
  351. package/dist/state/state-projections.js +58 -15
  352. package/dist/state/state-projections.js.map +1 -1
  353. package/dist/utils/book-id.d.ts +4 -0
  354. package/dist/utils/book-id.d.ts.map +1 -0
  355. package/dist/utils/book-id.js +27 -0
  356. package/dist/utils/book-id.js.map +1 -0
  357. package/dist/utils/chapter-cadence.js +1 -0
  358. package/dist/utils/chapter-cadence.js.map +1 -1
  359. package/dist/utils/chapter-memo-parser.d.ts +19 -0
  360. package/dist/utils/chapter-memo-parser.d.ts.map +1 -0
  361. package/dist/utils/chapter-memo-parser.js +114 -0
  362. package/dist/utils/chapter-memo-parser.js.map +1 -0
  363. package/dist/utils/config-loader.d.ts +7 -11
  364. package/dist/utils/config-loader.d.ts.map +1 -1
  365. package/dist/utils/config-loader.js +13 -253
  366. package/dist/utils/config-loader.js.map +1 -1
  367. package/dist/utils/context-assembly.d.ts +24 -0
  368. package/dist/utils/context-assembly.d.ts.map +1 -0
  369. package/dist/utils/context-assembly.js +77 -0
  370. package/dist/utils/context-assembly.js.map +1 -0
  371. package/dist/utils/effective-llm-config.d.ts +34 -0
  372. package/dist/utils/effective-llm-config.d.ts.map +1 -0
  373. package/dist/utils/effective-llm-config.js +417 -0
  374. package/dist/utils/effective-llm-config.js.map +1 -0
  375. package/dist/utils/governed-working-set.js +1 -1
  376. package/dist/utils/governed-working-set.js.map +1 -1
  377. package/dist/utils/hook-ledger-validator.d.ts +82 -0
  378. package/dist/utils/hook-ledger-validator.d.ts.map +1 -0
  379. package/dist/utils/hook-ledger-validator.js +225 -0
  380. package/dist/utils/hook-ledger-validator.js.map +1 -0
  381. package/dist/utils/hook-lifecycle.d.ts +5 -0
  382. package/dist/utils/hook-lifecycle.d.ts.map +1 -1
  383. package/dist/utils/hook-lifecycle.js +32 -0
  384. package/dist/utils/hook-lifecycle.js.map +1 -1
  385. package/dist/utils/hook-policy.d.ts +0 -17
  386. package/dist/utils/hook-policy.d.ts.map +1 -1
  387. package/dist/utils/hook-policy.js +0 -30
  388. package/dist/utils/hook-policy.js.map +1 -1
  389. package/dist/utils/hook-promotion.d.ts +83 -0
  390. package/dist/utils/hook-promotion.d.ts.map +1 -0
  391. package/dist/utils/hook-promotion.js +241 -0
  392. package/dist/utils/hook-promotion.js.map +1 -0
  393. package/dist/utils/hook-stale-detection.d.ts +51 -0
  394. package/dist/utils/hook-stale-detection.d.ts.map +1 -0
  395. package/dist/utils/hook-stale-detection.js +125 -0
  396. package/dist/utils/hook-stale-detection.js.map +1 -0
  397. package/dist/utils/llm-endpoint-auth.d.ts +5 -0
  398. package/dist/utils/llm-endpoint-auth.d.ts.map +1 -0
  399. package/dist/utils/llm-endpoint-auth.js +36 -0
  400. package/dist/utils/llm-endpoint-auth.js.map +1 -0
  401. package/dist/utils/llm-env.d.ts +14 -0
  402. package/dist/utils/llm-env.d.ts.map +1 -0
  403. package/dist/utils/llm-env.js +53 -0
  404. package/dist/utils/llm-env.js.map +1 -0
  405. package/dist/utils/memory-retrieval.d.ts +23 -1
  406. package/dist/utils/memory-retrieval.d.ts.map +1 -1
  407. package/dist/utils/memory-retrieval.js +45 -2
  408. package/dist/utils/memory-retrieval.js.map +1 -1
  409. package/dist/utils/narrative-control.d.ts +16 -0
  410. package/dist/utils/narrative-control.d.ts.map +1 -0
  411. package/dist/utils/narrative-control.js +131 -0
  412. package/dist/utils/narrative-control.js.map +1 -0
  413. package/dist/utils/path-safety.d.ts +2 -0
  414. package/dist/utils/path-safety.d.ts.map +1 -0
  415. package/dist/utils/path-safety.js +11 -0
  416. package/dist/utils/path-safety.js.map +1 -0
  417. package/dist/utils/planning-materials.d.ts +35 -0
  418. package/dist/utils/planning-materials.d.ts.map +1 -0
  419. package/dist/utils/planning-materials.js +123 -0
  420. package/dist/utils/planning-materials.js.map +1 -0
  421. package/dist/utils/proxy-fetch.d.ts +9 -0
  422. package/dist/utils/proxy-fetch.d.ts.map +1 -0
  423. package/dist/utils/proxy-fetch.js +31 -0
  424. package/dist/utils/proxy-fetch.js.map +1 -0
  425. package/dist/utils/runtime-writer.d.ts +14 -0
  426. package/dist/utils/runtime-writer.d.ts.map +1 -0
  427. package/dist/utils/runtime-writer.js +21 -0
  428. package/dist/utils/runtime-writer.js.map +1 -0
  429. package/dist/utils/spot-fix-patches.d.ts +7 -0
  430. package/dist/utils/spot-fix-patches.d.ts.map +1 -1
  431. package/dist/utils/spot-fix-patches.js +109 -36
  432. package/dist/utils/spot-fix-patches.js.map +1 -1
  433. package/dist/utils/story-markdown.d.ts.map +1 -1
  434. package/dist/utils/story-markdown.js +104 -6
  435. package/dist/utils/story-markdown.js.map +1 -1
  436. package/dist/utils/writing-methodology.d.ts +10 -0
  437. package/dist/utils/writing-methodology.d.ts.map +1 -0
  438. package/dist/utils/writing-methodology.js +163 -0
  439. package/dist/utils/writing-methodology.js.map +1 -0
  440. package/package.json +3 -2
  441. package/dist/utils/hook-agenda.d.ts +0 -21
  442. package/dist/utils/hook-agenda.d.ts.map +0 -1
  443. package/dist/utils/hook-agenda.js +0 -95
  444. package/dist/utils/hook-agenda.js.map +0 -1
@@ -1,12 +1,28 @@
1
1
  import { readFile, writeFile, mkdir } from "node:fs/promises";
2
2
  import { join } from "node:path";
3
3
  import { BaseAgent } from "./base.js";
4
- import { readStoryFrame, readVolumeMap, readCurrentStateWithFallback } from "../utils/outline-paths.js";
5
- import { parseBookRules } from "../models/book-rules.js";
6
- import { ChapterIntentSchema } from "../models/input-governance.js";
7
- import { parseChapterSummariesMarkdown, renderHookSnapshot, renderSummarySnapshot, retrieveMemorySelection, } from "../utils/memory-retrieval.js";
8
- import { analyzeChapterCadence } from "../utils/chapter-cadence.js";
9
- import { buildPlannerHookAgenda } from "../utils/hook-agenda.js";
4
+ import { readBookRules as readAuthoritativeBookRules } from "./rules-reader.js";
5
+ import { ChapterIntentSchema, } from "../models/input-governance.js";
6
+ import { renderHookSnapshot, renderSummarySnapshot, } from "../utils/memory-retrieval.js";
7
+ import { gatherPlanningMaterials, loadPlanningSeedMaterials, } from "../utils/planning-materials.js";
8
+ import { parseMemo, PlannerParseError } from "../utils/chapter-memo-parser.js";
9
+ import { buildPlannerUserMessage, getPlannerMemoSystemPrompt, } from "./planner-prompts.js";
10
+ import { composeCurrentArcProse, extractCollaboratorRows, extractOpponentRows, extractProtagonistRow, extractRelevantThreads, formatRecentSummaries, formatRecyclableHooks, readBookRules, readCharacterMatrix, readEmotionalArcs, readPendingHooks, readSubplotBoard, } from "./planner-context.js";
11
+ const MEMO_RETRY_LIMIT = 3;
12
+ /**
13
+ * Phase 3 planner.
14
+ *
15
+ * Produces:
16
+ * - a simplified ChapterIntent (goal + outline + keep/avoid/style) —
17
+ * still deterministic, used for retrieval hints and the intent markdown.
18
+ * - a full ChapterMemo (YAML frontmatter + 7-section markdown body) via
19
+ * LLM call + strict parser.
20
+ *
21
+ * Retry policy: up to 3 attempts. Each failed parse appends an error
22
+ * feedback block to the user message and re-invokes the LLM. On the third
23
+ * failure we surface `PlannerParseError` — never silently truncate or
24
+ * rename fields.
25
+ */
10
26
  export class PlannerAgent extends BaseAgent {
11
27
  get name() {
12
28
  return "planner";
@@ -15,100 +31,150 @@ export class PlannerAgent extends BaseAgent {
15
31
  const storyDir = join(input.bookDir, "story");
16
32
  const runtimeDir = join(storyDir, "runtime");
17
33
  await mkdir(runtimeDir, { recursive: true });
18
- const sourcePaths = {
19
- authorIntent: join(storyDir, "author_intent.md"),
20
- currentFocus: join(storyDir, "current_focus.md"),
21
- storyBible: join(storyDir, "story_bible.md"),
22
- volumeOutline: join(storyDir, "volume_outline.md"),
23
- chapterSummaries: join(storyDir, "chapter_summaries.md"),
24
- bookRules: join(storyDir, "book_rules.md"),
25
- currentState: join(storyDir, "current_state.md"),
26
- };
27
- const [authorIntent, currentFocus, storyBible, volumeOutline, chapterSummaries, bookRulesRaw, currentState,] = await Promise.all([
28
- this.readFileOrDefault(sourcePaths.authorIntent),
29
- this.readFileOrDefault(sourcePaths.currentFocus),
30
- readStoryFrame(input.bookDir),
31
- readVolumeMap(input.bookDir),
32
- this.readFileOrDefault(sourcePaths.chapterSummaries),
33
- this.readFileOrDefault(sourcePaths.bookRules),
34
- readCurrentStateWithFallback(input.bookDir),
35
- ]);
36
- const outlineNode = this.findOutlineNode(volumeOutline, input.chapterNumber);
37
- const matchedOutlineAnchor = this.hasMatchedOutlineAnchor(volumeOutline, input.chapterNumber);
38
- const goal = this.deriveGoal(input.externalContext, currentFocus, authorIntent, outlineNode, input.chapterNumber);
39
- const parsedRules = parseBookRules(bookRulesRaw);
40
- const mustKeep = this.collectMustKeep(currentState, storyBible);
41
- const mustAvoid = this.collectMustAvoid(currentFocus, parsedRules.rules.prohibitions);
42
- const styleEmphasis = this.collectStyleEmphasis(authorIntent, currentFocus);
43
- const conflicts = this.collectConflicts(input.externalContext, currentFocus, outlineNode, volumeOutline);
44
- const planningAnchor = conflicts.length > 0 ? undefined : outlineNode;
45
- const memorySelection = await retrieveMemorySelection({
34
+ const seedMaterials = await loadPlanningSeedMaterials({
46
35
  bookDir: input.bookDir,
47
36
  chapterNumber: input.chapterNumber,
48
- goal,
49
- outlineNode: planningAnchor,
50
- mustKeep,
51
37
  });
52
- const activeHookCount = memorySelection.activeHooks.filter((hook) => hook.status !== "resolved" && hook.status !== "deferred").length;
53
- const hookAgenda = buildPlannerHookAgenda({
54
- hooks: memorySelection.activeHooks,
55
- chapterNumber: input.chapterNumber,
56
- targetChapters: input.book.targetChapters,
57
- language: input.book.language ?? "zh",
58
- });
59
- const directives = this.buildStructuredDirectives({
38
+ const outlineNode = this.findOutlineNode(seedMaterials.volumeOutline, input.chapterNumber);
39
+ const goal = this.deriveGoal(input.externalContext, seedMaterials.currentFocus, seedMaterials.authorIntent, outlineNode, input.chapterNumber);
40
+ // Phase hotfix 5: read structured rules through the Phase 5 authoritative
41
+ // loader. It prefers outline/story_frame.md frontmatter, falls back to
42
+ // legacy book_rules.md, and refuses to silently zero out rules when the
43
+ // legacy file is just a compat shim. Reading raw bookRulesRaw via
44
+ // parseBookRules() bypassed all of that.
45
+ const parsedRules = await readAuthoritativeBookRules(input.bookDir);
46
+ const prohibitions = parsedRules?.rules.prohibitions ?? [];
47
+ const mustKeep = this.collectMustKeep(seedMaterials.currentState, seedMaterials.storyBible);
48
+ const mustAvoid = this.collectMustAvoid(seedMaterials.currentFocus, prohibitions);
49
+ const styleEmphasis = this.collectStyleEmphasis(seedMaterials.authorIntent, seedMaterials.currentFocus);
50
+ const materials = await gatherPlanningMaterials({
51
+ bookDir: input.bookDir,
60
52
  chapterNumber: input.chapterNumber,
61
- language: input.book.language,
62
- volumeOutline,
53
+ goal,
63
54
  outlineNode,
64
- matchedOutlineAnchor,
65
- chapterSummaries,
55
+ mustKeep,
56
+ seed: seedMaterials,
66
57
  });
58
+ const memorySelection = materials.memorySelection;
59
+ const activeHookCount = memorySelection.activeHooks.filter((hook) => hook.status !== "resolved" && hook.status !== "deferred").length;
60
+ const arcContext = this.buildArcContext(input.book.language, seedMaterials.volumeOutline, outlineNode);
67
61
  const intent = ChapterIntentSchema.parse({
68
62
  chapter: input.chapterNumber,
69
63
  goal,
70
64
  outlineNode,
71
- ...directives,
65
+ arcContext,
72
66
  mustKeep,
73
67
  mustAvoid,
74
68
  styleEmphasis,
75
- conflicts,
76
- hookAgenda,
77
69
  });
70
+ const isGoldenOpening = this.isGoldenOpeningChapter(input.book.language, input.chapterNumber);
71
+ const memo = await this.planChapterMemo({
72
+ storyDir,
73
+ bookDir: input.bookDir,
74
+ chapterNumber: input.chapterNumber,
75
+ isGoldenOpening,
76
+ fallbackGoal: goal,
77
+ chapterSummariesRaw: seedMaterials.chapterSummariesRaw,
78
+ previousEndingExcerpt: seedMaterials.previousEndingExcerpt,
79
+ brief: seedMaterials.brief,
80
+ recyclableHooks: memorySelection.recyclableHooks,
81
+ // Phase hotfix 4: thread book language through so the planner uses
82
+ // English prompts (system + user template + golden opening guidance)
83
+ // for English books instead of always-Chinese.
84
+ language: input.book.language ?? "zh",
85
+ });
86
+ // memo.goal is LLM-produced and specific (<=50 chars, validated).
87
+ // Overwrite intent.goal so downstream composer/retrieval gets the
88
+ // concrete task statement instead of the outline-derived fallback.
89
+ intent.goal = memo.goal;
78
90
  const runtimePath = join(runtimeDir, `chapter-${String(input.chapterNumber).padStart(4, "0")}.intent.md`);
79
- const intentMarkdown = this.renderIntentMarkdown(intent, input.book.language ?? "zh", renderHookSnapshot(memorySelection.hooks, input.book.language ?? "zh"), renderSummarySnapshot(memorySelection.summaries, input.book.language ?? "zh"), activeHookCount);
91
+ const intentMarkdown = this.renderIntentMarkdown(intent, memo, input.book.language ?? "zh", renderHookSnapshot(memorySelection.hooks, input.book.language ?? "zh"), renderSummarySnapshot(memorySelection.summaries, input.book.language ?? "zh"), activeHookCount);
80
92
  await writeFile(runtimePath, intentMarkdown, "utf-8");
81
93
  return {
82
94
  intent,
95
+ memo,
83
96
  intentMarkdown,
84
- plannerInputs: [
85
- ...Object.values(sourcePaths),
86
- join(storyDir, "pending_hooks.md"),
87
- ...(memorySelection.dbPath ? [memorySelection.dbPath] : []),
88
- ],
97
+ plannerInputs: materials.plannerInputs,
89
98
  runtimePath,
90
99
  };
91
100
  }
92
- buildStructuredDirectives(input) {
93
- const recentSummaries = parseChapterSummariesMarkdown(input.chapterSummaries)
94
- .filter((summary) => summary.chapter < input.chapterNumber)
95
- .sort((left, right) => left.chapter - right.chapter)
96
- .slice(-4);
97
- const cadence = analyzeChapterCadence({
98
- language: this.isChineseLanguage(input.language) ? "zh" : "en",
99
- rows: recentSummaries.map((summary) => ({
100
- chapter: summary.chapter,
101
- title: summary.title,
102
- mood: summary.mood,
103
- chapterType: summary.chapterType,
104
- })),
101
+ /**
102
+ * Invoke the LLM to produce a 7-section memo and parse it. Retries up to
103
+ * 3 times on parse failure, injecting the error message back into the user
104
+ * prompt so the LLM can correct itself.
105
+ */
106
+ async planChapterMemo(input) {
107
+ const [characterMatrix, subplotBoard, emotionalArcs, pendingHooks, bookRulesRaw] = await Promise.all([
108
+ readCharacterMatrix(input.storyDir),
109
+ readSubplotBoard(input.storyDir),
110
+ readEmotionalArcs(input.storyDir),
111
+ readPendingHooks(input.storyDir),
112
+ readBookRules(input.storyDir),
113
+ ]);
114
+ const language = input.language ?? "zh";
115
+ const noPriorChapter = language === "en"
116
+ ? "(this is the opening chapter — no prior chapter)"
117
+ : "(本章为起始章,无前章)";
118
+ const noBookRules = language === "en"
119
+ ? "(no book_rules entries)"
120
+ : "(暂无 book_rules 条目)";
121
+ const retryFeedbackHeader = language === "en"
122
+ ? "## Error from previous output"
123
+ : "## 上次输出的错误";
124
+ const retryFeedbackTrailer = language === "en"
125
+ ? "Fix and re-emit."
126
+ : "请修正后重新输出。";
127
+ const userMessage = buildPlannerUserMessage({
128
+ chapterNumber: input.chapterNumber,
129
+ previousChapterEndingExcerpt: input.previousEndingExcerpt?.trim()
130
+ ? input.previousEndingExcerpt.trim()
131
+ : noPriorChapter,
132
+ recentSummaries: formatRecentSummaries(input.chapterSummariesRaw, input.chapterNumber, 3),
133
+ currentArcProse: composeCurrentArcProse(subplotBoard, emotionalArcs, input.chapterNumber),
134
+ protagonistMatrixRow: extractProtagonistRow(characterMatrix),
135
+ opponentRows: extractOpponentRows(characterMatrix, 3),
136
+ collaboratorRows: extractCollaboratorRows(characterMatrix, 3),
137
+ relevantThreads: extractRelevantThreads(pendingHooks, subplotBoard),
138
+ recyclableHooks: formatRecyclableHooks(input.recyclableHooks ?? [], input.chapterNumber, language),
139
+ isGoldenOpening: input.isGoldenOpening,
140
+ bookRulesRelevant: bookRulesRaw.trim().length > 0 ? bookRulesRaw.trim() : noBookRules,
141
+ brief: input.brief ?? "",
142
+ language,
105
143
  });
106
- return {
107
- arcDirective: this.buildArcDirective(input.language, input.volumeOutline, input.outlineNode, input.matchedOutlineAnchor),
108
- sceneDirective: this.buildSceneDirective(input.language, cadence),
109
- moodDirective: this.buildMoodDirective(input.language, cadence),
110
- titleDirective: this.buildTitleDirective(input.language, cadence),
111
- };
144
+ const systemPrompt = getPlannerMemoSystemPrompt(language);
145
+ let currentUserMessage = userMessage;
146
+ let lastError;
147
+ for (let attempt = 0; attempt < MEMO_RETRY_LIMIT; attempt += 1) {
148
+ const response = await this.chat([
149
+ { role: "system", content: systemPrompt },
150
+ { role: "user", content: currentUserMessage },
151
+ ], { temperature: 0.7 });
152
+ try {
153
+ return parseMemo(response.content, input.chapterNumber, input.isGoldenOpening);
154
+ }
155
+ catch (error) {
156
+ if (!(error instanceof PlannerParseError)) {
157
+ throw error;
158
+ }
159
+ lastError = error;
160
+ this.log?.warn(`[planner] memo parse failed (attempt ${attempt + 1}/${MEMO_RETRY_LIMIT}): ${error.message}`);
161
+ currentUserMessage = `${userMessage}\n\n${retryFeedbackHeader}\n${error.message}\n${retryFeedbackTrailer}`;
162
+ }
163
+ }
164
+ throw lastError ?? new PlannerParseError("memo planner exhausted retries without a specific error");
165
+ }
166
+ isGoldenOpeningChapter(language, chapterNumber) {
167
+ const isZh = (language ?? "zh").toLowerCase().startsWith("zh");
168
+ return isZh ? chapterNumber <= 3 : chapterNumber <= 5;
169
+ }
170
+ buildArcContext(language, volumeOutline, outlineNode) {
171
+ if (!outlineNode)
172
+ return undefined;
173
+ if (volumeOutline === "(文件尚未创建)")
174
+ return undefined;
175
+ return this.isChineseLanguage(language)
176
+ ? `卷纲节点:${outlineNode}`
177
+ : `Outline node: ${outlineNode}`;
112
178
  }
113
179
  deriveGoal(externalContext, currentFocus, authorIntent, outlineNode, chapterNumber) {
114
180
  const first = this.extractFirstDirective(externalContext);
@@ -159,33 +225,6 @@ export class PlannerAgent extends BaseAgent {
159
225
  ...this.extractListItems(authorIntent, 2),
160
226
  ]).slice(0, 4);
161
227
  }
162
- collectConflicts(externalContext, currentFocus, outlineNode, volumeOutline) {
163
- const outlineText = outlineNode ?? volumeOutline;
164
- if (!outlineText || outlineText === "(文件尚未创建)")
165
- return [];
166
- if (externalContext) {
167
- const indicatesOverride = /ignore|skip|defer|instead|不要|别|先别|暂停/i.test(externalContext);
168
- if (!indicatesOverride && this.hasKeywordOverlap(externalContext, outlineText))
169
- return [];
170
- return [
171
- {
172
- type: "outline_vs_request",
173
- resolution: "allow local outline deferral",
174
- },
175
- ];
176
- }
177
- const localOverride = this.extractLocalOverrideGoal(currentFocus);
178
- if (!localOverride || !outlineNode) {
179
- return [];
180
- }
181
- return [
182
- {
183
- type: "outline_vs_current_focus",
184
- resolution: "allow explicit current focus override",
185
- detail: localOverride,
186
- },
187
- ];
188
- }
189
228
  extractFirstDirective(content) {
190
229
  if (!content)
191
230
  return undefined;
@@ -250,41 +289,6 @@ export class PlannerAgent extends BaseAgent {
250
289
  ]) ?? currentFocus;
251
290
  return this.extractListItems(focusSection, limit);
252
291
  }
253
- buildArcDirective(language, volumeOutline, outlineNode, matchedOutlineAnchor) {
254
- if (matchedOutlineAnchor || !outlineNode || volumeOutline === "(文件尚未创建)") {
255
- return undefined;
256
- }
257
- return this.isChineseLanguage(language)
258
- ? "不要继续依赖卷纲的 fallback 指令,必须把本章推进到新的弧线节点或地点变化。"
259
- : "Do not keep leaning on the outline fallback. Force this chapter toward a fresh arc beat or location change.";
260
- }
261
- buildSceneDirective(language, cadence) {
262
- if (cadence.scenePressure?.pressure !== "high") {
263
- return undefined;
264
- }
265
- const repeatedType = cadence.scenePressure.repeatedType;
266
- return this.isChineseLanguage(language)
267
- ? `最近章节连续停留在“${repeatedType}”,本章必须更换场景容器、地点或行动方式。`
268
- : `Recent chapters are stuck in repeated ${repeatedType} beats. Change the scene container, location, or action pattern this chapter.`;
269
- }
270
- buildMoodDirective(language, cadence) {
271
- if (cadence.moodPressure?.pressure !== "high") {
272
- return undefined;
273
- }
274
- const moods = cadence.moodPressure.recentMoods;
275
- return this.isChineseLanguage(language)
276
- ? `最近${moods.length}章情绪持续高压(${moods.slice(0, 3).join("、")}),本章必须降调——安排日常/喘息/温情/幽默场景,让读者呼吸。`
277
- : `The last ${moods.length} chapters have been relentlessly tense (${moods.slice(0, 3).join(", ")}). This chapter must downshift — write a quieter scene with warmth, humor, or breathing room.`;
278
- }
279
- buildTitleDirective(language, cadence) {
280
- if (cadence.titlePressure?.pressure !== "high") {
281
- return undefined;
282
- }
283
- const repeatedToken = cadence.titlePressure.repeatedToken;
284
- return this.isChineseLanguage(language)
285
- ? `标题不要再围绕“${repeatedToken}”重复命名,换一个新的意象或动作焦点。`
286
- : `Avoid another ${repeatedToken}-centric title. Pick a new image or action focus for this chapter title.`;
287
- }
288
292
  renderHookBudget(activeCount, language) {
289
293
  const cap = 12;
290
294
  if (activeCount < 10) {
@@ -375,6 +379,13 @@ export class PlannerAgent extends BaseAgent {
375
379
  if (inlineContent) {
376
380
  return inlineContent;
377
381
  }
382
+ const rangeStart = Number(match[1]);
383
+ const sectionContent = this.extractSectionAroundRange(lines, index);
384
+ if (sectionContent) {
385
+ const beatIndex = chapterNumber - rangeStart;
386
+ const specificBeat = this.extractNumberedBeat(sectionContent, beatIndex);
387
+ return specificBeat ?? sectionContent;
388
+ }
378
389
  const nextContent = this.findNextOutlineContent(lines, index + 1);
379
390
  if (nextContent) {
380
391
  return nextContent;
@@ -414,6 +425,49 @@ export class PlannerAgent extends BaseAgent {
414
425
  return undefined;
415
426
  return cleaned;
416
427
  }
428
+ extractSectionAroundRange(lines, rangeLineIndex) {
429
+ let headingIndex = -1;
430
+ for (let i = rangeLineIndex - 1; i >= 0; i--) {
431
+ if (lines[i].startsWith("#")) {
432
+ headingIndex = i;
433
+ break;
434
+ }
435
+ if (this.matchAnyRangeOutlineLine(lines[i]) || this.matchAnyExactOutlineLine(lines[i])) {
436
+ break;
437
+ }
438
+ }
439
+ if (headingIndex < 0) {
440
+ return undefined;
441
+ }
442
+ const headingLine = lines[headingIndex];
443
+ const headingLevel = headingLine.match(/^(#+)/)?.[1]?.length ?? 3;
444
+ const sectionLines = [];
445
+ for (let i = headingIndex; i < lines.length; i++) {
446
+ if (i > headingIndex) {
447
+ const nextHeadingMatch = lines[i].match(/^(#+)/);
448
+ if (nextHeadingMatch && (nextHeadingMatch[1]?.length ?? 0) <= headingLevel) {
449
+ break;
450
+ }
451
+ }
452
+ sectionLines.push(lines[i]);
453
+ }
454
+ const content = sectionLines.join("\n").trim();
455
+ return content.length > 0 ? content : undefined;
456
+ }
457
+ extractNumberedBeat(section, beatIndex) {
458
+ if (beatIndex < 0)
459
+ return undefined;
460
+ const beats = [];
461
+ for (const line of section.split("\n")) {
462
+ const trimmed = line.trim();
463
+ if (/^\d+[.)]\s/.test(trimmed)) {
464
+ beats.push(trimmed.replace(/^\d+[.)]\s*/, ""));
465
+ }
466
+ }
467
+ if (beats.length === 0 || beatIndex >= beats.length)
468
+ return undefined;
469
+ return beats[beatIndex];
470
+ }
417
471
  findNextOutlineContent(lines, startIndex) {
418
472
  for (let index = startIndex; index < lines.length; index += 1) {
419
473
  const line = lines[index];
@@ -433,11 +487,6 @@ export class PlannerAgent extends BaseAgent {
433
487
  }
434
488
  return undefined;
435
489
  }
436
- hasMatchedOutlineAnchor(volumeOutline, chapterNumber) {
437
- const lines = volumeOutline.split("\n").map((line) => line.trim()).filter(Boolean);
438
- return lines.some((line) => this.matchExactOutlineLine(line, chapterNumber) !== undefined
439
- || this.matchRangeOutlineLine(line, chapterNumber) !== undefined);
440
- }
441
490
  matchExactOutlineLine(line, chapterNumber) {
442
491
  const patterns = [
443
492
  new RegExp(`^(?:#+\\s*)?(?:[-*]\\s+)?(?:\\*\\*)?Chapter\\s*${chapterNumber}(?!\\d|\\s*[-~–—]\\s*\\d)(?:[::-])?(?:\\*\\*)?\\s*(.*)$`, "i"),
@@ -469,6 +518,8 @@ export class PlannerAgent extends BaseAgent {
469
518
  const patterns = [
470
519
  /^(?:#+\s*)?(?:[-*]\s+)?(?:\*\*)?Chapter\s*(\d+)\s*[-~–—]\s*(\d+)\b(?:[::-])?(?:\*\*)?\s*(.*)$/i,
471
520
  /^(?:#+\s*)?(?:[-*]\s+)?(?:\*\*)?第\s*(\d+)\s*[-~–—]\s*(\d+)\s*章(?:[::-])?(?:\*\*)?\s*(.*)$/i,
521
+ /^(?:[-*]\s+)?(?:\*\*)?章节范围(?:\*\*)?[::]\s*(\d+)\s*[-~–—]\s*(\d+)\s*章\s*(.*)$/,
522
+ /^(?:[-*]\s+)?(?:\*\*)?Chapter\s*[Rr]ange(?:\*\*)?[::]\s*(\d+)\s*[-~–—]\s*(\d+)\b\s*(.*)$/i,
472
523
  ];
473
524
  return patterns
474
525
  .map((pattern) => line.match(pattern))
@@ -487,22 +538,7 @@ export class PlannerAgent extends BaseAgent {
487
538
  const upper = Math.max(start, end);
488
539
  return chapterNumber >= lower && chapterNumber <= upper;
489
540
  }
490
- hasKeywordOverlap(left, right) {
491
- const keywords = this.extractKeywords(left);
492
- if (keywords.length === 0)
493
- return false;
494
- const normalizedRight = right.toLowerCase();
495
- return keywords.some((keyword) => normalizedRight.includes(keyword.toLowerCase()));
496
- }
497
- extractKeywords(content) {
498
- const english = content.match(/[a-z]{4,}/gi) ?? [];
499
- const chinese = content.match(/[\u4e00-\u9fff]{2,4}/g) ?? [];
500
- return this.unique([...english, ...chinese]);
501
- }
502
- renderIntentMarkdown(intent, language, pendingHooks, chapterSummaries, activeHookCount) {
503
- const conflictLines = intent.conflicts.length > 0
504
- ? intent.conflicts.map((conflict) => `- ${conflict.type}: ${conflict.resolution}`).join("\n")
505
- : "- none";
541
+ renderIntentMarkdown(intent, memo, language, pendingHooks, chapterSummaries, activeHookCount) {
506
542
  const mustKeep = intent.mustKeep.length > 0
507
543
  ? intent.mustKeep.map((item) => `- ${item}`).join("\n")
508
544
  : "- none";
@@ -512,35 +548,10 @@ export class PlannerAgent extends BaseAgent {
512
548
  const styleEmphasis = intent.styleEmphasis.length > 0
513
549
  ? intent.styleEmphasis.map((item) => `- ${item}`).join("\n")
514
550
  : "- none";
515
- const directives = [
516
- intent.arcDirective ? `- arc: ${intent.arcDirective}` : undefined,
517
- intent.sceneDirective ? `- scene: ${intent.sceneDirective}` : undefined,
518
- intent.moodDirective ? `- mood: ${intent.moodDirective}` : undefined,
519
- intent.titleDirective ? `- title: ${intent.titleDirective}` : undefined,
520
- ].filter(Boolean).join("\n") || "- none";
521
- const hookAgenda = [
522
- "### Must Advance",
523
- intent.hookAgenda.mustAdvance.length > 0
524
- ? intent.hookAgenda.mustAdvance.map((item) => `- ${item}`).join("\n")
525
- : "- none",
526
- "",
527
- "### Eligible Resolve",
528
- intent.hookAgenda.eligibleResolve.length > 0
529
- ? intent.hookAgenda.eligibleResolve.map((item) => `- ${item}`).join("\n")
530
- : "- none",
531
- "",
532
- "### Stale Debt",
533
- intent.hookAgenda.staleDebt.length > 0
534
- ? intent.hookAgenda.staleDebt.map((item) => `- ${item}`).join("\n")
535
- : "- none",
536
- "",
537
- "### Avoid New Hook Families",
538
- intent.hookAgenda.avoidNewHookFamilies.length > 0
539
- ? intent.hookAgenda.avoidNewHookFamilies.map((item) => `- ${item}`).join("\n")
540
- : "- none",
541
- "",
542
- this.renderHookBudget(activeHookCount, language),
543
- ].join("\n");
551
+ const memoBody = memo.body.trim();
552
+ const threadRefsLine = memo.threadRefs.length > 0
553
+ ? memo.threadRefs.map((id) => `- ${id}`).join("\n")
554
+ : "- (none)";
544
555
  return [
545
556
  "# Chapter Intent",
546
557
  "",
@@ -550,6 +561,9 @@ export class PlannerAgent extends BaseAgent {
550
561
  "## Outline Node",
551
562
  intent.outlineNode ?? "(not found)",
552
563
  "",
564
+ "## Arc Context",
565
+ intent.arcContext ?? "(none)",
566
+ "",
553
567
  "## Must Keep",
554
568
  mustKeep,
555
569
  "",
@@ -559,14 +573,16 @@ export class PlannerAgent extends BaseAgent {
559
573
  "## Style Emphasis",
560
574
  styleEmphasis,
561
575
  "",
562
- "## Structured Directives",
563
- directives,
576
+ "## Chapter Memo",
577
+ `- isGoldenOpening: ${memo.isGoldenOpening ? "true" : "false"}`,
564
578
  "",
565
- "## Hook Agenda",
566
- hookAgenda,
579
+ "### Thread Refs",
580
+ threadRefsLine,
567
581
  "",
568
- "## Conflicts",
569
- conflictLines,
582
+ "### Body",
583
+ memoBody,
584
+ "",
585
+ this.renderHookBudget(activeHookCount, language),
570
586
  "",
571
587
  "## Pending Hooks Snapshot",
572
588
  pendingHooks,
@@ -582,6 +598,7 @@ export class PlannerAgent extends BaseAgent {
582
598
  isChineseLanguage(language) {
583
599
  return (language ?? "zh").toLowerCase().startsWith("zh");
584
600
  }
601
+ // Kept for potential subclasses reading seed files directly.
585
602
  async readFileOrDefault(path) {
586
603
  try {
587
604
  return await readFile(path, "utf-8");
@@ -1 +1 @@
1
- {"version":3,"file":"planner.js","sourceRoot":"","sources":["../../src/agents/planner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"planner.js","sourceRoot":"","sources":["../../src/agents/planner.ts"],"names":[],"mappings":"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"}