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 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. |
| 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. |
@@ -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
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,
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
@@ -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] 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] Native MariaDB browser recovery1/1; canonical target guards10/10; runner guards5/5.
- [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;
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.
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
contracts. The ordinary browser fixture explicitly selects SQLite until its SQL seed/proof helpers
@@ -468,7 +468,7 @@
"verdicts": {
"mariaDb1222Rd21": "PASS_BOUNDED_RESOLUTION",
"localDevelopment": "READY",
"ciIntegration": "LOCAL_READY_HOSTED_UNVERIFIED",
"ciIntegration": "LOCAL_READY_HOSTED_BLOCKED_MISSING_DOCKER_CLI",
"historicalFixtures": "PASS",
"sqliteRetirement": "PLAN_READY_REMOVAL_NO_GO",
"mariaDb123Lts": "INVESTIGATION_READY_MIGRATION_NO_GO",
@@ -526,5 +526,22 @@
"job-tracker-ui/scripts/mariadb-browser-connection.test.mjs": "39218ff8f671e0f50f8df0bc486b6fbea7699e8959662ac3b4b6d2dfce13573d",
"scripts/mariadb-integration.py": "410cede3ca8794de99735a579ac626a34b6a56ee89c6ef63880d692153c7cd97",
"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
- [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.