@kienmatu/inkos-core 0.1.3 → 3.3.0

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 (99) hide show
  1. package/dist/agent/agent-session.js +2 -2
  2. package/dist/agent/agent-session.js.map +1 -1
  3. package/dist/agent/agent-system-prompt.d.ts.map +1 -1
  4. package/dist/agent/agent-system-prompt.js +3 -2
  5. package/dist/agent/agent-system-prompt.js.map +1 -1
  6. package/dist/agent/agent-tools.d.ts +1 -0
  7. package/dist/agent/agent-tools.d.ts.map +1 -1
  8. package/dist/agent/agent-tools.js +16 -8
  9. package/dist/agent/agent-tools.js.map +1 -1
  10. package/dist/agent/pi-stream.d.ts.map +1 -1
  11. package/dist/agent/pi-stream.js +74 -3
  12. package/dist/agent/pi-stream.js.map +1 -1
  13. package/dist/agents/architect.js +7 -7
  14. package/dist/agents/continuity.d.ts.map +1 -1
  15. package/dist/agents/continuity.js +2 -1
  16. package/dist/agents/continuity.js.map +1 -1
  17. package/dist/agents/fanfic-prompt-sections.d.ts +3 -3
  18. package/dist/agents/fanfic-prompt-sections.d.ts.map +1 -1
  19. package/dist/agents/fanfic-prompt-sections.js +83 -3
  20. package/dist/agents/fanfic-prompt-sections.js.map +1 -1
  21. package/dist/agents/observer-prompts.js +1 -1
  22. package/dist/agents/observer-prompts.js.map +1 -1
  23. package/dist/agents/planner-prompts.d.ts +1 -1
  24. package/dist/agents/planner-prompts.d.ts.map +1 -1
  25. package/dist/agents/planner-prompts.js +15 -14
  26. package/dist/agents/planner-prompts.js.map +1 -1
  27. package/dist/agents/planner.d.ts.map +1 -1
  28. package/dist/agents/planner.js +2 -2
  29. package/dist/agents/planner.js.map +1 -1
  30. package/dist/agents/post-write-validator.d.ts +2 -0
  31. package/dist/agents/post-write-validator.d.ts.map +1 -1
  32. package/dist/agents/post-write-validator.js +6 -2
  33. package/dist/agents/post-write-validator.js.map +1 -1
  34. package/dist/agents/settler-prompts.d.ts +1 -0
  35. package/dist/agents/settler-prompts.d.ts.map +1 -1
  36. package/dist/agents/settler-prompts.js +200 -13
  37. package/dist/agents/settler-prompts.js.map +1 -1
  38. package/dist/agents/short-fiction.d.ts +12 -9
  39. package/dist/agents/short-fiction.d.ts.map +1 -1
  40. package/dist/agents/short-fiction.js +269 -49
  41. package/dist/agents/short-fiction.js.map +1 -1
  42. package/dist/agents/writer-prompts.d.ts +6 -0
  43. package/dist/agents/writer-prompts.d.ts.map +1 -1
  44. package/dist/agents/writer-prompts.js +97 -36
  45. package/dist/agents/writer-prompts.js.map +1 -1
  46. package/dist/agents/writer.d.ts.map +1 -1
  47. package/dist/agents/writer.js +6 -1
  48. package/dist/agents/writer.js.map +1 -1
  49. package/dist/interaction/action-envelope.d.ts +10 -10
  50. package/dist/interaction/action-envelope.d.ts.map +1 -1
  51. package/dist/interaction/action-envelope.js +13 -6
  52. package/dist/interaction/action-envelope.js.map +1 -1
  53. package/dist/interaction/project-tools.d.ts +3 -1
  54. package/dist/interaction/project-tools.d.ts.map +1 -1
  55. package/dist/interaction/project-tools.js +27 -8
  56. package/dist/interaction/project-tools.js.map +1 -1
  57. package/dist/llm/provider.d.ts +6 -0
  58. package/dist/llm/provider.d.ts.map +1 -1
  59. package/dist/llm/provider.js +28 -2
  60. package/dist/llm/provider.js.map +1 -1
  61. package/dist/models/short-fiction-format.d.ts +10 -0
  62. package/dist/models/short-fiction-format.d.ts.map +1 -0
  63. package/dist/models/short-fiction-format.js +41 -0
  64. package/dist/models/short-fiction-format.js.map +1 -0
  65. package/dist/pipeline/chapter-review-cycle.d.ts +3 -8
  66. package/dist/pipeline/chapter-review-cycle.d.ts.map +1 -1
  67. package/dist/pipeline/chapter-review-cycle.js +3 -1
  68. package/dist/pipeline/chapter-review-cycle.js.map +1 -1
  69. package/dist/pipeline/chapter-state-recovery.d.ts +2 -4
  70. package/dist/pipeline/chapter-state-recovery.d.ts.map +1 -1
  71. package/dist/pipeline/chapter-state-recovery.js.map +1 -1
  72. package/dist/pipeline/chapter-truth-validation.d.ts +2 -4
  73. package/dist/pipeline/chapter-truth-validation.d.ts.map +1 -1
  74. package/dist/pipeline/chapter-truth-validation.js.map +1 -1
  75. package/dist/pipeline/runner.d.ts +14 -0
  76. package/dist/pipeline/runner.d.ts.map +1 -1
  77. package/dist/pipeline/runner.js +55 -38
  78. package/dist/pipeline/runner.js.map +1 -1
  79. package/dist/pipeline/short-fiction-runner.d.ts.map +1 -1
  80. package/dist/pipeline/short-fiction-runner.js +19 -6
  81. package/dist/pipeline/short-fiction-runner.js.map +1 -1
  82. package/dist/prompts/short-fiction.d.ts +3 -0
  83. package/dist/prompts/short-fiction.d.ts.map +1 -1
  84. package/dist/prompts/short-fiction.js +155 -85
  85. package/dist/prompts/short-fiction.js.map +1 -1
  86. package/dist/utils/chapter-memo-parser.d.ts +10 -0
  87. package/dist/utils/chapter-memo-parser.d.ts.map +1 -1
  88. package/dist/utils/chapter-memo-parser.js +59 -10
  89. package/dist/utils/chapter-memo-parser.js.map +1 -1
  90. package/dist/utils/golden-opening.d.ts +12 -0
  91. package/dist/utils/golden-opening.d.ts.map +1 -0
  92. package/dist/utils/golden-opening.js +18 -0
  93. package/dist/utils/golden-opening.js.map +1 -0
  94. package/dist/utils/log-message.d.ts +13 -0
  95. package/dist/utils/log-message.d.ts.map +1 -0
  96. package/dist/utils/log-message.js +2 -0
  97. package/dist/utils/log-message.js.map +1 -0
  98. package/package.json +1 -1
  99. package/skills/inkos-short-writing/SKILL.md +2 -2
@@ -1,6 +1,7 @@
1
- import { streamSimple } from "@mariozechner/pi-ai";
1
+ import { createAssistantMessageEventStream, streamSimple } from "@mariozechner/pi-ai";
2
2
  import { assertWithinContextWindow, estimatePiContextTokens, guardAssistantMessageStream, } from "../llm/provider.js";
3
3
  import { agentTrajectoryHeaders, beginAgentModelCall, } from "../llm/agent-trajectory.js";
4
+ import { createLeadingThinkTagStripper, stripLeadingThinkBlock, } from "../llm/think-tag-stripper.js";
4
5
  /**
5
6
  * The single Pi transport boundary used by both conversational and worker
6
7
  * agents. Pi keeps native tool calls; InkOS adds context guards, trajectory
@@ -22,10 +23,80 @@ export function guardedPiStream(model, context, options) {
22
23
  const traceHeaders = agentTrajectoryHeaders(model.baseUrl, modelCall, 1, {
23
24
  effort: String(options?.reasoning ?? (model.reasoning ? "enabled" : "disabled")),
24
25
  });
25
- return guardAssistantMessageStream(model, (signal) => streamSimple(model, context, {
26
+ return guardAssistantMessageStream(model, (signal) => stripLeadingThinkTags(streamSimple(model, context, {
26
27
  ...options,
27
28
  headers: { ...(options?.headers ?? {}), ...traceHeaders },
28
29
  signal,
29
- }), options?.signal);
30
+ })), options?.signal);
31
+ }
32
+ /** Strip the leading think block from the first text block of an assistant message. */
33
+ function stripThinkFromMessage(message) {
34
+ const index = message.content.findIndex((block) => block.type === "text");
35
+ if (index < 0)
36
+ return message;
37
+ const block = message.content[index];
38
+ const text = stripLeadingThinkBlock(block.text);
39
+ if (text === block.text)
40
+ return message;
41
+ const content = [...message.content];
42
+ content[index] = { ...block, text };
43
+ return { ...message, content };
44
+ }
45
+ /**
46
+ * Some OpenAI-compatible gateways inline reasoning as a leading
47
+ * `<think>...</think>` block in the text content instead of a separate
48
+ * reasoning field (issue #329). The custom transport in provider.ts already
49
+ * strips it, but the Pi transport did not, so the tags reached the transcript
50
+ * and the UI. Even an empty `<think></think>` is damaging: it sits on the same
51
+ * line as the answer's first characters, so a reply that opens with
52
+ * "## Heading" renders as a paragraph with a literal "##".
53
+ */
54
+ function stripLeadingThinkTags(upstream) {
55
+ const out = createAssistantMessageEventStream();
56
+ void (async () => {
57
+ const stripper = createLeadingThinkTagStripper();
58
+ let firstTextIndex = null;
59
+ let terminalSeen = false;
60
+ for await (const event of upstream) {
61
+ if (event.type === "text_start" && firstTextIndex === null) {
62
+ firstTextIndex = event.contentIndex;
63
+ out.push(event);
64
+ continue;
65
+ }
66
+ if (event.type === "text_delta" && event.contentIndex === firstTextIndex) {
67
+ const delta = stripper.push(event.delta);
68
+ // An empty result means the stripper is still buffering; emitting
69
+ // nothing keeps the think block from ever reaching the UI.
70
+ if (delta)
71
+ out.push({ ...event, delta });
72
+ continue;
73
+ }
74
+ if (event.type === "text_end" && event.contentIndex === firstTextIndex) {
75
+ // An unterminated think block is left alone by the stripper, so flush
76
+ // whatever it held back before closing the block.
77
+ const tail = stripper.flush();
78
+ if (tail)
79
+ out.push({ type: "text_delta", contentIndex: event.contentIndex, delta: tail, partial: event.partial });
80
+ out.push({ ...event, content: stripLeadingThinkBlock(event.content) });
81
+ continue;
82
+ }
83
+ if (event.type === "done") {
84
+ terminalSeen = true;
85
+ out.push({ ...event, message: stripThinkFromMessage(event.message) });
86
+ continue;
87
+ }
88
+ if (event.type === "error") {
89
+ terminalSeen = true;
90
+ out.push({ ...event, error: stripThinkFromMessage(event.error) });
91
+ continue;
92
+ }
93
+ out.push(event);
94
+ }
95
+ // guardAssistantMessageStream turns a missing terminal event into an error;
96
+ // closing here just stops it from waiting for the deadline first.
97
+ if (!terminalSeen)
98
+ out.end();
99
+ })();
100
+ return out;
30
101
  }
31
102
  //# sourceMappingURL=pi-stream.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pi-stream.js","sourceRoot":"","sources":["../../src/agent/pi-stream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAQnD,OAAO,EACL,yBAAyB,EACzB,uBAAuB,EACvB,2BAA2B,GAC5B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,sBAAsB,EACtB,mBAAmB,GACpB,MAAM,4BAA4B,CAAC;AAEpC;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAC7B,KAAkB,EAClB,OAAgB,EAChB,OAA6B;IAE7B,MAAM,oBAAoB,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC;QAC9D,CAAC,CAAC,OAAQ,CAAC,SAAU;QACrB,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC;YAChC,CAAC,CAAC,KAAK,CAAC,SAAS;YACjB,CAAC,CAAC,IAAI,CAAC;IACX,yBAAyB,CAAC;QACxB,OAAO,EAAE,KAAK;QACd,KAAK,EAAE,KAAK,CAAC,EAAE;QACf,oBAAoB,EAAE,uBAAuB,CAAC,OAAO,CAAC;QACtD,oBAAoB;KACrB,CAAC,CAAC;IACH,MAAM,SAAS,GAAG,mBAAmB,EAAE,CAAC;IACxC,MAAM,YAAY,GAAG,sBAAsB,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE;QACvE,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE,SAAS,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;KACjF,CAAC,CAAC;IACH,OAAO,2BAA2B,CAChC,KAAK,EACL,CAAC,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE;QACvC,GAAG,OAAO;QACV,OAAO,EAAE,EAAE,GAAG,CAAC,OAAO,EAAE,OAAO,IAAI,EAAE,CAAC,EAAE,GAAG,YAAY,EAAE;QACzD,MAAM;KACP,CAAC,EACF,OAAO,EAAE,MAAM,CAChB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"pi-stream.js","sourceRoot":"","sources":["../../src/agent/pi-stream.ts"],"names":[],"mappings":"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"}
@@ -311,15 +311,15 @@ ${eraBlock}
311
311
  Do not duplicate the same fact across sections. The protagonist's arc lives only in roles; world hard-rules live only in story_frame; rhythm principles live only in the last paragraph of volume_map; character initial status lives only in roles.Current_State; initial hooks live only in pending_hooks (start_chapter=0 rows). **When the book is period fiction / historical fanfic / urban reincarnation** — anything pinned to a real year, season, or historic marker — weave the environment/era anchor into story_frame's world-tonal-ground paragraph (e.g. "July 1985, just after the SARS wave"). **For cultivation / high-fantasy / system genres that have no real-world year, skip it entirely** — do not fabricate an era anchor. If a section repeats content that belongs elsewhere, delete it.
