Columns
| Column | Type | Size | Nulls | Auto | Default | Children | Parents | Comments | |||
|---|---|---|---|---|---|---|---|---|---|---|---|
| id | int4 | 10 | √ | null |
|
|
{“what”:“Integer primary key; unique ID for this channel.”,“why”:“Without it, cannot uniquely identify a channel for updates or foreign key references.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-23T00:05:26.225607014+00:00”} |
||||
| pulse_id | int4 | 10 | null |
|
|
{“what”:“Integer ID referencing the pulse that owns this channel.”,“why”:“Without it, cannot determine which pulse this channel serves, breaking per-pulse configuration.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-23T00:05:26.243277847+00:00”} |
|||||
| channel_type | varchar | 32 | null |
|
|
{“what”:“Type of channel, e.g., email, SMS, webhook; determines how details are interpreted.”,“why”:“Without it, the format of details and delivery method are unknown, so messages cannot be sent.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-23T00:05:26.258450635+00:00”} |
|||||
| details | text | 2147483647 | null |
|
|
{“what”:“Free-form configuration for the channel, e.g., URL or phone number, parsed according to channel_type.”,“why”:“Without it, the channel lacks the target or settings needed to send a pulse.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-23T00:05:26.272505111+00:00”} |
|||||
| schedule_type | varchar | 32 | null |
|
|
{“what”:“Recurrence pattern type, e.g., daily, weekly, hourly; controls how schedule_hour/day/frame are used.”,“why”:“Without it, the schedule fields have no meaning, so the channel cannot be triggered at the right time.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-23T00:05:26.286570375+00:00”} |
|||||
| schedule_hour | int4 | 10 | √ | null |
|
|
{“what”:“Hour of day (0-23) for scheduled delivery, when schedule_type requires it.”,“why”:“Without it, the exact time of day for the schedule is unknown, so delivery may occur at wrong hour or not at all.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-23T00:05:26.312552613+00:00”} |
||||
| schedule_day | varchar | 64 | √ | null |
|
|
{“what”:“Day(s) of week or month for schedule, e.g., ‘MON’ or ‘1,15’, depending on schedule_type.”,“why”:“Without it, the day of recurrence is unspecified, so the schedule cannot be computed.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-23T00:05:26.332459469+00:00”} |
||||
| created_at | timestamptz | 35,6 | null |
|
|
{“what”:“Timestamp with time zone when the channel was created.”,“why”:“Without it, cannot track when a channel was added, which is needed for auditing and lifecycle management.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-23T00:05:26.350547894+00:00”} |
|||||
| updated_at | timestamptz | 35,6 | null |
|
|
{“what”:“Timestamp with time zone of the last update to this channel row.”,“why”:“Without it, cannot know if configuration changed, leading to stale data and inability to detect drift.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-23T00:05:26.371450366+00:00”} |
|||||
| schedule_frame | varchar | 32 | √ | null |
|
|
{“what”:“Optional time window or frame for scheduling, e.g., ‘business_hours’ or ‘night’, further constrains schedule.”,“why”:“Without it, the schedule may fire outside allowed periods, causing unwanted deliveries.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-23T00:05:26.388812864+00:00”} |
||||
| enabled | bool | 1 | true |
|
|
{“what”:“Whether this channel is active and eligible for delivery; default true.”,“why”:“Without it, cannot disable a channel without deleting it, so temporary suspension is impossible.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-23T00:05:26.406546679+00:00”} |
|||||
| entity_id | bpchar | 21 | √ | null |
|
|
{“what”:“Character string identifying an external entity (e.g., user ID) that this channel belongs to.”,“why”:“Without it, cannot map a channel to a specific entity, breaking per-entity configuration.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-23T00:05:26.422765849+00:00”} |
||||
| channel_id | int4 | 10 | √ | null |
|
|
{“what”:“Numeric ID of a related channel, possibly for grouping or parent-child relationships.”,“why”:“Without it, cannot associate this channel with another channel, so hierarchical or grouped channel logic is unavailable.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-23T00:05:26.436132688+00:00”} |
Indexes
| Constraint Name | Type | Sort | Column(s) |
|---|---|---|---|
| pulse_channel_pkey | Primary key | Asc | id |
| idx_pulse_channel_pulse_id | Performance | Asc | pulse_id |
| idx_pulse_channel_schedule_type | Performance | Asc | schedule_type |
| pulse_channel_entity_id_key | Must be unique | Asc | entity_id |