Files
jobtrackingapp/docs/redesign/phase-5/p5-15/p5-15-05

P5-15-05 — Production readiness decision

PRODUCTION NO-GO. This is an available-evidence assessment, not a deployment or simulated production verification. main remains 27657f31131cd95d42f0e1290853ec9c9b3959a4; only the development branch is pushed. No credentials, infrastructure, production database, backup, inference service or live configuration were changed.

Repository findings

Fresh remote observation confirms the actual production branch is main. The Gitea workflow's deployment job follows successful tests only for a push to refs/heads/main; it uses established private host/user/key secrets and invokes the existing deployment script. Therefore a push is a deployment action. Branch protection, protected runner results and currently deployed revision remain NOT VERIFIED.

Compared with main, the migration difference contains documentation-only edits to three historical migrations and concurrency metadata on the existing CV Version property in the snapshot. No new DDL migration is introduced by the redesign. Compose and API Dockerfile have no candidate differences. This is preparation evidence, not proof of the actual deployed schema, database or successful startup reconciliation.

The implemented runtime supports SQLite and MySQL/MariaDB. Program.cs defaults to SQLite and also substitutes SQLite when the connection is missing. That recorded F19 risk must be checked against the actual production configuration: do not accept a newly empty fallback database as a successful deployment. There is no PostgreSQL runtime to qualify in this checkpoint. Development SQLite success does not prove production MariaDB compatibility.

The Production registration still withholds CvAiSuggestionService; generation and application return the established unavailable contract before a provider request or content/history mutation. Deterministic focused AI and real-HTTP guards are required in final regression. Unrelated AI registrations remain intact. This repository proof does not certify what is running remotely.

Executable operator gate

The established recovery/ingress procedure and original release assessment remain authoritative. An infrastructure operator must supply sanitized results, timestamps, actual revision/image identifiers and comparison manifests for each row; prepared commands are not PASS results.

Gate Required action and exit evidence Current result
F04 ingress Inventory actual edge/proxy topology, original trusted socket peer and generated trust settings; verify real TLS/canonical redirects, direct/spoofed denial, effective client identities and real-chain limiter/auth checks NOT VERIFIED; no deployed topology/endpoint evidence supplied
Current complete backup Capture database, files/attachments/CV data, exports, keys and tombstones with hash/manifest, private custody, retention and off-host copy NOT VERIFIED; no current complete recovery set supplied
Isolated restore Restore that current set into a separate target; boot, compare row/content/non-ASCII/attachment/package/PDF values, decrypt protected data and replay deletion tombstones NOT VERIFIED; no safe target/current backup/operator evidence
Configuration and schema Privately verify required secret presence, effective provider/connection/origins/auth/ingress/AI withholding; inspect schema/history and before/after counts on restored data NOT VERIFIED; local configuration checks are not deployed inspection
Rollback Rehearse failure after replacement on isolated Linux topology; prove failed CI/nonzero result, prior images/config restored and current data/files/keys retained, then authenticate/smoke NOT VERIFIED; no tested recovery result supplied
Release smoke/monitoring Record actual deployed SHA and health, login/ownership, job CRUD, documents/packages/CV export and withheld review; observe logs/alerts without personal content NOT VERIFIED; no candidate deployment performed
Accessibility/rendering qualification Complete postponed human reader/device packet and deployed font/portrait corpus with unchanged fidelity criteria NOT VERIFIED; local automation cannot supply these results

Local backend ownership/security, configuration, HTTP ingress, rate-limit and PDF admission checks are recorded separately in the final regression manifest. No local 200, mock provider, green development suite or Git push substitutes for the rows above. No destructive restore, migration, restart, image push or recovery test is performed against live data.

Deferred inference feasibility

Owner-provided production target: Ubuntu 24.04, GTX 1060/6 GB VRAM, 32 GB RAM. Windows/RTX 3080 development evidence cannot qualify that target. qwen3.5:4b-q4_K_M is a candidate, not a selected/approved model. Actual deployed driver/runtime/model digest, reachable inference service, VRAM/offload and throughput are unobserved; local Docker is unavailable. No inference target was disturbed or substituted, no download/recovery or 366-call qualification was attempted, and no human semantic review was impersonated.

P5-13 remains deferred/unqualified/Production-withheld, with its frozen corpus and all return conditions intact. Enabling review requires a separate activation decision after configured-target and independent human acceptance. A scoped Phase 6 transition does not authorise release or activation.