{
  "id": 364488,
  "title": "cidx v3.0.0 — deleting the things that lied",
  "url": "https://urgent.news/2026/08/09/cidx-v3-0-0-deleting-the-things-that-lied",
  "topic": "tech",
  "section": "Tech",
  "published": "2026-08-09T09:38:22.000Z",
  "source": {
    "name": "Dev.to",
    "slug": "dev-to",
    "url": "https://dev.to/arcker/cidx-v300-deleting-the-things-that-lied-4fb4"
  },
  "original_language": "en",
  "account": "cidx v3.0.0 introduces five breaking changes with one clear motive: removing features that appeared to work but did not. The first breaking change is local_behavior = no-push, which was a dry-run with an unfulfillable promise. Documentation claimed it was recommended for Docker Build without push, but in reality, no-push set IsDryRun, meaning nothing was built. The second breaking change pertains to the [branch] auto_cleanup config key, which existed but was never utilized by any code. The third breaking change involves handling of unknown cidx.toml keys; typos like stale_dayz were mistaken for valid settings and silently kept their default values. The fourth breaking change highlights that go-test didn't run every package, providing a narrower scope than advertised. Lastly, the cidx action command tree was removed after a 3.5-month deprecation period, marking the removal of a feature by explicitly stating its departure. All these changes, except for the last one, present honesty defects, where the tool lies by appearing valid but failing to deliver. This incident was discovered through BDD sweeps and manual checks. The fifth breaking change, the removal of the cidx action command tree, was a deliberate decision to remove something that was officially deprecated, as opposed to misleading features. The article concludes by emphasizing the importance of removing pretenders to ensure reliable tools, where success should not be reported if the work never happens.",
  "summary": "cidx is a declarative CI/CD runner I build (in Go) — you describe your pipeline once, it runs the same locally and in CI. This post stands on its own. Here's how the week started. A public Docker image, on GitHub Container Registry. A clean ENTRYPOINT [\"cidx\"] . Release after release, green CI every time. And no binary inside. Not once. Ever. .dockerignore excluded bin/ . The Dockerfile did COPY…",
  "key_points": [],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}