rathvan_
Console Start a build
The method

13 stages, 3 of which are a person.

Every stage names what goes in, what comes out, and what would make it refuse. A stage that cannot say what it produced did not run.

#StageRefuses whenActor
01Reuse mapWhat already does 80% of this?Named the existing service/table/adapter for each need, with pathsauto
02PRDWhat breaks today, and how will we know it is fixed?Problem stated in 1–2 sentencesauto
03ArchitectureWhere does this live, and what does it depend on?Core vs application decidedauto
04DesignMigration additive, RLS declared AND forced, service-role grants includedauto
Gate 1 · agreementThe owner stamps the exact version under reviewScope cannot be inferred from a one-line prompt, and reuse-vs-rebuild is decided herehuman
05Test strategyWhat proves each criterion, at which layer?Every acceptance criterion mapped to a layerauto
06Environment strategyWhich stacks must receive this, and which one serves real users (resolved, not assumed)auto
07BuildNothing beyond the approved designauto
08Test executionBuild run UNPIPED; exit code read directlyauto
09DeployTarget stack resolved via DNS chain before deployingauto
Gate 2 · staging to productionThe owner live stamps the exact version under reviewThree deploy failure modes are invisible to every automated signal — wrong stack, pinned traffic, empty bodieshuman
10ObservabilityDeploy boundary visible (which revision, since when, from which commit)auto
11Post-deploy testDoes the deployed host actually do this?A real query against the deployed host, asserting on the BODYauto
12MonitoringAlerts on user-visible symptoms, not causesauto
13Operational readinessRollback without a deployauto
Gate 3 · declare liveThe owner stamps the exact version under reviewA capability is done when someone who did not build it can operate ithuman

Six refusals, built into the shape of the code

Not policy. Not configuration. There is no method that expresses these.

Reach production alone

STAGED is the last state a build can reach on its own.

Ship a prototype

Own namespace, no production credentials, an expiry date.

Advance on a simulated build

Stub source control reports NONE. NONE does not pass.

Regenerate on no feedback

Rewriting an artifact requires saying what should change.

Approve what nobody saw

Approval is stamped onto the exact version under review.

Lose a decision

Every transition writes an audit event naming its actor — including refusals.

Adopting into a system that already exists

Four ports. Nothing else touches your estate.

Port 1

A store

Postgres, MySQL or a document store. One writer per table.

Port 2

A model-provider chain

Several vendors including a local runtime, behind one port. Failover recorded per answer.

Port 3

Source control

GitHub, GitLab, Azure DevOps, Bitbucket. Changes arrive as pull requests.

Port 4

A feature gate

Your flag system decides exposure. Rathvan never flips it for you.