Files
KArtSell.Aegis/docs/CURRENT/PHASE-1_PRODUCTION_PREFLIGHT_20260806.md
kjh2064 1de41b5055
ci / backend (push) Failing after 1s
ci / static (push) Failing after 11s
Build & Test with Secrets / build (push) Failing after 1s
Build & Test with Secrets / security-scan (push) Has been cancelled
Build & Test with Secrets / notification (push) Has been cancelled
Build & Test with Secrets / frontend (push) Has been cancelled
ci / publish (push) Has been cancelled
ci / frontend (push) Has been cancelled
deploy / deploy (push) Successful in 1m27s
deploy / notify (push) Successful in 1s
PHASE-1-SHADOW-RUN: record production schema preflight
2026-08-06 14:39:49 +09:00

2.4 KiB
Raw Permalink Blame History

Phase 1 Production Preflight Evidence — 2026-08-06

Source / Assumption / Unknown / Decision Required

  • Source: SSH read-only inspection of hz-prod-01, /app/kartsell/current, remote Kestrel, and PostgreSQL through the configured application connection.
  • Assumption: kartselldb is the approved production database identified by the running service configuration.
  • Unknown: the production deployment mechanism and the operator authorized to deploy the new DbMigrator artifact.
  • Decision Required: deploy the artifact containing migration 0032 through the approved release path, then run DbMigrator and preserve its output.

Confirmed remote facts

Host: hz-prod-01
Service: kartsell.service = running
Application path: /app/kartsell/current
API: 127.0.0.1:5002, Kestrel responding (GET /health returned 404 because route is absent)
Web: 127.0.0.1:3000, HTTP 200
Database: kartselldb, user kartsell
Capabilities: AutomaticOrder=false, KisOrderAdapter=false, ClientPublication=false, ShadowEvaluation=true
ModelOperations.Boundary=EVIDENCE_ONLY_NO_AUTO_MODEL_OR_ORDER_MUTATION

Confirmed database facts

The remote read-only query returned:

0032 migration journal row: absent
check_status: Pending, DataBackfill, Replay, EvaluationComplete, Failed
check_status: Queued is absent

The deployed /app/kartsell/current directory does not contain 0032_shadow_run_queued_status_contract.sql.

Gate decision

PHASE-1-SHADOW-RUN remains BLOCKED because the deployed artifact is behind commit 614f141 and the production schema still rejects the applications Queued state. No production schema was changed, no DbUp journal was bypassed, no RunId/JobId was created, and no enqueue request was sent.

Corrective sequence

  1. Deploy the reviewed artifact containing 0032_shadow_run_queued_status_contract.sql and the matching DbMigrator through the approved release path.
  2. Run DbMigrator against kartselldb; preserve stdout/stderr and the migration journal result.
  3. Re-run the read-only constraint query and verify Queued is present.
  4. Freeze the approved server-side VersionSet and record it.
  5. Generate new RunId, JobId, JobRunId, CorrelationId, and Idempotency-Key.
  6. Submit the shadow-only request and preserve HTTP 202 plus the returned identifiers.

Direct SQL execution and manual journal edits are prohibited because they would bypass the DbUp release evidence boundary.