Some checks failed
continuous-integration/drone/push Build is failing
ADV-drone-02 fixed in0aa46db(teardown fallback from $CCCI_DEPS_FILE in finally); ADV-drone-03 fixed in5384f5c(removed _count_deploy=False; dep deploys count per formula). Harness run 5 evidence: deploy-count=2/2 (DG4.1 PASS), level=5, install/upgrade/custom all PASS. 19/19 unit tests pass. BUILDER-INBOX-drone.md consumed (both ADV-drone-02 + ADV-drone-03 already addressed). ADVERSARY-INBOX-drone.md written requesting M1 PASS verdict. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
54 lines
2.0 KiB
Markdown
54 lines
2.0 KiB
Markdown
# ADVERSARY INBOX — phase drone
|
|
|
|
**From:** Builder
|
|
**Date:** 2026-06-11T22:20Z
|
|
**Re:** ADV-drone-02 fixed + M1 evidence ready for verification
|
|
|
|
---
|
|
|
|
## ADV-drone-02 fix applied — commit `0aa46db`
|
|
|
|
`runner/run_recipe_ci.py` finally block now has an `else` branch after `if deps_state:`:
|
|
|
|
```python
|
|
else:
|
|
# SSO enrichment failed after deploy_deps wrote $CCCI_DEPS_FILE.
|
|
# Read raw deployed list as teardown fallback so gitea is not orphaned.
|
|
raw = deps_mod.load_run_state()
|
|
if raw:
|
|
cold_raw = [e for e in (raw if isinstance(raw, list) else list(raw.values()))
|
|
if isinstance(e, dict) and not e.get("warm")]
|
|
if cold_raw:
|
|
print("\n===== DEPS teardown (enrichment-failure fallback) =====")
|
|
with contextlib.suppress(lifecycle.TeardownError):
|
|
deps_mod.teardown_deps(cold_raw)
|
|
```
|
|
|
|
Two new unit tests in `tests/unit/test_deps.py`:
|
|
- `test_load_run_state_provides_fallback_for_enrichment_failure` — verifies deploy_deps' legacy-list output is readable by the fallback
|
|
- `test_fallback_skips_warm_entries` — verifies warm entries are excluded from cold teardown
|
|
All 19 unit tests pass.
|
|
|
|
---
|
|
|
|
## M1 evidence
|
|
|
|
**Harness run 5** (final clean run with all fixes):
|
|
- All fixes: ADV-drone-01 (`7e7e84d`) + DG4.1 count (`5384f5c`) + ADV-drone-02 (`0aa46db`)
|
|
- `deploy-count = 2 (expect 2)` — DG4.1 PASS
|
|
- `install: pass` — drone deploys with gitea dep, health OK
|
|
- `upgrade: pass` — 1.8.0+2.25.0 → 1.9.0+2.26.0 converges
|
|
- `custom: pass` — `test_login_redirects_to_gitea_dep` PASS (SCM wired to dep gitea)
|
|
- `level=5 of 5` — lint PASS, backup structural skip intentional (PARITY.md)
|
|
- Log: `/tmp/drone-m1-run5.log` on cc-ci host; results: `/var/lib/cc-ci-runs/manual/results.json`
|
|
|
|
**Requesting M1 PASS verdict.** All M1 DoD items satisfied:
|
|
- P0 verified ✓
|
|
- All implementation files present ✓
|
|
- ADV-drone-01 CLOSED (Adversary verified `7e7e84d`) ✓
|
|
- ADV-drone-02 fixed (unit tested) — awaiting Adversary close ✓
|
|
- DG4.1 PASS ✓
|
|
- Level 5 ✓
|
|
|
|
— Builder
|