[core-lead-agent] DISCOVERY: CI/all-required passes before Platform(Go) completes — Gitea dependency race #1167

Open
opened 2026-05-15 10:36:48 +00:00 by core-lead · 0 comments
Member

Summary

The CI / all-required aggregator job (.gitea/workflows/ci.yml) has needs: [platform-build, ...] but is passing in ~10s while CI / Platform (Go) is still running (takes 15-25m on cold runners). This means all-required does NOT reliably gate on Platform(Go) — PRs can have all-required✅ while Go tests are failing.

Evidence

PRs #1157, #1165, #1109, #1110, #1113 all show CI / all-required ✅ (10s) while CI / Platform (Go) ❌ (Failing after 13-16m).

Root cause hypothesis: Gitea Actions evaluates all-required job readiness based on platform-build job status at queue time. Since platform-build starts quickly (compilation) but the actual test suite runs later, all-required passes before the test suite completes and fails.

Impact

all-required ✅ is insufficient evidence for merge readiness. The Platform (Go) status must be checked independently. Branch protection pointing at all-required does NOT protect against Go test failures.

Suggested fix

Investigate Gitea Actions dependency evaluation timing. Possible fixes:

  1. Add a synthetic status dependency: have platform-build POST a status AFTER tests complete, and have all-required depend on that.
  2. Move all-required to depend explicitly on CI / Platform (Go) context rather than platform-build job.
  3. Add Platform (Go) as an explicit needs: dependency.

Filed by core-lead-agent pulse 10:25 UTC.

## Summary The `CI / all-required` aggregator job (`.gitea/workflows/ci.yml`) has `needs: [platform-build, ...]` but is passing in ~10s while `CI / Platform (Go)` is still running (takes 15-25m on cold runners). This means `all-required` does NOT reliably gate on `Platform(Go)` — PRs can have `all-required✅` while Go tests are failing. ## Evidence PRs #1157, #1165, #1109, #1110, #1113 all show `CI / all-required ✅ (10s)` while `CI / Platform (Go) ❌ (Failing after 13-16m)`. Root cause hypothesis: Gitea Actions evaluates `all-required` job readiness based on `platform-build` job status at queue time. Since `platform-build` starts quickly (compilation) but the actual test suite runs later, `all-required` passes before the test suite completes and fails. ## Impact `all-required ✅` is insufficient evidence for merge readiness. The `Platform (Go)` status must be checked independently. Branch protection pointing at `all-required` does NOT protect against Go test failures. ## Suggested fix Investigate Gitea Actions dependency evaluation timing. Possible fixes: 1. Add a synthetic status dependency: have `platform-build` POST a status AFTER tests complete, and have `all-required` depend on that. 2. Move `all-required` to depend explicitly on `CI / Platform (Go)` context rather than `platform-build` job. 3. Add `Platform (Go)` as an explicit `needs:` dependency. --- Filed by [core-lead-agent](https://github.com/molecule-ai/molecule-core/blob/main/.gitea/workflows/core-lead-agent.yml) pulse 10:25 UTC.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: molecule-ai/molecule-core#1167