Add registry, ingest, timeline, tickets features

This commit is contained in:
2026-02-05 22:49:11 +03:00
parent 1aba59fca5
commit fe9e08f1a6
44 changed files with 3514 additions and 31 deletions

View File

@@ -0,0 +1,25 @@
ALTER TABLE observations
ADD COLUMN firmware_version VARCHAR(255) NULL;
CREATE TABLE IF NOT EXISTS timeline_events (
id BIGINT AUTO_INCREMENT PRIMARY KEY,
subject_type VARCHAR(32) NOT NULL,
subject_id BIGINT NOT NULL,
event_type VARCHAR(64) NOT NULL,
event_time TIMESTAMP NOT NULL,
asset_id BIGINT NULL,
component_id BIGINT NULL,
firmware_version VARCHAR(255) NULL,
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
CONSTRAINT fk_timeline_events_asset
FOREIGN KEY (asset_id) REFERENCES assets(id)
ON DELETE SET NULL ON UPDATE CASCADE,
CONSTRAINT fk_timeline_events_component
FOREIGN KEY (component_id) REFERENCES components(id)
ON DELETE SET NULL ON UPDATE CASCADE
);
CREATE INDEX idx_timeline_events_subject_time ON timeline_events(subject_type, subject_id, event_time, id);
CREATE INDEX idx_timeline_events_asset_time ON timeline_events(asset_id, event_time, id);
CREATE INDEX idx_timeline_events_component_time ON timeline_events(component_id, event_time, id);
CREATE INDEX idx_observations_component_time ON observations(component_id, observed_at, id);