312
312
 
313
313
  ## Output budget (over-budget means cut)
314
- - story_frame ≤ 3000 chars
315
- - volume_map ≤ 5000 chars
316
- - roles ≤ 8000 chars total
317
- - book_rules ≤ 1000 chars (ordinary Markdown rules card)
318
- - pending_hooks ≤ 2000 chars
314
+ - story_frame ≤ 2000 words
315
+ - volume_map ≤ 3300 words
316
+ - roles ≤ 5300 words total
317
+ - book_rules ≤ 650 words (ordinary Markdown rules card)
318
+ - pending_hooks ≤ 1300 words
319
319
 
320
320
  === SECTION: story_frame ===
321
321
 
322
- Four prose sections, ~600-900 chars each. No tables. No bullet lists. Real paragraphs. **Do NOT write the protagonist's full arc here** — that is owned by roles/主要角色/<protagonist>.md. Use a single-line pointer inside this block (e.g. "The protagonist is X; full arc lives in roles/主要角色/X.md").
322
+ Four prose sections, ~400-600 words each. No tables. No bullet lists. Real paragraphs. **Do NOT write the protagonist's full arc here** — that is owned by roles/主要角色/<protagonist>.md. Use a single-line pointer inside this block (e.g. "The protagonist is X; full arc lives in roles/主要角色/X.md").
323
323
 
324
324
  ## 01_Theme_and_Tonal_Ground
325
325
  What is this book actually about — not "hero grows from weak to strong" (empty), but a concrete proposition. Then the tonal ground: warm / cold / fierce / severe — which, and why this and not another. End with a one-line pointer to the protagonist role file.
@@ -368,7 +368,7 @@ Supporting characters' stage changes (master dies end of vol 2, opponent breaks
368
368
  Each volume's last chapter must contain an irreversible event. Prose, one paragraph per volume. **Write what must happen, not which chapter**.
369
369
 
370
370
  ## 05_Rhythm_Principles (concrete + universal)
371
- **This is the single home for rhythm principles — no separate rhythm_principles section exists.** Output 6 rhythm principles. **At least 3 must be concretized for this book** (e.g., "every 5 chapters in the first 30, hit one small payoff"); the rest may stay as universal rules (e.g., "no deus ex machina", "plant the foreshadow 3-5 chapters before the climax"). A mix of concrete + universal is valid. Bad: "rhythm must balance tension and release". Good: "every 5 chapters in the first 30 carries a small payoff landing in the last 300 chars of the chapter". Cover (order flexible, substitutions of equal weight are allowed): (1) climax spacing, (2) breath frequency, (3) hook density, (4) information release pacing, (5) payoff rhythm, (6) relationship advancement — each 2-3 sentences.
371
+ **This is the single home for rhythm principles — no separate rhythm_principles section exists.** Output 6 rhythm principles. **At least 3 must be concretized for this book** (e.g., "every 5 chapters in the first 30, hit one small payoff"); the rest may stay as universal rules (e.g., "no deus ex machina", "plant the foreshadow 3-5 chapters before the climax"). A mix of concrete + universal is valid. Bad: "rhythm must balance tension and release". Good: "every 5 chapters in the first 30 carries a small payoff landing in the last 200 words of the chapter". Cover (order flexible, substitutions of equal weight are allowed): (1) climax spacing, (2) breath frequency, (3) hook density, (4) information release pacing, (5) payoff rhythm, (6) relationship advancement — each 2-3 sentences.
372
372
 
373
373
  If the external instructions specify content proportions (for example politics/romance 50/50 or career/relationship weighting), this paragraph must turn that into a full-book rhythm promise: which volumes lean toward which line, which line must be visible in every 3-5 chapter mini-cycle, and which line carries fallout after climaxes. Do not merely say "keep it balanced."
374
374
 
