Urgent.News

What's breaking now, across thousands of outlets.

Tech

A Real Deployment Exposed Two Contract Defects Before I Froze the Contract

A green CI run does not prove that the artifact built from reviewed source matches what production later exposes. The build job may have produced one directory while the deploy job selected another. A file may have been added after review. The live manifest and representative file bytes may match the digests sealed at build time—or they may not. I built release-evidence and its v0 contract to…

Two defects in contract design were exposed during a deployment test before the contract was frozen. The first issue was that the contract expected a preview environment that did not exist, as the static dashboard was deployed directly to production. The workflow expected a preview deployment in the GitHub Pages site, but there was no such tier.

The contract needed to be updated to allow a direct prepared - deployed|production transition when the preview_skipped flag was set to true and a closed reason code was provided. The second defect was that the manifest and bundle could not be finalized, as the bundle required the finished manifest and the manifest required the finished bundle.

This circular dependency was resolved by making the released manifest only contain its schema version and content map, and by removing the mutual reference between the bundle and manifest digests. After fixing these defects, the contract was exercised with the real adapter, verifying the repeat-run link between releases.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

How to build a developer community

I described in my last post what makes and defines a developer community . If you are a developer wanting to run a developer community, or you work in developer relations (DevRel) and you are managing…

How Many Builds Can Run at Once on One VPS

The number is not a property of your deployment tool. It is your server's available memory divided by what one build takes at its peak, and every answer that skips that division is guessing on your…

More from Wednesday 26 August →