scriveno 2.0.5

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 (239) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +222 -0
  3. package/agents/continuity-checker.md +85 -0
  4. package/agents/drafter.md +248 -0
  5. package/agents/plan-checker.md +209 -0
  6. package/agents/researcher.md +114 -0
  7. package/agents/translator.md +204 -0
  8. package/agents/voice-checker.md +154 -0
  9. package/bin/install.js +1620 -0
  10. package/commands/scr/add-note.md +51 -0
  11. package/commands/scr/add-unit.md +101 -0
  12. package/commands/scr/art-direction.md +225 -0
  13. package/commands/scr/autopilot-publish.md +210 -0
  14. package/commands/scr/autopilot-translate.md +237 -0
  15. package/commands/scr/autopilot.md +200 -0
  16. package/commands/scr/back-matter.md +630 -0
  17. package/commands/scr/back-translate.md +197 -0
  18. package/commands/scr/beta-reader.md +97 -0
  19. package/commands/scr/blurb.md +149 -0
  20. package/commands/scr/book-proposal.md +210 -0
  21. package/commands/scr/build-ebook.md +448 -0
  22. package/commands/scr/build-poetry-submission.md +202 -0
  23. package/commands/scr/build-print.md +598 -0
  24. package/commands/scr/build-smashwords.md +171 -0
  25. package/commands/scr/build-world.md +158 -0
  26. package/commands/scr/cast-list.md +104 -0
  27. package/commands/scr/chapter-header.md +158 -0
  28. package/commands/scr/character-arc.md +108 -0
  29. package/commands/scr/character-ref.md +160 -0
  30. package/commands/scr/character-sheet.md +143 -0
  31. package/commands/scr/character-touch.md +157 -0
  32. package/commands/scr/character-voice-sample.md +111 -0
  33. package/commands/scr/check-notes.md +50 -0
  34. package/commands/scr/cleanup.md +159 -0
  35. package/commands/scr/compare.md +112 -0
  36. package/commands/scr/complete-draft.md +49 -0
  37. package/commands/scr/continuity-check.md +129 -0
  38. package/commands/scr/copy-edit.md +118 -0
  39. package/commands/scr/cover-art.md +382 -0
  40. package/commands/scr/cultural-adaptation.md +177 -0
  41. package/commands/scr/demo.md +93 -0
  42. package/commands/scr/dialogue-audit.md +143 -0
  43. package/commands/scr/discuss.md +118 -0
  44. package/commands/scr/discussion-questions.md +129 -0
  45. package/commands/scr/do.md +68 -0
  46. package/commands/scr/draft.md +97 -0
  47. package/commands/scr/editor-review.md +466 -0
  48. package/commands/scr/export.md +942 -0
  49. package/commands/scr/fast.md +65 -0
  50. package/commands/scr/front-matter.md +696 -0
  51. package/commands/scr/health.md +113 -0
  52. package/commands/scr/help.md +121 -0
  53. package/commands/scr/history.md +92 -0
  54. package/commands/scr/illustrate-scene.md +211 -0
  55. package/commands/scr/import.md +95 -0
  56. package/commands/scr/insert-unit.md +108 -0
  57. package/commands/scr/line-edit.md +146 -0
  58. package/commands/scr/manager.md +77 -0
  59. package/commands/scr/manuscript-stats.md +139 -0
  60. package/commands/scr/map-illustration.md +213 -0
  61. package/commands/scr/map-manuscript.md +134 -0
  62. package/commands/scr/merge-units.md +136 -0
  63. package/commands/scr/multi-publish.md +344 -0
  64. package/commands/scr/new-character.md +167 -0
  65. package/commands/scr/new-revision.md +50 -0
  66. package/commands/scr/new-work.md +148 -0
  67. package/commands/scr/next.md +125 -0
  68. package/commands/scr/originality-check.md +170 -0
  69. package/commands/scr/outline.md +131 -0
  70. package/commands/scr/pacing-analysis.md +170 -0
  71. package/commands/scr/panel-layout.md +225 -0
  72. package/commands/scr/pause-work.md +88 -0
  73. package/commands/scr/plan.md +112 -0
  74. package/commands/scr/plant-seed.md +57 -0
  75. package/commands/scr/plot-graph.md +199 -0
  76. package/commands/scr/polish.md +141 -0
  77. package/commands/scr/profile-writer.md +154 -0
  78. package/commands/scr/progress.md +51 -0
  79. package/commands/scr/publish.md +455 -0
  80. package/commands/scr/query-letter.md +183 -0
  81. package/commands/scr/quick-write.md +82 -0
  82. package/commands/scr/relationship-map.md +129 -0
  83. package/commands/scr/remove-unit.md +120 -0
  84. package/commands/scr/reorder-units.md +126 -0
  85. package/commands/scr/resume-work.md +97 -0
  86. package/commands/scr/sacred/annotation-layer.md +105 -0
  87. package/commands/scr/sacred/chronology.md +121 -0
  88. package/commands/scr/sacred/concordance.md +88 -0
  89. package/commands/scr/sacred/cross-reference.md +97 -0
  90. package/commands/scr/sacred/doctrinal-check.md +129 -0
  91. package/commands/scr/sacred/genealogy.md +107 -0
  92. package/commands/scr/sacred/source-tracking.md +101 -0
  93. package/commands/scr/sacred/verse-numbering.md +103 -0
  94. package/commands/scr/sacred-numbering-format.md +103 -0
  95. package/commands/scr/save.md +109 -0
  96. package/commands/scr/scan.md +291 -0
  97. package/commands/scr/sensitivity-review.md +169 -0
  98. package/commands/scr/series-bible.md +127 -0
  99. package/commands/scr/session-report.md +80 -0
  100. package/commands/scr/settings.md +58 -0
  101. package/commands/scr/split-unit.md +123 -0
  102. package/commands/scr/spread-layout.md +187 -0
  103. package/commands/scr/storyboard.md +262 -0
  104. package/commands/scr/subject-touch.md +168 -0
  105. package/commands/scr/submit.md +50 -0
  106. package/commands/scr/subplot-map.md +147 -0
  107. package/commands/scr/sync.md +116 -0
  108. package/commands/scr/synopsis.md +137 -0
  109. package/commands/scr/theme-tracker.md +128 -0
  110. package/commands/scr/thread.md +83 -0
  111. package/commands/scr/timeline.md +141 -0
  112. package/commands/scr/track.md +564 -0
  113. package/commands/scr/translate.md +260 -0
  114. package/commands/scr/translation-glossary.md +298 -0
  115. package/commands/scr/translation-memory.md +310 -0
  116. package/commands/scr/troubleshoot.md +59 -0
  117. package/commands/scr/undo.md +106 -0
  118. package/commands/scr/validate.md +133 -0
  119. package/commands/scr/versions.md +94 -0
  120. package/commands/scr/voice-check.md +133 -0
  121. package/commands/scr/voice-test.md +68 -0
  122. package/data/CONSTRAINTS.json +1606 -0
  123. package/data/demo/.manuscript/BRIEF.md +37 -0
  124. package/data/demo/.manuscript/CHARACTERS.md +90 -0
  125. package/data/demo/.manuscript/OUTLINE.md +46 -0
  126. package/data/demo/.manuscript/PLOT-GRAPH.md +75 -0
  127. package/data/demo/.manuscript/STATE.md +44 -0
  128. package/data/demo/.manuscript/STYLE-GUIDE.md +119 -0
  129. package/data/demo/.manuscript/THEMES.md +51 -0
  130. package/data/demo/.manuscript/WORK.md +51 -0
  131. package/data/demo/.manuscript/config.json +59 -0
  132. package/data/demo/.manuscript/drafts/body/1-the-letter-DRAFT.md +51 -0
  133. package/data/demo/.manuscript/drafts/body/2-the-workshop-DRAFT.md +51 -0
  134. package/data/demo/.manuscript/drafts/body/3-the-pier-DRAFT.md +45 -0
  135. package/data/demo/.manuscript/drafts/body/4-the-clock-DRAFT.md +59 -0
  136. package/data/demo/.manuscript/plans/5-the-reunion-PLAN.md +52 -0
  137. package/data/demo/.manuscript/reviews/2-the-workshop-REVIEW.md +61 -0
  138. package/data/export-templates/scriveno-academic.latex +184 -0
  139. package/data/export-templates/scriveno-acm.latex +67 -0
  140. package/data/export-templates/scriveno-apa7.latex +83 -0
  141. package/data/export-templates/scriveno-book.typst +175 -0
  142. package/data/export-templates/scriveno-chapbook.typst +121 -0
  143. package/data/export-templates/scriveno-elsevier.latex +76 -0
  144. package/data/export-templates/scriveno-epub.css +386 -0
  145. package/data/export-templates/scriveno-fixed-layout-epub.css +76 -0
  146. package/data/export-templates/scriveno-fixed-layout.opf +23 -0
  147. package/data/export-templates/scriveno-ieee.latex +77 -0
  148. package/data/export-templates/scriveno-lncs.latex +79 -0
  149. package/data/export-templates/scriveno-picturebook.typst +113 -0
  150. package/data/export-templates/scriveno-poetry-submission-styles.md +45 -0
  151. package/data/export-templates/scriveno-poetry-submission.docx +0 -0
  152. package/data/export-templates/scriveno-smashwords-styles.md +45 -0
  153. package/data/export-templates/scriveno-smashwords.docx +0 -0
  154. package/data/export-templates/scriveno-stageplay.typst +129 -0
  155. package/data/proof/creative-context/README.md +79 -0
  156. package/data/proof/voice-dna/GUIDED-SAMPLE.md +19 -0
  157. package/data/proof/voice-dna/README.md +45 -0
  158. package/data/proof/voice-dna/STYLE-GUIDE-EXCERPT.md +43 -0
  159. package/data/proof/voice-dna/UNGUIDED-SAMPLE.md +11 -0
  160. package/data/proof/watchmaker-flow/README.md +78 -0
  161. package/docs/architecture.md +425 -0
  162. package/docs/command-reference.md +2384 -0
  163. package/docs/configuration.md +228 -0
  164. package/docs/context-protocol.md +81 -0
  165. package/docs/contributing.md +430 -0
  166. package/docs/creative-context.md +158 -0
  167. package/docs/development.md +152 -0
  168. package/docs/drafter-quality.md +127 -0
  169. package/docs/getting-started.md +198 -0
  170. package/docs/history-protocol.md +96 -0
  171. package/docs/proof-artifacts.md +56 -0
  172. package/docs/publishing.md +296 -0
  173. package/docs/release-notes.md +457 -0
  174. package/docs/runtime-support.md +77 -0
  175. package/docs/sacred-texts.md +296 -0
  176. package/docs/shipped-assets.md +129 -0
  177. package/docs/testing.md +156 -0
  178. package/docs/translation.md +343 -0
  179. package/docs/voice-dna.md +297 -0
  180. package/docs/work-types.md +339 -0
  181. package/lib/architectural-profiles.js +134 -0
  182. package/package.json +54 -0
  183. package/templates/BRIEF.md +51 -0
  184. package/templates/CHARACTERS.md +64 -0
  185. package/templates/CONTEXT.md +56 -0
  186. package/templates/OUTLINE.md +36 -0
  187. package/templates/RECORD.md +68 -0
  188. package/templates/STATE.md +50 -0
  189. package/templates/STYLE-GUIDE.md +121 -0
  190. package/templates/THEMES.md +36 -0
  191. package/templates/WORK.md +67 -0
  192. package/templates/WORLD.md +62 -0
  193. package/templates/WRITING-RULES.md +156 -0
  194. package/templates/academic/ARGUMENT-MAP.md +40 -0
  195. package/templates/academic/CONCEPTS.md +34 -0
  196. package/templates/academic/CONTEXT.md +29 -0
  197. package/templates/academic/PROPOSAL.md +37 -0
  198. package/templates/academic/QUESTIONS.md +24 -0
  199. package/templates/config.json +72 -0
  200. package/templates/pitfalls/comic.md +54 -0
  201. package/templates/pitfalls/commentary.md +62 -0
  202. package/templates/pitfalls/memoir.md +48 -0
  203. package/templates/pitfalls/novel.md +53 -0
  204. package/templates/pitfalls/poetry_collection.md +63 -0
  205. package/templates/pitfalls/research_paper.md +66 -0
  206. package/templates/pitfalls/runbook.md +64 -0
  207. package/templates/pitfalls/screenplay.md +54 -0
  208. package/templates/platforms/README.md +16 -0
  209. package/templates/platforms/apple/manifest.yaml +20 -0
  210. package/templates/platforms/bn/manifest.yaml +20 -0
  211. package/templates/platforms/d2d/manifest.yaml +20 -0
  212. package/templates/platforms/google/manifest.yaml +20 -0
  213. package/templates/platforms/ingram/manifest.yaml +44 -0
  214. package/templates/platforms/kdp/manifest.yaml +42 -0
  215. package/templates/platforms/kobo/manifest.yaml +20 -0
  216. package/templates/platforms/smashwords/manifest.yaml +26 -0
  217. package/templates/sacred/COSMOLOGY.md +88 -0
  218. package/templates/sacred/DOCTRINES.md +45 -0
  219. package/templates/sacred/FIGURES.md +69 -0
  220. package/templates/sacred/FRAMEWORK.md +98 -0
  221. package/templates/sacred/LINEAGES.md +52 -0
  222. package/templates/sacred/README.md +20 -0
  223. package/templates/sacred/THEOLOGICAL-ARC.md +69 -0
  224. package/templates/sacred/catholic/manifest.yaml +93 -0
  225. package/templates/sacred/islamic-hafs/manifest.yaml +134 -0
  226. package/templates/sacred/islamic-warsh/manifest.yaml +134 -0
  227. package/templates/sacred/jewish/manifest.yaml +56 -0
  228. package/templates/sacred/orthodox/manifest.yaml +98 -0
  229. package/templates/sacred/pali/manifest.yaml +20 -0
  230. package/templates/sacred/protestant/manifest.yaml +86 -0
  231. package/templates/sacred/sanskrit/manifest.yaml +20 -0
  232. package/templates/sacred/tewahedo/manifest.yaml +106 -0
  233. package/templates/sacred/tibetan/manifest.yaml +20 -0
  234. package/templates/technical/AUDIENCE.md +26 -0
  235. package/templates/technical/DEPENDENCIES.md +19 -0
  236. package/templates/technical/DOC-BRIEF.md +45 -0
  237. package/templates/technical/PROCEDURES.md +37 -0
  238. package/templates/technical/REFERENCES.md +36 -0
  239. package/templates/technical/SYSTEM.md +25 -0
