replies


Description

{“what”:“One row per AI-generated reply to a visitor message.”,“why”:“Without it, no history of AI replies exists, so failures and content cannot be reviewed.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-22T23:54:41.549894683+00:00”}

Columns

Column Type Size Nulls Auto Default Children Parents Comments
id bigserial 19 √ nextval('replies_id_seq'::regclass)

{“what”:“Unique numeric identifier for each reply row.”,“why”:“Without it, rows cannot be uniquely referenced for updates or joins.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-22T23:54:41.599142220+00:00”}

visitor_message_id text 2147483647 null
handled_messages.message_id Implied Constraint R

{“what”:“Identifier of the visitor message that triggered this reply.”,“why”:“Without it, cannot link a reply to its source message, so matching fails.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-22T23:54:41.629755414+00:00”}

conversation_id text 2147483647 null

{“what”:“Identifier of the conversation containing the visitor message.”,“why”:“Without it, replies cannot be grouped per conversation for context.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-22T23:54:41.640718556+00:00”}

room_slug text 2147483647 √ null

{“what”:“Slug of the room where the conversation occurred.”,“why”:“Without it, room-specific routing or filtering is impossible.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-22T23:54:41.687039236+00:00”}

chatwoot_message_id text 2147483647 √ null
handled_messages.message_id Implied Constraint R

{“what”:“Identifier of the message in Chatwoot after sending.”,“why”:“Without it, cannot correlate with Chatwoot’s message records for sync.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-22T23:54:41.716204443+00:00”}

content text 2147483647 √ null

{“what”:“Text content of the generated reply.”,“why”:“Without it, the reply text is unknown, so cannot review or resend.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-22T23:54:41.811468372+00:00”}

model text 2147483647 √ null

{“what”:“Name of the AI model that generated the reply.”,“why”:“Without it, cannot attribute replies to model versions for performance tracking.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-22T23:54:41.944739789+00:00”}

outcome text 2147483647 null

{“what”:“Result of sending the reply, e.g., ‘sent’ or ‘failed’.”,“why”:“Without it, cannot know if the reply reached the visitor, so error handling is blind.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-22T23:54:42.013832366+00:00”}

detail text 2147483647 √ null

{“what”:“Additional error or context details for the outcome.”,“why”:“Without it, failure reasons are unknown, making debugging difficult.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-22T23:54:42.072093142+00:00”}

created_at timestamptz 35,6 now()

{“what”:“Timestamp when the reply was created.”,“why”:“Without it, cannot order replies or enforce time-based policies.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-22T23:54:42.844779775+00:00”}

Indexes

Constraint Name Type Sort Column(s)
replies_pkey Primary key Asc id
idx_replies_conversation Performance Asc/Desc conversation_id + created_at

Relationships