decisions+journal(2): mumble F2-14c disposition + UPGRADE_EXTRA_ENV hook; run launched

This commit is contained in:
autonomic-bot
2026-05-31 05:08:46 +00:00
parent 4bf9e1d43d
commit 7ee4c2b717
2 changed files with 32 additions and 0 deletions

View File

@ -1113,3 +1113,21 @@ closes the race generally. It is NOT a test weakening: BACKUP_VERIFY is read-onl
flaky CAPTURE so the P4 restore assertion is exercised reliably instead of luck-dependently. Companion
recipe-PR hardening (mysql_backup.sh `set -o pipefail` + fail-loud on missing dump) still wanted so the
reimport can never silently no-op. ghost BACKUP_VERIFY: backup.sql.gz is a valid non-empty gzip.
## 2026-05-31 — mumble F2-14c disposition + `UPGRADE_EXTRA_ENV` harness hook (Builder, per Adversary VETO @2026-05-30T16:22:07Z)
**Settled.** mumble's only cc-ci compose fork (`tests/mumble/compose.host-ports.yml`, copied to the
upgrade base by `install_steps.sh`) is REMOVED. mumble overlays per upstream tags: `compose.mumbleweb.yml`
present from 0.1.0; `compose.host-ports.yml` present ONLY from 1.0.0 (the latest). So:
- BASE = previous published `0.2.0+v1.6.870-0` deploys MINIMALLY (`COMPOSE_FILE=compose.yml:compose.mumbleweb.yml`,
no host-ports) — HTTP health via mumble-web works; the on-host voice port 64738 is NOT published, so the
on-host voice/protocol custom tests are SKIPPED on 0.2.0 (recorded; they run in the CUSTOM tier, which
executes once on the post-upgrade latest). `CHAOS_BASE_DEPLOY` dropped (no untracked overlay → base
deploys as a clean pinned version).
- UPGRADE to latest (`1.0.0+`, ships `compose.host-ports.yml` natively) adds it to COMPOSE_FILE so 64738 is
host-published and the voice tests run on latest.
**New general harness hook `UPGRADE_EXTRA_ENV`** (recipe_meta dict or callable(domain)->dict): applied via
`abra.env_set` in `generic.perform_upgrade` AFTER the PR-head checkout and BEFORE the chaos redeploy, so a
recipe whose upgrade TARGET needs different app .env than the base (e.g. an overlay that exists only in the
newer version) can switch it without a cc-ci fork. Added `abra.env_get` (symmetric reader). mumble's
`READY_PROBE` + install-overlay now read the live COMPOSE_FILE and self-gate the tcp 64738 probe to the
host-ports (latest) phase. No cc-ci fork of any upstream file remains for mumble.

View File

@ -1588,3 +1588,17 @@ the exact round-trip stays faithful (unique hex token mid-string, untouched). NO
real create→read-back of a uniquely-marked topic. **full8** relaunched full lifecycle
(`/root/ccci-discourse-full8.log`, PID 65368, builder-clone @588a087). Node clean before launch
(disc-ce6450 fresh secrets, no collision). On all-green → CLAIM Q4.6. Polling ~5min.
---
## 2026-05-31T05:2xZ — mumble F2-14c implemented + run launched (Builder)
Discourse Q4.6 claimed (`dabcceb`); picked up the LAST DONE-VETO item, mumble F2-14c. Investigated the
mumble recipe tags (corrected an earlier tag-name slip): `0.1.0/0.2.0/1.0.0+v1.6.870-0`; `compose.mumbleweb.yml`
is on the 0.2.0 base, `compose.host-ports.yml` ONLY on 1.0.0. So the only cc-ci fork was the host-ports copy.
Implemented per the Adversary's disposition (see DECISIONS 2026-05-31): removed the fork +install_steps;
base 0.2.0 deploys minimally; new `UPGRADE_EXTRA_ENV` harness hook adds native host-ports on the
upgrade-to-latest; `READY_PROBE`/install-overlay self-gate the voice-port check to the host-ports phase via
`abra.env_get(COMPOSE_FILE)`; dropped CHAOS_BASE_DEPLOY. py_compile clean. Commit `4bf9e1d`. **Run launched:**
`RECIPE=mumble PR=0` → `/root/ccci-mumble-f214c.log`, PID 75792 (node clean). Expect: install pass (voice
overlay SKIPS on 0.2.0, generic HTTP serving passes), upgrade pass (COMPOSE_FILE switched, host-ports added,
ready-probe tcp 3x on latest), backup/restore pass (sqlite ci_marker), custom pass (handshake/web/config on
latest). Polling ~5min (exercises new harness code — watch base deploy + the upgrade env switch).