Columns
| Column | Type | Size | Nulls | Auto | Default | Children | Parents | Comments | |||
|---|---|---|---|---|---|---|---|---|---|---|---|
| event_card_id | int4 | 10 | null |
|
|
{“what”:“Integer identifier of the event card in this link.”,“why”:“Without it, we cannot know which event card the contact belongs to.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-23T00:08:26.137353761+00:00”} |
|||||
| contact_id | int4 | 10 | null |
|
|
{“what”:“Integer identifier of the contact in this link.”,“why”:“Without it, we cannot know which contact is associated with the card.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-23T00:08:26.148816012+00:00”} |
|||||
| role | text | 2147483647 | null |
|
|
{“what”:“Text label for the contact’s function, e.g., ‘owner’ or ‘reviewer’.”,“why”:“Without it, the nature of the association is ambiguous.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-23T00:08:26.165708670+00:00”} |
|||||
| notes | text | 2147483647 | √ | null |
|
|
{“what”:“Optional free-form text with additional context about the contact’s involvement.”,“why”:“Without it, any extra context is lost.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-23T00:08:26.180034457+00:00”} |
Indexes
| Constraint Name | Type | Sort | Column(s) |
|---|---|---|---|
| card_contacts_pkey | Primary key | Asc/Asc | event_card_id + contact_id |
| idx_cc_contact | Performance | Asc | contact_id |
Check Constraints
| Constraint Name | Constraint |
|---|---|
| card_contacts_role_check | (role = ANY (ARRAY['trigger'::text, 'target'::text, 'champion'::text, 'blocker'::text, 'affected'::text])) |