← all documents · raw markdown · 4 KB

The Quiet Lattice: Editorial And Reader Update

Status: partial. Local manuscript formatting and browser text handling changed.

No new voice provider enabled, no audio generated, no service restarted.

Manuscript

Owner confirmed Book Two is KAIVERSE-II-THE-QUIET-LATTICE.md.

The file contains 17 chapters and 158,373 whitespace-delimited words including

front matter. The structural pass inspected all chapters mechanically, split

55 dense paragraphs at existing sentence boundaries outside tracked quotation

and emphasis spans, and normalized excess blank lines. It did not change any

word, punctuation, title, chapter order, scene break or fictional event.

Exact original: backups/book-editorial/quiet-lattice-before-2026-09-10.md.

Formatter: [internal module]; its write mode refuses to

overwrite the baseline. Normalized-whitespace equality and identical chapter

headings are asserted. A second dry run proposes zero changes.

This is NOT a completed 158,000-word grammar/copyediting review. Some opening

and later passages were read; every sentence has not been editorially reviewed.

Long individual sentences, ambiguous grammar and intentional narrative fragments

remain for chapter-by-chapter work. No automatic grammar substitutions were made.

Book One (KAIVERSE.md) was not edited by this task.

Reader

oracle-core.js now scopes fiction-specific text preparation to KAIVERSE books,

unless another surface explicitly overrides the voice. It retains paragraph

boundaries, ellipses, dashes, colons, filenames and equation operators; removes

Markdown presentation markers and legacy break tags; and extracts DOM block

boundaries without appending invented periods to nested elements.

Book chunking prefers paragraph/sentence boundaries and preserves all text.

Documentary/Codex cleanup and the existing provider selection remain unchanged.

Old book audio chunk/time offsets are reset to the saved page's beginning because

the chunk boundaries changed. Page/fingerprint bookmarks remain; repagination

can still require finding the old passage manually. UI pins: core 12.10.1031,

service-worker shell v46. Browser refresh is required to load changed JavaScript.

Voice Block

The existing [internal endpoint] route tries Kokoro before the selected narrator.

This task did not alter that route. An attempted expressive Orpheus route was

rejected by safety review: prior permission covered Groq use for Leo calls,

not sending book manuscripts to Groq. The owner was asked for permission to

send only played passages from both books to the paid service. No part of that

provider patch is present, and no manuscript text was sent to a TTS provider.

Official reference: https://console.groq.com/docs/text-to-speech/orpheus

Orpheus supports expressive directions, but has a 200-character request limit

and WAV output. Current book chunks target the unchanged existing engine and

must be adapted if Orpheus is authorized. A fixed engine-specific cache key,

WAV MIME handling, bounded prefetch, cancellation and honest missing-provider

errors must be tested before connecting it. Do not reuse the Kokoro spelling

workaround copied -> copyd for Orpheus. Keep editorial performance cues out

of the printed story; do not invent laughter or gasps based on keywords alone.

Verification

node [internal module] --browser: seven checks

cover punctuation/glyph preservation, page announcements, scope, complete

chunk coverage, offset migration, original-vs-edited manuscript equality and

real-browser DOM extraction. Tests include chunk coverage across all 17 chapters.

The first browser attempt was blocked by sandbox spawn EPERM; the approved

offline retry passed with GPU disabled. No live audio quality test, provider

request, GPU build, full app deployment or process restart was performed.

Next: obtain book-specific provider permission; finish chapter-by-chapter grammar

review; wire and test the expressive route without silently switching voices;

audition a short owner-approved passage before any large synthesis run.