Tool calling, planning loops, memory and failure modes — implemented in 200 lines, then broken on purpose.
Chunking, embeddings, hybrid search, reranking, evaluation, and the part nobody talks about: updating the index.
Variance, confidence intervals and why your 2-point improvement might be noise.