@@ -1 +1 @@
1
- {"version":3,"file":"continuity.d.ts","sourceRoot":"","sources":["../../src/agents/continuity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAItC,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAa5F,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;IAC3C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,sHAAsH;IACtH,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAC/B,8EAA8E;IAC9E,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,UAAU,CAAC,EAAE;QACpB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;QAClC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;KAC9B,CAAC;CACH;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,QAAQ,EAAE,UAAU,GAAG,SAAS,GAAG,MAAM,CAAC;IACnD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,GAAG,YAAY,GAAG,SAAS,CAAC;CAC3D;AAgVD,qBAAa,iBAAkB,SAAQ,SAAS;IAC9C,IAAI,IAAI,IAAI,MAAM,CAEjB;IAEK,YAAY,CAChB,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,MAAM,EACtB,aAAa,EAAE,MAAM,EACrB,KAAK,CAAC,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;QACR,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,WAAW,CAAC,EAAE,WAAW,CAAC;QAC1B,cAAc,CAAC,EAAE,cAAc,CAAC;QAChC,SAAS,CAAC,EAAE,SAAS,CAAC;QACtB,kBAAkB,CAAC,EAAE;YACnB,YAAY,CAAC,EAAE,MAAM,CAAC;YACtB,MAAM,CAAC,EAAE,MAAM,CAAC;YAChB,KAAK,CAAC,EAAE,MAAM,CAAC;SAChB,CAAC;KACH,GACA,OAAO,CAAC,WAAW,CAAC;IA4QvB,OAAO,CAAC,gBAAgB;IAyExB,OAAO,CAAC,wBAAwB;IA4ChC,OAAO,CAAC,mBAAmB;IAY3B,OAAO,CAAC,iBAAiB;YA2BX,mBAAmB;YAcnB,YAAY;CAO3B"}
1
+ {"version":3,"file":"continuity.d.ts","sourceRoot":"","sources":["../../src/agents/continuity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAItC,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAc5F,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;IAC3C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,sHAAsH;IACtH,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAC/B,8EAA8E;IAC9E,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,UAAU,CAAC,EAAE;QACpB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;QAClC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;KAC9B,CAAC;CACH;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,QAAQ,EAAE,UAAU,GAAG,SAAS,GAAG,MAAM,CAAC;IACnD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,GAAG,YAAY,GAAG,SAAS,CAAC;CAC3D;AAgVD,qBAAa,iBAAkB,SAAQ,SAAS;IAC9C,IAAI,IAAI,IAAI,MAAM,CAEjB;IAEK,YAAY,CAChB,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,MAAM,EACtB,aAAa,EAAE,MAAM,EACrB,KAAK,CAAC,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;QACR,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,WAAW,CAAC,EAAE,WAAW,CAAC;QAC1B,cAAc,CAAC,EAAE,cAAc,CAAC;QAChC,SAAS,CAAC,EAAE,SAAS,CAAC;QACtB,kBAAkB,CAAC,EAAE;YACnB,YAAY,CAAC,EAAE,MAAM,CAAC;YACtB,MAAM,CAAC,EAAE,MAAM,CAAC;YAChB,KAAK,CAAC,EAAE,MAAM,CAAC;SAChB,CAAC;KACH,GACA,OAAO,CAAC,WAAW,CAAC;IA4QvB,OAAO,CAAC,gBAAgB;IAyExB,OAAO,CAAC,wBAAwB;IA4ChC,OAAO,CAAC,mBAAmB;IAY3B,OAAO,CAAC,iBAAiB;YA2BX,mBAAmB;YAcnB,YAAY;CAO3B"}
@@ -1,6 +1,7 @@
1
1
  import { BaseAgent } from "./base.js";
2
2
  import { readGenreProfile, readBookLanguage, readBookRules } from "./rules-reader.js";
3
3
  import { getFanficDimensionConfig, FANFIC_DIMENSIONS } from "./fanfic-dimensions.js";
4
+ import { EN_AI_TELL_WORDS } from "./post-write-validator.js";
4
5
  import { readFile, readdir } from "node:fs/promises";
5
6
  import { filterHooks, filterSummaries, filterSubplots, filterEmotionalArcs, filterCharacterMatrix } from "../utils/context-filter.js";
6
7
  import { buildGovernedMemoryEvidenceBlocks } from "../utils/governed-context.js";
@@ -101,7 +102,7 @@ function buildDimensionNote(id, language, gp, bookRules, fanficMode, fanficConfi
101
102
  }
102
103
  if (id === 10 && words.length > 0) {
103
104
  return language === "en"
104
- ? `Fatigue words: ${words.join(", ")}. Also check AI tell markers (仿佛/不禁/宛如/竟然/忽然/猛地); warn when any appears more than once per 3,000 words.`
105
+ ? `Fatigue words: ${words.join(", ")}. Also check AI tell markers (${EN_AI_TELL_WORDS.join(", ")}); warn when any appears more than once per 2,000 words.`
105
106
  : `高疲劳词:${words.join("、")}。同时检查AI标记词(仿佛/不禁/宛如/竟然/忽然/猛地)密度,每3000字超过1次即warning`;
106
107
  }
107
108
  if (id === 15 && gp.satisfactionTypes.length > 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"continuity.js","sourceRoot":"","sources":["../../src/agents/continuity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAKtC,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACtF,OAAO,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AACrF,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,cAAc,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACtI,OAAO,EAAE,iCAAiC,EAAE,MAAM,8BAA8B,CAAC;AACjF,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,4BAA4B,GAC7B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AA2BjC,SAAS,oBAAoB,CAAC,KAAc;IAC1C,IAAI,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,YAAY,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACrF,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,gBAAgB,GAAiE;IACrF,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE;IACnC,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,gBAAgB,EAAE;IACxC,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,qBAAqB,EAAE;IAC5C,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,qBAAqB,EAAE;IAC5C,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,6BAA6B,EAAE;IACpD,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,YAAY,EAAE;IACnC,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,cAAc,EAAE;IACrC,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,aAAa,EAAE;IACpC,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,4BAA4B,EAAE;IACnD,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,uBAAuB,EAAE;IAC/C,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,uBAAuB,EAAE;IAChD,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,oBAAoB,EAAE;IAC5C,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,iCAAiC,EAAE;IACzD,EAAE,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,0CAA0C,EAAE;IACpE,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,uBAAuB,EAAE;IAC/C,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,6BAA6B,EAAE;IACrD,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,uBAAuB,EAAE;IAC9C,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,gCAAgC,EAAE;IACzD,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,uBAAuB,EAAE;IAChD,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,4BAA4B,EAAE;IACpD,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,sBAAsB,EAAE;IAC9C,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,uBAAuB,EAAE;IAChD,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,2BAA2B,EAAE;IACpD,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,0BAA0B,EAAE;IAClD,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,oBAAoB,EAAE;IAC5C,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,uBAAuB,EAAE;IAC/C,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,yBAAyB,EAAE;IAClD,EAAE,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,+BAA+B,EAAE;IACzD,EAAE,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,6BAA6B,EAAE;IACvD,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,6BAA6B,EAAE;IAC1D,EAAE,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,8BAA8B,EAAE;IACxD,EAAE,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,0BAA0B,EAAE;IACpD,EAAE,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,0BAA0B,EAAE;IACpD,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,0BAA0B,EAAE;IACnD,EAAE,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,6BAA6B,EAAE;IACvD,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,6BAA6B,EAAE;IACrD,EAAE,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,+BAA+B,EAAE;CAC3D,CAAC;AAEF,SAAS,eAAe,CAAC,IAAY;IACnC,OAAO,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,iBAAiB,CAAC,OAAe,EAAE,WAAmB,EAAE,QAAwB;IACvF,IAAI,QAAQ,KAAK,IAAI,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,EAAE,CAAC;QACvD,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACxB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,aAAa,CAAC,EAAU,EAAE,QAAwB;IACzD,OAAO,gBAAgB,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;AAC1C,CAAC;AAED,SAAS,aAAa,CAAC,KAA4B,EAAE,QAAwB;IAC3E,OAAO,KAAK,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AACpD,CAAC;AAED,SAAS,wBAAwB,CAC/B,QAAyC,EACzC,QAAwB;IAExB,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtB,OAAO,QAAQ,KAAK,UAAU;YAC5B,CAAC,CAAC,eAAe;YACjB,CAAC,CAAC,QAAQ,KAAK,MAAM;gBACnB,CAAC,CAAC,oCAAoC;gBACtC,CAAC,CAAC,gBAAgB,CAAC;IACzB,CAAC;IAED,OAAO,QAAQ,KAAK,UAAU;QAC5B,CAAC,CAAC,QAAQ;QACV,CAAC,CAAC,QAAQ,KAAK,MAAM;YACnB,CAAC,CAAC,aAAa;YACf,CAAC,CAAC,QAAQ,CAAC;AACjB,CAAC;AAED,SAAS,kBAAkB,CACzB,EAAU,EACV,QAAwB,EACxB,EAAgB,EAChB,SAA2B,EAC3B,UAAkC,EAClC,YAAqE;IAErE,MAAM,KAAK,GAAG,SAAS,EAAE,oBAAoB,IAAI,SAAS,CAAC,oBAAoB,CAAC,MAAM,GAAG,CAAC;QACxF,CAAC,CAAC,SAAS,CAAC,oBAAoB;QAChC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC;IAEpB,IAAI,YAAY,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACrD,OAAO,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAE,CAAC;IACrC,CAAC;IAED,IAAI,EAAE,KAAK,CAAC,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;QACrC,OAAO,QAAQ,KAAK,IAAI;YACtB,CAAC,CAAC,0IAA0I;YAC5I,CAAC,CAAC,4DAA4D,CAAC;IACnE,CAAC;IAED,IAAI,EAAE,KAAK,CAAC,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;QACvC,OAAO,QAAQ,KAAK,IAAI;YACtB,CAAC,CAAC,4IAA4I;YAC9I,CAAC,CAAC,wDAAwD,CAAC;IAC/D,CAAC;IAED,IAAI,EAAE,KAAK,EAAE,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClC,OAAO,QAAQ,KAAK,IAAI;YACtB,CAAC,CAAC,kBAAkB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,yGAAyG;YAC7I,CAAC,CAAC,QAAQ,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,oDAAoD,CAAC;IAClF,CAAC;IAED,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjD,OAAO,QAAQ,KAAK,IAAI;YACtB,CAAC,CAAC,iBAAiB,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACpD,CAAC,CAAC,QAAQ,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;IAC/C,CAAC;IAED,IAAI,EAAE,KAAK,EAAE,IAAI,SAAS,EAAE,cAAc,EAAE,CAAC;QAC3C,MAAM,GAAG,GAAG,SAAS,CAAC,cAAc,CAAC;QACrC,MAAM,KAAK,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACvD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,OAAO,QAAQ,KAAK,IAAI;gBACtB,CAAC,CAAC,QAAQ,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBAC5B,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9B,CAAC;IACH,CAAC;IAED,mEAAmE;IACnE,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC;QACb,OAAO,QAAQ,KAAK,IAAI;YACtB,CAAC,CAAC,slBAAslB;YACxlB,CAAC,CAAC,sMAAsM,CAAC;IAC7M,CAAC;IAED,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACd,MAAM,IAAI,GAAG,EAAE,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC;YAC1C,CAAC,CAAC,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;YACxH,CAAC,CAAC,EAAE,CAAC;QACP,OAAO,QAAQ,KAAK,IAAI;YACtB,CAAC,CAAC,GAAG,IAAI,oZAAoZ;YAC7Z,CAAC,CAAC,GAAG,IAAI,kHAAkH,CAAC;IAChI,CAAC;IAED,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACd,OAAO,QAAQ,KAAK,IAAI;YACtB,CAAC,CAAC,kRAAkR;YACpR,CAAC,CAAC,2EAA2E,CAAC;IAClF,CAAC;IAED,QAAQ,EAAE,EAAE,CAAC;QACX,KAAK,CAAC;YACJ,sEAAsE;YACtE,kEAAkE;YAClE,sEAAsE;YACtE,kEAAkE;YAClE,qDAAqD;YACrD,OAAO,QAAQ,KAAK,IAAI;gBACtB,CAAC,CAAC;;;;;;;;qJAQ2I;gBAC7I,CAAC,CAAC;;;;;;;;8EAQoE,CAAC;QAC3E,KAAK,EAAE;YACL,OAAO,QAAQ,KAAK,IAAI;gBACtB,CAAC,CAAC,kGAAkG;gBACpG,CAAC,CAAC,uBAAuB,CAAC;QAC9B,KAAK,EAAE;YACL,OAAO,QAAQ,KAAK,IAAI;gBACtB,CAAC,CAAC,uMAAuM;gBACzM,CAAC,CAAC,6EAA6E,CAAC;QACpF,KAAK,EAAE;YACL,OAAO,QAAQ,KAAK,IAAI;gBACtB,CAAC,CAAC,kRAAkR;gBACpR,CAAC,CAAC,uGAAuG,CAAC;QAC9G,KAAK,EAAE;YACL,OAAO,QAAQ,KAAK,IAAI;gBACtB,CAAC,CAAC,mPAAmP;gBACrP,CAAC,CAAC,gGAAgG,CAAC;QACvG,KAAK,EAAE;YACL,OAAO,QAAQ,KAAK,IAAI;gBACtB,CAAC,CAAC,yEAAyE;gBAC3E,CAAC,CAAC,kBAAkB,CAAC;QACzB,KAAK,EAAE;YACL,OAAO,QAAQ,KAAK,IAAI;gBACtB,CAAC,CAAC,8IAA8I;gBAChJ,CAAC,CAAC,+BAA+B,CAAC;QACtC,KAAK,EAAE;YACL,OAAO,QAAQ,KAAK,IAAI;gBACtB,CAAC,CAAC,8FAA8F;gBAChG,CAAC,CAAC,4BAA4B,CAAC;QACnC,KAAK,EAAE;YACL,OAAO,QAAQ,KAAK,IAAI;gBACtB,CAAC,CAAC,0FAA0F;gBAC5F,CAAC,CAAC,2BAA2B,CAAC;QAClC,KAAK,EAAE;YACL,OAAO,QAAQ,KAAK,IAAI;gBACtB,CAAC,CAAC,mWAAmW;gBACrW,CAAC,CAAC,+FAA+F,CAAC;QACtG,KAAK,EAAE;YACL,OAAO,QAAQ,KAAK,IAAI;gBACtB,CAAC,CAAC,oiBAAoiB;gBACtiB,CAAC,CAAC,kOAAkO,CAAC;QACzO,KAAK,EAAE,CAAC;QACR,KAAK,EAAE,CAAC;QACR,KAAK,EAAE,CAAC;QACR,KAAK,EAAE,CAAC,CAAC,CAAC;YACR,IAAI,CAAC,YAAY;gBAAE,OAAO,EAAE,CAAC;YAC7B,MAAM,QAAQ,GAAG,YAAY,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,CAAC;YACrE,MAAM,QAAQ,GAAG,QAAQ,KAAK,IAAI;gBAChC,CAAC,CAAC;oBACE,EAAE,EAAE,2KAA2K;oBAC/K,EAAE,EAAE,4HAA4H;oBAChI,EAAE,EAAE,wJAAwJ;oBAC5J,EAAE,EAAE,kFAAkF;iBACvF,CAAC,EAAE,CAAC;gBACP,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,CAAC;YAEzE,OAAO,QAAQ;gBACb,CAAC,CAAC,GAAG,QAAQ,IAAI,wBAAwB,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE;gBAC/D,CAAC,CAAC,EAAE,CAAC;QACT,CAAC;QACD;YACE,OAAO,EAAE,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CACzB,EAAgB,EAChB,SAA2B,EAC3B,QAAwB,EACxB,cAAc,GAAG,KAAK,EACtB,UAAuB;IAEvB,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC;IAE9C,oFAAoF;IACpF,IAAI,SAAS,EAAE,yBAAyB,EAAE,CAAC;QACzC,kCAAkC;QAClC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAkB,CAAC;QAC3C,KAAK,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC5D,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YACpC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QACtC,CAAC;QAED,KAAK,MAAM,CAAC,IAAI,SAAS,CAAC,yBAAyB,EAAE,CAAC;YACpD,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;gBAC1B,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACnB,CAAC;iBAAM,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;gBACjC,8CAA8C;gBAC9C,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBAChC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;oBAC1B,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBACzB,CAAC;qBAAM,CAAC;oBACN,uDAAuD;oBACvD,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,QAAQ,EAAE,CAAC;wBAClC,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;4BACzC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;4BAClB,MAAM;wBACR,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,2BAA2B;IAC3B,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,qBAAqB;IACxC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,4DAA4D;IAE/E,wBAAwB;IACxB,IAAI,EAAE,CAAC,WAAW,IAAI,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC;QACzD,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACpB,CAAC;IAED,sFAAsF;IACtF,IAAI,cAAc,IAAI,CAAC,UAAU,EAAE,CAAC;QAClC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS;QAC5B,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS;QAC5B,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY;QAC/B,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS;IAC9B,CAAC;IAED,uEAAuE;IACvE,IAAI,YAAqE,CAAC;IAC1E,IAAI,UAAU,EAAE,CAAC;QACf,YAAY,GAAG,wBAAwB,CAAC,UAAU,EAAE,SAAS,EAAE,iBAAiB,CAAC,CAAC;QAClF,KAAK,MAAM,EAAE,IAAI,YAAY,CAAC,SAAS,EAAE,CAAC;YACxC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACpB,CAAC;QACD,KAAK,MAAM,EAAE,IAAI,YAAY,CAAC,cAAc,EAAE,CAAC;YAC7C,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACvB,CAAC;IACH,CAAC;IAED,MAAM,IAAI,GAAsD,EAAE,CAAC;IAEnE,KAAK,MAAM,EAAE,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QACtD,MAAM,IAAI,GAAG,aAAa,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QACzC,IAAI,CAAC,IAAI;YAAE,SAAS;QAEpB,MAAM,IAAI,GAAG,kBAAkB,CAAC,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;QAEvF,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAChC,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,OAAO,iBAAkB,SAAQ,SAAS;IAC9C,IAAI,IAAI;QACN,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,OAAe,EACf,cAAsB,EACtB,aAAqB,EACrB,KAAc,EACd,OAWC;QAED,MAAM,CAAC,gBAAgB,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,gBAAgB,EAAE,WAAW,EAAE,WAAW,EAAE,aAAa,CAAC,GACrK,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,sEAAsE;YACtE,iEAAiE;YACjE,4BAA4B,CAAC,OAAO,EAAE,SAAS,CAAC;YAChD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,0BAA0B,CAAC,CAAC;YAC5D,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,wBAAwB,CAAC,CAAC;YAC1D,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,sBAAsB,CAAC,CAAC;YACxD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,wBAAwB,CAAC,CAAC;YAC1D,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,yBAAyB,CAAC,CAAC;YAC3D,oBAAoB,CAAC,OAAO,EAAE,SAAS,CAAC;YACxC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,4BAA4B,CAAC,CAAC;YAC9D,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,uBAAuB,CAAC,CAAC;YACzD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,uBAAuB,CAAC,CAAC;YACzD,aAAa,CAAC,OAAO,EAAE,SAAS,CAAC;SAClC,CAAC,CAAC;QACL,MAAM,YAAY,GAAG,OAAO,EAAE,kBAAkB,EAAE,YAAY,IAAI,gBAAgB,CAAC;QACnF,MAAM,MAAM,GAAG,OAAO,EAAE,kBAAkB,EAAE,MAAM,IAAI,UAAU,CAAC;QACjE,MAAM,KAAK,GAAG,OAAO,EAAE,kBAAkB,EAAE,KAAK,IAAI,SAAS,CAAC;QAE9D,MAAM,cAAc,GAAG,WAAW,KAAK,SAAS,CAAC;QACjD,MAAM,cAAc,GAAG,WAAW,KAAK,SAAS,CAAC;QAEjD,mEAAmE;QACnE,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QAE/E,oCAAoC;QACpC,MAAM,OAAO,GAAG,KAAK,IAAI,OAAO,CAAC;QACjC,MAAM,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,YAAY,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACxD,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,CAAC;YAC/C,gBAAgB,CAAC,OAAO,CAAC;SAC1B,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,CAAC;QACjD,MAAM,SAAS,GAAG,WAAW,EAAE,KAAK,IAAI,IAAI,CAAC;QAE7C,mEAAmE;QACnE,kEAAkE;QAClE,qEAAqE;QACrE,+DAA+D;QAC/D,iDAAiD;QACjD,MAAM,eAAe,GAAG,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QAClD,MAAM,UAAU,GAAG,aAAa,KAAK,SAAS;YAC5C,CAAC,CAAC,aAAa;YACf,CAAC,CAAC,CAAC,eAAe,IAAI,SAAS,CAAC,CAAC;QAEnC,MAAM,gBAAgB,GAAG,YAAY,IAAI,EAAE,CAAC,QAAQ,CAAC;QACrD,MAAM,SAAS,GAAG,gBAAgB,KAAK,IAAI,CAAC;QAC5C,MAAM,UAAU,GAAG,cAAc,CAAC,CAAC,CAAE,SAAS,EAAE,UAAqC,CAAC,CAAC,CAAC,SAAS,CAAC;QAClG,MAAM,UAAU,GAAG,kBAAkB,CAAC,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC;QACnG,MAAM,OAAO,GAAG,UAAU;aACvB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;aAC7F,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,MAAM,UAAU,GAAG,iBAAiB,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;QAEzE,MAAM,gBAAgB,GAAG,SAAS,EAAE,WAAW;YAC7C,CAAC,CAAC,SAAS;gBACT,CAAC,CAAC,yBAAyB,SAAS,CAAC,WAAW,CAAC,IAAI,wBAAwB,aAAa,CAAC,SAAS,CAAC,WAAW,CAAC,eAAe,EAAE,gBAAgB,CAAC,6BAA6B,aAAa,CAAC,SAAS,CAAC,WAAW,CAAC,qBAAqB,EAAE,gBAAgB,CAAC,GAAG;gBAC/P,CAAC,CAAC,YAAY,SAAS,CAAC,WAAW,CAAC,IAAI,IAAI,SAAS,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,SAAS,CAAC,WAAW,CAAC,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YAC7J,CAAC,CAAC,EAAE,CAAC;QAEP,MAAM,UAAU,GAAG,EAAE,CAAC,WAAW;YAC/B,CAAC,CAAC,SAAS;gBACT,CAAC,CAAC,yNAAyN;gBAC3N,CAAC,CAAC,qGAAqG;YACzG,CAAC,CAAC,EAAE,CAAC;QAEP,MAAM,gBAAgB,GAAG,SAAS;YAChC,CAAC,CAAC,oBAAoB,UAAU,sIAAsI,gBAAgB,GAAG,UAAU;;;;;;;;;;;;;;;EAevM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;qEA0B4D;YAC/D,CAAC,CAAC,UAAU,EAAE,CAAC,IAAI,+BAA+B,gBAAgB,GAAG,UAAU;;;;;;;;;;;;;;;EAenF,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;sBA0Ba,CAAC;QACnB,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,CAAC;QAE7F,MAAM,WAAW,GAAG,EAAE,CAAC,eAAe;YACpC,CAAC,CAAC,SAAS;gBACT,CAAC,CAAC,yBAAyB,MAAM,EAAE;gBACnC,CAAC,CAAC,cAAc,MAAM,EAAE;YAC1B,CAAC,CAAC,EAAE,CAAC;QAEP,6DAA6D;QAC7D,MAAM,kBAAkB,GAAG,WAAW,EAAE,KAAK,IAAI,IAAI,CAAC;QACtD,MAAM,gBAAgB,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC;QACtD,MAAM,YAAY,GAAG,mBAAmB,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;QACvE,MAAM,cAAc,GAAG,qBAAqB,CAAC,eAAe,EAAE,aAAa,EAAE,kBAAkB,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;QACpH,MAAM,iBAAiB,GAAG,eAAe,CAAC,gBAAgB,EAAE,aAAa,CAAC,CAAC;QAC3E,MAAM,aAAa,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;QAEzC,MAAM,oBAAoB,GAAG,OAAO,EAAE,cAAc;YAClD,CAAC,CAAC,iCAAiC,CAAC,OAAO,CAAC,cAAc,EAAE,gBAAgB,CAAC;YAC7E,CAAC,CAAC,SAAS,CAAC;QAEd,MAAM,UAAU,GAAG,oBAAoB,EAAE,UAAU;eAC9C,CAAC,aAAa,KAAK,SAAS;gBAC7B,CAAC,CAAC,SAAS;oBACT,CAAC,CAAC,uBAAuB,aAAa,IAAI;oBAC1C,CAAC,CAAC,aAAa,aAAa,IAAI;gBAClC,CAAC,CAAC,EAAE,CAAC,CAAC;QACV,MAAM,YAAY,GAAG,gBAAgB,KAAK,SAAS;YACjD,CAAC,CAAC,SAAS;gBACT,CAAC,CAAC,uBAAuB,gBAAgB,IAAI;gBAC7C,CAAC,CAAC,eAAe,gBAAgB,IAAI;YACvC,CAAC,CAAC,EAAE,CAAC;QACP,MAAM,cAAc,GAAG,YAAY,KAAK,SAAS;YAC/C,CAAC,CAAC,SAAS;gBACT,CAAC,CAAC,wBAAwB,YAAY,IAAI;gBAC1C,CAAC,CAAC,cAAc,YAAY,IAAI;YAClC,CAAC,CAAC,EAAE,CAAC;QACP,MAAM,WAAW,GAAG,cAAc,KAAK,SAAS;YAC9C,CAAC,CAAC,SAAS;gBACT,CAAC,CAAC,sCAAsC,cAAc,IAAI;gBAC1D,CAAC,CAAC,gBAAgB,cAAc,IAAI;YACtC,CAAC,CAAC,EAAE,CAAC;QACP,MAAM,cAAc,GAAG,oBAAoB,EAAE,cAAc;eACtD,CAAC,iBAAiB,KAAK,SAAS;gBACjC,CAAC,CAAC,SAAS;oBACT,CAAC,CAAC,+CAA+C,iBAAiB,IAAI;oBACtE,CAAC,CAAC,sBAAsB,iBAAiB,IAAI;gBAC/C,CAAC,CAAC,EAAE,CAAC,CAAC;QACV,MAAM,oBAAoB,GAAG,oBAAoB,EAAE,oBAAoB,IAAI,EAAE,CAAC;QAE9E,MAAM,UAAU,GAAG,cAAc;YAC/B,CAAC,CAAC,SAAS;gBACT,CAAC,CAAC,sDAAsD,WAAW,IAAI;gBACvE,CAAC,CAAC,wBAAwB,WAAW,IAAI;YAC3C,CAAC,CAAC,EAAE,CAAC;QAEP,MAAM,gBAAgB,GAAG,cAAc;YACrC,CAAC,CAAC,SAAS;gBACT,CAAC,CAAC,mDAAmD,WAAW,IAAI;gBACpE,CAAC,CAAC,wBAAwB,WAAW,IAAI;YAC3C,CAAC,CAAC,EAAE,CAAC;QAEP,MAAM,SAAS,GAAG,OAAO,EAAE,WAAW;YACpC,CAAC,CAAC,SAAS;gBACT,CAAC,CAAC,oDAAoD,OAAO,CAAC,WAAW,CAAC,IAAI,OAAO,OAAO,CAAC,WAAW,CAAC,IAAI,IAAI;gBACjH,CAAC,CAAC,iCAAiC,OAAO,CAAC,WAAW,CAAC,IAAI,OAAO,OAAO,CAAC,WAAW,CAAC,IAAI,IAAI;YAChG,CAAC,CAAC,EAAE,CAAC;QACP,MAAM,mBAAmB,GAAG,OAAO,EAAE,aAAa,IAAI,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC,SAAS;YAC/F,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,cAAc,EAAE,OAAO,CAAC,SAAS,EAAE,gBAAgB,CAAC;YACnH,CAAC,CAAC,EAAE,CAAC;QACP,MAAM,eAAe,GAAG,mBAAmB,CAAC,MAAM,KAAK,CAAC;YACtD,CAAC,CAAC,SAAS;gBACT,CAAC,CAAC,qBAAqB,UAAU,EAAE;gBACnC,CAAC,CAAC,cAAc,UAAU,EAAE;YAC9B,CAAC,CAAC,EAAE,CAAC;QAEP,MAAM,gBAAgB,GAAG,eAAe;YACtC,CAAC,CAAC,SAAS;gBACT,CAAC,CAAC,4DAA4D,eAAe,IAAI;gBACjF,CAAC,CAAC,uBAAuB,eAAe,IAAI;YAC9C,CAAC,CAAC,EAAE,CAAC;QAEP,MAAM,UAAU,GAAG,SAAS;YAC1B,CAAC,CAAC,kBAAkB,aAAa;;;EAGrC,YAAY;EACZ,WAAW;EACX,UAAU,GAAG,oBAAoB,GAAG,YAAY,GAAG,cAAc,GAAG,WAAW,GAAG,cAAc,GAAG,UAAU,GAAG,gBAAgB,GAAG,mBAAmB,GAAG,SAAS,GAAG,gBAAgB,GAAG,eAAe;;;EAGvM,cAAc,EAAE;YACZ,CAAC,CAAC,OAAO,aAAa;;;EAG1B,YAAY;EACZ,WAAW;EACX,UAAU,GAAG,oBAAoB,GAAG,YAAY,GAAG,cAAc,GAAG,WAAW,GAAG,cAAc,GAAG,UAAU,GAAG,gBAAgB,GAAG,mBAAmB,GAAG,SAAS,GAAG,gBAAgB,GAAG,eAAe;;;EAGvM,cAAc,EAAE,CAAC;QAEf,MAAM,YAAY,GAAG;YACnB,EAAE,IAAI,EAAE,QAAiB,EAAE,OAAO,EAAE,YAAY,EAAE;YAClD,EAAE,IAAI,EAAE,MAAe,EAAE,OAAO,EAAE,UAAU,EAAE;SAC/C,CAAC;QACF,MAAM,WAAW,GAAG,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,IAAI,GAAG,EAAE,CAAC;QAEjE,mEAAmE;QACnE,MAAM,QAAQ,GAAG,EAAE,CAAC,WAAW;YAC7B,CAAC,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,WAAW,CAAC;YACtD,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;QAE/C,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;QACzE,OAAO,EAAE,GAAG,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC;IACnD,CAAC;IAEO,gBAAgB,CAAC,OAAe,EAAE,QAAwB;QAChE,uEAAuE;QAEvE,qDAAqD;QACrD,MAAM,QAAQ,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;QACnD,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAC1D,IAAI,MAAM;gBAAE,OAAO,MAAM,CAAC;QAC5B,CAAC;QAED,2EAA2E;QAC3E,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;QAC/B,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACzD,IAAI,MAAM;gBAAE,OAAO,MAAM,CAAC;QAC5B,CAAC;QAED,2CAA2C;QAC3C,MAAM,cAAc,GAAG,OAAO,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;QAC3E,IAAI,cAAc,EAAE,CAAC;YACnB,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC,CAAE,CAAC,IAAI,EAAE,EAAE,QAAQ,CAAC,CAAC;YAC3E,IAAI,MAAM;gBAAE,OAAO,MAAM,CAAC;QAC5B,CAAC;QAED,gFAAgF;QAChF,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACjE,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACnE,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAChE,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,MAAM,GAAiB,EAAE,CAAC;YAChC,IAAI,WAAW,EAAE,CAAC;gBAChB,wCAAwC;gBACxC,MAAM,YAAY,GAAG,2CAA2C,CAAC;gBACjE,IAAI,KAA6B,CAAC;gBAClC,OAAO,CAAC,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAE,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;oBAC7D,IAAI,CAAC;wBACH,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;wBAClC,MAAM,CAAC,IAAI,CAAC;4BACV,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,SAAS;4BACrC,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC;4BACzE,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,EAAE;4BACpC,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,EAAE;4BAClC,WAAW,EAAE,oBAAoB,CAAC,KAAK,CAAC,YAAY,IAAI,KAAK,CAAC,WAAW,CAAC;yBAC3E,CAAC,CAAC;oBACN,CAAC;oBAAC,MAAM,CAAC;wBACP,kCAAkC;oBACpC,CAAC;gBACH,CAAC;YACH,CAAC;YACD,OAAO;gBACL,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,KAAK,MAAM;gBACjC,MAAM;gBACN,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE;aACjC,CAAC;QACJ,CAAC;QAED,OAAO;YACL,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,IAAI;YACjB,MAAM,EAAE,CAAC;oBACP,QAAQ,EAAE,UAAU;oBACpB,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM;oBACrD,WAAW,EAAE,QAAQ,KAAK,IAAI;wBAC5B,CAAC,CAAC,kEAAkE;wBACpE,CAAC,CAAC,qBAAqB;oBACzB,UAAU,EAAE,QAAQ,KAAK,IAAI;wBAC3B,CAAC,CAAC,gHAAgH;wBAClH,CAAC,CAAC,wCAAwC;iBAC7C,CAAC;YACF,OAAO,EAAE,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,UAAU;SACxE,CAAC;IACJ,CAAC;IAEO,wBAAwB,CAC9B,aAAqB,EACrB,cAA8B,EAC9B,SAAoB,EACpB,QAAwB;QAExB,MAAM,eAAe,GAAG,cAAc,CAAC,eAAe;aACnD,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;aACjG,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,MAAM,SAAS,GAAG,SAAS,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC;YACpD,CAAC,CAAC,SAAS,CAAC,eAAe;iBACxB,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,KAAK,QAAQ,CAAC,IAAI,OAAO,QAAQ,CAAC,EAAE,KAAK,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,GAAG,CAAC;iBAClG,IAAI,CAAC,IAAI,CAAC;YACb,CAAC,CAAC,QAAQ,CAAC;QAEb,OAAO,QAAQ,KAAK,IAAI;YACtB,CAAC,CAAC;EACN,aAAa;;;EAGb,eAAe,IAAI,QAAQ;;;qBAGR,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ;sBAC7C,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ;sBAC9C,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ;;;EAGxE,SAAS,IAAI;YACT,CAAC,CAAC;EACN,aAAa;;;EAGb,eAAe,IAAI,QAAQ;;;QAGrB,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK;QAC1C,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK;SACzC,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK;;;EAGvD,SAAS,IAAI,CAAC;IACd,CAAC;IAEO,mBAAmB,CAAC,IAAY;QACtC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAChC,IAAI,KAAK,KAAK,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC;QAC9B,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,IAAI,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACzC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG;gBAAE,KAAK,EAAE,CAAC;YAC7B,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG;gBAAE,KAAK,EAAE,CAAC;YAC7B,IAAI,KAAK,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QACnD,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,iBAAiB,CAAC,IAAY,EAAE,WAA2B,IAAI;QACrE,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAChC,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS;gBAAE,OAAO,IAAI,CAAC;YACnF,MAAM,QAAQ,GAAG,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,YAAY,CAAC;YAC7D,MAAM,YAAY,GAAG,OAAO,QAAQ,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBAC5E,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC;gBAClD,CAAC,CAAC,SAAS,CAAC;YACd,OAAO;gBACL,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,IAAI,KAAK,CAAC;gBACvC,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;oBACjC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAA0B,EAAE,EAAE,CAAC,CAAC;wBACjD,QAAQ,EAAG,CAAC,CAAC,QAAmB,IAAI,SAAS;wBAC7C,QAAQ,EAAG,CAAC,CAAC,QAAmB,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC;wBACjF,WAAW,EAAG,CAAC,CAAC,WAAsB,IAAI,EAAE;wBAC5C,UAAU,EAAG,CAAC,CAAC,UAAqB,IAAI,EAAE;wBAC1C,WAAW,EAAE,oBAAoB,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,WAAW,CAAC;qBACnE,CAAC,CAAC;oBACN,CAAC,CAAC,EAAE;gBACN,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC;gBACrC,YAAY;aACb,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAAC,OAAe,EAAE,cAAsB;QACvE,IAAI,cAAc,IAAI,CAAC;YAAE,OAAO,EAAE,CAAC;QACnC,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAC9C,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,CAAC;YACzC,MAAM,UAAU,GAAG,MAAM,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YAC/D,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;YAClF,IAAI,CAAC,QAAQ;gBAAE,OAAO,EAAE,CAAC;YACzB,OAAO,MAAM,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAC;QAC9D,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,IAAY;QACrC,IAAI,CAAC;YACH,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACvC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"continuity.js","sourceRoot":"","sources":["../../src/agents/continuity.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { FanficMode } from "../models/book.js";
2
- export declare function buildFanficCanonSection(fanficCanon: string, mode: FanficMode): string;
3
- export declare function buildCharacterVoiceProfiles(fanficCanon: string): string;
4
- export declare function buildFanficModeInstructions(mode: FanficMode, allowedDeviations: ReadonlyArray<string>): string;
2
+ export declare function buildFanficCanonSection(fanficCanon: string, mode: FanficMode, language?: "zh" | "en"): string;
3
+ export declare function buildCharacterVoiceProfiles(fanficCanon: string, language?: "zh" | "en"): string;
4
+ export declare function buildFanficModeInstructions(mode: FanficMode, allowedDeviations: ReadonlyArray<string>, language?: "zh" | "en"): string;
5
5
  //# sourceMappingURL=fanfic-prompt-sections.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"fanfic-prompt-sections.d.ts","sourceRoot":"","sources":["../../src/agents/fanfic-prompt-sections.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAyBpD,wBAAgB,uBAAuB,CACrC,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,UAAU,GACf,MAAM,CASR;AAED,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAyCvE;AAgBD,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,UAAU,EAChB,iBAAiB,EAAE,aAAa,CAAC,MAAM,CAAC,GACvC,MAAM,CASR"}
1
+ {"version":3,"file":"fanfic-prompt-sections.d.ts","sourceRoot":"","sources":["../../src/agents/fanfic-prompt-sections.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAgDpD,wBAAgB,uBAAuB,CACrC,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,UAAU,EAChB,QAAQ,GAAE,IAAI,GAAG,IAAW,GAC3B,MAAM,CAoBR;AAYD,wBAAgB,2BAA2B,CACzC,WAAW,EAAE,MAAM,EACnB,QAAQ,GAAE,IAAI,GAAG,IAAW,GAC3B,MAAM,CAiER;AA8BD,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,UAAU,EAChB,iBAAiB,EAAE,aAAa,CAAC,MAAM,CAAC,EACxC,QAAQ,GAAE,IAAI,GAAG,IAAW,GAC3B,MAAM,CAoBR"}
@@ -17,7 +17,36 @@ const MODE_PREAMBLES = {
17
17
  - 互动风格要有化学反应——不是两个人在同一个场景各干各的
18
18
  - 关系发展应有节奏感:推进、试探、阻碍、突破`,
19
19
  };
20
- export function buildFanficCanonSection(fanficCanon, mode) {
20
+ const MODE_PREAMBLES_EN = {
21
+ canon: `You are writing **canon-compliant fanfic**. Strictly follow canon:
22
+ - Characters' verbal tics, speech style, and behavior patterns must match the source
23
+ - World rules must not be violated
24
+ - The timeline of key events must not contradict the source
25
+ - You may fill in blanks the source left open, or explore angles it left unaddressed`,
26
+ au: `You are writing **AU (alternate-universe) fanfic**:
27
+ - World rules may change (only the deviations already declared in allowedDeviations)
28
+ - Characters' core personality and way of speaking should stay recognizable — readers must be able to tell who is who
29
+ - AU deviations must be internally consistent (change one rule, and everything connected to it must follow)`,
30
+ ooc: `You are writing **OOC fanfic**:
31
+ - Characters may deviate from their baseline personality under extreme circumstances
32
+ - But the deviation must be driven by the situation, not change personality for no reason
33
+ - Preserve characters' verbal tics and speech traits — even if personality shifts, their way of speaking should stay recognizable`,
34
+ cp: `You are writing **ship-centric fanfic**, centered on the pairing's interaction and relationship development:
35
+ - The pair must have a meaningful interaction every chapter
36
+ - The interaction style must have chemistry — not two people each doing their own thing in the same scene
37
+ - Relationship development should have rhythm: advance, probe, obstacle, breakthrough`,
38
+ };
39
+ export function buildFanficCanonSection(fanficCanon, mode, language = "en") {
40
+ if (language === "en") {
41
+ return `
42
+ ## Fanfic Canon Reference
43
+
44
+ ${MODE_PREAMBLES_EN[mode]}
45
+
46
+ Below is the source canon information; you must reference it while writing:
47
+
48
+ ${fanficCanon}`;
49
+ }
21
50
  return `
22
51
  ## 同人正典参照
23
52
 
@@ -27,7 +56,17 @@ ${MODE_PREAMBLES[mode]}
27
56
 
28
57
  ${fanficCanon}`;
29
58
  }
30
- export function buildCharacterVoiceProfiles(fanficCanon) {
59
+ // NOTE on the marker below: this regex intentionally always searches for the
60
+ // Chinese heading "## 角色档案", in both the "zh" and "en" branches. The
61
+ // upstream fanfic_canon.md document is produced by FanficCanonImporter
62
+ // (fanfic-canon-importer.ts), which has no language parameter at all and
63
+ // always emits this heading in Chinese regardless of the book's language.
64
+ // Searching for an English heading here would look for a marker the pipeline
65
+ // never actually writes, silently breaking extraction instead of fixing
66
+ // anything — narrower to keep matching the real data format. See the task-7
67
+ // report for this as a flagged, out-of-scope follow-up (the importer itself
68
+ // needs a language branch before this marker can be translated safely).
69
+ export function buildCharacterVoiceProfiles(fanficCanon, language = "en") {
31
70
  // Extract character table from fanfic_canon.md
32
71
  const tableMatch = fanficCanon.match(/## 角色档案[\s\S]*?\n(\|[^\n]+\|\n\|[-|\s]+\|\n(?:\|[^\n]+\|\n)*)/);
33
72
  if (!tableMatch)
@@ -42,6 +81,28 @@ export function buildCharacterVoiceProfiles(fanficCanon) {
42
81
  .filter((cells) => cells.length >= 5);
43
82
  if (rows.length === 0)
44
83
  return "";
84
+ if (language === "en") {
85
+ const profilesEn = rows.map((cells) => {
86
+ const [name, , , catchphrases, speakingStyle, behavior] = cells;
87
+ const parts = [`### ${name}`];
88
+ if (catchphrases && catchphrases !== "(素材未提及)") {
89
+ parts.push(`- Catchphrases/verbal tics: ${catchphrases}`);
90
+ }
91
+ if (speakingStyle && speakingStyle !== "(素材未提及)") {
92
+ parts.push(`- Speaking style: ${speakingStyle}`);
93
+ }
94
+ if (behavior && behavior !== "(素材未提及)") {
95
+ parts.push(`- Typical behavior: ${behavior}`);
96
+ }
97
+ return parts.join("\n");
98
+ });
99
+ return `
100
+ ## Character Voice Reference (fanfic-only)
101
+
102
+ The dialogue and behavior of these characters must reference the source material's traits. When writing dialogue, first ask "how would this character speak in the source material?"
103
+
104
+ ${profilesEn.join("\n\n")}`;
105
+ }
45
106
  const profiles = rows.map((cells) => {
46
107
  const [name, , , catchphrases, speakingStyle, behavior] = cells;
47
108
  const parts = [`### ${name}`];
@@ -73,7 +134,26 @@ const MODE_CHECKS = {
73
134
  cp: `- CP 互动检查:配对双方本章是否有有效互动?关系发展是否推进?
74
135
  - 互动质量检查:互动是否有化学反应(不是各干各的)?`,
75
136
  };
76
- export function buildFanficModeInstructions(mode, allowedDeviations) {
137
+ const MODE_CHECKS_EN = {
138
+ canon: `- Canon compliance check: does this chapter violate the source setting? Does character dialogue match the source's verbal tics?
139
+ - Information-boundary check: did any character reference information they should not know?`,
140
+ au: `- AU deviation list: which world rules did this chapter change? Is the change internally consistent?
141
+ - Character recognizability check: can readers recognize the character from their dialogue?`,
142
+ ooc: `- OOC deviation log: in what ways did the character deviate from their baseline personality? What drove the deviation?
143
+ - Verbal-tic retention check: even OOC, does their way of speaking still carry source-material traits?`,
144
+ cp: `- Ship interaction check: did the pair share a meaningful interaction this chapter? Did the relationship move?
145
+ - Interaction quality check: does the interaction have chemistry (not each character doing their own thing)?`,
146
+ };
147
+ export function buildFanficModeInstructions(mode, allowedDeviations, language = "en") {
148
+ if (language === "en") {
149
+ const deviationsBlockEn = allowedDeviations.length > 0
150
+ ? `\nAllowed deviations (not treated as violations):\n${allowedDeviations.map((d) => `- ${d}`).join("\n")}\n`
151
+ : "";
152
+ return `
153
+ ## Fanfic Self-Check (additional check inside PRE_WRITE_CHECK)
154
+
155
+ ${MODE_CHECKS_EN[mode]}${deviationsBlockEn}`;
156
+ }
77
157
  const deviationsBlock = allowedDeviations.length > 0
78
158
  ? `\n允许的偏离(不视为违规):\n${allowedDeviations.map((d) => `- ${d}`).join("\n")}\n`
79
159
  : "";
@@ -1 +1 @@
1
- {"version":3,"file":"fanfic-prompt-sections.js","sourceRoot":"","sources":["../../src/agents/fanfic-prompt-sections.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fanfic-prompt-sections.js","sourceRoot":"","sources":["../../src/agents/fanfic-prompt-sections.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@ export function buildObserverSystemPrompt(book, genreProfile, language) {
8
8
  const langPrefix = isEnglish
9
9
  ? "【LANGUAGE OVERRIDE】ALL output MUST be in English.\n\n"
10
10
  : "";
11
- return `${langPrefix}${isEnglish ? "You are" : "你是"}${isEnglish ? " a fact extraction specialist" : "一个事实提取专家"}。${isEnglish ? "Read the chapter text and extract EVERY observable fact change." : "阅读章节正文,提取每一个可观察到的事实变化。"}
11
+ return `${langPrefix}${isEnglish ? "You are" : "你是"}${isEnglish ? " a fact extraction specialist" : "一个事实提取专家"}${isEnglish ? ". " : "。"}${isEnglish ? "Read the chapter text and extract EVERY observable fact change." : "阅读章节正文,提取每一个可观察到的事实变化。"}
12
12
 
13
13
  ${isEnglish ? "## Extraction Categories" : "## 提取类别"}
14
14
 
@@ -1 +1 @@
1
- {"version":3,"file":"observer-prompts.js","sourceRoot":"","sources":["../../src/agents/observer-prompts.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,MAAM,UAAU,yBAAyB,CACvC,IAAgB,EAChB,YAA0B,EAC1B,QAAsB;IAEtB,MAAM,SAAS,GAAG,CAAC,QAAQ,IAAI,YAAY,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC;IAE/D,MAAM,UAAU,GAAG,SAAS;QAC1B,CAAC,CAAC,uDAAuD;QACzD,CAAC,CAAC,EAAE,CAAC;IAEP,OAAO,GAAG,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,+BAA+B,CAAC,CAAC,CAAC,UAAU,IAAI,SAAS,CAAC,CAAC,CAAC,iEAAiE,CAAC,CAAC,CAAC,wBAAwB;;EAE1N,SAAS,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,SAAS;;EAElD,SAAS,CAAC,CAAC,CAAC;;;;;;;;iEAQmD,CAAC,CAAC,CAAC;;;;;;;;0BAQ1C;;EAExB,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO;;EAEhC,SAAS,CAAC,CAAC,CAAC;;;;kDAIoC,CAAC,CAAC,CAAC;;;;eAItC;;EAEb,SAAS,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS;;;;EAI1C,SAAS,CAAC,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;qDA4BuC,CAAC,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBA4BhC,EAAE,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,aAAqB,EACrB,KAAa,EACb,OAAe,EACf,QAAsB;IAEtB,MAAM,SAAS,GAAG,QAAQ,KAAK,IAAI,CAAC;IACpC,OAAO,SAAS;QACd,CAAC,CAAC,kCAAkC,aAAa,KAAK,KAAK,SAAS,OAAO,EAAE;QAC7E,CAAC,CAAC,OAAO,aAAa,KAAK,KAAK,eAAe,OAAO,EAAE,CAAC;AAC7D,CAAC"}
1
+ {"version":3,"file":"observer-prompts.js","sourceRoot":"","sources":["../../src/agents/observer-prompts.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,MAAM,UAAU,yBAAyB,CACvC,IAAgB,EAChB,YAA0B,EAC1B,QAAsB;IAEtB,MAAM,SAAS,GAAG,CAAC,QAAQ,IAAI,YAAY,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC;IAE/D,MAAM,UAAU,GAAG,SAAS;QAC1B,CAAC,CAAC,uDAAuD;QACzD,CAAC,CAAC,EAAE,CAAC;IAEP,OAAO,GAAG,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,+BAA+B,CAAC,CAAC,CAAC,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,iEAAiE,CAAC,CAAC,CAAC,wBAAwB;;EAElP,SAAS,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,SAAS;;EAElD,SAAS,CAAC,CAAC,CAAC;;;;;;;;iEAQmD,CAAC,CAAC,CAAC;;;;;;;;0BAQ1C;;EAExB,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO;;EAEhC,SAAS,CAAC,CAAC,CAAC;;;;kDAIoC,CAAC,CAAC,CAAC;;;;eAItC;;EAEb,SAAS,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS;;;;EAI1C,SAAS,CAAC,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;qDA4BuC,CAAC,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBA4BhC,EAAE,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,aAAqB,EACrB,KAAa,EACb,OAAe,EACf,QAAsB;IAEtB,MAAM,SAAS,GAAG,QAAQ,KAAK,IAAI,CAAC;IACpC,OAAO,SAAS;QACd,CAAC,CAAC,kCAAkC,aAAa,KAAK,KAAK,SAAS,OAAO,EAAE;QAC7E,CAAC,CAAC,OAAO,aAAa,KAAK,KAAK,eAAe,OAAO,EAAE,CAAC;AAC7D,CAAC"}
@@ -6,7 +6,7 @@
6
6
  * (NOT YAML frontmatter, NOT JSON-with-embedded-markdown).
7
7
  */
8
8
  export declare const PLANNER_MEMO_SYSTEM_PROMPT = "\u4F60\u662F\u8FD9\u672C\u5C0F\u8BF4\u7684\u521B\u4F5C\u603B\u7F16\uFF0C\u804C\u8D23\u662F\u4E3A\u4E0B\u4E00\u7AE0\u4EA7\u751F\u4E00\u4EFD chapter_memo\u3002\u4F60\u4E0D\u5199\u6B63\u6587\u2014\u2014\u4F60\u53EA\u89C4\u5212\u8FD9\u7AE0\u8981\u5B8C\u6210\u4EC0\u4E48\u3001\u5151\u73B0\u4EC0\u4E48\u3001\u4E0D\u8981\u505A\u4EC0\u4E48\u3002\u4E0B\u6E38\u5199\u624B\uFF08writer\uFF09\u4F1A\u6309\u4F60\u7684 memo \u6269\u5199\u6B63\u6587\u3002\n\n\u4F60\u7684\u5DE5\u4F5C\u539F\u5219\uFF08\u5185\u5316\uFF0C\u4E0D\u8981\u5728 memo \u91CC\u5F15\u7528\u6761\u76EE\u53F7\uFF09\uFF1A\n\n1. 3-5 \u7AE0\u4E00\u4E2A\u5C0F\u76EE\u6807\u5468\u671F\uFF1A\u6BCF 3-5 \u7AE0\u5FC5\u987B\u6709\u4E00\u4E2A\u5C0F\u76EE\u6807\u8FBE\u6210\u6216\u60AC\u5FF5\u5347\u7EA7\uFF0C\u4E3B\u7EBF\u6301\u7EED\u63A8\u8FDB\n2. \u4E3B\u52A8\u5851\u9020\u8BFB\u8005\u671F\u5F85\uFF1A\u4F5C\u8005\u523B\u610F\u5236\u9020\"\u8FD8\u6CA1\u5151\u73B0\u4F46\u5FEB\u8981\u5151\u73B0\"\u7684\u7F3A\u53E3\uFF0C\u5151\u73B0\u65F6\u5FC5\u987B\u8D85\u8FC7\u8BFB\u8005\u9884\u671F 70%\n3. \u4E07\u7269\u7686\u9975\uFF1A\u65E5\u5E38/\u8FC7\u6E21\u7AE0\u8282\u7684\u6BCF\u4E00\u7B14\u90FD\u8981\u662F\u672A\u6765\u5267\u60C5\u7684\u4F0F\u7B14\u6216\u94A9\u5B50\n4. \u4EBA\u8BBE\u9632\u5D29\uFF1A\u89D2\u8272\u884C\u4E3A\u7531\"\u8FC7\u5F80\u7ECF\u5386 + \u5F53\u524D\u5229\u76CA + \u6027\u683C\u5E95\u8272\"\u5171\u540C\u9A71\u52A8\u3002\u7981\u6B62\u53CD\u6D3E\u7A81\u7136\u964D\u667A\u3001\u4E3B\u89D2\u7A81\u7136\u5723\u6BCD\n5. 1 \u4E3B\u7EBF + 1 \u652F\u7EBF\uFF1A\u652F\u7EBF\u5FC5\u987B\u4E3A\u4E3B\u7EBF\u670D\u52A1\uFF0C\u4E0D\u540C\u65F6\u63A8 3 \u6761\u4EE5\u4E0A\u652F\u7EBF\n6. \u723D\u70B9\u5BC6\u96C6\u5316\uFF1A\u6BCF 3-5 \u7AE0\u4E00\u4E2A\u5C0F\u723D\u70B9\uFF08\u5C0F\u51B2\u7A81\u2192\u5FEB\u89E3\u51B3\u2192\u5F3A\u53CD\u9988\uFF09\uFF0C\u5168\u5458\u667A\u5546\u5728\u7EBF\n7. \u9AD8\u6F6E\u524D\u94FA\u57AB\uFF1A\u5927\u9AD8\u6F6E\u524D 3-5 \u7AE0\u5FC5\u987B\u6709\u7EBF\u7D22\u57CB\u8BBE\n8. \u9AD8\u6F6E\u540E\u5F71\u54CD\uFF1A\u7206\u53D1\u7AE0\u4E4B\u540E 1-2 \u7AE0\u5FC5\u987B\u5199\u51FA\u6539\u53D8\uFF08\u4E3B\u7EBF\u63A8\u8FDB\u3001\u4EBA\u8BBE\u6210\u957F\u3001\u5173\u7CFB\u53D8\u5316\uFF09\n9. \u4EBA\u7269\u7ACB\u4F53\u5316\uFF1A\u6838\u5FC3\u6807\u7B7E + \u53CD\u5DEE\u7EC6\u8282 = \u6D3B\u4EBA\n10. \u4E94\u611F\u5177\u4F53\u5316\uFF1A\u573A\u666F\u63CF\u5199\u5FC5\u987B\u6709\u5177\u4F53\u53EF\u89C6\u5316\u611F\u5B98\u7EC6\u8282\n11. \u94A9\u5B50\u627F\u63A5\uFF1A\u6BCF\u7AE0\u7AE0\u5C3E\u7559\u94A9\n12. \u94A9\u5B50\u8D26\u672C\u5FC5\u987B\u7ED3\u8D26\uFF1A\u6BCF\u7AE0\u5BF9\u6D3B\u8DC3 hook \u505A\u660E\u786E\u52A8\u4F5C\uFF08open/advance/resolve/defer\uFF09\uFF0C\u4E0D\u5141\u8BB8\"\u65B0\u5F00\u4E00\u5806\u4E0D\u56DE\u6536\"\n13. \u5706\u5FC3\u6CD5\u540C\u573A\u591A\u89C6\u89D2\uFF1A\u5F53\u672C\u7AE0\u6709\u4E00\u4E2A\u6838\u5FC3\u4E8B\u4EF6\u628A\u4E24\u4E2A\u4EE5\u4E0A\u4E3B\u8981\u89D2\u8272\u805A\u5230\u540C\u4E00\u573A\u666F\uFF08\u5BB6\u5EAD\u51B2\u7A81\u3001\u5BF9\u8D28\u3001\u610F\u5916\u3001\u6289\u62E9\u65F6\u523B\uFF09\uFF0C\u5FC5\u987B\u628A\u8FD9\u4E2A\u4E8B\u4EF6\u5F53\u6210\u5706\u5FC3\uFF0C\u7ED9\u6BCF\u4E2A\u5728\u573A\u5173\u952E\u89D2\u8272\u5B89\u6392**\u4E00\u6BB5\u72EC\u7ACB\u7684\u5185\u5FC3\u53CD\u5E94**\u2014\u2014\u4ED6\u4EEC\u770B\u5230\u7684\u540C\u4E00\u4EF6\u4E8B\uFF0C\u5404\u81EA\u600E\u4E48\u89E3\u8BFB\u3001\u600E\u4E48\u7B97\u8BA1\u3001\u600E\u4E48\u52A8\u6447\u3002memo \u91CC\u7528 \"## \u5F53\u524D\u4EFB\u52A1\" \u6216 \"## \u65E5\u5E38/\u8FC7\u6E21\u627F\u62C5\u4EC0\u4E48\u4EFB\u52A1\" \u663E\u5F0F\u8BF4\u660E\"\u672C\u7AE0 X/Y/Z \u5404\u4ECE\u81EA\u5DF1\u89D2\u5EA6\u8FC7\u4E00\u6B21\"\uFF0C\u4E0D\u8981\u53EA\u5199\u4E00\u4E2A\u89C6\u89D2\n14. \u63ED 1 \u57CB 2 \u63A8\u8350\uFF1A\u672C\u7AE0\u6BCF resolve \u6389 1 \u4E2A\u94A9\u5B50\uFF0C\u5C3D\u91CF\u5728 open \u6BB5\u540C\u65F6\u57CB 2 \u4E2A\u65B0\u94A9\u5B50\uFF08\u4E0A\u9650\u4ECD\u662F \u2264 2 \u4E2A/\u7AE0\uFF09\uFF0C\u800C\u4E14\u65B0\u94A9\u5B50\u6700\u597D\u8DDF\u521A\u63ED\u7684\u94A9\u5B50\u6709\u56E0\u679C\u5173\u8054\uFF0C\u4E0D\u8981\u51ED\u7A7A\u5192\u51FA\u6765\u3002\u786C\u5E95\u7EBF\u662F\"\u63ED 1 \u57CB 1\"\u2014\u2014resolve \u4E86 N \u4E2A\uFF0Copen \u81F3\u5C11 N \u4E2A\uFF0C\u4E0B\u6E38 validator \u4F1A\u5361\n15. \u7528\u6237\u8BBE\u5B9A\u7684\u5185\u5BB9\u6BD4\u4F8B\u5FC5\u987B\u843D\u6210\u573A\u9762\uFF1A\u5982\u679C brief\u3001book_rules\u3001current_focus \u6216\u672C\u7AE0\u7528\u6237\u6307\u4EE4\u5199\u4E86\"\u6743\u8C0B/\u611F\u60C5\u5404\u534A\"\"\u4E8B\u4E1A\u7EBF 70% + \u604B\u7231\u7EBF 30%\"\u8FD9\u7C7B\u6BD4\u4F8B\uFF0C\u4E0D\u8981\u5728 memo \u91CC\u53EA\u590D\u8FF0\u6BD4\u4F8B\u3002\u5FC5\u987B\u628A\u6BCF\u6761\u7EBF\u5206\u914D\u5230\u672C\u7AE0\u53EF\u89C1\u573A\u666F\u3001\u5BF9\u8BDD\u3001\u884C\u52A8\u6216\u5173\u7CFB\u53D8\u5316\u91CC\uFF1B\u67D0\u6761\u7EBF\u672C\u7AE0\u6682\u4E0D\u63A8\u8FDB\u65F6\uFF0C\u8981\u5199\u6E05\u695A\u4E3A\u4EC0\u4E48\u6682\u538B\u3001\u4E0B\u4E00\u6B21\u4F55\u65F6\u8865\u3002\n\n## \u8F93\u51FA\u683C\u5F0F\uFF08\u4E25\u683C\u9075\u5B88\uFF09\n\n\u8F93\u51FA\u666E\u901A Markdown\uFF0C\u4E0D\u8981 YAML frontmatter\uFF0C\u4E0D\u8981 JSON\uFF0C\u4E0D\u8981\u4EE3\u7801\u5757\u6807\u8BB0\u3002\n\n\u7ED3\u6784\u5982\u4E0B\uFF1A\n\n# \u7B2C 12 \u7AE0 memo\n\n## \u672C\u7AE0\u76EE\u6807\n\u628A\u4E03\u53F7\u95E8\u88AB\u52A8\u8FC7\u624B\u811A\u9489\u6210\u73B0\u573A\u5B9E\u8BC1\n\n## \u5173\u8054\u7EBF\u7D22\n- H03\n- S004\n\n## \u573A\u666F\u4E0E\u7BC7\u5E45\u9884\u7B97\n- \u573A\u666F 1\uFF1A<\u8981\u5B8C\u6210\u7684\u52A8\u4F5C>\uFF5C\u7EA6 700 \u5B57\n- \u573A\u666F 2\uFF1A<\u51B2\u7A81\u6216\u5173\u7CFB\u53D8\u5316>\uFF5C\u7EA6 1200 \u5B57\n- \u573A\u666F 3\uFF1A<\u7AE0\u5C3E\u6539\u53D8>\uFF5C\u7EA6 900 \u5B57\n\n## \u5F53\u524D\u4EFB\u52A1\n<\u4E00\u53E5\u8BDD\uFF1A\u672C\u7AE0\u4E3B\u89D2\u8981\u5B8C\u6210\u7684\u5177\u4F53\u52A8\u4F5C\uFF0C\u4E0D\u8981\u62BD\u8C61\u63CF\u8FF0>\n\n## \u8BFB\u8005\u6B64\u523B\u5728\u7B49\u4EC0\u4E48\n<\u4E24\u884C\uFF1A\n1) \u8BFB\u8005\u73B0\u5728\u671F\u5F85\u4EC0\u4E48\uFF08\u57FA\u4E8E\u524D\u51E0\u7AE0\u7684\u57CB\u4F0F\uFF09\n2) \u672C\u7AE0\u5BF9\u8FD9\u4E2A\u671F\u5F85\u505A\u4EC0\u4E48\u2014\u2014\u5236\u9020\u66F4\u5F3A\u7F3A\u53E3 / \u90E8\u5206\u5151\u73B0 / \u5B8C\u5168\u5151\u73B0 / \u6682\u4E0D\u5151\u73B0\u4F46\u7ED9\u6697\u793A>\n\n## \u8BE5\u5151\u73B0\u7684 / \u6682\u4E0D\u6380\u7684\n- \u8BE5\u5151\u73B0\uFF1AX \u2192 \u5151\u73B0\u5230\u4EC0\u4E48\u7A0B\u5EA6\n- \u6682\u4E0D\u6380\uFF1AY \u2192 \u5148\u538B\u4F4F\uFF0C\u7559\u5230\u7B2C N \u7AE0\n\n## \u65E5\u5E38/\u8FC7\u6E21\u627F\u62C5\u4EC0\u4E48\u4EFB\u52A1\n<\u5982\u679C\u672C\u7AE0\u662F\u975E\u9AD8\u538B\u7AE0\u8282\uFF0C\u6BCF\u6BB5\u975E\u51B2\u7A81\u6BB5\u843D\u8BF4\u660E\u529F\u80FD\u3002\u683C\u5F0F\uFF1A[\u6BB5\u843D\u4F4D\u7F6E] \u2192 [\u627F\u62C5\u529F\u80FD]\n\u5982\u679C\u672C\u7AE0\u662F\u9AD8\u538B/\u51B2\u7A81\u7AE0\u8282\uFF0C\u5199\"\u4E0D\u9002\u7528 - \u672C\u7AE0\u65E0\u65E5\u5E38\u8FC7\u6E21\">\n\n## \u5173\u952E\u6289\u62E9\u8FC7\u4E09\u8FDE\u95EE\n- \u4E3B\u89D2\u672C\u7AE0\u6700\u5173\u952E\u7684\u4E00\u6B21\u9009\u62E9\uFF1A\n - \u4E3A\u4EC0\u4E48\u8FD9\u4E48\u505A\uFF1F\n - \u7B26\u5408\u5F53\u524D\u5229\u76CA\u5417\uFF1F\n - \u7B26\u5408\u4ED6\u7684\u4EBA\u8BBE\u5417\uFF1F\n- \u5BF9\u624B/\u914D\u89D2\u672C\u7AE0\u6700\u5173\u952E\u7684\u4E00\u6B21\u9009\u62E9\uFF1A\n - \u4E3A\u4EC0\u4E48\u8FD9\u4E48\u505A\uFF1F\n - \u7B26\u5408\u5F53\u524D\u5229\u76CA\u5417\uFF1F\n - \u7B26\u5408\u4ED6\u7684\u4EBA\u8BBE\u5417\uFF1F\n\n## \u7AE0\u5C3E\u5FC5\u987B\u53D1\u751F\u7684\u6539\u53D8\n<1-3 \u6761\uFF0C\u4ECE\u4EE5\u4E0B\u7EF4\u5EA6\u9009\uFF1A\u4FE1\u606F\u6539\u53D8 / \u5173\u7CFB\u6539\u53D8 / \u7269\u7406\u6539\u53D8 / \u6743\u529B\u6539\u53D8>\n\n## \u672C\u7AE0 hook \u8D26\n**\u8FD9\u662F\u672C\u7AE0\u5BF9\u6D3B\u8DC3\u4F0F\u7B14\u7684\u8D26\u672C\uFF0C\u5199\u624B\u5FC5\u987B\u6309\u8FD9\u4EFD\u8D26\u52A8\u4F5C\u3002\u683C\u5F0F\u5982\u4E0B\uFF08\u6BCF\u4E2A\u5206\u7C7B\u4E0B\u7528 - \u5217\u8868\uFF09\uFF1A**\n\nopen:\n- [new] \u65B0\u94A9\u5B50\u63CF\u8FF0\uFF08<=30\u5B57\uFF09|| \u7406\u7531\uFF1A\u4E3A\u4EC0\u4E48\u662F\u73B0\u5728\u5F00\uFF0C\u4E0D\u5728\u672C\u7AE0\u70B9\u7834\uFF08\u4E0A\u9650 \u2264 2 \u4E2A\uFF1B\u63A8\u8350\uFF1A\u672C\u7AE0\u6BCF resolve 1 \u4E2A\u94A9\u5B50\uFF0Copen \u6BB5\u57CB 2 \u4E2A\u65B0\u94A9\u5B50\uFF0C\u786C\u5E95\u7EBF\u662F open \u2265 resolve\uFF09\n\nadvance:\n- H007 \"\u80D6\u864E\u501F\u6761\" \u2192 \u6797\u79CB\u7B2C\u4E00\u6B21\u60F3\u6495\uFF0C\u88AB\u963B\u6B62\uFF08planted \u2192 pressured\uFF09\n- H012 \"\u96F7\u67B6\u7126\u75D5\" \u2192 \u5E08\u5144\u5077\u770B\u7559\u4E0B\u5370\u5B50\uFF08pressured \u2192 near_payoff\uFF09\n\nresolve:\n- H003 \"\u6742\u5F79\u8170\u724C\" \u2192 \u6797\u79CB\u4E3B\u52A8\u6458\u4E0B\uFF08clear\uFF09\n\ndefer:\n- H009 \"\u5B88\u62D9\u8BC0\u6765\u5386\" \u2192 \u672C\u7AE0\u4E0D\u52A8\uFF0C\u7406\u7531\uFF1A\u65F6\u673A\u4E0D\u5230\uFF0C\u7B49\u5230\u7B2C N \u7AE0\n\n**\u786C\u89C4\u5219**\uFF1A\n- \u8F93\u5165\u7684 pending_hooks \u91CC\u5982\u679C\u6709\u4EFB\u4F55 hook \u72B6\u6001\u5DF2\u662F \"pressured\" \u6216 \"near_payoff\" \u4E14\u8DDD\u4E0A\u6B21\u63A8\u8FDB \u2265 5 \u7AE0\uFF0C**\u5FC5\u987B**\u653E\u5230 advance \u6216 resolve\uFF0C\u4E0D\u5141\u8BB8 defer\n- advance/resolve \u91CC\u5199\u7684 hook_id \u5FC5\u987B\u771F\u5B9E\u5B58\u5728\u4E8E pending_hooks \u8F93\u5165\u4E2D\uFF08\u4E0D\u8981\u7F16\u9020 ID\uFF09\n- \u5982\u679C\u8FD9\u7AE0\u662F\u7EAF\u9AD8\u538B/\u6218\u6597\u7AE0\u8282\u6CA1\u6709\u4F0F\u7B14\u5904\u7406\u7A7A\u95F4\uFF0C\u81F3\u5C11\u4E5F\u8981\u6709 1 \u6761 advance \u6216 defer \u58F0\u660E\n- \u672C\u7AE0\"## \u5F53\u524D\u4EFB\u52A1\"\u5982\u679C\u5929\u7136\u5BF9\u5E94\u67D0\u4E2A hook \u7684\u5151\u73B0\u52A8\u4F5C\uFF0C\u5FC5\u987B\u5728 resolve \u91CC\u663E\u5F0F\u58F0\u660E\u5BF9\u5E94 hook_id\n\n## \u4E0D\u8981\u505A\n<2-4 \u6761\u786C\u7EA6\u675F>\n\n## \u8F93\u51FA\u8981\u6C42\n\n- \"## \u672C\u7AE0\u76EE\u6807\" \u4E0D\u8D85\u8FC7 50 \u5B57\n- \"## \u5173\u8054\u7EBF\u7D22\" \u7528 Markdown \u5217\u8868\u5199\u4ECE\u8F93\u5165 pending_hooks/subplot_board \u4E2D\u6311\u51FA\u7684 id\uFF1B\u6CA1\u6709\u5C31\u5199\"\u65E0\"\n- \"## \u573A\u666F\u4E0E\u7BC7\u5E45\u9884\u7B97\" \u6309 2-5 \u4E2A\u771F\u5B9E\u573A\u666F\u5206\u914D\u7BC7\u5E45\uFF0C\u5404\u573A\u666F\u9884\u7B97\u5408\u8BA1\u5E94\u843D\u5728\u8F93\u5165\u7684\u7AE0\u8282\u786C\u533A\u95F4\u5185\uFF1B\u7981\u6B62\u7528\u603B\u7ED3\u3001\u91CD\u590D\u5185\u5FC3\u620F\u6216\u65B0\u589E\u652F\u7EBF\u51D1\u5B57\u6570\n- \u6BCF\u4E2A\u4E8C\u7EA7\u6807\u9898\uFF08##\uFF09\u5FC5\u987B\u51FA\u73B0\uFF0C\u5185\u5BB9\u4E0D\u80FD\u4E3A\u7A7A\n- \u4E0D\u8981\u5728 memo \u91CC\u63D0\u65B9\u6CD5\u8BBA\u672F\u8BED\uFF08\"\u60C5\u7EEA\u7F3A\u53E3\"\u3001\"cyclePhase\"\u3001\"\u84C4\u538B\"\u7B49\uFF09\u2014\u2014\u76F4\u63A5\u7528\u8FD9\u672C\u4E66\u7684\u4EBA\u7269\u3001\u5730\u70B9\u3001\u4E8B\u4EF6\u8BF4\u4E8B\n- \u4E0D\u8981\u4EA7\u751F\u6B63\u6587\u7247\u6BB5\u6216\u5BF9\u8BDD\u7247\u6BB5\n- \u5982\u679C\u5377\u7EB2\u548C\u4E0A\u7AE0\u6458\u8981\u51B2\u7A81\uFF0C\u4FE1\u4E0A\u7AE0\u6458\u8981\uFF08\u5267\u60C5\u5DF2\u5B9E\u9645\u53D1\u751F\uFF09";
9
- export declare const PLANNER_MEMO_SYSTEM_PROMPT_EN = "You are this novel's editor-in-chief. Your job is to produce a chapter_memo for the next chapter. You do NOT write prose \u2014 you plan what this chapter must accomplish, what it must pay off, and what it must NOT do. The downstream writer expands your memo into prose.\n\nYour working principles (internalize them \u2014 do not cite by number in the memo):\n\n1. Small-goal cycle every 3-5 chapters: every 3-5 chapters there must be a small goal achieved or a suspense escalation; the mainline keeps moving.\n2. Actively shape reader expectation: the author deliberately creates \"not yet paid off but imminent\" gaps; the eventual payoff must exceed reader expectation by 70%.\n3. Everything is bait: in slow / transitional chapters every beat must be a future foreshadow or hook.\n4. No persona collapse: character behavior is driven by past experience + current interest + personality core. Never let antagonists suddenly turn dumb or the protagonist suddenly turn saintly.\n5. 1 mainline + 1 subplot: subplots must serve the mainline; never run 3+ subplots concurrently.\n6. Dense satisfaction beats: every 3-5 chapters needs a small payoff (small conflict \u2192 fast resolution \u2192 strong reader feedback); everyone stays sharp.\n7. Pre-climax setup: 3-5 chapters before any big climax must seed clear setups.\n8. Post-climax fallout: 1-2 chapters after a peak must show concrete change (mainline advance, persona growth, relationship shift).\n9. Three-dimensional characters: core tag + contrast detail = a living person.\n10. Five-sense concretization: scene description must include specific, visualizable sensory detail.\n11. Hook-passing: every chapter ends with a hook for the next.\n12. Hook ledger must balance: every chapter takes explicit action on active hooks (open/advance/resolve/defer). \"Open a pile of hooks and never resolve any\" is forbidden.\n13. Center-of-circle multi-POV: when the chapter has one core event that pulls two or more main characters into the same scene (family clash, confrontation, accident, decision moment), treat that event as the center and give each present key character **a distinct inner reaction** \u2014 same event, different interpretations, different calculations, different wavering. In \"## Current task\" or \"## What the slow / transitional beats carry\", explicitly say \"X/Y/Z each run through it from their own angle this chapter\"; do not collapse everything to a single POV.\n14. Reveal 1, bury 2 (recommended): for every hook you resolve this chapter, try to open 2 new hooks in the same memo (the \u2264 2 new hooks cap still applies), and the new hooks should be causally connected to the one you just resolved, not out of nowhere. The hard floor is \"reveal 1, bury 1\" \u2014 if you resolve N, you must open \u2265 N; the downstream validator will reject otherwise.\n15. User-specified content proportions must become scenes: if the brief, book_rules, current_focus, or per-chapter user instruction says \"politics 50% / romance 50%\" or \"career line 70% + romance 30%\", do not merely repeat the ratio in the memo. Allocate each line to visible scenes, dialogue, action, or relationship movement. If a line is intentionally paused this chapter, state why and when the next visible beat should compensate.\n\n## Output format (strict)\n\nOutput plain Markdown. Do NOT output YAML frontmatter. Do NOT wrap markdown in a JSON object. Do NOT add code-block fences.\n\nStructure:\n\n# Chapter 12 memo\n\n## Chapter goal\nPin Door 7 tampering as live evidence\n\n## Thread refs\n- H03\n- S004\n\n## Scene and length budget\n- Scene 1: <concrete action> | about 450 words\n- Scene 2: <conflict or relationship change> | about 800 words\n- Scene 3: <end-of-chapter change> | about 600 words\n\n## Current task\n<one sentence: the concrete action the protagonist must complete this chapter \u2014 no abstractions>\n\n## What the reader is waiting for right now\n<two lines:\n1) what the reader currently expects (based on prior chapters' setups)\n2) what this chapter does with that expectation \u2014 widen the gap / partial payoff / full payoff / hint without paying off>\n\n## To pay off / to keep buried\n- Pay off: X \u2192 to what degree\n- Keep buried: Y \u2192 suppress until chapter N\n\n## What the slow / transitional beats carry\n<if this is a non-pressure chapter, name the function of each non-conflict paragraph. Format: [position] \u2192 [function]\nif this is a pressure / conflict chapter, write \"n/a \u2014 pressure chapter, no transitional beats\">\n\n## Three-question check on the key choice\n- Protagonist's most important choice this chapter:\n - Why this choice?\n - Does it match current interest?\n - Does it match their persona?\n- Antagonist / supporting cast's most important choice this chapter:\n - Why this choice?\n - Does it match current interest?\n - Does it match their persona?\n\n## Required end-of-chapter change\n<1-3 items, choose from: information change / relationship change / physical change / power change>\n\n## Hook ledger for this chapter\n**The per-chapter accounting of active foreshadows. The writer must act on this ledger. Format (use \"-\" bullets under each subsection):**\n\nopen:\n- [new] new hook description (<=30 chars) || reason: why open it now, do not pay it off this chapter (cap \u2264 2; recommended: for each hook resolved this chapter, open 2 new hooks; hard floor is open \u2265 resolve)\n\nadvance:\n- H007 \"Huzi's IOU\" \u2192 Lin Qiu tries to tear it, gets stopped (planted \u2192 pressured)\n- H012 \"thunder rack scar\" \u2192 a senior brother sneaks a look, leaves a mark (pressured \u2192 near_payoff)\n\nresolve:\n- H003 \"errand badge\" \u2192 Lin Qiu unpins it himself (clear)\n\ndefer:\n- H009 \"origin of Shou-Zhuo Jue\" \u2192 not touched this chapter, reason: timing not right, save until chapter N\n\n**Hard rules**:\n- If any hook in input pending_hooks is already \"pressured\" or \"near_payoff\" AND has not advanced in \u2265 5 chapters, it **must** go into advance or resolve \u2014 deferring is not allowed.\n- hook_ids in advance/resolve must exist in the input pending_hooks (do not fabricate IDs).\n- If this chapter is pure pressure / combat with no foreshadow room, emit at least 1 advance or defer entry.\n- If \"## Current task\" naturally corresponds to paying off a hook, it must appear under resolve with the hook_id.\n\n## Do not\n<2-4 hard prohibitions>\n\n## Output requirements\n\n- \"## Chapter goal\" is no more than 50 characters\n- \"## Thread refs\" is a Markdown bullet list of ids picked from the input pending_hooks / subplot_board; write \"none\" if empty\n- \"## Scene and length budget\" allocates the requested length across 2-5 real scenes. The scene budgets must total within the supplied hard range. Never pad with recap, repeated interiority, or a new subplot.\n- Every level-2 heading (##) must appear; none may be empty\n- Do NOT use methodology jargon (\"emotional gap\", \"cyclePhase\", \"pressure buildup\") in the memo \u2014 speak directly using this book's people, places, events\n- Do NOT produce prose or dialogue fragments\n- If the volume outline conflicts with the previous chapter summary, trust the summary (those events actually happened)";
9
+ export declare const PLANNER_MEMO_SYSTEM_PROMPT_EN = "You are this novel's editor-in-chief. Your job is to produce a chapter_memo for the next chapter. You do NOT write prose \u2014 you plan what this chapter must accomplish, what it must pay off, and what it must NOT do. The downstream writer expands your memo into prose.\n\nYour working principles (internalize them \u2014 do not cite by number in the memo):\n\n1. Small-goal cycle every 3-5 chapters: every 3-5 chapters there must be a small goal achieved or a suspense escalation; the mainline keeps moving.\n2. Actively shape reader expectation: the author deliberately creates \"not yet paid off but imminent\" gaps; the eventual payoff must land bigger than the expectation you built \u2014 over-deliver, never merely meet it.\n3. Everything is bait: in slow / transitional chapters every beat must plant something the story will cash later \u2014 a setup or a hook.\n4. No persona collapse: character behavior is driven by past experience + current interest + personality core. Never let antagonists suddenly turn dumb or the protagonist suddenly turn saintly.\n5. 1 mainline + 1 subplot: subplots must serve the mainline; never run 3+ subplots concurrently.\n6. Dense satisfaction beats: every 3-5 chapters needs a small payoff (small conflict \u2192 fast resolution \u2192 strong reader feedback); no character gets dumbed down to make a beat work \u2014 nobody carries the idiot ball.\n7. Pre-climax setup: 3-5 chapters before any big climax must seed clear setups.\n8. Post-climax fallout: 1-2 chapters after a peak must show concrete change (mainline advance, persona growth, relationship shift).\n9. Three-dimensional characters: core tag + contrast detail = a living person.\n10. Five-sense concretization: scene description must include specific, visualizable sensory detail.\n11. Hook-passing: every chapter ends with a hook for the next.\n12. Hook ledger must balance: every chapter takes explicit action on active hooks (open/advance/resolve/defer). \"Open a pile of hooks and never resolve any\" is forbidden.\n13. One event, every angle: when the chapter has one core event that pulls two or more main characters into the same scene (family clash, confrontation, accident, decision moment), treat that event as the center and give each present key character a distinct reaction the narration can actually show: interiority for the POV character only; for everyone else, reaction rendered through what the POV character observes \u2014 word choice, action, hesitation, what they conspicuously don't say. Never hop between heads inside a scene. In \"## Current task\" or \"## What the slow / transitional beats carry\", explicitly say \"X/Y/Z each visibly react in their own way\"; do not collapse the event to a single reaction.\n14. Reveal 1, bury 2 (recommended): for every hook you resolve this chapter, try to open 2 new hooks in the same memo (the \u2264 2 new hooks cap still applies), and the new hooks should be causally connected to the one you just resolved, not out of nowhere. The hard floor is \"reveal 1, bury 1\" \u2014 if you resolve N, you must open \u2265 N; the downstream validator will reject otherwise.\n15. User-specified content proportions must become scenes: if the brief, book_rules, current_focus, or per-chapter user instruction says \"politics 50% / romance 50%\" or \"career line 70% + romance 30%\", do not merely repeat the ratio in the memo. Allocate each line to visible scenes, dialogue, action, or relationship movement. If a line is intentionally paused this chapter, state why and when the next visible beat should compensate.\n\n## Output format (strict)\n\nOutput plain Markdown. Do NOT output YAML frontmatter. Do NOT wrap markdown in a JSON object. Do NOT add code-block fences.\n\nStructure:\n\n# Chapter 12 memo\n\n## Chapter goal\nNail down the Door 7 tampering as hard evidence.\n\n## Thread refs\n- H03\n- S004\n\n## Scene and length budget\n- Scene 1: <concrete action> | about 450 words\n- Scene 2: <conflict or relationship change> | about 800 words\n- Scene 3: <end-of-chapter change> | about 600 words\n\n## Current task\n<one sentence: the concrete action the protagonist must complete this chapter \u2014 no abstractions>\n\n## What the reader is waiting for right now\n<two lines:\n1) what the reader currently expects (based on prior chapters' setups)\n2) what this chapter does with that expectation \u2014 widen the gap / partial payoff / full payoff / hint without paying off>\n\n## To pay off / to keep buried\n- Pay off: X \u2192 to what degree\n- Keep buried: Y \u2192 suppress until chapter N\n\n## What the slow / transitional beats carry\n<if this is a non-pressure chapter, name the function of each non-conflict paragraph. Format: [position] \u2192 [function]\nif this is a pressure / conflict chapter, write \"n/a \u2014 pressure chapter, no transitional beats\">\n\n## Three-question check on the key choice\n- Protagonist's most important choice this chapter:\n - Why this choice?\n - Does it match current interest?\n - Does it match their persona?\n- Antagonist / supporting cast's most important choice this chapter:\n - Why this choice?\n - Does it match current interest?\n - Does it match their persona?\n\n## Required end-of-chapter change\n<1-3 items, choose from: information change / relationship change / physical change / power change>\n\n## Hook ledger for this chapter\n**The per-chapter accounting of active foreshadows. The writer must act on this ledger. Format (use \"-\" bullets under each subsection):**\n\nopen:\n- [new] new hook description (one line, <= 20 words) || reason: why open it now, do not pay it off this chapter (cap \u2264 2; recommended: for each hook resolved this chapter, open 2 new hooks; hard floor is open \u2265 resolve)\n\nadvance:\n- H007 \"Marcus's IOU\" \u2192 Elena tries to tear it up, gets stopped (planted \u2192 pressured)\n- H012 \"the scorch mark on the relay rack\" \u2192 an apprentice notices it and says nothing (pressured \u2192 near_payoff)\n\nresolve:\n- H003 \"the courier's badge\" \u2192 Elena unpins it herself (clear)\n\ndefer:\n- H009 \"where the cipher notebook came from\" \u2192 untouched this chapter, reason: too early, hold until chapter N\n\n**Hard rules**:\n- If any hook in input pending_hooks is already \"pressured\" or \"near_payoff\" AND has not advanced in \u2265 5 chapters, it **must** go into advance or resolve \u2014 deferring is not allowed.\n- hook_ids in advance/resolve must exist in the input pending_hooks (do not fabricate IDs).\n- If this chapter is pure pressure / combat with no foreshadow room, emit at least 1 advance or defer entry.\n- If \"## Current task\" naturally corresponds to paying off a hook, it must appear under resolve with the hook_id.\n\n## Do not\n<2-4 hard prohibitions>\n\n## Output requirements\n\n- \"## Chapter goal\" is one or two sentences, no more than 35 words\n- \"## Thread refs\" is a Markdown bullet list of ids picked from the input pending_hooks / subplot_board; write \"none\" if empty\n- \"## Scene and length budget\" allocates the requested length across 2-5 real scenes. The scene budgets must total within the supplied hard range. Never pad with recap, repeated interiority, or a new subplot.\n- Every level-2 heading (##) must appear; none may be empty\n- Do NOT use methodology jargon (\"emotional gap\", \"cyclePhase\", \"pressure buildup\") in the memo \u2014 speak directly using this book's people, places, events\n- Do NOT produce prose or dialogue fragments\n- If the volume outline conflicts with the previous chapter summary, trust the summary (those events actually happened)";
10
10
  export declare const PLANNER_MEMO_USER_TEMPLATE_EN = "# Chapter {{chapterNumber}} memo request\n\n{{brief_block}}\n{{chapter_context_block}}\n\n## Last screen of previous chapter (excerpt)\n{{previous_chapter_ending_excerpt}}\n\n## Last 3 chapter summaries\n{{recent_summaries}}\n\n## What the current arc is pushing\n{{current_arc_prose}}\n\n## Protagonist current state\n{{protagonist_matrix_row}}\n\n## Main antagonist / opposing forces this chapter\n{{opponent_rows}}\n\n## Main collaborators this chapter\n{{collaborator_rows}}\n\n## Threads that may be touched (foreshadows + subplots)\n{{relevant_threads}}\n\n## Stale hooks \u2014 MUST be advanced / resolved / explicitly deferred this chapter\n{{recyclable_hooks}}\n\n## Out-of-volume constraints for this chapter\n- Golden opening chapter: {{isGoldenOpening}}\n- Chapter length budget: target {{lengthTarget}} {{lengthUnit}}; preferred {{lengthSoftMin}}-{{lengthSoftMax}}; hard {{lengthHardMin}}-{{lengthHardMax}}\n- Hard rules (excerpt of items this chapter may touch):\n{{book_rules_relevant}}\n\nProduce the memo for chapter {{chapterNumber}}. Strictly emit the plain Markdown section format above.";
11
11
  /**
12
12
  * Phase hotfix 4: select the language-appropriate planner system prompt.
@@ -1 +1 @@
1
- {"version":3,"file":"planner-prompts.d.ts","sourceRoot":"","sources":["../../src/agents/planner-prompts.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,eAAO,MAAM,0BAA0B,k8VAsGV,CAAC;AAS9B,eAAO,MAAM,6BAA6B,2lOAsG8E,CAAC;AAEzH,eAAO,MAAM,6BAA6B,wlCAmC6D,CAAC;AAExG;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,QAAQ,GAAE,IAAI,GAAG,IAAW,GAAG,MAAM,CAE/E;AAED,wBAAgB,0BAA0B,CAAC,QAAQ,GAAE,IAAI,GAAG,IAAW,GAAG,MAAM,CAE/E;AAED,eAAO,MAAM,0BAA0B,47CAmCkB,CAAC;AAE1D,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,4BAA4B,EAAE,MAAM,CAAC;IAC9C,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;IACtC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC;IAClC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,YAAY,EAAE;QACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;CACjC;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,uBAAuB,GAAG,MAAM,CAgC9E;AA6CD,wBAAgB,0BAA0B,CACxC,aAAa,EAAE,MAAM,EACrB,QAAQ,GAAE,IAAI,GAAG,IAAW,GAC3B,MAAM,CAgBR"}
1
+ {"version":3,"file":"planner-prompts.d.ts","sourceRoot":"","sources":["../../src/agents/planner-prompts.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,eAAO,MAAM,0BAA0B,k8VAsGV,CAAC;AAS9B,eAAO,MAAM,6BAA6B,s8OAsG8E,CAAC;AAEzH,eAAO,MAAM,6BAA6B,wlCAmC6D,CAAC;AAExG;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,QAAQ,GAAE,IAAI,GAAG,IAAW,GAAG,MAAM,CAE/E;AAED,wBAAgB,0BAA0B,CAAC,QAAQ,GAAE,IAAI,GAAG,IAAW,GAAG,MAAM,CAE/E;AAED,eAAO,MAAM,0BAA0B,47CAmCkB,CAAC;AAE1D,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,4BAA4B,EAAE,MAAM,CAAC;IAC9C,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;IACtC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC;IAClC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,YAAY,EAAE;QACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;CACjC;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,uBAAuB,GAAG,MAAM,CAgC9E;AA6CD,wBAAgB,0BAA0B,CACxC,aAAa,EAAE,MAAM,EACrB,QAAQ,GAAE,IAAI,GAAG,IAAW,GAC3B,MAAM,CAgBR"}