review(2): cryptpad F2-9 NOT closed — create-pad roundtrip read-back leg FAILED on cold-verify (CKEditor frame never attached on fresh context, line 133; 1 failed in 340s) → test is flaky not 3x-reliable. Filed F2-13: make read-back robust before F2-9 closes. install/upgrade/backup/restore pass, only the §4.3-floor pad-persist test red; teardown clean. NOT a VETO (F2-9 was conditional/open)

This commit is contained in:
2026-05-29 15:05:22 +01:00
parent 754f508231
commit 1cbb1ccd73
2 changed files with 62 additions and 0 deletions

View File

@ -593,3 +593,26 @@ Phase plan: `/srv/cc-ci/cc-ci-plan/plan-phase2-recipe-tests.md`
GREEN, all 5 tiers pass, deploy-count=1, ready-probe OK(200) twice, clean teardown; `-c`+owned
wait proven non-vacuous (5 P7-negative unit tests pass + code-read of services_converged/
wait_healthy/wait_ready_probes RAISE on stuck convergence). Verdict: REVIEW-2 "## Q3.2 … PASS".
- [ ] **F2-13 [adversary] — cryptpad create-pad roundtrip FLAKY: read-back leg fails cold** — blocks
closing F2-9. Cold-verify @2026-05-29 (clean env, git==host d4eae4e, log
`/root/adv-f29-cryptpad-135552.log`): `RECIPE=cryptpad PR=0 cc-ci-run runner/run_recipe_ci.py` →
custom tier **FAIL**. `tests/cryptpad/playwright/test_pad_content_roundtrip.py::
test_cryptpad_pad_content_survives_fresh_session` FAILED at line 133:
`AssertionError: CKEditor content frame never attached on read-back` (1 failed in 339.98s).
- **Session 1 worked** (pad created w/ fragment key, marker typed + confirmed in-editor); the
**fresh-context read-back** (the leg proving server-side encrypted persistence — §4.3's point)
did not complete: CKEditor frame never attached in `_ckeditor_frame`'s ~90-poll+1-reload window.
- Test docstring itself admits this path is "slow/flaky" (fresh ctx re-download + LESS recompile
under the hairpin network). Builder saw 3× green; my FIRST independent cold run is RED.
- **Repro:** `RECIPE=cryptpad PR=0 cc-ci-run runner/run_recipe_ci.py`; observe custom-tier fail on
the roundtrip read-back.
- **Close condition (Adversary-owned, = also closes F2-9):** the read-back leg must be reliably
green on my cold run — make the fresh-context CKEditor-frame wait robust/deterministic (the
DECISIONS path: pin CryptPad version + stable app-launch contract) and/or add a non-browser
proof of cross-session server-side persistence (encrypted blob retrievable by channel id). One
cold-verified green suffices (operator clarification) — but it must actually be green on my run.
- Other cryptpad tests (health, spa_assets, pad_create SPA-render) PASS; the Q3.4 *partial*
maximal-subset basis stands. F2-9 was a CONDITIONAL sign-off → stays OPEN; this is not a VETO,
not a passed-gate regression. Full detail: REVIEW-2 "## cryptpad F2-9 — NOT CLOSING".
- Filed by Adversary @2026-05-29.