Kovati Docs

Two-speed content

Fast candidates and committed work have different jobs — and graduation is the rule that keeps speed from becoming debt.

Documented in depth

A production runs at two speeds at once, and the system must never confuse them.

Fast — generated or recorded candidateCommitted — authored or final
JobLet the team feel and test the gameCarry the shipped experience
CostMinutes, centsSpecialist time, vendor budget
LifetimeReplaceable without ceremonyOwned and maintained
Editing ruleDo not silently hand-edit while calling it reproducibleEdit as the work requires

The mistake is not having fast content. The mistake is losing track of which kind a given asset is — because the moment you do, one of two things happens. Either you treat committed work as disposable and automation destroys an afternoon of an animator's time, or you treat a candidate as precious and the project fills up with temporary assets nobody dares touch.

The costly asset is the one made for a design that was never tested.

Graduation

Automation must stop when ownership begins.

Generated assets are never hand-edited invisibly. The moment a developer adjusts the montage timing, an actor records the line, an animator fixes the clip, or an artist remodels the prop — the result has graduated.

Automation no longer owns that target and must not overwrite it. A force-regenerate command is not a licence to destroy authored work.

This is the rule that makes speed safe. Without it, "regenerate everything" is a command nobody can ever run again after week three, and the pipeline quietly becomes write-once.

Three honest futures

Every candidate has exactly three, and the surrounding game has to survive all of them:

Keep it

It was good enough. It ships, or it stays until something better arrives.

Fix it by hand

Someone opens it and changes it. It graduates. The tooling records that and stops writing to that target.

Replace it

A mocap take, a studio recording, a commissioned mesh or final animation lands in the same target. Everything bound to that target — the montage slot, the notify, the ability, the dialogue node — keeps working, because the binding was never to the candidate. It was to the target.

That third one is the whole argument for doing any of this properly. A pipeline where replacing a placeholder means rewiring the game is not a pipeline; it is a pile of files with good intentions.

Intent must survive the output

A result that arrives alone is a result nobody can revise.

The ledger records what was requested, what went in, which route produced it, which settings mattered, what it cost, who reviewed it, and where the chosen result landed — and it records it from before the asset exists, not as a tidy-up afterwards.

That ordering matters more than it looks. Provenance written after the fact is provenance that is missing exactly when a run crashed, which is exactly when you need it.

Automation should create options, not hide decisions.

New output does not silently erase old work. The team compares candidates, chooses one, and can always see which choice the game currently uses.

Honesty about status

Working, beta, developer preview, prototype, in development and planned are different statements, and conflating them is its own kind of debt.

This wiki follows the same rule it describes: every page carries a chip saying whether it is written in depth against the source, or is only an overview, or describes something not yet released. See how to read this wiki.

Trust begins where exaggeration ends.

On this page