Track 02 · RetrievalLesson 10 of 11
Keeping the knowledge base fresh
Sync, re-index and catch staleness before answers quietly go out of date.
- Lesson library · reference
- 35 min read
- 75 min hands-on
- Carevia Health
- Pro
What you'll be able to do
01- Explain why stale knowledge fails silently and which signals reveal it.
- Design an incremental sync that detects additions, content changes, permission changes and deletions from each source, using webhooks, delta APIs, CDC or polling with checksums.
- Implement a content-hash sync planner that separates re-embedding work from metadata-only updates, guards against mass deletion and reports freshness lag per source.
- Plan an embedding-model migration with a blue/green index and an alias swap, including dual writes, backfill, evaluation and rollback.
- Set freshness SLAs per source with the customer and build the monitoring that proves them.
- Estimate and control the cost of re-indexing.
Before you start
- Parsing and chunking documents that fight back: the pipeline you will be re-running.
- Picking embeddings on your corpus, not a leaderboard: why you would change embedding model, and how to evaluate the new one.
- Vector stores and HNSW tuning: collections, indexes and upserts.
- Retrieval that respects who can see what: ACL sync is one of the flows designed here.
The short version
A knowledge base is a copy of the customer's documents, and copies go stale. When a policy changes and the index does not, the assistant keeps answering fluently with the old rule; nothing errors, nothing alerts, and the first signal is a complaint weeks later. Freshness is an engineering system: detect changes per source (webhooks, delta APIs, CDC, or polling with ETags and checksums), plan the minimum work (content changes re-embed; permission changes update metadata; unchanged documents are skipped), handle deletions with tombstones (including right-to-erasure requests), keep versions and effective dates, and re-index at scale behind an alias so you can switch and roll back without downtime. Then measure it: last successful sync and index lag per source, against SLAs the customer agreed.
Key takeaways:
- Every source needs an explicit freshness SLA, and every chunk needs
source_modified_atandindexed_atso you can measure against it. - Content hash, ACL hash and pipeline version are three separate change signals with three different costs.
- Absence from a listing is not proof of deletion. Only a complete listing or an explicit delete event justifies removing content, and a mass-delete guard stops a broken connector from emptying the index.
- Embedding-model migrations are releases: new index, dual writes, backfill, offline evaluation, alias swap, keep the old index for rollback.
- Deletion must reach every copy: vectors, keyword index, caches, graph facts and backups within their retention window.
Practise this in the lab
Pro lesson
The rest of this lesson is in Pro.
The mental model, worked example, field note, failure table, exercise and self-check, with the voice tutor.
- Every stage and specialisation, in full
- Every lab and every role project
- Halden weeks 2–10, on your record
- Every drill, live in the playground
- All solutions, plus the server judge
- Lab Assistant and every Teach with AI