Files
KanbanGit/docs/releases/v0.5-webhook-notification/06-notification-tests-and-release-hardening.md
T

63 lines
2.4 KiB
Markdown

# 06 Notification Tests and Release Hardening
Implementation guide: [Ticket Implementation Guide](../ticket-implementation-guide.md)
## Branch
`codex/v0.5-webhook-notification/06-notification-tests-and-release-hardening`
Start this branch from `codex/v0.5-webhook-notification/05-discord-webhook-delivery`.
## Goal
Complete release-level coverage and polish for v0.5 webhook notifications.
## Requirements
- Review the full v0.5 implementation against the release README and all prior tickets.
- Fill missing tests for permissions, validation, hidden secrets, queued delivery, delivery logs, disabled actions, no-op moves, and multiple actions per event.
- Confirm project settings navigation is consistent across settings pages.
- Confirm existing ticket move flows still behave the same for web, API, and MCP clients.
- Confirm documentation matches the implemented behavior.
- Update release ticket docs only when they differ from the finished implementation.
## Acceptance Criteria
- All v0.5 acceptance criteria are covered by automated tests.
- A ticket status change can trigger multiple enabled actions for the same project.
- Failed external deliveries do not prevent ticket status movement.
- Secrets are never exposed in resources, Inertia props, logs, or tests.
- Existing web, API, and MCP status movement tests pass.
- The release docs are accurate after implementation.
## Tests
- End-to-end feature tests for creating actions and triggering deliveries from ticket status movement.
- Authorization tests for project admin management and non-admin denial.
- Regression tests for web, API, and MCP ticket status moves.
- HTTP fake tests for webhook and Discord delivery.
- Queue tests for dispatch behavior and retryable failures.
## Verification
- `php artisan route:list --except-vendor`
- `php artisan wayfinder:generate --with-form --no-interaction`
- `vendor/bin/pint --dirty --format agent`
- `php artisan test --compact tests/Feature/Notifications tests/Feature/Projects tests/Feature/Api/TicketApiTest.php tests/Feature/Mcp`
- `npm run types:check`
- `git diff --check`
## Commit And Push
- Commit only this ticket's changes.
- Push with `git push origin codex/v0.5-webhook-notification/06-notification-tests-and-release-hardening`.
## Out of Scope
- New notification channels beyond webhook and Discord
- User bell notifications
- Unread counters
- Incoming webhooks
- API or MCP management endpoints
- OAuth, scoped notification tokens, or external app installations