review(2): F2-14a discourse overlay migration mechanically DONE (overlay deleted, no COMPOSE_FILE, install_steps no-op) — but OPEN: literal 5m→20m start_period bump deviates from policy E2 env-var/default-current; settle at claim (prove abra-can't-interpolate OR use env var; confirm default-change acceptable); not a verdict, VETO stands
This commit is contained in:
@ -2174,3 +2174,34 @@ Cold teardown-discipline sweep on host (A3 class — "killing an app mid-run sti
|
||||
inbox (a389bd0, accepting the reversal). Will COLD-verify when claimed: overlay file GONE, start_period via
|
||||
upstream APP_START_PERIOD env (default=current), green run independent of any cc-ci compose, upgrade-tier
|
||||
§7.1 deferral carries a DECISIONS note + maximal subset green. F2-14a/discourse stays OPEN until then.
|
||||
|
||||
## F2-14a discourse overlay migration — MECHANICALLY DONE, but ONE open question for claim @2026-05-30T15:42:14Z (recon, NOT a verdict — not claimed, no green run yet on this shape)
|
||||
Verified first-hand at origin cf8c54e (re-read actual files; channel was garbling so I cross-checked each):
|
||||
- `find tests -name 'compose.*.yml'` → only ghost + mumble remain. **discourse overlay DELETED.** ✓
|
||||
- `tests/discourse/recipe_meta.py`: no `COMPOSE_FILE` (grep count 0); EXTRA_ENV just `{TIMEOUT:2400}`. ✓
|
||||
- `tests/discourse/install_steps.sh`: now a clean **no-op** (`exit 0`) — no longer copies the deleted
|
||||
overlay (I specifically checked it doesn't `cp` a missing file → would've failed install). ✓
|
||||
So the cc-ci compose fork is gone for discourse — the policy-drift surface is removed. Good.
|
||||
|
||||
**OPEN QUESTION (the §7.1/policy crux — to settle AT CLAIM, do not pass until then):** the start_period
|
||||
fix is NOT the policy's preferred form. Policy E2 wanted an **env var** (`APP_START_PERIOD`, **default =
|
||||
current 5m, no behavior change for existing users**). The Builder instead did a **literal 5m→20m bump in
|
||||
the upstream recipe PR** (fb20321/cf8c54e), justifying it (recipe_meta comment) as "abra can't
|
||||
env-interpolate start_period" + "a longer start_period is a harmless recipe improvement (only delays the
|
||||
unhealthy verdict; a passing check still marks healthy immediately, so fast hosts unaffected)."
|
||||
My assessment: the *harmlessness* argument is technically sound (start_period genuinely is a grace-only
|
||||
window). And a literal upstream bump is still FAR better than a cc-ci overlay (it's the real recipe, tested
|
||||
as-shipped, no drift) — strictly policy-superior to the forked compose. BUT two things I must confirm
|
||||
before closing F2-14a / granting the claim:
|
||||
1. **Is "abra can't env-interpolate start_period" actually true?** Policy pt1 strongly prefers the env
|
||||
var; a literal default-change for all discourse operators is only justified if the env path is
|
||||
genuinely impossible. Builder must cite evidence (the failed interpolation), OR I test it. If env
|
||||
interpolation works, the env-var form (default=5m) is required over a global default bump.
|
||||
2. **Is a 5m→20m default change acceptable upstream?** It changes behavior for every operator (a
|
||||
20-min unhealthy-grace). Defensible as a slow-host improvement, but it's a real default change the
|
||||
policy's "default=current" wording was trying to avoid — wants an operator/maintainer nod or the
|
||||
env-var form.
|
||||
**F2-14a stays OPEN.** Closeable when: (claim) maximal-subset install,backup,restore,custom GREEN on the
|
||||
literal-bump recipe PR head (deploy-count=1, P4 non-vacuous, ≥2 real P3, clean teardown) + the literal-bump
|
||||
deviation is either justified (env-interp proven impossible) or converted to the env-var form. ghost/mumble
|
||||
F2-14b/c still OPEN. VETO on DONE stands.
|
||||
|
||||
Reference in New Issue
Block a user