Status report (#1796)
* docs: add status report proto implementation plan
Add PLAN.md documenting the design for StatusReportService RPC with:
- CRUD operations (Create, Get, List, Update, Delete)
- AddStatusReportUpdate for timeline entries
- Message definitions following existing patterns
- Offset-based pagination and status filtering
* feat(proto): add status report service proto definitions
Add protobuf definitions for StatusReportService with:
- StatusReportStatus enum (investigating, identified, monitoring, resolved)
- StatusReport, StatusReportSummary, StatusReportUpdate messages
- 6 RPC methods: Create, Get, List, Update, Delete, AddUpdate
- buf.validate rules for request validation
- Generated TypeScript bindings and package exports
* feat(server): implement status report RPC handler
Add StatusReportService implementation following monitor handler pattern:
- CreateStatusReport with initial update and page component associations
- GetStatusReport with full update timeline
- ListStatusReports with offset pagination and status filtering
- UpdateStatusReport for metadata changes (title, page components)
- DeleteStatusReport with cascade delete
- AddStatusReportUpdate for timeline entries
- Error helpers and DB-to-proto converters
* test(server): add status report RPC handler tests
Add comprehensive test coverage for StatusReportService:
- 25 tests covering all 6 RPC methods
- Authentication and authorization tests
- Workspace isolation verification
- Pagination and filtering tests
- Input validation error cases
* ci: apply automated fixes
* feat(proto): add pageId field to CreateStatusReport
- Add required pageId field to CreateStatusReportRequest proto
- Make pageComponentIds field optional (was required)
- Update handler to use pageId directly from request
- Update tests to include pageId in requests
* remove .claude
* ci: apply automated fixes
* refactor(status-report): wrap database operations in transactions
Ensure atomicity for create, update, and add-update operations by using
database transactions. This prevents partial writes if any step fails.
* implement pr review
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
authored by