# Add tests a transformation model never had

A transformation model with no assertions, given uniqueness, not-null, and accepted-value tests.

Category: Pipelines and warehouse
Source: https://letsship.ai/use-cases/add-transformation-model-tests
Published: 2026-08-25

## Goal

Add uniqueness, not-null, and accepted-value tests to one transformation model.

## Acceptance criteria

- Each test is proven to fail against seeded bad data
- Primary keys are asserted unique and not null
- Enumerated columns assert their accepted values
- Failures block the downstream models rather than warning

## What lands as proof

Each test demonstrated failing against seeded bad data, which is what distinguishes a test from a comment.

## 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 tests to the {model} model

Description: Add uniqueness, not-null, and accepted-value tests to one transformation model.

Acceptance criteria:
- Each test is proven to fail against seeded bad data
- Primary keys are asserted unique and not null
- Enumerated columns assert their accepted values
- Failures block the downstream models rather than warning

Before you create the issue, find a transformation model in this repository with no tests and replace {model} with it.
```

## Questions

### What does the agent actually change?

The ticket is scoped to one outcome: add uniqueness, not-null, and accepted-value tests to one transformation model. 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 each test fails against seeded bad data, so a reviewer can confirm the result without reproducing the work locally.

### How much oversight does this need?

None is required before the run starts. Every claim this ticket makes can be checked by machine, so the agent works straight through and a person reviews the finished pull request like any other.
