What to build
Implement the BullMQ worker that consumes ingestion jobs enqueued by source upload. The worker normalizes raw content, splits it into text chunks, generates embeddings via the configured embedding provider, and persists Document + Chunk rows with pgvector embeddings and org ownership metadata. Failed jobs transition to an error state with a surfaced reason.
Acceptance criteria
Blocked by
What to build
Implement the BullMQ worker that consumes ingestion jobs enqueued by source upload. The worker normalizes raw content, splits it into text chunks, generates embeddings via the configured embedding provider, and persists Document + Chunk rows with pgvector embeddings and org ownership metadata. Failed jobs transition to an error state with a surfaced reason.
Acceptance criteria
Blocked by