## Summary - **Fix:** `integration-requests:review` crashed with `Attempt to read property "email" on null` when a request's author no longer exists. The command now renders a dash instead of assuming the `user` relation is present. - **Feature:** new terminal `done` status that marks an integration request as shipped. ## The `done` status Modeled after `not_doable` (a frozen, terminal state): - Shown on the board, sinking to the bottom regardless of votes. - Can no longer be voted on or unvoted (`removeVote` returns 404). - Drops its public comment when set, so the board shows no stale note. - Available in both `integration-requests:review` flows (pending review and `--all`). Frontend gets a `Done` badge and an `isFrozen()` helper that replaces the scattered `=== 'not_doable'` checks gating the vote/unvote buttons. ## Tests - 6 new feature tests: visibility without comment, bottom ordering, vote/unvote blocked, command sets `done` and clears the comment, and the command tolerating an orphaned author. - `php artisan test tests/Feature/IntegrationRequestTest.php` → 34 passed. - Board vitest suite, Pint, ESLint and Prettier all green. |
||
|---|---|---|
| .. | ||
| factories | ||
| migrations | ||
| seeders | ||
| .gitignore | ||