## What

<!-- One-line summary of the change -->

## Why

<!-- What problem does this solve? Link to issue if applicable (closes #123) -->

## How

<!-- Brief description of the approach -->

## Checklist

- [ ] Tests added/updated
- [ ] Lint passes (`make lint`)
- [ ] Type checking passes (`make typecheck`)
- [ ] Docs updated (if user-facing change)
- [ ] CHANGELOG entry added (if user-facing change)

## Test plan

<!-- How can reviewers verify this works? -->
