Your pipeline fails on one job, and until now you had to rebuild the entire block to recover. Not anymore. Semaphore now reruns only the jobs that actually failed, so you get feedback faster and pay less to get it.
What Shipped: Job Rerun
When a pipeline failed, the old behavior rebuilt every job inside the block that contained the failure. The passing jobs got rerun right alongside the failed one. That was useful, but it was also slower and more expensive than it needed to be.
The default behavior now changes. Instead of rebuilding the whole block, Semaphore rebuilds only the jobs that failed. Every other job in the block, along with jobs from earlier in the pipeline, is carried over and reused in the new pipeline.
The topology of your workflow stays intact, and only the new jobs are built. The savings are concrete. Old jobs that get carried over are excluded from your billable time, so a rerun costs you only the failed jobs, not the whole block. Faster turnaround on failures, lower cost per run. If you prefer the old behavior, it is still available.
We exposed a flag in the YAML called block rebuild that retains the full block rebuild when you want it. The default is the new, leaner path, and the escape hatch is there when you need it. sem-ai is already aware of the new behavior, so agents pick it up automatically and rerun the right way from the start.
What’s Coming
Job rerun is the first building block of what we are calling doubling down on CI for the second half of 2026.
The bigger question we are working through is what CI looks like in an agent-driven software development world. sem-ai was our first step as the agent-native interface to the CI, and this is the next piece.
Through September we will be announcing more capabilities aimed squarely at agentic CI use. More detail on each as it lands.
Want to discuss this article? Join our Discord.