@@ -0,0 +1,296 @@
1
+ # Sacred Text Guide
2
+
3
+ Scriveno adapts its entire workflow for sacred, historical, and mythological writing. When you choose a sacred work type, every command, every structural label, and every voice setting shifts to use tradition-native vocabulary. Novels use "chapters" -- but Quranic commentary uses "surahs," Torah scholarship uses "parashot," and Vedic texts use "suktas." This is not cosmetic. The vocabulary shapes how the AI agent thinks about your text, producing drafts that respect the traditions they come from.
4
+
5
+ This guide covers everything specific to sacred writing in Scriveno: the 15 sacred work types, 10 voice registers, sacred-exclusive commands, command adaptations, sacred translation, and tradition-aware front and back matter.
6
+
7
+ ## Sacred Work Types
8
+
9
+ Scriveno supports 15 work types in the sacred group, spanning six traditions and several cross-tradition categories. Each work type defines its own structural hierarchy -- the levels at which your text is organized -- and its own command unit, the level at which you discuss, plan, draft, and review.
10
+
11
+ ### Scripture Types
12
+
13
+ | Work Type | Label | Hierarchy (Top / Mid / Atomic) | Command Unit | Tradition |
14
+ |-----------|-------|-------------------------------|--------------|-----------|
15
+ | `scripture_biblical` | Scripture (Biblical) | testament / book / verse | book | Christian Bible, Apocrypha |
16
+ | `scripture_quranic` | Scripture (Quranic) | -- / surah / ayah | surah | Quran, Hadith collections |
17
+ | `scripture_torah` | Scripture (Torah) | chumash / parashah / pasuk | parashah | Torah, Talmud, Mishnah |
18
+ | `scripture_vedic` | Scripture (Vedic) | veda / mandala / sukta | mandala | Rigveda, Upanishads, Bhagavad Gita |
19
+ | `scripture_buddhist` | Scripture (Buddhist) | pitaka / nikaya / sutta | sutta | Pali Canon, Mahayana sutras |
20
+ | `scripture_generic` | Scripture (Generic) | testament / book / verse | book | Any tradition not listed above |
21
+
22
+ **Config defaults:** Some scripture types include tradition-specific configuration defaults. Biblical and Torah types use Masoretic verse numbering. Quranic types use Hafs verse numbering and the Hijri calendar. Torah types use the Hebrew calendar. Vedic types use Vikram Samvat. Buddhist types use the Buddhist Era calendar.
23
+
24
+ ## Tradition Profiles and Config
25
+
26
+ Sacred projects use a top-level `tradition` key in `.manuscript/config.json`. That key points to one of the shipped profile directories under `templates/sacred/`:
27
+
28
+ - `catholic`
29
+ - `orthodox`
30
+ - `tewahedo`
31
+ - `protestant`
32
+ - `jewish`
33
+ - `islamic-hafs`
34
+ - `islamic-warsh`
35
+ - `pali`
36
+ - `tibetan`
37
+ - `sanskrit`
38
+
39
+ New projects also store sacred profile settings as top-level config keys, including `verse_numbering_system`, `calendar_system`, `translation_philosophy`, `canonical_alignment`, `annotation_traditions`, `doctrinal_framework`, `preserve_source_terms`, and `transliteration_style`. Older projects that still have a nested `sacred` object are accepted as legacy input by commands that read those values, but new projects use the top-level shape.
40
+
41
+ Tradition-aware commands load `templates/sacred/{tradition}/manifest.yaml` for book order, script direction, numbering formats, font stack, and approval-block guidance. Build commands use that manifest to set language/script metadata and warn when the selected tradition expects an approval block before publication.
42
+
43
+ ### Sacred Prose Types
44
+
45
+ | Work Type | Label | Hierarchy (Top / Mid / Atomic) | Command Unit | Use For |
46
+ |-----------|-------|-------------------------------|--------------|---------|
47
+ | `commentary` | Commentary / Exegesis | -- / section / annotation_block | section | Tafsir, Midrash, biblical commentary, philosophical exegesis |
48
+ | `devotional` | Devotional | -- / theme / entry | entry | Daily devotionals, prayer journals, spiritual meditations |
49
+ | `liturgical` | Liturgical Text | rite / section / rubric | section | Liturgies, prayer books, ritual texts, service orders |
50
+ | `sermon` | Sermon / Homily | -- / movement / beat | sermon | Individual sermons, homilies, khutbahs |
51
+ | `homiletic_collection` | Homiletic Collection | liturgical_year / -- / sermon | sermon | Sermon cycles, collected homilies organized by liturgical calendar |
52
+ | `religious_epic` | Religious Epic | book / canto / verse | canto | Paradise Lost, Mahabharata, Divine Comedy, Shahnameh |
53
+
54
+ ### Historical and Mythological Types
55
+
56
+ | Work Type | Label | Hierarchy (Top / Mid / Atomic) | Command Unit | Use For |
57
+ |-----------|-------|-------------------------------|--------------|---------|
58
+ | `historical_chronicle` | Historical Chronicle | era / chapter / event | chapter | Annals, dynastic histories, chronicles |
59
+ | `historical_account` | Historical Account | part / chapter / scene | chapter | Narrative histories, biographical accounts |
60
+ | `mythological_collection` | Mythological Collection | cycle / -- / tale | tale | Norse Eddas, Greek myth compilations, folklore anthologies |
61
+
62
+ ## Tradition-Native Vocabulary
63
+
64
+ When you create a project with `/scr:new-work` and select a sacred work type, Scriveno renames structural units throughout the entire system. This means every command you run uses the vocabulary of your tradition, not generic publishing terms.
65
+
66
+ Here is how vocabulary flows for each scripture type:
67
+
68
+ - **Biblical:** You discuss, plan, and draft **books** (command unit). Your text is organized into **testaments** at the top level and **verses** at the atomic level.
69
+ - **Quranic:** You discuss, plan, and draft **surahs**. The atomic unit is the **ayah**. There is no top-level grouping -- surahs stand alone.
70
+ - **Torah:** You discuss, plan, and draft **parashot** (singular: parashah). The top level is the **chumash** (the five books). The atomic unit is the **pasuk**.
71
+ - **Vedic:** You discuss, plan, and draft **mandalas**. The top level is the **veda**. The atomic unit is the **sukta** (hymn).
72
+ - **Buddhist:** You discuss, plan, and draft **suttas** (or sutras). The top level is the **pitaka** (basket). The mid level is the **nikaya** (collection).
73
+ - **Generic:** Uses the default testament / book / verse hierarchy for traditions not specifically configured.
74
+
75
+ This vocabulary carries through every command automatically. When you run `/scr:draft`, you are drafting a surah, a parashah, or a sutta -- not a "chapter." When you run `/scr:plan`, you are planning a mandala or a canto. The AI agent receives these tradition-native labels and adjusts its approach accordingly.
76
+
77
+ Non-scripture sacred types use vocabulary appropriate to their form: a `liturgical` text is organized into **rites** containing **sections** and **rubrics**. A `religious_epic` uses **books**, **cantos**, and **verses**. A `mythological_collection` uses **cycles** and **tales**.
78
+
79
+ ## Voice Registers
80
+
81
+ Sacred texts use voice registers instead of a single narrative voice. A register is a mode of sacred speech -- the difference between a prophet's urgent declarations and a sage's measured observations. Scriveno defines 10 registers, each with distinct characteristics. You set the register per unit in the plan file, and the drafter agent writes in that register.
82
+
83
+ Your STYLE-GUIDE.md has a "Sacred voice registers" section where you customize how YOUR writing handles each register. The register descriptions below are defaults -- your STYLE-GUIDE.md always takes precedence, because the goal is your voice in that register, not a generic version.
84
+
85
+ ### Prophetic-Oracular
86
+
87
+ Urgent, declarative, oracular. Short sentences, imperative mood, "Thus says the Lord" framing. Direct address to the audience. Present and future tense dominance. Repetition for emphasis ("Woe, woe, woe"). Exclamatory. No hedging. The prophet speaks with certainty because they speak on behalf of the divine.
88
+
89
+ **When to use:** Prophetic books, oracles, divine pronouncements, apocalyptic warnings. Any passage where a figure speaks with absolute authority on behalf of a higher power.
90
+
91
+ ### Wisdom-Didactic
92
+
93
+ Aphoristic, reflective, balanced. Parallelism -- antithetical, synonymous, synthetic. Comparative structure ("Better X than Y"). Observational tone. Third person often. Conditional constructions ("If you...then"). Measured cadence. The sage observes the world and distills truths.
94
+
95
+ **When to use:** Proverbs, wisdom literature, philosophical passages, didactic sections. When the text teaches through observation and comparison rather than narrative.
96
+
97
+ ### Legal-Prescriptive
98
+
99
+ Precise, conditional, imperative. Case-law structure ("If a man does X, then Y"). Categorical. Exhaustive enumeration. No ambiguity tolerated. Present tense. Second person direct address for commandments ("You shall / You shall not"). Every word carries binding weight.
100
+
101
+ **When to use:** Legal codes, commandments, halakhic rulings, fiqh, monastic rules, canonical law. Any passage that prescribes behavior with binding authority.
102
+
103
+ ### Liturgical-Devotional
104
+
105
+ Formal, rhythmic, responsive. Call-and-response patterns. Doxological language (praise, blessing, thanksgiving). Repetitive refrains. Elevated vocabulary. Present tense. Address to the divine or congregation. Musical awareness -- these words are meant to be spoken aloud or sung.
106
+
107
+ **When to use:** Prayers, blessings, liturgical services, doxologies, invocations. Any text designed for corporate worship or personal devotion where rhythm and elevation matter.
108
+
109
+ ### Narrative-Historical
110
+
111
+ Chronicle-like, temporal, factual. Sequential narration ("And it came to pass"). Genealogical asides. Geographic precision. Past tense. Third person. Minimal editorializing. Wayyiqtol-style consecutive narration rhythm. The narrator records what happened, not what should have happened.
112
+
113
+ **When to use:** Historical books, chronicles, hagiographies, narrative sections of scripture. The default register when none is specified -- most sacred texts contain significant narrative.
114
+
115
+ ### Apocalyptic-Visionary
116
+
117
+ Visionary, symbolic, cosmic. "I saw..." framing. Numbers as symbols (7, 12, 40). Animal imagery. Throne-room scenes. Cosmic battle. Dream logic. Urgency. Future tense and prophetic perfect. Interpreting angel as guide. Reality bends -- the visionary describes what lies beyond ordinary perception.
118
+
119
+ **When to use:** Apocalyptic literature (Revelation, Daniel), visionary accounts, mystical visions, eschatological passages. Any text where the writer describes transcendent reality through symbolic imagery.
120
+
121
+ ### Epistolary
122
+
123
+ Personal, didactic, pastoral. Greeting formula. "Dear brothers/sisters" address. Practical instruction. Theological argument. Exhortation. Closing benediction. Mix of personal warmth and doctrinal authority. The writer knows their audience and writes to their specific situation.
124
+
125
+ **When to use:** Letters, epistles, encyclicals, pastoral communications. Any sacred text structured as correspondence from an authority figure to a community.
126
+
127
+ ### Poetic-Hymnic
128
+
129
+ Musical, metaphorical, parallelism-heavy. Hebrew parallelism patterns (synonymous, antithetical, synthetic, climactic). Nature imagery. Emotional range (lament, praise, thanksgiving, royal, penitential). Selah markers. Acrostic potential. Chiastic structures. Address to God and self ("O my soul"). Raw emotion given artistic form.
130
+
131
+ **When to use:** Psalms, hymns, canticles, religious poetry, song lyrics for worship. Any passage where emotion is expressed through poetic form and musical structure.
132
+
133
+ ### Parabolic
134
+
135
+ Story-within-story, allegorical. "The kingdom of heaven is like..." framing. Concrete imagery from daily life (seeds, sheep, merchants, vineyards). Surprising twist that overturns expectations. Open-ended or with explicit moral. Accessible surface, deep meaning. The parable teaches through indirection -- the listener must do the interpretive work.
136
+
137
+ **When to use:** Parables, allegories, teaching stories, Zen koans, Sufi tales. Any embedded narrative designed to teach a spiritual truth through analogy.
138
+
139
+ ### Contemplative-Mystical
140
+
141
+ The didactic register adapted for systematic teaching. Instructional, systematic, expository. Topic-by-topic structure. Definition and explanation. Q&A format possible. Teacher-student dynamic. Building from simple to complex. Summary and application. Catechetical structure. The teacher organizes knowledge for transmission.
142
+
143
+ **When to use:** Catechisms, systematic theologies, doctrinal instruction, dharma talks. Any passage that teaches through organized, progressive exposition rather than story or poetry.
144
+
145
+ ## Sacred-Exclusive Commands
146
+
147
+ These 8 commands are only available when your work type belongs to the sacred group. They appear in the command list automatically when you create a sacred project and are hidden for all other work types.
148
+
149
+ ### `/scr:sacred:concordance`
150
+
151
+ Build or search a concordance of key terms, names, and phrases across your sacred text. Tracks every occurrence of significant terms to enable cross-referencing and intertextual study. Run with `--build` to generate a full concordance from your drafted text, or `--search <term>` to find all occurrences of a specific term.
152
+
153
+ **Requires:** At least one drafted unit.
154
+
155
+ ### `/scr:sacred:cross-reference`
156
+
157
+ Map connections between passages within your text or between your text and other sacred sources. Identifies parallel passages, quotations, allusions, and thematic echoes. Essential for commentary and exegetical work where intertextuality is central.
158
+
159
+ **Requires:** At least one drafted unit.
160
+
161
+ ### `/scr:sacred:genealogy`
162
+
163
+ Build and visualize genealogical trees and lineage relationships from your FIGURES.md file. For biblical genealogies, Quranic lineages, mythological family trees, or any sacred text where figures are connected by descent, marriage, or spiritual succession.
164
+
165
+ **Requires:** FIGURES.md with at least 2 figures.
166
+
167
+ ### `/scr:sacred:chronology`
168
+
169
+ Construct a timeline of events across your sacred text. Handles multiple calendar systems (Gregorian, Hijri, Hebrew, Vikram Samvat, Buddhist Era) and can cross-reference events with external historical timelines. Unlike the standard `/scr:timeline` command, this is designed for texts spanning centuries or millennia.
170
+
171
+ **No prerequisites** -- can be started at any point.
172
+
173
+ ### `/scr:sacred:annotation-layer`
174
+
175
+ Add scholarly annotations, footnotes, and commentary layers to your drafted text. Supports multiple annotation layers (textual, historical, theological, linguistic) that can be toggled independently in the exported output.
176
+
177
+ **Requires:** At least one drafted unit.
178
+
179
+ ### `/scr:sacred:verse-numbering`
180
+
181
+ Apply or adjust verse numbering systems to your drafted text. Supports tradition-specific systems (Masoretic for Hebrew Bible, Hafs for Quran, etc.) and can convert between systems. Ensures your verse references match the numbering expected by your tradition.
182
+
183
+ **Requires:** At least one drafted unit.
184
+
185
+ The top-level `/scr:sacred-verse-numbering` compatibility command is read-only: it shows the active tradition's numbering format and can render example citations. The nested `/scr:sacred:verse-numbering` command changes or verifies the project's numbering system.
186
+
187
+ ### `/scr:sacred:source-tracking`
188
+
189
+ Track and document the source traditions, manuscripts, and textual variants underlying your sacred text. For critical editions, translation projects, and any work that draws from multiple source texts.
190
+
191
+ **No prerequisites** -- can be started at any point.
192
+
193
+ ### `/scr:sacred:doctrinal-check`
194
+
195
+ Verify that your drafted text is consistent with the doctrines recorded in your DOCTRINES.md file. Flags any assertions, implications, or narrative choices that might contradict your established doctrinal framework.
196
+
197
+ **Requires:** At least one drafted unit and DOCTRINES.md.
198
+
199
+ ## Command Adaptations
200
+
201
+ When you are working on a sacred work type, selected review commands pick up tradition-appropriate labels in help and output. You still invoke the canonical file-backed command unless your runtime explicitly installs an alias.
202
+
203
+ | Standard Command | Sacred Label | Why |
204
+ |-----------------|---------------|-----|
205
+ | `/scr:sensitivity-review` | `interfaith-review` | Review for **interfaith** sensitivity, not general sensitivity |
206
+ | `/scr:editor-review` | `scholarly-review` | Sacred texts undergo **scholarly** review |
207
+ | `/scr:voice-check` | `register-check` | Checking **register** consistency, not character voice |
208
+ | `/scr:beta-reader` | `theological-review` | Review by a **theological** perspective, not a casual reader |
209
+
210
+ Sacred-specific workflows like chronology, doctrinal review, and verse numbering are exposed through the dedicated `/scr:sacred:*` command family instead of by relabeling hidden base commands.
211
+
212
+ ## Sacred Translation
213
+
214
+ Sacred translation is the most demanding form of translation work. Terms carry centuries of theological weight, registers must survive the crossing between languages, and readers have strong expectations about how canonical texts sound.
215
+
216
+ Scriveno's translation pipeline (accessed via `/scr:translate`) enters **sacred mode** when the work type is in the sacred group. Sacred mode adds several capabilities beyond standard translation:
217
+
218
+ ### Translation Philosophy
219
+
220
+ You choose your translation approach per project:
221
+
222
+ - **Formal equivalence** -- Word-for-word as much as possible. Preserves source language syntax. Footnotes idiomatic expressions. Best for academic audiences who want precision.
223
+ - **Dynamic equivalence** -- Thought-for-thought. Natural target language expression. Preserves meaning, not form. Best for general audiences who want clarity.
224
+ - **Paraphrase** -- Free rendering for modern accessibility. Simplifies complex theology. Conversational tone. Best for new readers.
225
+ - **Interlinear** -- Source word, transliteration, gloss, and target word for each element. A scholarly tool, not readable prose.
226
+
227
+ ### Canonical Alignment
228
+
229
+ When set (e.g., KJV, NRSV, Sahih International), the translator matches the vocabulary and phrasing of the specified canonical translation. Readers familiar with "lovingkindness" (KJV) or "steadfast love" (NRSV) will encounter the language they expect.
230
+
231
+ ### Preserved Source Terms
232
+
233
+ Certain terms are never translated. They appear in the source language (with transliteration if non-Latin script) and are footnoted on first occurrence. Examples: YHWH, hesed, shalom, dharma, sutra, logos, ruach, taqwa.
234
+
235
+ ### Liturgical Preservation
236
+
237
+ When enabled, the translator preserves the rhythmic and musical qualities of liturgical passages -- maintaining parallelism, meter, cadence, antiphonal structures, and chiastic patterns even at the cost of literal accuracy. These texts are meant to be read aloud or chanted.
238
+
239
+ ### Register-Aware Translation
240
+
241
+ Each of the 10 voice registers has established conventions in major translation traditions. The translator preserves the specific register (prophetic, wisdom, legal, liturgical, etc.) in the target language, so a prophetic oracle sounds prophetic in French or Arabic, not merely translated.
242
+
243
+ For full translation pipeline details including glossary management, translation memory, and multi-language export, see the Translation Guide when available, or use `/scr:translate --help`.
244
+
245
+ ## Tradition-Aware Front and Back Matter
246
+
247
+ Sacred texts need front and back matter that respects their tradition. The standard `/scr:front-matter` and `/scr:back-matter` commands enter **sacred behavior mode** when the work type is in the sacred group.
248
+
249
+ ### Front Matter
250
+
251
+ Sacred front matter can include:
252
+
253
+ - **Invocations** -- Bismillah for Quranic texts, "In the Name of the Father" for Christian liturgical texts, Om for Vedic texts
254
+ - **Dedication** -- Traditional dedications appropriate to the tradition
255
+ - **Preface** -- Context for the work, including textual tradition, source manuscripts, and translation philosophy
256
+ - **Introduction** -- Historical and theological context
257
+ - **Guide to use** -- How to read and study the text, including any special notation or apparatus
258
+ - **List of abbreviations** -- Sources, manuscripts, and reference works cited
259
+ - **Maps and timelines** -- Geographic and chronological context
260
+
261
+ ### Back Matter
262
+
263
+ Sacred back matter can include:
264
+
265
+ - **Glossary** -- Key terms with definitions in the tradition's vocabulary
266
+ - **Concordance** -- Cross-referenced index of terms (generated by `/scr:sacred:concordance`)
267
+ - **Bibliography** -- Source texts, commentaries, and reference works
268
+ - **Scriptural index** -- References to other sacred texts cited or alluded to
269
+ - **Subject index** -- Topical index
270
+ - **Colophon** -- Scribal tradition, publication notes
271
+ - **Benediction** -- Closing blessing or prayer appropriate to the tradition
272
+ - **Appendices** -- Textual variants, manuscript notes, supplementary material
273
+
274
+ ## Getting Started with Sacred Writing
275
+
276
+ Here is a quick walkthrough for starting a sacred writing project:
277
+
278
+ 1. **Create your project.** Run `/scr:new-work` and select a sacred work type. For example, choose `commentary` for a Quranic tafsir, `scripture_biblical` for a new translation, or `mythological_collection` for a retelling of Norse myths.
279
+
280
+ The generated config stores `tradition` and the sacred profile fields at the top level. If you already know the tradition profile you want, choose one of the shipped slugs listed above.
281
+
282
+ 2. **Set up your voice.** Run `/scr:profile-writer` to generate your STYLE-GUIDE.md. Pay special attention to the "Sacred voice registers" section at the bottom -- this is where you customize how YOUR writing voice handles each register. A prophetic passage in your voice should sound different from a prophetic passage in someone else's.
283
+
284
+ 3. **Explore and plan.** Use `/scr:discuss` (it adapts automatically to your sacred work type) to shape your first unit. Discuss the theological themes, source traditions, and structural approach you want to take.
285
+
286
+ 4. **Draft.** Run `/scr:draft`. In sacred projects, Scriveno frames the work in the right unit terminology (surah, parashah, sutta, and so on) while the drafter writes in the register specified in your plan file, using your voice as defined in STYLE-GUIDE.md.
287
+
288
+ 5. **Review.** Use `/scr:editor-review` for expert review, `/scr:sacred:doctrinal-check` to verify consistency with your DOCTRINES.md, and `/scr:voice-check` for sacred register fidelity.
289
+
290
+ 6. **Build your apparatus.** As you draft, use `/scr:sacred:concordance` to build cross-references, `/scr:sacred:chronology` for timelines, `/scr:sacred:genealogy` for lineage trees, and `/scr:sacred:annotation-layer` for scholarly footnotes.
291
+
292
+ ## See Also
293
+
294
+ - [Getting Started](getting-started.md) -- Install Scriveno and create your first project
295
+ - [Command Reference](command-reference.md) -- Full reference for all 112 commands, including the [Sacred Exclusive](command-reference.md#sacred-exclusive) section
296
+ - [README](../README.md) -- Project overview and feature list
@@ -0,0 +1,129 @@
1
+ # Shipped Assets
2
+
3
+ Scriveno's launch surface should point to what is actually bundled in this repo today. This document is the canonical inventory for shipped export templates, drafter-quality assets, and other trust-critical launch files.
4
+
5
+ ## Drafter Quality Assets Shipped Today
6
+
7
+ These files ship in `templates/` and provide layered rule scaffolding loaded by the drafter, voice-checker, and originality-check after `STYLE-GUIDE.md`. See [docs/drafter-quality.md](drafter-quality.md) for the full system.
8
+
9
+ - `templates/WRITING-RULES.md` (universal human-first and AI-tell rulebook; loaded after `STYLE-GUIDE.md`)
10
+
11
+ Per-work-type pitfall packs in `templates/pitfalls/`:
12
+
13
+ - `pitfalls/novel.md` (prose: filter words, POV breaches, dialogue traps, genre stock phrases)
14
+ - `pitfalls/memoir.md` (prose: retrospective voice traps, sentimentality, self-presentation)
15
+ - `pitfalls/screenplay.md` (script: unfilmable description, action-line bloat, on-the-nose dialogue)
16
+ - `pitfalls/runbook.md` (technical: imperatives, missing preconditions, verification and rollback)
17
+ - `pitfalls/research_paper.md` (academic: hedge stacks, citation hygiene, methodology traps)
18
+ - `pitfalls/poetry_collection.md` (poetry: image cliches, diction traps, sentimentality, form pitfalls)
19
+ - `pitfalls/comic.md` (visual: script-versus-art boundary, panel rhythm, caption voice)
20
+ - `pitfalls/commentary.md` (sacred: register drift, anachronism, source-handling, doctrinal precision)
21
+
22
+ Conflict resolution is top-down: `STYLE-GUIDE.md` beats `WRITING-RULES.md` beats the pitfall pack. The writer's voice is sovereign; the rule layers are scaffolding for human-first restraint, variance over substitution, factual integrity, sourced stance, register awareness, artifact cleanup, and type-specific polish.
23
+
24
+ `WRITING-RULES.md` also ships the "Diagnostic discipline (honest read)" section that governs the evaluative side of the rules. The diagnostic surface is `/scr:voice-check`, `/scr:originality-check`, and the `voice-checker` agent: they report an authenticity band then a 0-100 score then flagged spans, match scrutiny to evidence density, credit strong false positives as score-raising human markers, and never rewrite. Diagnosis and rewriting (`/scr:line-edit`, `/scr:polish`, re-draft) stay separate steps with the writer between them, which is what stops a score-then-rewrite gaming loop.
25
+
26
+ A contributor adding `templates/pitfalls/<work_type>.md` is automatically picked up by `lib/architectural-profiles.js#listPitfallPacks` with no edits to library code or `CONSTRAINTS.json`.
27
+
28
+ ## Context Integrity Assets Shipped Since 2.0.0
29
+
30
+ These files ship in `templates/` and `docs/` and provide the trust trio for session-aware AI work:
31
+
32
+ - `templates/CONTEXT.md` -- one-page session bootstrap scaffold copied into every project. Auto-regenerated on `/scr:save`, `/scr:pause-work`, `/scr:resume-work`. Read first by `/scr:next` and `/scr:resume-work` for orientation, with stale-detection + STATE.md fallback.
33
+ - `templates/RECORD.md` -- compact established-content store copied into every project. It tracks what the work has established, including open threads, promises, payoffs, continuity facts, movement, and next-unit obligations. It is deliberately neutral so sacred, academic, technical, poetry, script, visual, and prose projects can all use the same filename.
34
+ - `docs/context-protocol.md` -- canonical contract for the CONTEXT.md preference rule. The 12 high-impact commands that opt into the protocol reference this doc.
35
+ - `docs/history-protocol.md` -- canonical line-format spec for `.manuscript/HISTORY.log`, the append-only audit trail. Pipe-delimited, UTC ISO timestamps, committed to git.
36
+
37
+ `STATE.md` (workflow data) + `RECORD.md` (established content) + `CONTEXT.md` (narrative bootstrap) + `HISTORY.log` (audit trail) together form the integrity layer. `/scr:scan` is the trust check that interrogates whether the recorded state still matches disk.
38
+
39
+ ## Runtime Sync Asset Shipped Today
40
+
41
+ - `commands/scr/sync.md` -- local runtime-surface synchronization command. It compares and refreshes installed Scriveno commands, Codex skills, command mirrors, and agent prompts from the current source tree by delegating to `bin/install.js`.
42
+
43
+ ## Export Templates Shipped Today
44
+
45
+ These export templates are currently bundled in `data/export-templates/`:
46
+
47
+ - `scriveno-book.typst` -- default book interior and print-ready PDF template
48
+ - `scriveno-stageplay.typst` -- stage play interior template
49
+ - `scriveno-picturebook.typst` -- picture-book interior template
50
+ - `scriveno-chapbook.typst` -- chapbook and poetry-collection interior template
51
+ - `scriveno-epub.css` -- standard EPUB styling and KDP-compatible ebook CSS
52
+ - `scriveno-fixed-layout-epub.css` -- fixed-layout EPUB stylesheet
53
+ - `scriveno-fixed-layout.opf` -- fixed-layout EPUB OPF stub
54
+ - `scriveno-academic.latex` -- generic academic/thesis LaTeX template
55
+ - `scriveno-ieee.latex` -- IEEE wrapper template
56
+ - `scriveno-acm.latex` -- ACM wrapper template
57
+ - `scriveno-lncs.latex` -- LNCS wrapper template
58
+ - `scriveno-elsevier.latex` -- Elsevier wrapper template
59
+ - `scriveno-apa7.latex` -- APA7 wrapper template
60
+ - `scriveno-smashwords.docx` -- Smashwords reference DOCX
61
+ - `scriveno-smashwords-styles.md` -- Smashwords style guide companion
62
+ - `scriveno-poetry-submission.docx` -- poetry-submission reference DOCX
63
+ - `scriveno-poetry-submission-styles.md` -- poetry-submission style guide companion
64
+
65
+ ## Export Template Behaviors
66
+
67
+ - Manuscript DOCX export currently relies on Pandoc's default DOCX styling unless the user supplies a custom Pandoc reference document.
68
+ - Formatted DOCX export currently relies on Pandoc's default DOCX output unless the user supplies a custom Pandoc reference document for styled review copies.
69
+ - `scriveno-manuscript.docx` is not shipped today.
70
+ - `scriveno-formatted.docx` is not shipped today.
71
+ - `scriveno-kdp-cover.typst` is not shipped today.
72
+ - `scriveno-ingram-cover.typst` is not shipped today.
73
+ - Cover deliverables are manuscript build assets, not bundled export templates:
74
+ - Ebook front cover: `.manuscript/build/ebook-cover.jpg` (or `.png`)
75
+ - Paperback full wrap: `.manuscript/build/paperback-cover.pdf`
76
+ - Hardcover case wrap: `.manuscript/build/hardcover-cover.pdf`
77
+ - Those cover files are designer-provided or externally produced assets that Scriveno's build/export commands reference; exact paperback and hardcover wrap geometry still comes from the active platform cover template generator.
78
+
79
+ ## Platform Profiles Shipped Today
80
+
81
+ These platform manifests are currently bundled in `templates/platforms/` and loaded by build commands:
82
+
83
+ - `kdp`
84
+ - `ingram`
85
+ - `apple`
86
+ - `bn`
87
+ - `d2d`
88
+ - `kobo`
89
+ - `google`
90
+ - `smashwords`
91
+
92
+ `/scr:build-ebook` validates the selected platform, loads `templates/platforms/{platform}/manifest.yaml`, checks `formats_accepted` for EPUB support, and carries the manifest's `label` and `epub_variant` into output metadata. `/scr:build-print` uses print and academic platform metadata for trim-size, page-count, and template routing.
93
+
94
+ ## Sacred Tradition Profiles Shipped Today
95
+
96
+ These tradition manifests are currently bundled in `templates/sacred/` and accepted as top-level `tradition` values in `.manuscript/config.json`:
97
+
98
+ - `catholic`
99
+ - `orthodox`
100
+ - `tewahedo`
101
+ - `protestant`
102
+ - `jewish`
103
+ - `islamic-hafs`
104
+ - `islamic-warsh`
105
+ - `pali`
106
+ - `tibetan`
107
+ - `sanskrit`
108
+
109
+ Sacred commands read top-level sacred profile keys in new projects and preserve legacy fallback reads for older projects that still have a nested `sacred` object.
110
+
111
+ ## Trust-Critical Launch Files
112
+
113
+ - `README.md` -- primary launch narrative and status claims
114
+ - `CHANGELOG.md` -- package-level release history
115
+ - `docs/release-notes.md` -- public-facing release summary
116
+ - `docs/proof-artifacts.md` -- canonical proof hub for sample-flow and voice-preservation evidence
117
+ - `docs/runtime-support.md` -- canonical runtime matrix, Node baseline, and support-confidence framing
118
+ - `docs/command-reference.md` -- canonical command surface reference
119
+ - `docs/configuration.md` -- canonical project config and package metadata reference
120
+ - `data/proof/watchmaker-flow/README.md` -- canonical sample-flow proof bundle rooted in shipped demo files
121
+ - `data/proof/voice-dna/README.md` -- canonical Voice DNA proof bundle
122
+ - `commands/scr/export.md` -- source of truth for export command behavior
123
+ - `docs/publishing.md` -- user-facing explanation of export formats and publishing packages
124
+ - `docs/contributing.md` -- contributor-facing guidance for extending export support
125
+ - `docs/drafter-quality.md`: canonical reference for the drafter's three rule layers and the `draft` config block
126
+ - `templates/WRITING-RULES.md`: canonical universal AI-tell rulebook loaded by drafter, voice-checker, and originality-check
127
+ - `templates/pitfalls/<work_type>.md`: per-work-type pitfall packs that refine `WRITING-RULES.md` for a given work type
128
+ - `AGENTS.md` -- project instructions that shape planning and implementation claims
129
+ - `CLAUDE.md` -- mirrored project instructions and product-plan context
@@ -0,0 +1,156 @@
1
+ # Testing
2
+
3
+ Scriveno uses Node’s built-in test runner to lock the shipped command, docs, installer, and package surfaces against regression.
4
+
5
+ ## Test runner
6
+
7
+ The root `package.json` defines:
8
+
9
+ ```json
10
+ "scripts": {
11
+ "test": "node --test test/*.test.js",
12
+ "pack:check": "npm pack --dry-run",
13
+ "release:check": "npm test && npm run pack:check",
14
+ "prepublishOnly": "npm run release:check"
15
+ }
16
+ ```
17
+
18
+ That means:
19
+
20
+ - `npm test` runs the whole test suite
21
+ - `npm run pack:check` verifies the package contents that would ship
22
+ - `npm run release:check` runs both test and package checks
23
+ - publishing is guarded by `release:check` through `prepublishOnly`
24
+
25
+ ## Run the suite
26
+
27
+ Full run:
28
+
29
+ ```bash
30
+ npm test
31
+ ```
32
+
33
+ Direct Node invocation:
34
+
35
+ ```bash
36
+ node --test test/*.test.js
37
+ ```
38
+
39
+ Target one or two files while iterating:
40
+
41
+ ```bash
42
+ node --test test/package.test.js test/constraints.test.js
43
+ ```
44
+
45
+ ## What is covered
46
+
47
+ The `test/` directory currently includes coverage for:
48
+
49
+ - package metadata and npm packaging behavior
50
+ - command inventory and constraints integrity
51
+ - installer behavior and runtime-target setup
52
+ - demo and baseline product surfaces
53
+ - milestone-specific trust, publishing, translation, illustration, and collaboration regressions
54
+
55
+ Representative files:
56
+
57
+ - `test/package.test.js`
58
+ - `test/constraints.test.js`
59
+ - `test/installer.test.js`
60
+ - `test/commands.test.js`
61
+ - `test/phase13-launch-surface-integrity.test.js`
62
+ - `test/phase14-runtime-credibility.test.js`
63
+ - `test/phase18-technical-writing-domain-modeling.test.js`
64
+ - `test/phase19-verification-trust-surface-updates.test.js`
65
+
66
+ ## High-signal test categories
67
+
68
+ ### Package and release safety
69
+
70
+ Use these when changing package metadata, release docs, or shipped-file expectations:
71
+
72
+ - `test/package.test.js`
73
+ - `npm run release:check`
74
+
75
+ These catch drift around Node baseline, packed files, and release-facing package claims.
76
+
77
+ ### Constraints and command inventory
78
+
79
+ Use these when changing command registration, work-type counts, or adaptive terminology:
80
+
81
+ - `test/constraints.test.js`
82
+ - `test/commands.test.js`
83
+
84
+ ### Installer and runtime support
85
+
86
+ Use these when touching `bin/install.js`, runtime docs, or installer target messaging:
87
+
88
+ - `test/installer.test.js`
89
+ - `test/phase14-runtime-credibility.test.js`
90
+ - `test/phase16-trust-regression.test.js`
91
+
92
+ ### Documentation and trust surfaces
93
+
94
+ Use these when changing README, docs, shipped-assets claims, or milestone trust wording:
95
+
96
+ - `test/phase13-launch-surface-integrity.test.js`
97
+ - `test/phase15-proof-artifacts-positioning.test.js`
98
+ - `test/phase19-verification-trust-surface-updates.test.js`
99
+ - `test/repository-policy.test.js`
100
+
101
+ ### Feature-family regression tests
102
+
103
+ Use these when changing milestone-specific capabilities:
104
+
105
+ - `test/phase5-export-publishing.test.js`
106
+ - `test/phase6-illustration.test.js`
107
+ - `test/phase7-translation-localization.test.js`
108
+ - `test/phase8-collaboration-platform-sacred.test.js`
109
+ - `test/phase18-technical-writing-domain-modeling.test.js`
110
+
111
+ ## When to add tests
112
+
113
+ Add or extend tests when a change affects:
114
+
115
+ - visible command counts or work-type counts
116
+ - docs that make trust-sensitive claims
117
+ - installer targets or setup instructions
118
+ - package contents
119
+ - adaptation logic in `data/CONSTRAINTS.json`
120
+ - new milestone surfaces that should stay locked after shipping
121
+
122
+ If a user-facing claim can silently drift, it probably deserves a test.
123
+
124
+ ## Package checks outside the test runner
125
+
126
+ Some important release checks are shell commands rather than Node tests:
127
+
128
+ ```bash
129
+ npm pack --dry-run
130
+ npm publish --dry-run
131
+ ```
132
+
133
+ For the standard release gate, prefer:
134
+
135
+ ```bash
136
+ npm run release:check
137
+ ```
138
+
139
+ Use those for release prep so you can inspect what would ship without mutating the registry.
140
+
141
+ ## Practical workflow
142
+
143
+ For most changes:
144
+
145
+ 1. run the targeted test files first
146
+ 2. make the fix
147
+ 3. rerun the targeted files
148
+ 4. run `npm test`
149
+ 5. if packaging or release docs changed, run `npm run release:check`
150
+
151
+ ## Related docs
152
+
153
+ - [Development](development.md)
154
+ - [Configuration](configuration.md)
155
+ - [Contributing](contributing.md)
156
+ - [Release Notes](release-notes.md)