docs(ci): record hosted MariaDB runner prerequisite failure
MariaDB persistence qualification / mariadb (push) Failing after 46s

This commit is contained in:
cesnimda
2026-10-24 01:55:56 +02:00
parent e75c4a4775
commit 549b2cba5a
5 changed files with 33 additions and 4 deletions
@@ -16,7 +16,7 @@ See [machine-readable validation](validation.json), [setup](README.md), and [run
| --- | --- | --- | | --- | --- | --- |
| MariaDB 12.2.2 RD21 qualification | **PASS, bounded resolution** | 32 real-provider cases and one native browser journey; durable SQL state, transactions, rejected drafts, revision conflicts, recovery and tenant isolation. No production image equality claim. | | MariaDB 12.2.2 RD21 qualification | **PASS, bounded resolution** | 32 real-provider cases and one native browser journey; durable SQL state, transactions, rejected drafts, revision conflicts, recovery and tenant isolation. No production image equality claim. |
| MariaDB local development | **READY** | Pinned Compose image, healthy loopback service, separate persistent development volume, API startup applies 51 migrations; synthetic company survives database stop/start. | | MariaDB local development | **READY** | Pinned Compose image, healthy loopback service, separate persistent development volume, API startup applies 51 migrations; synthetic company survives database stop/start. |
| MariaDB CI/integration tests | **LOCAL READY; HOSTED UNVERIFIED** | Same fail-closed runner passes 32/32 using Docker, locked restore, isolated tmpfs and generated schemas. Workflow added; no successful hosted run claimed. Runner must provide Docker/Compose and .NET 9.0.317. | | MariaDB CI/integration tests | **LOCAL READY; HOSTED BLOCKED** | Same fail-closed runner passes 32/32 locally. Hosted run843 passed checkout/SDK setup/five runner guards, then failed `Require Docker and Compose`: `docker: command not found`, exit127. No hosted MariaDB tests ran. A dedicated test runner needs Docker/Compose and an isolated engine. |
| Historical fixture repairs | **PASS** | Three obsolete revision fixtures corrected without weakening assertions: diagnostics 18/18, volume 3/3. Stale writes now assert 409 and preservation of the winner/source/history. | | Historical fixture repairs | **PASS** | Three obsolete revision fixtures corrected without weakening assertions: diagnostics 18/18, volume 3/3. Stale writes now assert 409 and preservation of the winner/source/history. |
| SQLite retirement | **PLAN READY; REMOVAL NO-GO** | Complete baseline classification; defaults corrected. Remaining legacy coverage, full-fidelity transfer and preservation/restore gates must precede package/branch removal. | | SQLite retirement | **PLAN READY; REMOVAL NO-GO** | Complete baseline classification; defaults corrected. Remaining legacy coverage, full-fidelity transfer and preservation/restore gates must precede package/branch removal. |
| MariaDB 12.3 LTS migration | **INVESTIGATION READY; MIGRATION NO-GO** | Separate 12.3.3 rehearsal proposed; target image/driver certification, copied-data upgrade, backup/restore and rollback-after-writes remain untested. | | MariaDB 12.3 LTS migration | **INVESTIGATION READY; MIGRATION NO-GO** | Separate 12.3.3 rehearsal proposed; target image/driver certification, copied-data upgrade, backup/restore and rollback-after-writes remain untested. |
@@ -76,6 +76,14 @@ now uses the existing bridge network, avoiding leaked per-run networks. Final re
actionable findings. Docker's local stale socket issue was also resolved without resetting Docker actionable findings. Docker's local stale socket issue was also resolved without resetting Docker
or deleting its persistent data; see [local recovery](DOCKER_LOCAL_RECOVERY.md). or deleting its persistent data; see [local recovery](DOCKER_LOCAL_RECOVERY.md).
Authenticated hosted verification: [run843](https://git.cesnimda.uk/cesnimda/jobtrackingapp/actions/runs/843)
at report commit `e75c4a477555bbd360b83004c25c30fbfcf233d3` failed the explicit Docker prerequisite.
The Gitea step API labels earlier steps as failed too; the actual job log confirms checkout, SDK
installation and five guard cases succeeded. No database tests or database artifacts were produced.
Do not bypass the gate with SQLite, attach a production host socket, or silently grant runner
privileges. Provision an isolated CI database execution environment, rerun the same command and
verify the actual TRX/cleanup evidence before changing hosted readiness to PASS.
The intended final architecture is **MariaDB only** for application development, integration, The intended final architecture is **MariaDB only** for application development, integration,
CI and production. Keep 12.2.2 pinned for the present qualification; rehearse the supported 12.3 LTS CI and production. Keep 12.2.2 pinned for the present qualification; rehearse the supported 12.3 LTS
path separately using [the migration gates](MARIADB_12_3_PLAN.md). Retire SQLite in the documented path separately using [the migration gates](MARIADB_12_3_PLAN.md). Retire SQLite in the documented
@@ -34,7 +34,7 @@ Baseline default/fallback provider: SQLite. MariaDB options hardcoded `11.0.0`.
- [x] Official pinned12.2.2 Docker image obtained, verified and executed. - [x] Official pinned12.2.2 Docker image obtained, verified and executed.
- [x] Persistent development service, actual API migrations and row preservation across restart. - [x] Persistent development service, actual API migrations and row preservation across restart.
- [x] Reproducible disposable integration runner32/32 and CI workflow (hosted execution unverified). - [x] Reproducible disposable integration runner32/32 and CI workflow; hosted run843 is blocked before tests by missing Docker CLI.
- [x] Provider defects reproduced and minimally repaired; current Release backend1123/1123. - [x] Provider defects reproduced and minimally repaired; current Release backend1123/1123.
- [x] Native MariaDB browser recovery1/1; canonical target guards10/10; runner guards5/5. - [x] Native MariaDB browser recovery1/1; canonical target guards10/10; runner guards5/5.
- [x] Three obsolete fixtures repaired; diagnostics18/18 and volume3/3. - [x] Three obsolete fixtures repaired; diagnostics18/18 and volume3/3.
@@ -104,6 +104,10 @@ admin database in favor of a new schema. Loopback is a guard, never permission t
locally. Alternate `JOBTRACKER_MARIADB_TEST_VERSION` values label a separate compatibility run; locally. Alternate `JOBTRACKER_MARIADB_TEST_VERSION` values label a separate compatibility run;
they cannot be used to claim12.2.2 parity. The CI workflow uses the Compose command, requires a Docker they cannot be used to claim12.2.2 parity. The CI workflow uses the Compose command, requires a Docker
daemon/Compose and preserves evidence. A checked-in workflow is not proof of a successful hosted run. daemon/Compose and preserves evidence. A checked-in workflow is not proof of a successful hosted run.
The first hosted execution, [run843](https://git.cesnimda.uk/cesnimda/jobtrackingapp/actions/runs/843),
failed before database tests because the runner job image has no `docker` executable. Hosted CI
remains blocked pending an isolated Docker/Compose-capable test runner; local Compose32/32 remains
separate evidence. Do not expose a production Docker socket to resolve this prerequisite.
The ordinary backend project still contains explicitly transitional SQLite/InMemory unit/legacy The ordinary backend project still contains explicitly transitional SQLite/InMemory unit/legacy
contracts. The ordinary browser fixture explicitly selects SQLite until its SQL seed/proof helpers contracts. The ordinary browser fixture explicitly selects SQLite until its SQL seed/proof helpers
@@ -468,7 +468,7 @@
"verdicts": { "verdicts": {
"mariaDb1222Rd21": "PASS_BOUNDED_RESOLUTION", "mariaDb1222Rd21": "PASS_BOUNDED_RESOLUTION",
"localDevelopment": "READY", "localDevelopment": "READY",
"ciIntegration": "LOCAL_READY_HOSTED_UNVERIFIED", "ciIntegration": "LOCAL_READY_HOSTED_BLOCKED_MISSING_DOCKER_CLI",
"historicalFixtures": "PASS", "historicalFixtures": "PASS",
"sqliteRetirement": "PLAN_READY_REMOVAL_NO_GO", "sqliteRetirement": "PLAN_READY_REMOVAL_NO_GO",
"mariaDb123Lts": "INVESTIGATION_READY_MIGRATION_NO_GO", "mariaDb123Lts": "INVESTIGATION_READY_MIGRATION_NO_GO",
@@ -526,5 +526,22 @@
"job-tracker-ui/scripts/mariadb-browser-connection.test.mjs": "39218ff8f671e0f50f8df0bc486b6fbea7699e8959662ac3b4b6d2dfce13573d", "job-tracker-ui/scripts/mariadb-browser-connection.test.mjs": "39218ff8f671e0f50f8df0bc486b6fbea7699e8959662ac3b4b6d2dfce13573d",
"scripts/mariadb-integration.py": "410cede3ca8794de99735a579ac626a34b6a56ee89c6ef63880d692153c7cd97", "scripts/mariadb-integration.py": "410cede3ca8794de99735a579ac626a34b6a56ee89c6ef63880d692153c7cd97",
"scripts/test-mariadb-integration.py": "39aa5618724e74b859aceaf814bf08b9ea63a54205452805caa810a302441a80" "scripts/test-mariadb-integration.py": "39aa5618724e74b859aceaf814bf08b9ea63a54205452805caa810a302441a80"
},
"hostedCi": {
"runId": 843,
"jobId": 1733,
"commit": "e75c4a477555bbd360b83004c25c30fbfcf233d3",
"url": "https://git.cesnimda.uk/cesnimda/jobtrackingapp/actions/runs/843",
"result": "failure",
"failedStep": "Require Docker and Compose",
"error": "docker: command not found",
"exitCode": 127,
"checkoutSucceeded": true,
"sdkSetupSucceeded": true,
"offlineRunnerGuardsPassed": 5,
"mariaDbTestsExecuted": 0,
"logSha256": "47ba05d12f08eb7a16a5649f71dde18cd582176a2bed818f3e045932ec025891",
"stepApiCaveat": "Gitea marked earlier steps failure too; actual log confirms checkout SDK and five guards passed",
"requiredNextStep": "Dedicated isolated Docker/Compose-capable test runner; rerun and inspect native TRX and cleanup"
} }
} }
+1 -1
View File
@@ -10,7 +10,7 @@ Phase 7 execution started: 2026-10-11, from synchronized `b531998` on `codex/ui-
## Current repository work ## Current repository work
- [x] **MariaDB standardisation and RD21 qualification — 24 October 2026:** [acceptance](../database/mariadb-standardisation/ACCEPTANCE.md), branch `codex/rd21-mariadb-standardisation`, baseline `0d16a691`. Pinned official MariaDB 12.2.2 Docker lane 32/32 and native browser recovery 1/1; existing backend 1,123/1,123, repaired diagnostics 18/18 and volume 3/3. Local dev migrations/persistent volume verified. RD21 resolved within qualified scope; hosted CI unverified, SQLite removal/12.3 migration/Phase 9 reacceptance/Phase 10/production remain gated. Docker socket failure recovered with preserved socket-only archives; no persistent Docker data reset or production action. - [x] **MariaDB standardisation and RD21 qualification — 24 October 2026:** [acceptance](../database/mariadb-standardisation/ACCEPTANCE.md), branch `codex/rd21-mariadb-standardisation`, baseline `0d16a691`. Pinned official MariaDB 12.2.2 Docker lane 32/32 and native browser recovery 1/1; existing backend 1,123/1,123, repaired diagnostics 18/18 and volume 3/3. Local dev migrations/persistent volume verified. RD21 resolved within qualified scope; hosted CI run843 blocked by missing Docker CLI (no database tests ran), SQLite removal/12.3 migration/Phase 9 reacceptance/Phase 10/production remain gated. Docker socket failure recovered with preserved socket-only archives; no persistent Docker data reset or production action.
- [x] **RD21 safe remediation/requalification checkpoints — 23 October 2026:** [dated addendum](../redesign/phase-9/rd21-remediation/ACCEPTANCE_ADDENDUM_2026-10-23.md), branch `fix/rd21-acknowledged-edit-loss`, based on final Phase 9 `8e7e3f6`; product checkpoint `1b89a77`. Original persisted loss and Career partial commit reproduced and locally repaired, both final review findings addressed. Final backend 1,109/frontend 934 (105 suites)/ordinary browser 362/contracts 23/model-disabled sidecar 56/new remediation 6/conforming volume 3 pass; types/lint/build and unchanged PDF oracles 24 fixtures/60 pages pass. Original diagnostics 16 pass/2 fail and volume 2 pass/1 fail retain obsolete unversioned Career-seed failures; no skips or concealed reruns. Formal RD21 **UNRESOLVED** pending required MariaDB runtime qualification; Phase 9/Phase 10/production **NO-GO**. Preserve 56 PARTIAL/C11 DEFERRED and 57 groups/33 routes; historical evidence unchanged. Reporting publication follows the addendum; no production operation or main merge. - [x] **RD21 safe remediation/requalification checkpoints — 23 October 2026:** [dated addendum](../redesign/phase-9/rd21-remediation/ACCEPTANCE_ADDENDUM_2026-10-23.md), branch `fix/rd21-acknowledged-edit-loss`, based on final Phase 9 `8e7e3f6`; product checkpoint `1b89a77`. Original persisted loss and Career partial commit reproduced and locally repaired, both final review findings addressed. Final backend 1,109/frontend 934 (105 suites)/ordinary browser 362/contracts 23/model-disabled sidecar 56/new remediation 6/conforming volume 3 pass; types/lint/build and unchanged PDF oracles 24 fixtures/60 pages pass. Original diagnostics 16 pass/2 fail and volume 2 pass/1 fail retain obsolete unversioned Career-seed failures; no skips or concealed reruns. Formal RD21 **UNRESOLVED** pending required MariaDB runtime qualification; Phase 9/Phase 10/production **NO-GO**. Preserve 56 PARTIAL/C11 DEFERRED and 57 groups/33 routes; historical evidence unchanged. Reporting publication follows the addendum; no production operation or main merge.