7e7e84df34
fix(drone): ADV-drone-01 — no-follow redirect pattern in SCM test
...
continuous-integration/drone/push Build is failing
test_scm_configured.py was following ALL redirects via urlopen; gitea redirects
unauthenticated users from /login/oauth/authorize → /user/login, so the path
assertion always failed even for a correctly-wired drone.
Fix: _CaptureOneRedirect urllib handler stops after drone's first 303 and reads
the Location header directly, before gitea's own redirect chain runs.
- Consume BUILDER-INBOX.md (ADV-drone-01 finding delivered and addressed)
- Close ADV-drone-01 in BACKLOG-drone.md
- Update test_gitea_dep.py terminology: "location_url" not "final_url"
- All 10 unit tests pass
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-11 21:48:36 +00:00
d20bffd597
review(drone): BUILDER-INBOX — ADV-drone-01 critical, fix before M1 claim
continuous-integration/drone/push Build is failing
2026-06-11 21:43:40 +00:00
eb58f9f053
review(drone): ADV-drone-01 CRITICAL — test_scm_configured follows all redirects; assertion always fails even when wired correctly
continuous-integration/drone/push Build is failing
2026-06-11 21:42:42 +00:00
51c3280163
feat(drone): enroll drone + gitea SCM dep (M1 implementation)
...
continuous-integration/drone/push Build is failing
- tests/gitea/recipe_meta.py: gitea as install-time dep provider; sqlite3
overlay EXTRA_ENV, health path /api/healthz, relaxed access for CI use
- tests/drone/recipe_meta.py: DEPS=["gitea"]; health /healthz; 600s timeout
- tests/drone/install_steps.sh: wires GITEA_CLIENT_ID + GITEA_DOMAIN +
client_secret Docker secret + DRONE_USER_CREATE before single drone deploy
- tests/drone/functional/test_scm_configured.py: Playwright-free SCM test —
follows /login redirect, asserts final URL is gitea dep's OAuth2 authorize
endpoint with matching client_id (per Adversary pre-probe REVIEW-drone.md)
- tests/drone/PARITY.md: backup structural-skip justified (no backupbot labels)
- runner/harness/sso.py: setup_gitea_oauth() — creates gitea admin user via
CLI + OAuth2 app via API, returns {admin_user, admin_password, client_id,
client_secret} for install_steps.sh consumption
- runner/run_recipe_ci.py: _enrich_deps_with_sso now handles gitea dep (calls
setup_gitea_oauth; keycloak path unchanged)
- tests/unit/test_gitea_dep.py: unit tests for gitea dep path — meta loading,
SSO routing, SCM redirect assertion logic (parametrized)
- machine-docs: STATUS/JOURNAL/BACKLOG-drone.md phase state files initialized
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-11 21:31:43 +00:00
8ca5b44186
review(drone): pre-probe — SCM-configured test design; /login redirect is the correct tooth
continuous-integration/drone/push Build is failing
2026-06-11 21:26:11 +00:00
f3c526d9e9
review(drone): init phase — P0 verified, pre-probes done, awaiting Builder claims
continuous-integration/drone/push Build is failing
2026-06-11 21:22:30 +00:00
6607d7767f
status(mailu): ## DONE — M1+M2 PASS; PR#3 open for operator merge; builds #477+#483 both L5; backup/restore on /data+/mail proven; DEFERRED closed
continuous-integration/drone/push Build is failing
2026-06-11 21:17:45 +00:00
be526c8252
review(mailu): M2 PASS @2026-06-11T21:15Z — build #483 LEVEL 5, fresh independent re-trigger; all phase DoD satisfied
...
continuous-integration/drone/push Build is failing
Independent cold pass: Adversary posted !testme on PR#3 (comment #14363 ); build #483 reached
LEVEL 5 (install/upgrade/backup_restore/functional/lint all pass); both Maildir tests pass again
(test_backup_captures_mail_message + test_restore_returns_mail_message); clean_teardown+no_secret_leak
true; DEFERRED closed; levels reconciled; PARITY.md dual-volume; operator summary complete.
Phase mailu DONE. Builder cleared for ## DONE in STATUS-mailu.md.
2026-06-11 21:16:27 +00:00
b17b6f1232
claim(mailu): M2 — DEFERRED closed; PARITY.md updated with dual-volume evidence; operator summary written; PR#3 open for merge; awaiting Adversary fresh re-trigger
continuous-integration/drone/push Build is failing
continuous-integration/drone Build is passing
2026-06-11 21:03:51 +00:00
73ea239cfc
review(mailu): M1 PASS @2026-06-11T21:00Z — build #477 LEVEL 5, both /data+/mail volumes tested; ADV-mailu-01 closed
...
continuous-integration/drone/push Build is failing
Cold verify: PR#3 labels correct (admin:/data + imap:/mail); build #477 LEVEL 5 all rungs pass;
test_backup_captures_mail_message PASS + test_restore_returns_mail_message PASS — Maildir
backup/restore cycle proven. clean_teardown+no_secret_leak true. ADV-mailu-01 fix verified.
Builder cleared for M2.
2026-06-11 21:01:19 +00:00
ec5882dd71
claim(mailu): M1 re-claim — build #477 LEVEL 5; ADV-mailu-01 fixed; /mail Maildir now seeded, wiped, and verified restored; both test_backup_captures_mail_message + test_restore_returns_mail_message PASS
continuous-integration/drone/push Build is failing
2026-06-11 20:59:39 +00:00
85a781368a
machine-docs: move all per-phase coordination files out of repo root
...
continuous-integration/drone/push Build is failing
STATUS/BACKLOG/REVIEW/JOURNAL for bsky/conc/dstamp/kuma/lvl5/mailu/rcust/shot
(32 files) were at the repo root; move them into machine-docs/ to match the
mandated file-location rule (DECISIONS/DEFERRED/INBOX + older phases already
live there). AGENTS.md gains an explicit File-location rule. No content change.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-11 20:57:03 +00:00
9afdf3de5a
claim(kuma): M2 — build #462 LEVEL 5 PASS (flake #2 ); DEFERRED closed; PARITY updated
...
continuous-integration/drone/push Build is failing
Second drone run #462 : uptime-kuma@eb4521cc (PR #3 ) = LEVEL 5.
test_monitor_wizard [pass] in both #460 + #462 — flake check complete.
DEFERRED.md "uptime-kuma create-a-monitor" closed with build+commit pointers.
PARITY.md: new row for tests/uptime-kuma/playwright/test_monitor_wizard.py.
M1 Adversary PASS @2026-06-11T18:26Z (REVIEW-kuma.md).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-11 18:32:16 +00:00
8da59cff22
feat(kuma): implement wizard+monitor Playwright test (tests/uptime-kuma/playwright/)
...
continuous-integration/drone/push Build is failing
continuous-integration/drone Build is passing
Phase kuma M1 impl: resolves the 2026-05-28 DEFERRED uptime-kuma create-a-monitor item.
Approach: Playwright (option b) — python-socketio not in cc-ci Nix env; Playwright
handles Socket.IO transparently via the real browser. Selectors confirmed in 2.2.1
compiled bundle (data-cy setup wizard + data-testid monitor form/status badge).
Test flow (test_monitor_wizard_and_probe):
1. Setup wizard: admin create via data-cy form → auto-login → /dashboard
2. Create self-probe monitor (https://{live_app}/ ) → wait ≤90s for "Up" badge
3. Heartbeat table row check: isFirstBeat=important, row has real datetime stamp
4. Negative: dead-port monitor (http://127.0.0.1:19999/dead ) → wait ≤60s for "Down"
All waits are bounded poll with page.wait_for_function/wait_for_url/wait_for_selector.
Admin password: 64-char UUID hex, never printed/logged.
Also: DECISIONS.md records Playwright choice; phase state files bootstrapped.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-11 18:15:13 +00:00
1e22f6ea79
claim(dstamp): M2 — discourse full lifecycle GREEN at true level (LEVEL 5) via drone !testme build #450 (cc-ci main 2da1f01 w/ fix); upgrade-HC1 stamps head, clean teardown + no leak; PR#2 ✅ passed. DEFERRED closed. Blast-radius: only discourse affected. HC1 unweakened (commit-match unchanged + assert_upgrade_converged RED on rollback). Verification recipe in STATUS-dstamp
continuous-integration/drone/push Build is failing
2026-06-11 17:46:14 +00:00
f1500123e7
docs(deferred): bluesky-pds entry RESOLVED — fix PR#2 open (re-pin 0.4.219), green run 427 level 5 at PR head, screenshot real; pointers to upstream registry + decisions
continuous-integration/drone/push Build is passing
2026-06-11 11:57:12 +00:00
72b3d6c089
journal(bsky): run 423 red = upgrade-base trap (base 0.1.1+v0.4 pins broken :0.4, PR head never reached); decisions entry for EXPECTED_NA-upgrade base suppression; run 427 in flight
continuous-integration/drone/push Build is passing
2026-06-11 11:52:39 +00:00
823023a19a
docs(deferred): operator housekeeping pass 2026-06-11
...
continuous-integration/drone/push Build is passing
- CLOSED: plausible enrollment (overtaken — enrolled+running), discourse
bitnami pin (superseded — enrolled, L4 baseline), immich pg_dump (PR#2
green, operator merge pending), plausible Q4.7b ClickHouse (PR#3 green,
operator merge pending)
- RE-ENTERED per operator: mailu backupbot -> phase mailu, drone enrollment
-> phase drone, uptime-kuma create-a-monitor -> phase kuma, discourse
abra-stamp drift -> phase dstamp, bluesky-pds -> phase bsky (in progress)
2026-06-11 11:42:12 +00:00
fc16250db2
status(bsky): bootstrap phase — root cause proven (:0.4 moving tag now ships 0.5.1/node24/index.ts; recipe entrypoint execs index.js), fix = exact-pin 0.4.219; decisions + upstream registry
continuous-integration/drone/push Build is passing
continuous-integration/drone Build is failing
2026-06-11 11:37:28 +00:00
9ce987188a
status(lvl5): ## DONE — M1 ( cfc87fd) + M2 ( 13cad1f) both PASS, no VETO; L5 lint rung + de-capped levels live end-to-end; cleanup complete
continuous-integration/drone/push Build is passing
2026-06-11 11:29:32 +00:00
392f7df48f
decisions(lvl5): level-semantics de-cap record, N/A classification table, lint mirror-context decision
continuous-integration/drone/push Build is passing
2026-06-11 07:43:25 +00:00
6104a9970d
chore(shot): DEFERRED — mumble-web client never paints for anonymous visitors (upstream question; loader frame is the honest web-surface view; voice fully tested via protocol tests)
continuous-integration/drone/push Build is passing
2026-06-11 07:02:49 +00:00
89dec5188f
inbox(rcust): consumed 01:12Z be2026a-cleared note; bluesky-pds filed in DEFERRED.md as non-rcust upstream image breakage (justified M2 exclusion, A/B-proven harness-neutral)
continuous-integration/drone/push Build is passing
2026-06-11 01:00:32 +00:00
24a203a098
review(rcust): be2026a fix-forward CLEARED (all 3 conditions met, independently verified) + ACCEPT L5≡L4+OIDC-pass equivalence — lasuite-* L5 baselines stale ( c51cd84 4-rung predates rcust, git-proven), rcust innocent, OIDC coverage preserved. Consumed 01:10Z inbox. M2 still open: bluesky upstream-breakage note, drone-path runs, zero-leak, my sample re-check
continuous-integration/drone/push Build is passing
2026-06-11 00:59:29 +00:00
f359069d40
inbox(rcust): m2p2 GREEN rc=0 3m19s (both fix-forwards exercised end-to-end; OIDC+MinIO pass) — level=4 vs condition-1 'L5' explained: 6-rung ladder removed on MAINLINE 06-09 (46e2cdb/c51cd84 PR#6) pre-merge; equivalence proposed (L4 all-pass + requires_deps OIDC PASSED)
continuous-integration/drone/push Build is passing
continuous-integration/drone Build is passing
2026-06-11 00:57:12 +00:00
a13a83a775
status(rcust): discourse A/B CLOSED — old==new byte-identical upgrade-HC1 at baseline ref+invocation (harness-neutral, env drift since 06-05; branch-tip/tag/abra-pin drift eliminated); m2p2 lasuite-drive binding proof started
continuous-integration/drone/push Build is passing
2026-06-11 00:51:10 +00:00
914c1663b5
inbox(rcust): consumed 00:31Z conditional APPROVE — merging be2026a, post-merge lasuite-drive re-run queued behind discourse A/B pair
continuous-integration/drone/push Build is passing
2026-06-11 00:33:07 +00:00
a531746e53
review(rcust): APPROVE fix-forward be2026a (services_converged completed-one-shot rule) — cold-verified diff+7 tests+199 unit+lint on fresh checkout, no false-green path (HTTP floor + minio custom test independent); conditional on post-merge lasuite-drive L5 + merged-diff==branch-diff + discourse PR=2 A/B cold re-check. Consumed 00:40Z inbox
continuous-integration/drone/push Build is passing
2026-06-11 00:31:54 +00:00
73421dabb4
inbox(rcust): lasuite-drive SECOND P2b regression root-caused live (completed one-shot 0/1 poisons services_converged after hook moved pre-assert) — fix-forward on branch fix/converged-oneshot @ be2026a, 199 unit + lint green, awaiting approval
continuous-integration/drone/push Build is passing
2026-06-11 00:27:49 +00:00
77a9415b37
inbox(rcust): consumed Builder 00:20Z reply — proof runs confirmed queued; m2b-discourse/sidekiq/bluesky facts noted for independent cold-verify (not taken on trust)
continuous-integration/drone/push Build is passing
2026-06-11 00:06:42 +00:00
1ec0e772e8
inbox(rcust): consumed 23:53Z asks — lasuite-drive proof RUNNING, discourse same-ref 2x2 queued (new-main PR=2 + old-main PR=2 @7ae7b0f); m2b-discourse HC1 facts pinned (re-checkout persisted, eb96de94=base tag, sidekiq line benign); bluesky-pds = upstream image breakage (MODULE_NOT_FOUND x3, harness-neutral)
continuous-integration/drone/push Build is passing
2026-06-11 00:06:13 +00:00
40b59b356b
review(rcust): M2 proof-run cold analysis — 3/6 (immich/mattermost/plausible) reproduce baseline L4 at baseline ref on merged main (restructure innocent); discourse L4->L1 upgrade-HC1 at baseline ref UNexplained (A/B was at wrong ref) + lasuite-drive needs fresh L5 post-fix-forward; M2 OPEN
continuous-integration/drone/push Build is passing
2026-06-10 23:54:36 +00:00
efd7efc32b
inbox(rcust): consumed 20:53Z approval — fix-forward pushed as 57c66ad; proof re-run at baseline REF queued behind tests 2+3
continuous-integration/drone/push Build is passing
2026-06-10 20:53:52 +00:00
57c66add51
review(rcust): APPROVE lasuite-drive pre_install fix-forward (scoped to line-54 bucket-poll raise→best-effort; verified old=best-effort, custom MinIO test is real gate, no coverage loss); conditioned on L5 re-run + my diff re-verify. Auditing other shell->python hook ports for same drift
continuous-integration/drone/push Build is passing
2026-06-10 20:52:53 +00:00
a95fad4fa0
inbox(rcust): lasuite-drive P2b port regression root-caused (best-effort poll became fatal assert) — trivial fix-forward proposed, awaiting Adversary approval
continuous-integration/drone/push Build is passing
2026-06-10 20:50:31 +00:00
b9abf48116
inbox(rcust): consumed 20:33Z ACK — ref-mismatch independently confirmed; tests 2+3 concurred; proceeding
continuous-integration/drone/push Build is passing
2026-06-10 20:34:36 +00:00
4cb1f57e2c
inbox(rcust): consumed Builder 20:35Z ref-mismatch heads-up + ACK — independently confirmed sweep ran default-branch heads (7d53d4ec/da159375) != baseline PR refs; concur tests 2+3 separate harness×content; will run own cold A/B at claim
continuous-integration/drone/push Build is passing
2026-06-10 20:33:56 +00:00
e30a414ce1
inbox(rcust): heads-up — restore cluster is a REF-mismatch vs baseline (sweep ran old default heads; baselines were PR-head runs); baseline-REF re-runs + old-main A/B queued
continuous-integration/drone/push Build is passing
2026-06-10 20:32:33 +00:00
41033b4500
inbox(rcust): consumed 20:15Z follow-up — restore cluster confirmed pre-existing, VETO threat withdrawn; proceeding to satisfy the 4 M2 PASS conditions (re-runs at baseline, canary+zero-leak, log sample, !testme x2)
continuous-integration/drone/push Build is passing
2026-06-10 20:19:12 +00:00
a7a558ada3
note(rcust): M2 follow-up — confirmed restore cluster is the PRE-EXISTING truncated-dump race (documented in discourse BACKUP_VERIFY docstring on pre-merge 49fb818); VETO-threat withdrawn; stated M2 PASS conditions (re-runs at baseline + spot-checks)
continuous-integration/drone/push Build is passing
2026-06-10 20:18:26 +00:00
37dcfab07d
inbox(rcust): consumed Adversary 20:13Z restore-cluster heads-up — ACK: serial re-runs of all 6 already in flight (/root/m2-rerun-logs/, results m2rr-*); will ALSO run immich on OLD main (pre-merge c2508c7) serially in the same env as the requested A/B regardless of re-run outcome; no M2 claim until both legs are documented in STATUS
continuous-integration/drone/push Build is passing
2026-06-10 20:18:13 +00:00
ffc88848f3
note(rcust): M2 heads-up — restore-failure cluster (discourse/immich/plausible/mattermost ci_marker-missing) blocks M2 PASS; evidence says infra/pre-existing not restructure (restore orchestration unchanged, no BACKUP_VERIFY correlation, peers pass); suggest A/B vs old main (NOT a verdict)
continuous-integration/drone/push Build is passing
2026-06-10 20:17:14 +00:00
8984b57b35
status(rcust): P6 complete ( da558ca) + Adversary inbox consumed — manifest redaction landed ( 858e0f5); M1 prep starting
continuous-integration/drone/push Build is passing
2026-06-10 19:10:00 +00:00
5ccc0d1c34
note(rcust): interim pre-review of frozen P5 ( 68954be) — cold unit 191 + lint PASS reproduced; manifest exposes NO generated/real secrets (HC2-honoring, pure presentation); one non-blocking heads-up re plausible SECRET_KEY_BASE public-dummy on dashboard (NOT an M1 verdict)
continuous-integration/drone/push Build is passing
2026-06-10 19:07:24 +00:00
0684576d74
chore(conc): consume BUILDER-INBOX (ML-flake context on (c) round-2; concur — will re-trigger (c) clean after 290/291 terminal)
continuous-integration/drone/push Build is passing
continuous-integration/drone Build was killed
2026-06-10 08:45:14 +00:00
fa9a89bcf8
review(conc): live (c) round-2 — serialization confirmed via lslocks; delay is immich-ML healthcheck flake, not the restructure; veto unchanged
...
continuous-integration/drone/push Build is passing
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-10 08:44:30 +00:00
4f6c9554b7
inbox(adversary): consumed CONC-A1-fixed message from Builder
...
continuous-integration/drone/push Build is passing
continuous-integration/drone Build is passing
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-10 08:17:16 +00:00
96ba67a63f
inbox(adversary): CONC-A1 fixed b6e12ef/139e319 — run-keyed state files + regression test; re-running M2 live checks
continuous-integration/drone/push Build is passing
2026-06-10 08:16:43 +00:00
3180ae1355
review(conc): wrapper exit-code fix verified safe (red still propagates) + correct my set -e pre-review miss; inbox consumed
continuous-integration/drone/push Build is passing
2026-06-10 04:58:27 +00:00
bbc2bafbcb
inbox(adversary): M2 wrapper exit-code fix e1c4198/b7a009c — context for M2 review
continuous-integration/drone/push Build is passing
continuous-integration/drone Build is passing
2026-06-10 04:55:07 +00:00