docs: record that an infrastructure-only commit cannot reach production - #141
Conversation
Found while verifying the observability work on the server. `ea21ceb` changed only `infrastructure/deployment/**`. No path filter in `build-images.yml` names that directory, so no image was built; "Require a green production image set" found no release and the deployment skipped every remaining step. That matters because deployment runs `git checkout --detach <sha>` on the server and executes that commit's compose file and deploy script. A commit with no image set can never be deployed, so a configuration-only change cannot take effect on its own — it reaches the server only by riding along with the next application-code commit. The second half is worse than the first: the run concluded `success` with three steps skipped. The reason is in the log, but the status against the commit says the deployment succeeded. A pipeline that reports green for doing nothing is the same failure class as an exporter that reports healthy while pushing to nowhere, which is the defect this increment opened on. Recorded against the CI/CD increment, which owns delivery, with the consequence noted in the observability plan: the telemetry identity fix is merged but not applied, and needs re-checking on the server after the next deployment that carries application code. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
Important Review skippedReview was skipped due to path filters ⛔ Files ignored due to path filters (2)
CodeRabbit blocks several paths by default. You can override this behavior by explicitly including those paths in the path filters. For example, including ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Documentation only. Found while verifying the observability work on the server rather than stopping at a green pipeline.
What happened
ea21ceb(PR #140) changed onlyinfrastructure/deployment/**. The deployment run for it reported success:The reason is in the log:
No path filter in
build-images.ymlnamesinfrastructure/deployment/**, so nothing was built for that commit.Why it cannot self-correct
The deploy step runs on the server:
The compose file and the deploy script both come from the deployed commit. So a commit with no image set can never be deployed, and a configuration-only change cannot take effect on its own. It reaches the server only by riding along with the next application-code commit.
The part that concerns me more
A skipped deployment reports
successagainst the commit. Someone reading the commit status sees a green deployment that did not happen.That is the same failure class the observability increment opened on — an exporter reporting healthy while pushing to a collector that was not there. Worth fixing in the same spirit: a no-op should be visible as a no-op.
Scope
Recorded against the CI/CD increment, which owns delivery, with the consequence noted in the observability plan: the telemetry identity fix from #140 is merged but not applied, and needs re-checking on the containers after the next deployment carrying application code. Not fixed here — changing the build filters or the deploy gating belongs to that increment, not to a docs commit.
🤖 Generated with Claude Code