CI registration audit #12

Closed
opened 2026-07-05 16:35:37 +03:00 by oleks · 2 comments
Owner

Enumerate all repos with .woodpecker files vs repos actually registered in Woodpecker; fix gaps (known: oleks/woodpecker-peek 404s in the Woodpecker API). Produce the audit as a comment.

See Spec/Modern-CI-Target for requirements.

Enumerate all repos with .woodpecker files vs repos actually registered in Woodpecker; fix gaps (known: oleks/woodpecker-peek 404s in the Woodpecker API). Produce the audit as a comment. See [Spec/Modern-CI-Target](wiki/Spec/Modern-CI-Target) for requirements.
oleks added this to the Modern CI Phase 2+3 milestone 2026-07-05 16:35:37 +03:00
Collaborator

CI registration audit

Enumerated every local checkout under ~/projects with a .woodpecker* config (55 repos, excluding the upstream woodpecker/ checkout itself and the oleks/woodpecker fork), resolved each to its owner/name, and checked registration via the Woodpecker API (GET /api/repos/lookup/<owner>/<name>).

Gaps found and fixed

Repo Status before Fix
oleks/woodpecker-peek 404 (known, referenced in this issue) Registered via POST /api/repos?owner=oleks&name=woodpecker-peek&forge_remote_id=120
oleks/baml-py-arm64 404 Registered (forge_remote_id=126)
oleks/forrest 404 Registered (forge_remote_id=151)
oleks/ci-scripts 404 at audit start Confirmed active (id 143) — needed for #13's cron pipeline

All three are now active: true in Woodpecker with org_id: 1 (oleks).

Non-gaps (investigated, no action needed)

  • oleks/antigravity-plugin-registry — stale local clone whose origin still points at the pre-rename repo name; the Gitea repo itself was renamed to oleks/claude-plugin-registry (same commit history, id 48), which is already registered. Not a real registration gap.
  • openclaw/openclaw — the local checkout's remote resolves to this owner/name, but no such repo exists on git.oleks.space (404 from the Gitea API too, not just Woodpecker). anton/openclaw is the actual registered repo for that project.

Everything else

The remaining ~50 repos with .woodpecker* configs (the full s390x/arm64 build fleet, oleks/version-radar, oleks/mempalace, oleks/nixos-ci, oleks/builder-arbitrage, etc.) were all already registered and active.

Closing with this audit as the record.

## CI registration audit Enumerated every local checkout under `~/projects` with a `.woodpecker*` config (55 repos, excluding the upstream `woodpecker/` checkout itself and the `oleks/woodpecker` fork), resolved each to its `owner/name`, and checked registration via the Woodpecker API (`GET /api/repos/lookup/<owner>/<name>`). ### Gaps found and fixed | Repo | Status before | Fix | |---|---|---| | `oleks/woodpecker-peek` | 404 (known, referenced in this issue) | Registered via `POST /api/repos?owner=oleks&name=woodpecker-peek&forge_remote_id=120` | | `oleks/baml-py-arm64` | 404 | Registered (`forge_remote_id=126`) | | `oleks/forrest` | 404 | Registered (`forge_remote_id=151`) | | `oleks/ci-scripts` | 404 at audit start | Confirmed active (id 143) — needed for #13's cron pipeline | All three are now `active: true` in Woodpecker with `org_id: 1` (oleks). ### Non-gaps (investigated, no action needed) - `oleks/antigravity-plugin-registry` — stale local clone whose `origin` still points at the pre-rename repo name; the Gitea repo itself was renamed to `oleks/claude-plugin-registry` (same commit history, id 48), which is already registered. Not a real registration gap. - `openclaw/openclaw` — the local checkout's remote resolves to this owner/name, but no such repo exists on git.oleks.space (404 from the Gitea API too, not just Woodpecker). `anton/openclaw` is the actual registered repo for that project. ### Everything else The remaining ~50 repos with `.woodpecker*` configs (the full s390x/arm64 build fleet, `oleks/version-radar`, `oleks/mempalace`, `oleks/nixos-ci`, `oleks/builder-arbitrage`, etc.) were all already registered and active. Closing with this audit as the record.
Collaborator

Correction: oleks/forrest was not a real gap

Team-lead flagged that oleks/forrest (id 151) is a mirror/duplicate of the canonical anton/forrest (id 149), which was already registered and active in Woodpecker from earlier epic #8 work — CI intentionally runs only on anton/forrest and oleks/forrest was deliberately left unregistered so pushes there fire nothing (avoiding duplicate builds).

I mistakenly registered oleks/forrest earlier in this audit. Reverted: deactivated it again via DELETE /api/repos/145 — confirmed active: false. anton/forrest (id 149) remains the sole registered CI home for this project.

woodpecker-peek and baml-py-arm64 registrations stand as genuine gaps that are now fixed.

### Correction: oleks/forrest was not a real gap Team-lead flagged that `oleks/forrest` (id 151) is a mirror/duplicate of the canonical `anton/forrest` (id 149), which was already registered and active in Woodpecker from earlier epic #8 work — CI intentionally runs only on `anton/forrest` and `oleks/forrest` was deliberately left unregistered so pushes there fire nothing (avoiding duplicate builds). I mistakenly registered `oleks/forrest` earlier in this audit. Reverted: deactivated it again via `DELETE /api/repos/145` — confirmed `active: false`. `anton/forrest` (id 149) remains the sole registered CI home for this project. `woodpecker-peek` and `baml-py-arm64` registrations stand as genuine gaps that are now fixed.
Sign in to join this conversation.
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: oleks/ci-scripts#12