38 lines
758 B
Markdown
38 lines
758 B
Markdown
# Event Contracts
|
|
|
|
GeoIntel uses events to document state transitions, even if V1 implements them as database records/log entries rather than a full event bus.
|
|
|
|
## Event names
|
|
|
|
- ProjectCreated
|
|
- AreaCreated
|
|
- DatasetUploaded
|
|
- DatasetMetadataExtracted
|
|
- RasterTiled
|
|
- VectorImported
|
|
- DetectionQueued
|
|
- DetectionStarted
|
|
- DetectionCompleted
|
|
- DetectionFailed
|
|
- SegmentationCompleted
|
|
- QualityCheckCompleted
|
|
- ExportGenerated
|
|
|
|
## Event shape
|
|
|
|
```json
|
|
{
|
|
"event_id": "uuid",
|
|
"event_type": "DatasetUploaded",
|
|
"project_id": "uuid",
|
|
"dataset_id": "uuid",
|
|
"analysis_run_id": null,
|
|
"timestamp": "ISO-8601",
|
|
"payload": {}
|
|
}
|
|
```
|
|
|
|
## Implementation rule
|
|
|
|
Every long-running workflow must create at least one event at start and one at completion/failure.
|