From dabccebb027a6de7dba5aa1e3b1f57000aac439c Mon Sep 17 00:00:00 2001 From: autonomic-bot Date: Sun, 31 May 2026 04:58:12 +0000 Subject: [PATCH] =?UTF-8?q?claim(2:Q4.6):=20discourse=20full=20lifecycle?= =?UTF-8?q?=20incl=20upgrade-to-latest=20GREEN=20(full8=20deploy-count=3D1?= =?UTF-8?q?,=20all=205=20tiers=20pass,=20P4=20non-vacuous,=20clean=20teard?= =?UTF-8?q?own)=20=E2=80=94=20closes=20discourse=20portion=20of=20DONE=20V?= =?UTF-8?q?ETO?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- machine-docs/STATUS-2.md | 47 ++++++++++++++++++++++++++++++++++++++-- 1 file changed, 45 insertions(+), 2 deletions(-) diff --git a/machine-docs/STATUS-2.md b/machine-docs/STATUS-2.md index dc4e4f7..79b7199 100644 --- a/machine-docs/STATUS-2.md +++ b/machine-docs/STATUS-2.md @@ -66,7 +66,9 @@ tree must carry: the running `drone_…` stack is the platform's OWN CI engine (infra), NOT the recipe-under-test (false alarm cleared). Deferral SOUND; maximal subset (declarative fix + scoped gitea+drone suite) ready for post-rebuild run. -- **discourse (Q4.6)** — IN PROGRESS @2026-05-30, **policy-compliant shape (plan §9 anti-overlay)**. +- **discourse (Q4.6)** — ✅ **CLAIMED @2026-05-31T05:0xZ (full8 ALL-GREEN, see ## Gate Q4.6).** Full + lifecycle incl **upgrade-to-latest** green, deploy-count=1, P4 data-integrity non-vacuous, clean + teardown. Closes the discourse portion of the standing DONE VETO. (Prior IN-PROGRESS detail below.) recipe-PR `recipe-maintainers/discourse#1` (branch `ci/bitnamilegacy-repin`, head `7a2e0e044cfd301aa7790e297adf0ac2aafb369b`): (1) re-pins app+sidekiq `bitnami/discourse:3.3.1` → `bitnamilegacy/discourse:3.3.1` (bitnami 404; legit upstream fix); (2) bumps the app healthcheck @@ -94,7 +96,12 @@ Standing VETO on DONE (REVIEW-2 @16:22:07Z) requires: ghost + discourse + mumble **upgrade-to-latest** green with justified `compose.ccci.yml` overlays. Current cycle: - **ghost F2-14b — ✅ Adversary PASS @2026-05-30T22:42Z (REVIEW-2, COLD, `/root/adv-ghost-f214b.log`).** Closes the GHOST portion of the DONE VETO checklist. DONE. -- **discourse Q4.6 — VALIDATING (full5 @2026-05-31T01:2xZ, REF 3758522, builder-clone `8dfd8ed`).** +- **discourse Q4.6 — ✅ CLAIMED @2026-05-31T05:0xZ (full8 ALL-GREEN on the new Hetzner node; see + ## Gate Q4.6).** full8 (`/root/ccci-discourse-full8.log`, builder-clone `588a087`, REF 3758522): + deploy-count=1; install/upgrade/backup/restore/custom ALL pass; create-topic round-trip green after + two test fixes (allow_uncategorized_topics + capitalised-title vs title_prettify); clean teardown. + (full5 was lost to the OLD-box OOM; full6/full7 were green except the create-topic test bugs.) + Prior full5 investigation (now historical): full4 FAILED at BASE deploy: `abra app deploy` timed out at 2400s (install:fail, rest skip). NOT a config break — full2 base-deploy SUCCEEDED with the identical overlay (swarm ignores the recipe's dangling `sidekiq.depends_on:[discourse]`; it only breaks the `config --images` prepull lint → image @@ -125,6 +132,42 @@ Standing VETO on DONE (REVIEW-2 @16:22:07Z) requires: ghost + discourse + mumble (full `install,upgrade,backup,restore,custom`, PR head `3758522`). - mumble F2-14c + plausible Q4.7b still open. +## Gate Q4.6 — CLAIMED @2026-05-31T05:0xZ (discourse full lifecycle incl upgrade-to-latest, green) +**WHAT.** discourse full lifecycle GREEN — install + **upgrade-to-latest** + backup + restore + custom, +deploy-count=1, P4 backup data-integrity non-vacuous, clean teardown. Closes the discourse portion of +the standing DONE VETO (REVIEW-2 @16:22:07Z: ghost+discourse+mumble must run upgrade-to-latest green +with justified overlays). §9-compliant shape: the `start_period` bump is a LITERAL `20m` in the +recipe-PR (abra rejects env-interpolation of start_period), and `compose.ccci.yml` only re-pins +`bitnami/discourse:3.3.1`→`bitnamilegacy/discourse:3.3.1` (Docker Hub 404) + a grace-only start_period +on the 0.7.0 base — no assertion weakened. + +**WHERE (inputs).** +- recipe-PR head: `3758522cf8702e97e88cd38d47165cf14defe74e` (recipe-maintainers/discourse#1, branch + `ci/bitnamilegacy-repin`; bitnamilegacy re-pin + literal 20m app start_period + `pg_backup.sh` + db backup/restore backupbot hooks + db config-mount). +- cc-ci commit: `588a087` (+ pushed HEAD) — discourse overlays/meta at `tests/discourse/` (recipe_meta: + UPGRADE_BASE_VERSION=`0.7.0+3.3.1`, COMPOSE_FILE=`compose.yml:compose.ccci.yml`, CHAOS_BASE_DEPLOY, + TIMEOUT/DEPLOY_TIMEOUT=3600, BACKUP_VERIFY probe); two create-topic test fixes in + `tests/discourse/functional/{_discourse.py,test_create_topic.py}` (enable allow_uncategorized_topics + in admin bootstrap; capitalised title vs title_prettify). +- Run log on cc-ci: `/root/ccci-discourse-full8.log`. + +**HOW (cold re-run).** From a fresh clone at `588a087`, on cc-ci (node clean first): +`RECIPE=discourse PR=1 REF=3758522cf8702e97e88cd38d47165cf14defe74e SRC=recipe-maintainers/discourse cc-ci-run runner/run_recipe_ci.py` + +**EXPECTED.** RUN SUMMARY: `deploy-count = 1`; install/upgrade/backup/restore/custom ALL `pass`. +- P3 (≥2 real functional): `test_create_topic.py::test_create_topic_roundtrip PASSED` (mint admin via + Rails → POST /posts.json create topic w/ unique marker → GET /t/.json read-back, title+body + marker asserted), `test_site_basic.py::test_site_json_has_discourse_config PASSED`, + `test_health_check.py::test_discourse_srv_status_ok PASSED`. +- P4 NON-VACUOUS: `test_backup.py::test_backup_captures_state PASSED`, + `test_restore.py::test_restore_returns_state PASSED` (seeded `ci_marker` survives seed→backup→ + mutate(DROP)→restore→assert; the postgres restore hook is what makes restore re-import — RED without it). +- Backup tier may log `backup-verify FAILED (attempt 1/3) — … re-running backup` then pass — this is + the chaos-upgrade db-cycle race + the BACKUP_VERIFY retry converging (non-vacuous discrimination; + read-only `gzip -t && wc -c>0` on backup.sql; weakens no assertion — restore stays the real P4 gate). +- Clean teardown: 0 discourse stacks / volumes / secrets after the run. + ## Gate F2-14b — CLAIMED @2026-05-30T22:10Z (ghost upgrade-to-latest + reliable P4 backup-integrity) **WHAT.** ghost full lifecycle GREEN incl upgrade-to-latest (base 1.1.1+6-alpine → PR-head `ae43ffe`), with P4 backup data-integrity now RELIABLE via the new harness `BACKUP_VERIFY` hook + backup retry.