Will ChenWill Chen
← Writingsystem design

The prose register

Five drafts in a day, all different, none better. The prose was not the problem. The loop that produced it had nothing that improved.

Will ChenWill Chen7 min

Motivation

If you have tried to write something long with a model, you know the loop. You read the draft, you can tell it is wrong, you say what is wrong, and back comes a new draft that is different and still wrong. Do this five times and you have five drafts, all competent, none better than the first, and no way to say which one you are closer to.

I did that with one essay over two days, six versions in total, and then stopped writing the essay and looked at the loop instead, because the loop was clearly the thing that was broken.

The diagnosis

The diagnosis that unlocked it was not about prose. It was about algorithms, which is how I judge this sort of thing anyway.

What I wrote at the time is that the key thing with gradient ascent and hill climbing is that you are getting closer and closer, and that this is how I naturally judge an algorithm: is there something getting closer and closer, is there some stability in between, is there something we fall back to, is there a guarantee of monotonicity somewhere.

Both of those are methods for finding the highest point in a landscape you cannot see all of. You stand somewhere, you look at the ground immediately around you, you step upward, and you repeat. What makes them work is not cleverness about where to step. It is that you never step down, so however long you run them, you are never worse off than when you started.

Hold those four against what was actually happening. Nothing was getting closer, because each round produced a fresh draft rather than a modified one. Nothing was stable in between, because the parts I liked in version three were gone in version four. There was nothing to fall back to, because there was no record of which version had been best at what. And there was certainly no monotone quantity, no number that only went up.

A process with none of those four properties is not climbing anything. Each round starts from the same place the last one did, looks at the same landscape, and picks a point at random. That is a lottery with extra steps, and the frustration I felt on the fifth draft was the correct response to having run one five times.

The reframe that follows is the useful part. The problem was never that any given draft was bad. What I said about it then is that I did not want to say the prose was bad, that the source code was bad, meaning the process that generated the thing. If you fix the output you get one better output. If you fix the generator you get every output after it.

The convergence protocol

Three changes make the loop monotone, and none of them are about writing.

Stop rewriting the whole thing. A verdict on a draft should never produce a new draft of the whole draft. This is the single largest change and it is the one that makes the others possible, because a whole-essay rewrite re-rolls the sections that were already right. Every round after the first is then gambling with material you have already won.

Lock what is settled, and count the locks. When a section is right, it freezes, and later rounds are forbidden from touching it. The number of frozen sections is the monotone quantity that was missing. It only goes up. That is a weak guarantee and it turns out to be enough, because it converts an unbounded search into a bounded one: every round either adds a lock or does not, and the ones that do not are visible immediately.

Diverge per section, not per essay. Generating five candidates for one section is a choice a person can actually make, because the candidates differ in ways you can hold in your head at once. Generating five whole essays is a choice nobody can make, which is why the loop was stalling: I was being asked to compare objects too large to compare.

Those three are written down in the harness that governs my essays, along with the reason, which is the part I had not been able to state before:

The convergence protocol (how drafts get made — do not violate)

Root cause: every generative rewrite re-samples from the default AI-prose
prior, so whole-document passes silently re-roll previously-converged
sentences. Therefore:

1. Macrostate first. Nail the spine before prose. Draft nothing until the
   spine is decided.
2. Section-locked convergence, never whole-essay rewrites. Once a section is
   converged it is FROZEN. Only single-sentence surgical edits applied as
   exact string replacements touching nothing else.
3. Diverge phrasings per section; I converge. Never diverge on a locked
   section.
4. Deadline beats convergence. When it is time to ship, ship the current
   best and do not open new divergence.
5. Candidate-lists are not commissions.

Rule four is the one that keeps the other four honest. A protocol that only ever converges is a protocol with no exit, and the exit has to be a decision rather than a state the process reaches on its own.

