# Make the build reproducible

A build that produces different output from the same commit, pinned until it does not.

Category: Build, containers, and artifacts
Source: https://letsship.ai/use-cases/make-the-build-reproducible
Published: 2026-08-25

## Goal

Make the build produce identical output from the same commit.

## Acceptance criteria

- Two builds of the same commit produce identical artefacts
- Toolchain versions are pinned rather than floating
- Timestamps and other nondeterministic inputs are normalised
- The comparison is automated

## What lands as proof

A byte comparison of two independent builds of the same commit.

## Prompt

Copy this to an agent to open the ticket:

```text
Create a Linear issue in my team and assign it to the SHIP agent.

Title: Make the build reproducible

Description: Make the build produce identical output from the same commit.

Acceptance criteria:
- Two builds of the same commit produce identical artefacts
- Toolchain versions are pinned rather than floating
- Timestamps and other nondeterministic inputs are normalised
- The comparison is automated

Before you create the issue, build this repository twice from the same commit and report whether the outputs differ.
```

## Questions

### What does the agent actually change?

The ticket is scoped to one outcome: make the build produce identical output from the same commit. Work that serves that outcome is in scope, and anything outside it is left for a separate ticket, so the pull request stays reviewable.

### How do I know the work is done?

The pull request carries the evidence, not only the diff. Here that means two builds of one commit produce identical output, so a reviewer can confirm the result without reproducing the work locally.

### How much oversight does this need?

The run stops once the plan is written. Somebody reads the approach and approves it before any code exists, which is the cheapest moment to redirect the work.
