Review: Woodpecker pipeline missing timestamps for DORA metrics (r2)
Verdict: APPROVED
Board item #1296 — Forgejo issue
ldraney/landscaping-assistant#57. Type: Feature. Points: 2. Re-review after body updates.Previous review:
review-1296-2026-07-26 (NEEDS_REFINEMENT). All [BODY] recommendations have been addressed.Template Completeness
- [x] Type — Feature
- [x] Lineage — Standalone, related to #43 (observability parent)
- [x] Repo —
ldraney/landscaping-assistant - [x] User Story — present (developer wants timestamps for DORA metrics)
- [x] Context — present (null timestamps in Woodpecker API response)
- [x] File Targets — present, verified (see below)
- [x] Feature Flag — present ("None — infrastructure/CI change, no user-visible behavior")
- [x] Acceptance Criteria — 3 items, all testable
- [x] Test Expectations — 2 items
- [x] Constraints — present
- [x] Checklist — present
- [x] Related — present (includes docs/dora/pipeline-timing.md reference)
Traceability
- [x] story:observability label — no formal user-stories entry, acceptable for infrastructure/DevOps work
- [x] story:dora label — no formal user-stories entry, acceptable for infrastructure/DevOps work
- [x] arch:ci-pipeline label — arch-ci-pipeline note exists in pal-e-docs (covers shared Woodpecker pipeline pattern)
- [x] Forgejo issue — ldraney/landscaping-assistant#57, state: open
File Targets
- [x]
.woodpecker.yaml— verified: file exists (89 lines), defines clone/bundle-install/lint/test/build-and-push steps. Correct extension (previous review caught .yml typo, now fixed). - [x]
forgejo_admin/pal-e-platform(cross-repo) — verified: issue now explicitly names the repo and notes it is Terraform-managed. arch-ci-pipeline note confirms Woodpecker server config lives in pal-e-platform. - [x]
docs/dora/pipeline-timing.md— verified: 213-line DORA metrics doc exists with pipeline timing, mermaid diagrams, and DORA ratings. Correctly referenced in Related section.
Repo Placement
OK. Issue filed on landscaping-assistant, which is the repo whose DORA metrics are being measured. Issue now explicitly acknowledges cross-repo scope: "Woodpecker server config lives in
forgejo_admin/pal-e-platform (Terraform-managed) — may require cross-repo investigation." This is clear and accurate.Dependencies
No blocking dependencies. #1294 (Verify DORA metrics flowing in Grafana) is done. Parent #43 (observability chain) is open but non-blocking. No items in in_progress or next_up are related to DORA/observability/pipeline timestamps.
Acceptance Criteria
3 AC items, all testable via Woodpecker MCP tools (
list_pipelines, get_pipeline_status). AC #3 was tightened from previous review — now reads "DORA deployment frequency calculable from push-to-main pipeline history (query list_pipelines, confirm non-null timestamps)." Binary pass/fail verifiable. Test expectations correctly reference the same MCP tools.Blast Radius
If the fix involves a Woodpecker server upgrade or config change in pal-e-platform, it affects ALL repos using Woodpecker CI (basketball-api, pal-e-docs, westside-contracts, etc. per arch-ci-pipeline). The issue's Constraints section acknowledges this ("May require Woodpecker server upgrade or config change"). Validation should include spot-checking timestamps on at least one other repo's pipelines.
Decomposition Assessment
2 file targets (1 local, 1 cross-repo reference), 3 acceptance criteria, 2 story points. Fits in a single agent pass. No decomposition needed.
Recommendation
No action needed.