Underneath all three is an ordering that I had been violating without noticing. The most authoritative thing is the core thesis. The conceptual flow derives from that. The presentation of the flow derives from the flow. Only then do you get down to paragraphs, sentences, and word choice. Fixing a sentence when the conceptual flow above it might be wrong is wasted work, and most of the frustration in those two days came from sanding at the bottom of a stack whose top was still moving.

Deriving the rules

Alongside the mechanism there is a body of rules. They are numbered, the file keeps growing, and each one has the same three parts: the pattern that is banned, my own reaction to a real instance of it with the date attached, and a sentence showing what a person doing the same job would have written instead.

They accumulated by classification. A draft gets rejected, and rather than fixing the instance, the failure gets named as a class and written down with the offending line preserved. Two consecutive rejections from those two days became two adjacent rules, and reading them next to each other is the most instructive thing in the whole file.

The verdict file that essay kept records each version with the reaction that killed it, and two of those reactions became two adjacent rules:

2026-07-17  v1  treatise      "genuinely not good -- it needs to be useful,
                               direct, less impersonal"
2026-07-18  v2  how-to        content good, prose must be reworked
2026-07-18  v3  register pass "the prose really sucks ass, and it reeks of
                               bloat... no punchiness, no variety...
                               nothing falsifiable"              -> F17
2026-07-18  v4  compressed    "shitty imperative voice throughout...
                               everything just announces it, no
                               derivation... it's all trash now"  -> F18
2026-07-18  v5  fresh         superseded by the rubric restart
2026-07-18  v6  rubric        two-idea hierarchy

Read v3 and v4 together. The third said the prose was bloated, with no punchiness and nothing falsifiable. The rewrite that answered it produced the opposite failure, an imperative voice throughout with everything announced and no derivation.

The mechanism there is worth being exact about, because it is the whole argument for locking sections. A verdict like "bloated" is a property of the entire surface, not of any one sentence. Answer it with a whole-essay rewrite and you are asking for every sentence to be optimised against one constraint at once, and a surface optimised for a single property comes out uniform in that property. Compress everything and you get uniform clipping. So the fix does not remove the failure, it swaps it for its mirror image, and the next verdict names the mirror. The lesson written into the file is that a ban prunes and only thinking generates, so when a verdict lands you rewrite from the content and the points, never from the previous draft's sentences.

That is also the trap in the whole approach, and I want to be honest that I named it on the same day I was building it. Coming up with rules as reactions is not a good process on its own, and it will not by itself produce a good essay. A pile of negative constraints tells a writer everything not to do and nothing to do, and a draft optimised against a ban list arrives correct and dead.

What the rule file needed, and eventually got, was a positive specimen. Not an example of the target register written by a model, because a model asked to demonstrate a register writes in the register you are trying to leave. The method that works is to never author the target and instead point at a real corpus, quote it verbatim, and derive the observable properties from it. When I did that, the properties that came out were things like definitions arriving first, rules restated as concrete instances, clumsiness tolerated, and sentences that accrete and finish rather than land.

Validation

There is a check on all of this that I did not design and that came out of a different experiment a month later.

I had a model read forty raw quoted reactions of mine, with no access to the rule file, and asked it what rules those reactions implied. It reconstructed the substance of about twelve of the real ones, each citing the reaction that caused it.

That is the closest thing to a controlled test available here. If the rules were arbitrary preferences dressed up as a system, a reconstruction from the raw reactions would not have landed on them. What it says is that the rules are compressions of a stable set of reactions, which is the only thing that would make them worth writing down and worth handing to somebody else.

Enforcement

One last piece, because a rule that nobody checks is a preference.

A small script runs in continuous integration over the parts of my site that are lists and identity data, and it fails the build on an em dash outside a quotation, on a set of characters that a person typing does not produce, and on any page where more than a third of its entries are quotes rather than writing. That last check exists because a page assembled out of quoted research is a research dump wearing the costume of a page.

The essays are deliberately not in that script's scope. They are governed by the section-by-section process instead, which is the honest division: the mechanical rules are the ones a machine can check, and everything above the sentence is the part that still needs a person reading it and saying which of the five candidates is the one.