MODE CHECKINGBROKER CHECKING LIVE TRADING CHECKING

Deployment Checklist

DigitalOcean, GitHub, and live-gate readiness checklist for safe paper-first operations.

PAPER FIRST

Runtime Readiness

/ready endpointBlocked

Waiting for readiness payload.

PostgreSQLBlocked

Database connection is required for orders, audit logs, and risk settings.

Redis execution queueBlocked

Redis is required for BullMQ order execution.

Order execution workerNot required

Worker heartbeat is mandatory only when live trading is enabled.

First Trade Readiness

BlockedAI proposal and autonomy readiness are reported separately; first trade remains human-approved.

7 required first-trade gate(s) are not ready.

AI execution boundaryBounded

AI may read and produce typed proposals or autonomy decisions only; server and worker gates own order queuing, approval, broker calls, and risk settings.

Provider-backed AI suggestionsOptional

Provider-backed proposal generation is not required for the first real trade and cannot approve or place orders.

Paper/demo AI autonomyLocked

Paper/demo autonomy is locked by AUTONOMY_MODE or provider configuration.

Live AI autonomyUnknown

Live autonomy is separately opt-in, phrase-gated, expiring, and blocked by default.

Production live-readiness auditBlocked

Live readiness audit must pass before a real-money order attempt.

Live environment switchPending

Run the live cutover env switch only after deploy, broker, and smoke readiness pass.

Runtime servicesBlocked

PostgreSQL, Redis, and the order execution worker are ready.

IG broker account and credentialsBlocked

Rotated IG live credentials, credential metadata, denylist freshness, and IG_ALLOWED_LIVE_ACCOUNT_ID are ready.

Risk guardrailsBlocked

Risk settings revision missing must be persisted and live-bounded.

Local order state and kill switchBlocked

No active or unknown IG live orders are blocking execution.

Human live approvalsFinal step

Dashboard unlock, first-live confirmation, deterministic risk approval, and per-order manual approval are required for the first real trade.

Live Readiness Audit

Live LockedWaiting for audit payload.

Loading live readiness audit.

Live readiness auditLoading

Waiting for audit payload.

Next Live Cutover Actions

Next live cutover actionsLoading

Waiting for audit payload.

Live Readiness Gates

Environment live switchLocked

Default-safe mode: live trading is disabled.

Admin/API session loadedLoaded

Dashboard-only live gates loaded from /risk.

App secrets hardenedBlocked

Admin password, session, CSRF, and encryption secrets must not use defaults.

IG credential rotation metadataBlocked

Exposed credentials must be revoked/rotated after the latest exposure cutoff.

IG fingerprint ledger freshnessBlocked

IG_CREDENTIAL_SET_FINGERPRINTS_RECORDED_AT must be recorded at or after the latest exposure cutoff.

Credential reuse denylist guardBlocked

Retired IG credential-set fingerprints are recorded after known exposure, forbidden fingerprints are clear, and the current credentials do not match them.

IG live account scopeMissing

IG_ALLOWED_LIVE_ACCOUNT_ID must pin live trading to one expected account.

Persisted risk settingsBlocked

Revision: missing.

Local IG live order stateBlocked

Active or unknown IG live local orders must be completed or reconciled first.

Dashboard live unlockLocked

Unlock is intentionally short-lived and scoped to the live account, risk-settings revision, and credential scope.

First live order confirmationMissing

The first live IG order requires a second confirmation phrase for the same account, risk revision, and credential scope.

Global live lockLocked

This should remain locked until every live prerequisite is intentionally satisfied.

Final Human Unlock

Live env switchPending

Run the live env switch before recording human live confirmations.

Dashboard live unlockRequired

Use the scoped phrase shown on the Risk page. This confirmation is short-lived and audit logged.

First live IG confirmationRequired

Record the separate scoped first-order phrase on the Risk page before the first real order can be approved.

Strict live-ready smokePending

Run strict smoke only after both human confirmations are recorded.

Per-order manual approvalRequired

Each real order still requires deterministic risk approval and the scoped per-order approval phrase before worker execution.

Manual Deployment Tasks

GitHub push protection enabledManual

Enable repository secret scanning and push protection before publishing.

Broker keys stored in managed secretsManual

Use local env or DigitalOcean managed secrets only; never commit broker credentials.

Production smoke passedManual

Run the authenticated production monitor after every deploy. In the post-env-switch phase it should expect live env enabled, live locked, and live-ready false.

Post-unlock strict smokeManual

After dashboard unlock and first-order confirmation, run strict smoke with live locked false and live-ready true before any real order approval.

Backups configuredManual

Enable Managed PostgreSQL backups and test restore before live trading.

Emergency key revocation procedure reviewedManual

Know how to revoke IG, Trading 212, and app secrets before enabling live gates.

This page is a readiness dashboard, not live order approval. Live orders still require deterministic risk checks, fresh dashboard unlock, first-order confirmation, manual per-order approval, and worker-side broker validation.