Skip to content

fix(ci): a half-configured Coolify deploy must fail, not warn — GT-324 - #392

Merged
beyondnetPeru merged 1 commit into
developfrom
fix/gt-324-deploy-partial-config
Aug 2, 2026
Merged

fix(ci): a half-configured Coolify deploy must fail, not warn — GT-324#392
beyondnetPeru merged 1 commit into
developfrom
fix/gt-324-deploy-partial-config

Conversation

@beyondnetPeru

Copy link
Copy Markdown
Contributor

Each service checked its own hook and, when unset, warned and exited 0. That is right for "not configured yet" and wrong for "half configured": set the token, typo one hook, and CD reports success while that service never deploys. The only symptom would be an old image serving traffic nobody is watching.

configuration before now
nothing set skip skip
partially set skip, silently fail, naming how many of the four values are present
all set deploy deploy

The weakness was found while writing the Tracker's equivalent job (evolith_tracker#114). Leaving this one weaker after documenting why would have been the same staleness this board exists to catch, so both repositories now fail the same way.

Two smaller hardenings in the same spirit:

  • curl --fail is explicit — without it curl exits 0 on a 4xx, and a rejected hook reads as a successful deploy.
  • All three hooks are attempted before failing, so one bad hook does not hide the state of the other two.

And the job now states what it did not prove

Coolify is asynchronous, so a green step means the request was accepted, never that the new image is serving. GT-448 asks for a recorded run against the live service, and this job cannot provide that evidence — written into its step summary rather than left for a tick to imply.

Verified

Classification exercised in all four states: nothing (skip, exit 0), complete (proceed), and two shapes of partial (fail, 3-of-4 and 1-of-4).

Criterion 2 stays open and owner-blocked. What changed is that the day the secrets land, a typo fails loudly instead of passing.

🤖 Generated with Claude Code

Each service checked its own hook and, when unset, warned and exited 0. That is
right for "not configured yet" and wrong for "half configured": set the token,
typo one hook, and CD reports success while that service never deploys. The only
symptom would be an old image serving traffic nobody is watching.

Nothing configured is still a skip. PARTIALLY configured is now a failure that
names how many of the four values are present.

The weakness was found while writing the Tracker's equivalent job
(evolith_tracker#114). Leaving this one weaker after documenting why would have
been the same staleness this board exists to catch, so both repositories now
fail the same way.

Two smaller hardenings in the same spirit. curl --fail is explicit, because
without it curl exits 0 on a 4xx and a REJECTED hook reads as a successful
deploy. And all three hooks are attempted before failing, so one bad hook does
not hide the state of the other two.

The job also says what it did NOT prove: Coolify is asynchronous, so a green
step means the request was accepted, never that the new image is serving. GT-448
asks for a recorded run against the live service and this job cannot provide it
- written into the step summary rather than left for a tick to imply.

Classification exercised in all four states: nothing, complete, and two shapes
of partial. Criterion 2 stays open and owner-blocked; what changed is that the
day the secrets land, a typo fails loudly instead of passing.
@beyondnetPeru
beyondnetPeru requested a review from a team as a code owner August 2, 2026 22:26
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

@github-actions

github-actions Bot commented Aug 2, 2026

Copy link
Copy Markdown

📊 Bilingual Coverage Impact

PR Changes

  • Paired EN/ES files modified: 7
  • New EN files needing ES translation: 0

Repository Coverage

Metric Value
Total EN files 526
Total ES files 500
Paired files 0
Coverage 0%

Good: All EN changes have ES counterparts.


Generated by GitHub Actions

@beyondnetPeru
beyondnetPeru merged commit 49237a2 into develop Aug 2, 2026
32 checks passed
@beyondnetPeru
beyondnetPeru deleted the fix/gt-324-deploy-partial-config branch August 2, 2026 22:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant