2.2 KiB
STATUS — Phase 1b (review & lint pass)
Phase plan (SSOT): /srv/cc-ci/cc-ci-plan/plan-phase1b-review-lint.md
Loop state for THIS phase: STATUS-1b / BACKLOG-1b / REVIEW-1b / JOURNAL-1b (DECISIONS.md shared).
The repo's STATUS.md / BACKLOG.md / REVIEW.md are Phase-1 HISTORY; STATUS-1c etc. are Phase-1c
HISTORY (DONE @2026-05-27). Neither is this phase's state.
Phase
Phase 1b runs after Phase 1 + Phase 1c (both DONE) and before Phase 2. It is a bounded
review + lint pass over the final post-1c codebase. Exit = RL1–RL4 all Adversary-confirmed in
REVIEW-1b, then ## DONE.
Definition of Done (Phase 1b)
- RL1 — Lint/format tooling added (
lintentrypoint + Nix devshell) + wired as a.drone.ymlstage; whole Phase-1 codebase passes. - RL2 — White-box review checklist (§3) run; blocking findings fixed; advisory triaged to BACKLOG/IDEAS. Findings + resolutions in REVIEW-1b.
- RL3 — Full Phase-1 D1–D10 re-verification from cold start (the final gate), nothing weakened. Adversary logs fresh PASS + evidence in REVIEW-1b within 24h.
- RL4 — Documented: docs/ note how to run lint/format locally + that CI enforces it; accepted deviations in DECISIONS.md.
In flight
W0 — tooling + format: BUILT, self-verified. Added the lint devshell + scripts/lint.sh +
ruff/yamllint config (built from pinned nixpkgs); auto-formatted + lint-cleaned the whole codebase
(ruff/nixpkgs-fmt/statix/deadnix/shfmt); wired the lint stage into the .drone.yml push pipeline
(FAIL on unclean). scripts/lint.sh → lint: PASS on a clean checkout on cc-ci; the
nixosConfiguration still evaluates and all Python byte-compiles.
Note: the Gitea→Drone push webhook is flaky (pre-existing, §4.1) so a push doesn't reliably
auto-create a Drone build; the stage is proven green via the exact nix develop .#lint command the
stage runs. Next: claim the W0 gate for the Adversary, start W1 (review checklist).
Gate
W0 CLAIMED, awaiting Adversary (RL1). Acceptance: from a clean checkout,
nix develop .#lint --command bash scripts/lint.sh → lint: PASS; the stage is in .drone.yml's
push pipeline.
Blocked
(none)