metal-kompanion/resources/memory/kom.memory.v1/jobs/semantic_sync.json

77 lines
2.5 KiB
JSON

{
"job": "kom.memory.v1.semantic_sync",
"description": "Batch job that crystallizes episodic events into semantic memory (items, chunks, embeddings).",
"version": 1,
"input": {
"namespace": {
"type": "string",
"description": "Scope to synchronize; defaults to project-level namespace if omitted."
},
"max_batch": {
"type": "integer",
"default": 64,
"description": "Maximum episodic events to process in a single run."
},
"since": {
"type": ["string", "null"],
"format": "date-time",
"description": "Optional watermark to resume from a prior checkpoint."
},
"include_snapshots": {
"type": "boolean",
"default": true,
"description": "When true, snapshot events get summarized before embedding."
},
"force_reprocess": {
"type": "boolean",
"default": false,
"description": "Re-run embedding + semantic write even if embedding_status == done."
}
},
"state": {
"cursor_event_id": {
"type": ["string", "null"],
"description": "Last processed episodic id for incremental runs."
},
"cursor_timestamp": {
"type": ["string", "null"],
"format": "date-time",
"description": "Timestamp checkpoint for incremental scans."
},
"pending": {
"type": "integer",
"description": "Count of remaining episodic events in namespace."
},
"processed": {
"type": "integer",
"description": "Number of events successfully crystallized in this run."
},
"skipped_secret": {
"type": "integer",
"description": "Events skipped due to sensitivity=secret."
},
"errors": {
"type": "array",
"items": {"type": "string"},
"description": "Serialized error messages for observability."
}
},
"signals": [
{
"name": "kom.memory.v1.sync_semantic.completed",
"payload": {
"namespace": "string",
"processed": "integer",
"pending": "integer",
"duration_ms": "number"
},
"description": "Emitted after each run for logging and downstream triggers."
}
],
"notes": [
"Sync iterates episodic events ordered by created_at. Items marked secret or embeddable=false remain episodic-only.",
"Embedding generation consults the configured embedder chain (local Ollama, remote API).",
"Resonance links and identity vectors are preserved when present, allowing the Ξlope librarian pipeline to strengthen pattern graphs."
]
}