Files
cc-ci/machine-docs/STATUS-mirror.md
autonomic-bot ac85b0853e
Some checks failed
continuous-integration/drone/push Build is failing
status(mirror): A-mirror-1 RESOLVED — hedgedoc build #113 SUCCESS (00:32:07Z, 81s)
2026-06-02 00:37:43 +00:00

3.8 KiB

STATUS — cc-ci mirror-enroll Builder

Phase: mirror + enroll ALL recipes SSOT: /srv/cc-ci/cc-ci-plan/plan-mirror-enroll-all-recipes.md Started: 2026-06-02

Current state

Phase 0 — Pre-flight ✓ COMPLETE

  • abra recipe fetch: lasuite-drive, mailu, mumble all exit 0 (already fetched on cc-ci)
  • Gitea: lasuite-drive=404, mailu=404, mumble=404 (mirrors absent — to create)
  • Gitea: bluesky-pds, discourse, ghost, immich, mattermost-lts, plausible = 200 (mirrors exist)
  • POLL_REPOS (bridge.nix): 11 entries; 9 unenrolled recipes absent
  • tests/: all 9 unenrolled recipes have tests// already (Adversary-confirmed)
  • hedgedoc: NO tests/hedgedoc/ (plan Phase 2 must author)

Phase 1 — Create 3 missing mirrors ✓ COMPLETE

  • lasuite-drive: created (HTTP 201), main synced to f4135d78 (upstream) ✓
  • mailu: created (HTTP 201), main synced to 23309a1a (upstream) ✓
  • mumble: created (HTTP 201), main synced to 9fa5e949 (upstream) ✓
  • Verified: all 3 return HTTP 200 from Gitea API, empty=false ✓
  • Method: Gitea API POST /orgs/recipe-maintainers/repos + git push --force gitea main on cc-ci

Phase 2 — hedgedoc test suite ✓ COMPLETE

  • tests/hedgedoc/recipe_meta.py (HEALTH_PATH=/, HEALTH_OK=(200,302), DEPLOY_TIMEOUT=600) ✓
  • tests/hedgedoc/functional/test_health_check.py (GET / → 200 or 302) ✓
  • tests/hedgedoc/functional/test_branding.py (hedgedoc/codimd/hackmd brand markers in HTML) ✓
  • tests/hedgedoc/PARITY.md (documents scope + deferred items) ✓
  • NOTE: test_install.py/test_upgrade.py/ops.py deferred (generic tiers cover baseline)

Phase 3 — Enroll 9 unenrolled recipes ✓ COMPLETE

  • nix/modules/bridge.nix POLL_REPOS updated: added bluesky-pds,discourse,ghost,immich, lasuite-drive,mailu,mattermost-lts,mumble,plausible (9 new entries → 20 total)
  • Final POLL_REPOS: cc-ci + 19 recipes (all enrolled recipes + all 9 previously unenrolled)

A-mirror-1 — hedgedoc !testme post-authoring — RESOLVED ✓

  • Posted !testme on hedgedoc PR#1 (comment 13926) at 2026-06-02T00:30:30Z
  • Bridge triggered Drone build #113 (hedgedoc@441c411c) at 00:30:46Z
  • Build #113: SUCCESS ✓ (finished 00:32:07Z, 81s) — both stages (clone + ci) green
  • New test files (test_health_check.py, test_branding.py) ran against live hedgedoc deploy
  • Repro: https://drone.ci.commoninternet.net/recipe-maintainers/cc-ci/113
  • Adversary must verify build #113 success and close A-mirror-1 in BACKLOG-mirror.md

Phase 4 — Deploy — OPERATOR GATE CLAIMED (awaiting Adversary + operator)

Gate: Ph4 CLAIMED — awaiting Adversary verification of Ph1+Ph2+Ph3, then operator deploy

WHAT: Phases 1-3 complete. Bridge config updated with 20 POLL_REPOS. Mirrors for lasuite-drive, mailu, mumble created + synced. hedgedoc tests authored. Adversary must verify Ph1 mirrors + Ph3 POLL_REPOS change before operator deploys.

HOW to verify (Adversary):

  • Ph1 mirrors: curl -s -u <bot> https://git.autonomic.zone/api/v1/repos/recipe-maintainers/<r> for lasuite-drive, mailu, mumble → HTTP 200 + empty=false + default_branch=main
  • Ph2 tests: ls tests/hedgedoc/ → recipe_meta.py, PARITY.md, functional/ present; ls tests/hedgedoc/functional/ → test_health_check.py, test_branding.py present
  • Ph3 POLL_REPOS: grep POLL_REPOS nix/modules/bridge.nix → contains all 20 repos (cc-ci + 19 recipes including the 9 new ones)
  • Repro: git clone https://git.autonomic.zone/recipe-maintainers/cc-ci && grep POLL_REPOS nix/modules/bridge.nix

EXPECTED: Adversary verifies all 3 checks PASS. Then operator runs:

ssh cc-ci 'cd /root/cc-ci && git pull --rebase && nixos-rebuild switch --flake .#cc-ci'

(or via the repo's nixos-rebuild switch --flake path:/root/builder-clone#cc-ci path once synced)

WHERE: commit containing this STATUS update (git log --oneline -1 on main)

Blocked

  • (none)