diff --git a/e2e/setup/ai-optional-fixture.ts b/e2e/setup/ai-optional-fixture.ts index bea502931..4a417d3e1 100644 --- a/e2e/setup/ai-optional-fixture.ts +++ b/e2e/setup/ai-optional-fixture.ts @@ -77,6 +77,8 @@ export async function resetAiOptionalAccount(): Promise { export async function seedStoredBriefing(marker: string): Promise { const insights = { dailyBriefing: { paragraph: marker, keyFindings: [] }, + // Generated now: only text written today is served as today's read. + briefingGeneratedAt: new Date().toISOString(), }; await withAccount(async (pool, userId) => { await pool.query( diff --git a/tests/integration/ai-optional-mixed-routes.test.ts b/tests/integration/ai-optional-mixed-routes.test.ts index e45966dc6..4529cae12 100644 --- a/tests/integration/ai-optional-mixed-routes.test.ts +++ b/tests/integration/ai-optional-mixed-routes.test.ts @@ -93,7 +93,11 @@ async function seed(recordId: string): Promise { await prisma.user.update({ where: { id: recordId }, data: { - insightsCachedText: JSON.stringify(BRIEFING), + // Generated now: only text written today is served as today's read. + insightsCachedText: JSON.stringify({ + ...BRIEFING, + briefingGeneratedAt: new Date().toISOString(), + }), insightsCachedAt: new Date(), insightsCachedLocale: "en", }, diff --git a/tests/integration/briefing-cache-locale.test.ts b/tests/integration/briefing-cache-locale.test.ts index b1073e961..0469710b9 100644 --- a/tests/integration/briefing-cache-locale.test.ts +++ b/tests/integration/briefing-cache-locale.test.ts @@ -66,7 +66,11 @@ async function seedUserWithCachedBriefing(cachedLocale: string | null) { // snapshot read resolves the reader's locale from. locale: "de", insightsCachedAt: new Date(), - insightsCachedText: JSON.stringify({ dailyBriefing: BRIEFING }), + // Generated now: only text written today is served as today's read. + insightsCachedText: JSON.stringify({ + dailyBriefing: BRIEFING, + briefingGeneratedAt: new Date().toISOString(), + }), insightsCachedLocale: cachedLocale, // The briefing is shown only while its AI capability is available, so // the account has its own provider (presence only) and a receipt. diff --git a/tests/integration/sharing-front-door.test.ts b/tests/integration/sharing-front-door.test.ts index 301a918da..04ebedfe0 100644 --- a/tests/integration/sharing-front-door.test.ts +++ b/tests/integration/sharing-front-door.test.ts @@ -279,6 +279,8 @@ function cachedBriefing(marker: string): string { paragraph: `Briefing for the ${marker}. Second sentence.`, keyFindings: [], }, + // Generated now: only text written today is served as today's read. + briefingGeneratedAt: new Date().toISOString(), }); }