{ "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." ] }