Application map / Runbooks / Upload-pipeline activation

Upload-Pipeline Activation Runbook

What separates "the v2 reserve-study pipeline is merged and deployed" from "production customers can actually use it".

Not activated in production verified 2026-09-07

The code gate is met — application PRs #287 and #288 and engine PR #19 are merged, and the production app and engine hosts expose the v2 routes. Deployment activation is not met. Live blockers observed 2026-09-07:

Do not misread merged code as activation

Merged PRs prove application and dependency code completeness only. The pipeline's own completion gates split deliberately: the application gate (build, review, CI — met 2026-07-16) may not be papered over by shipping a disabled customer dropzone, and the deployment gate below is a separate, live-proof checklist. Flipping the pause flag alone would not satisfy activation while the infrastructure items still fail.

Activation criteria (all required)

Locked activation order

  1. Engine facade first: merge and deploy the engine, prove the facade contract live. merged 2026-07-16 — live facade proof still pending.
  2. Provision and prove the isolated dev bucket, credentials, engine API/worker/DB/Redis, and Gallopify worker; run the private canary there.
  3. Provision and prove equivalent production dependencies without customer traffic.
  4. Only then release the default-active application behavior (un-pause) — the pause is for incident response, never a rollout mechanism.
  5. Run the full upload-to-portal proof and start the seven-day observation window.

Semantics of the pause while this runbook is open: pause rejects new presigns (customer sees the paused state); history, existing upload completion, worker processing, review, archive, restore, and cleanup all continue. Recovery from any incident is pause plus forward fix — no state ever routes a document through the retired blind-insert pipeline.