feat: track received image outcomes

This commit is contained in:
jjbrunton committed 2026-08-08 18:53:11 +01:00
1 parent 50de1c180d
commit d819a0f1e6
15 files changed
+145 -21

No files matched your search

@@ -86,6 +86,7 @@ describe('dashboard endpoint contracts', () => {
message: 'Hello',
sentAt: 1_700_000_000_000,
gotResponse: false,
gotImage: false,
responseCheckedAt: null,
strategyId: null,
chatRoomId: null,
@@ -115,13 +116,13 @@ describe('dashboard endpoint contracts', () => {
it('validates each analytics response shape', () => {
expect(SubredditPerformanceResponseSchema.safeParse([{
subreddit: 'example', totalSent: 10, totalResponses: 4, responseRate: 40,
subreddit: 'example', totalSent: 10, totalResponses: 4, responseRate: 40, totalImages: 2, imageRate: 20,
}]).success).toBe(true);
expect(StrategyPerformanceResponseSchema.safeParse([{
strategyId: 'direct', totalSent: 10, totalResponses: 4, responseRate: 40, configured: true,
strategyId: 'direct', totalSent: 10, totalResponses: 4, responseRate: 40, totalImages: 2, imageRate: 20, configured: true,
}]).success).toBe(true);
expect(DailyTrendResponseSchema.safeParse([{
date: '2026-08-08', totalSent: 10, totalResponses: 4, responseRate: 40,
date: '2026-08-08', totalSent: 10, totalResponses: 4, responseRate: 40, totalImages: 2, imageRate: 20,
}]).success).toBe(true);
expect(DailyTrendResponseSchema.safeParse([{ date: '2026-08-08', totalSent: '10' }]).success).toBe(false);
});