{ "version": 2, "id": "D13", "kind": "synthetic-chat", "origin": "synthetic", "actors": [ "Kit", "Noa", "Pat" ], "initialDocument": "", "steps": [ { "id": "m1", "kind": "say", "actor": "Kit", "text": "profile cards are doing a DB read on every hover.", "to": "room" }, { "id": "m2", "kind": "say", "actor": "Noa", "text": "short client cache, Redis cache, or leave it and batch requests?", "to": "room" }, { "id": "m3", "kind": "say", "actor": "Kit", "text": "I think client cache for 30 seconds is enough. avatars don't change every second.", "to": "room" }, { "id": "c3", "kind": "checkpoint", "waitFor": "settled", "deadlineMs": 30000 }, { "id": "m4", "kind": "say", "actor": "Pat", "text": "careful, display names can change and the hover should update soon.", "to": "room" }, { "id": "m5", "kind": "say", "actor": "Noa", "text": "30 seconds seems fine to me if the profile edit invalidates my local copy.", "to": "room" }, { "id": "c5", "kind": "checkpoint", "waitFor": "settled", "deadlineMs": 30000 }, { "id": "m6", "kind": "say", "actor": "Pat", "text": "I can live with that. batching can be separate later.", "to": "room" }, { "id": "c6", "kind": "checkpoint", "waitFor": "settled", "deadlineMs": 30000 } ] }