Pantheon
She built a life so completely it became real.
Pantheon is a novel I write under the Lacunae name: a conspiracy thriller with a romance at the centre of it, set in Hong Kong, close third and past tense across 63 chapters. It is finished, edited and out on 1 November 2026 as a Kindle ebook, included in Kindle Unlimited from the same day. Seven chapters are free to read online right now, and it is the first book of three.
The website has one job: read the first seven chapters free, then decide. There is a spoiler-free page with the premise and the two leads, a reader built for the sample, and a press kit for reviewers.
What a stranger can read is decided by one number in one file. Chapters past it are never copied into the site, so they are missing from the deploy rather than hidden in the browser.
Vivienne Ho is a socialite and a financier in Hong Kong, principal of a firm that buys businesses other people would strip and keeps them alive. She has spent five years building that life so completely it became real to her. Damien Tang wants to marry her, and his family runs due diligence on the woman he has chosen in the same season an old institution reopens a file on her.
Finished: all 63 chapters, 164,257 words, close third, past tense, rotating point of view, out 1 November 2026. The editing ran as ordered levels, structure before line before copy before proofread, on the principle that polishing a sentence you are about to cut is wasted work. That word count is not asserted anywhere: it is the sum of what the sixty-three chapters each declare, and the linter fails on any chapter that disagrees with the count it just took.
Pantheon is the first of three. Circe and Damien carry all of them and each book gets its own antagonist. The second is Pantheon: The Whole House, its beat sheet complete at 56 chapters and its first two chapters drafted. Book one ends on its own terms; I did not hang a cliffhanger on it to sell the next one.
Chapters 1 to 7 are free in the web reader, with adjustable type and a serif toggle. That is the end of the third sequence, not an arbitrary stopping point.
The ebook publishes on 1 November 2026, on Kindle, and it is in Kindle Unlimited from the same day. A new book with no reviews asks a stranger to pay for a name they have never heard; a borrow asks them for nothing, and borrows still count toward the rank that decides whether anybody else ever sees the book. Kindle Unlimited pays by pages read, so a 164,000-word novel earns roughly what a sale does instead of being a pricing problem. Exclusivity runs in 90-day terms, so it is a decision I can take back. The pre-orders are open. The website is a free sample and is never required reading.
The files uploaded when the pre-order opened carried the pre-read-through text and a cover two generations retired. Every destination was rebuilt from the finished manuscript and uploaded again, so what arrives on 1 November is the edited book rather than whichever draft happened to be current in August. A pre-order is a promise made months before anyone opens the file.
The premise, the cast, the plot and the 63-chapter route were written down before any drafting, and so were the lines the scenes turn on.
I draft each chapter myself, a model drafts alongside me working from the beat sheet, the character sheets and the style guide, and I write the final one from all of them and edit it line by line. A model is never given a blank page.
Every chapter passes the same sequence before I call it finished: a read for sense before any tool runs, the dialogue read aloud as a script with the narration stripped, a continuity ledger, the linters. Chapters are revised until they hold. Nothing ships as a model wrote it.
Before calling the book done I ran four simulated first-time readers through all 63 chapters in order. No outline, no character sheets, filenames numbered so the titles could not give anything away, and each one had to write up a chapter before it was allowed to open the next. What I wanted was the prediction ledger: what each reader believed and when, checked against the chapter where the book meant to tell them. Twelve of twelve reveals landed on schedule. Two planted details paid off to an empty room, which is the kind of thing I cannot see from inside the book.
The last simulated read before release was wider. Nine more, none of which had seen the canon, took seven chapters each, blind, and a tenth pass read the whole book against what they reported. It found one real hole in the ending that the earlier readers and every linter had missed, and it closed in nine words. It also found something I could not have argued with: the narrating voices are harder to tell apart than the character sheets say they are. The sheets specify the signatures, the prose delivers them, and readers still could not hear them. That one is structural, and it is still open. None of this stands in for people: the book still goes to advance readers before anybody can buy it.
The character portraits were made with ChatGPT image generation from the character descriptions I had already written, then finished by hand, and so was the author portrait inside the book file. Each one carries an identity lock — face, age, ancestry, build, signature clothing, lighting — so the prompts reference my own sheets instead of reinventing a face. Unlike the text, that art is generated rather than assisted, and I say so separately because they are two different questions. The current cover is not generated: it is a licensed stock photograph under type, standing in while a commissioned cover and illustrations are underway.
The site does one thing: it lets you read the first seven chapters free, then decide. A spoiler-free novel page with the premise, the two leads and where to buy, a reader built for the sample, and a press kit for reviewers. Nothing on it runs ahead of those seven chapters.
Adjustable type size and a serif toggle, both remembered on your device. Finishing a chapter marks it as your furthest and offers the next one. No account, no email, no analytics, and your progress never leaves your browser.
Five static HTML pages, plain CSS and classic scripts. No framework, no bundler, no dependencies, no lockfile. One Python script writes the image derivatives and the sample chapters; everything else is hand-written, and every behaviour is client-side.
The screens were designed on a dark navy theme and ship on a different one, carbon and brass and proof red. The second is an override layer rather than a rewrite: delete one link tag from five pages and the site is the first palette again, exactly.
Every text node was walked against its real composited background rather than eyeballed. Seven pairings failed AA and are fixed. Six of them had been failing on the original palette and had simply never been checked.
A single field, publishedThrough, decides what a stranger can read. It cuts the served chapter text and every sentence of site copy that names a chapter count. Raising that number is the only thing that publishes a chapter.
Chapters past the sample are never copied into the site folder, so they are missing from the deploy rather than filtered in the browser. Manuscript frontmatter is stripped at build time for the same reason: a field that names something the book reveals later cannot be hidden at read time, because hiding it still ships it.
The asset build reads the directory, not its own list. Removing the last link to an image does not remove the image, and it stays live at its address for anyone who has it. So anything on disk that the build did not declare is a failure rather than a leftover.
Thirty-nine scripts. A prose lint per chapter, a cross-chapter voice-drift report, a citation checker that re-reads every quotation canon claims, a POV brief that answers what this head is allowed to know, and a pass that strips the narration so the dialogue can be read as a script.
223 cases, all passing, each one a bug the tools once missed. Every tool here was built reactively, one fault at a time, so the fixture file is the record of what they used to let through.
About 90,600 words and 264 numbered lessons, sorted into nine families of mistake. Adding to it is part of fixing anything, otherwise the fix applies to one chapter and nothing else.