## What
Closes #

## Changes
-

## Testing
- [ ] All existing tests pass (`make test`)
- [ ] New tests added for new functionality
- [ ] Coverage maintained above 85%

## Checklist
- [ ] Branch based on latest `main`
- [ ] Conventional commit messages
- [ ] No new linting warnings (`make lint`)
- [ ] No business logic in `apps/` — all logic in `libs/`
