Compare commits
1
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f1d16f44b8 |
@@ -344,23 +344,19 @@ rendered sidecar against its **own ServiceDefinition**, which is the only readin
|
||||
rather than leaving "something is red" as the whole report. Fail-closed is correct here and
|
||||
deliberate: unlike `gitea-settings`, where a missing credential is a lock-out, a skip of this
|
||||
stage would be a bypass (CLAUDE.md §1).
|
||||
- **CI, read from each commit's `/statuses` rather than from a tick.** Both contexts report, and
|
||||
**only one of them runs**. Identical on `99560c2d`, `df1b25b6` and `f1d16f44`:
|
||||
- **CI, read from the commit's `/statuses` rather than from a tick.** On the branch head
|
||||
`df1b25b6`, both contexts have reported and **only one of them ran**:
|
||||
|
||||
gate / gate (pull_request) state=failure desc='Failing after ~1m43-1m45s'
|
||||
gate / gate (pull_request) state=failure desc='Failing after 1m45s'
|
||||
gate / conformance (pull_request) state=success desc='Has been skipped'
|
||||
|
||||
**That second line is §2b's trap in the wild**: a *skipped* Gitea job reports
|
||||
`state=success`. The conformance job did not execute, so its green tick certifies nothing —
|
||||
read the description, not the colour. The duration is given as a range on purpose: it differs
|
||||
by a second or two per run, and pinning one number inside the file whose commit triggers the
|
||||
next run is a self-reference, not a measurement. The load-bearing fields are the **state** and
|
||||
the **description**, and those are stable across all three.
|
||||
|
||||
Worth recording that the **same context changed its answer over time**: on the first push it
|
||||
briefly read `state=pending desc='Blocked by required conditions'` — still waiting on the gate
|
||||
job it depends on — and resolved to `success` only once that job settled. So sampling a status
|
||||
once can show either a pending **or** a green tick for a job that never executed.
|
||||
read the description, not the colour. Worth recording the earlier reading too, because the
|
||||
**same context changed its answer**: on the first push (`99560c2d`) it was
|
||||
`state=pending desc='Blocked by required conditions'`, i.e. still waiting on the gate job it
|
||||
depends on; once that job settled, the skip resolved to `success`. Anyone sampling a status
|
||||
once can therefore see either a pending or a green tick for a job that never ran.
|
||||
**I could NOT read the CI job log to confirm the failing stage from CI's
|
||||
own output**: this Gitea's `/api/v1/repos/{owner}/{repo}/actions/runs` endpoint answers
|
||||
**404** (only `/actions/tasks` exists, which lists tasks without logs), and
|
||||
|
||||
Reference in new issue
Block a user