Celes Renata
bc077bfcc8
feat: trading feedback engine — periodic performance reports with AI summarization
- Migration 038: trading_reports table + report-summarizer agent seed
- 6 reporting modules: models, collector, sections, validator, summarizer, generator
- API endpoints: GET /api/reports (paginated, filterable), GET /api/reports/{id}
- Frontend hooks: useReports, useReport with TanStack Query
- Scheduler: daily (after 16:30 ET) and weekly (Saturday) report triggers
- Redis queue consumer for async report generation with retry/dedup
- 5 property-based tests (chunking, serialization, validation, accuracy, deltas)
- 109 unit/integration tests across all modules
- 6 frontend hook tests with MSW mocks
2026-05-01 22:13:09 +00:00
..
2026-04-21 03:08:49 +00:00
2026-04-11 11:59:45 -07:00
2026-04-11 03:25:08 -07:00
2026-04-11 11:59:45 -07:00
2026-04-18 03:59:28 +00:00
2026-04-17 05:15:42 +00:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-29 11:41:48 +00:00
2026-04-11 11:59:45 -07:00
2026-04-18 03:59:28 +00:00
2026-04-29 11:41:48 +00:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-11 11:59:45 -07:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-23 08:17:23 +00:00
2026-04-11 11:59:45 -07:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-11 11:59:45 -07:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-22 02:56:41 +00:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-29 11:41:48 +00:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-11 11:59:45 -07:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-11 11:59:45 -07:00
2026-04-11 11:59:45 -07:00
2026-05-01 03:08:21 +00:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-17 03:41:39 +00:00
2026-04-18 03:59:28 +00:00
2026-04-11 11:59:45 -07:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-15 16:12:22 +00:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-23 08:17:23 +00:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-05-01 03:08:21 +00:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-17 07:02:30 +00:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-05-01 22:13:09 +00:00
2026-05-01 22:13:09 +00:00
2026-05-01 22:13:09 +00:00
2026-05-01 22:13:09 +00:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-29 11:41:48 +00:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-17 00:31:17 +00:00
2026-04-15 16:12:22 +00:00
2026-04-14 19:42:48 +00:00
2026-04-18 03:59:28 +00:00
2026-04-11 11:59:45 -07:00
2026-04-11 11:59:45 -07:00
2026-04-18 03:59:28 +00:00
2026-04-29 11:41:48 +00:00
2026-04-18 03:59:28 +00:00
2026-05-01 22:13:09 +00:00
2026-05-01 22:13:09 +00:00
2026-05-01 22:13:09 +00:00
2026-05-01 22:13:09 +00:00
2026-05-01 22:13:09 +00:00
2026-05-01 22:13:09 +00:00
2026-04-18 03:59:28 +00:00
2026-04-11 11:59:45 -07:00
2026-04-21 20:25:02 +00:00
2026-04-18 03:59:28 +00:00
2026-04-22 02:56:41 +00:00
2026-04-16 07:26:10 +00:00
2026-04-18 03:59:28 +00:00
2026-04-29 11:41:48 +00:00
2026-04-29 11:41:48 +00:00
2026-04-11 11:59:45 -07:00
2026-04-18 03:59:28 +00:00
2026-04-18 03:59:28 +00:00
2026-04-11 11:59:45 -07:00
2026-04-23 19:49:34 +00:00
2026-04-18 03:59:28 +00:00