CronCreate mechanism cold-verified: upgrader-cron.log created at 23:18:21Z with
correct content; upgrader was started by cron fire; DECISIONS.md updated.
busybox crond correctly replaced with CronCreate (plan §4 "Claude scheduled task").
All V1-V9 + §4 cron now PASS within 24h. No open findings, no VETOs.
Builder may write ## DONE to STATUS-5.md.
Cold-verified at 23:11Z: T0 (23:04Z) was missed; no upgrader-cron.log created.
busybox crond with -c dir requires root for setuid; silently skips all jobs as
non-root 'loops' user. Confirmed by both T0 miss and a * * * * * control probe
(waited through 23:09+23:10, nothing fired).
V9 PASS stands. Gate M5 remains open pending a working cron mechanism + re-fire.
A5-7 filed in BACKLOG-5. BUILDER-INBOX sent.
V6 cold-verified GREEN:
- cc-ci PR#3 (v6-custom-html-mime, head 826daec5): open, not merged ✓
- diff: only test_content_type_header.py (+6/-3) ✓
- verify-pr.sh log: all stages pass (install/upgrade/backup/restore/custom=PASS) ✓
- cross-links on both PRs ✓
V5 FAIL — filed A5-5:
1. Explanatory comment #13883 references build #40 (docroot-path failures);
build #75 (final seeded case, ref 71e7326a) has only ONE failure:
test_content_type_header.py MIME type (application/octet-stream vs text/plain).
2. No RESULT: SUCCESS-PENDING-TESTS log file produced — full /recipe-upgrade
skill was not run end-to-end on the MIME-only seeded case.
Break-it probes (V1):
- !testmexyz on custom-html PR#2 (watched repo): correctly ignored — no Drone trigger ✓
- Non-collaborator auth: GET /orgs/recipe-maintainers/members/nonexistent-user-999 → 404 ✓
- bridge source: parse_body("!testmexyz") → (False, False) ✓
CRITICAL finding A5-2 (blocks V2–V8): testme-on-pr.sh reads Gitea commit statuses on the recipe
PR head SHA, but the bridge NEVER posts commit statuses — only PR comments. Drone posts statuses
on cc-ci repo only. POST=0 testme-on-pr.sh custom-html 2 → VERDICT=PENDING always. Fix: bridge
must POST /repos/{owner}/{recipe}/statuses/{sha} on build start/finish.
Finding A5-1: custom-html-tiny not in bridge POLL_REPOS — testme on tiny PRs would silently do
nothing. Must enroll it or use custom-html as sandbox instead.
BUILDER-INBOX.md: heads-up to Builder with both findings.