# Add a field end to end

One field taken through schema, API, client, form, and tests, the same way the last one went.

Category: Repetitive feature work
Source: https://letsship.ai/use-cases/add-a-field-end-to-end
Published: 2026-08-25

## Goal

Add one field through every layer: schema, API, client, form, and tests.

## Acceptance criteria

- A reversible migration adds the column
- The API contract and generated client both include it
- The form validates and submits it
- A screenshot of the form is attached

## What lands as proof

A contract test plus a screenshot of the form, covering both ends of the change.

## 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: Add {field} end to end

Description: Add one field through every layer: schema, API, client, form, and tests.

Acceptance criteria:
- A reversible migration adds the column
- The API contract and generated client both include it
- The form validates and submits it
- A screenshot of the form is attached

Before you create the issue, name the field and its type, and replace {field}. Follow the most recently added field in this repository as the pattern.
```

## Questions

### What does the agent actually change?

The ticket is scoped to one outcome: add one field through every layer: schema, API, client, form, and tests. 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 migration, contract test, and a screenshot of the form, 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.
