feat: add source-grounded evolution and Ollama assistant
GeoIntel CI / docs-smoke (push) Canceled after 0s
GeoIntel CI / contract-smoke (push) Canceled after 0s

This commit is contained in:
Codex
2026-07-15 06:45:56 +02:00
parent 0baa9b069c
commit beacdf2560
37 changed files with 2246 additions and 58 deletions
+88
View File
@@ -394,6 +394,7 @@ export interface TemporalComparisonRequest {
earlier_dataset_id: string
later_dataset_id: string
bbox: VectorSelectionBBox
area_id?: string | null
preview_limit?: number
}
@@ -405,6 +406,7 @@ export interface TemporalDatasetRef {
}
export interface TemporalMetricComparison {
metric_key: string
label: string
unit: string
aggregation_method: string
@@ -413,6 +415,21 @@ export interface TemporalMetricComparison {
absolute_change: number
percent_change?: number | null
is_estimate: boolean
warning?: string | null
}
export interface TemporalObservationMetric {
metric_key: string
label: string
value: number
unit: string
aggregation_method: string
is_estimate: boolean
}
export interface TemporalObservation {
dataset: TemporalDatasetRef
metrics: TemporalObservationMetric[]
}
export interface TemporalObjectChanges {
@@ -428,7 +445,10 @@ export interface TemporalComparisonResponse {
earlier: TemporalDatasetRef
later: TemporalDatasetRef
selection_bbox: VectorSelectionBBox
selection_area_id?: string | null
metric: TemporalMetricComparison
metrics: TemporalMetricComparison[]
timeline: TemporalObservation[]
object_changes: TemporalObjectChanges
geojson: GeoJSON.FeatureCollection
warnings: string[]
@@ -521,6 +541,74 @@ export interface SystemCapabilitiesResponse {
providers: ProviderCapability[]
}
export interface AssistantModelRead {
name: string
size_bytes?: number | null
parameter_size?: string | null
quantization_level?: string | null
capabilities: string[]
}
export interface AssistantModelsResponse {
items: AssistantModelRead[]
total: number
default_model?: string | null
}
export interface AssistantStatus {
enabled: boolean
reachable: boolean
status: string
base_url: string
default_model?: string | null
model_count: number
limitation_message: string
}
export interface AssistantChatMessage {
role: 'user' | 'assistant'
content: string
}
export interface AssistantQueryRequest {
question: string
model?: string | null
bbox?: VectorSelectionBBox | null
area_id?: string | null
history?: AssistantChatMessage[]
}
export interface AssistantContextMetric {
theme: string
label: string
value: number
unit: string
source: string
dataset_id: string
observed_at?: string | null
is_estimate: boolean
}
export interface AssistantTemporalSeries {
temporal_series_key: string
label: string
source: string
first_year: number
last_year: number
observation_count: number
}
export interface AssistantQueryResponse {
answer: string
model: string
scope_label: string
context_metrics: AssistantContextMetric[]
temporal_series: AssistantTemporalSeries[]
source_dataset_ids: string[]
warnings: string[]
generated_at: string
}
export interface ProviderCapabilitiesResponse {
providers: ProviderCapability[]
}