Repository navigation
v2.1.0 — Streaming context + forward-compat primitives
See CHANGELOG.md for full detail.
Streaming
StreamContext(spec §9.2) — token-budgeted RAG context streaming,EndStreamterminator, relevance tiers (cursor → callers → callees → related types),BrokenPipe-safe.protocol_version1 → 2.lip stream-contextCLI subcommand.
New primitives
EmbedText— raw-vector access for text (closes gap left byEmbeddingBatch+QueryNearestByText).RegisterTier3Source+IndexStatusResult.tier3_sources— SCIP import provenance.lip import --push-to-daemonregisters automatically;--no-provenanceopts out.
Forward-compat & capability discovery
HandshakeResult.supported_messages— everyClientMessagetag advertised. Drift-guarded byClientMessage::variant_tag+ paired exhaustive-match test.ServerMessage::UnknownMessage— socket stays open; clients downgrade gracefully.ServerMessage::Error { code: ErrorCode }— 8 distinct codes (UnknownModel,EmbeddingNotConfigured,NoEmbedding,CursorOutOfRange,IndexLocked,InvalidRequest,UnknownMessageType,Internal).UnknownModelwired via HTTP error classification — 404s and OpenAI/Ollama-shapemodel_not_foundpayloads classify correctly; auth/rate-limit/5xx stayInternal.
Fixed
QueryExpansionhonors caller's model pin (contract pinned at db layer viaquery_expansion_terms_rejects_cross_model_scoring).
Compatibility
All new wire fields are #[serde(default)]. Pre-2.1 daemons work with 2.1 clients and vice versa.
What's Changed
- feat: v2.1.0 — stream_context (token-budgeted RAG context streaming) by @SimplyLiz in #8
- feat: embed_text — unary text-to-vector embedding by @SimplyLiz in #9
- feat(2.1): capability discovery + graceful unknown-variant handling by @SimplyLiz in #10
- feat(2.1): structured error codes on Error responses by @SimplyLiz in #11
- fix(query_expansion): honor model pin, restrict ranking to matching model by @SimplyLiz in #12
- feat(2.1): split ErrorCode conflations, drift-guard supported_messages by @SimplyLiz in #13
- feat(2.1): Tier 3 provenance via RegisterTier3Source by @SimplyLiz in #14
- feat(2.1): lip import --no-provenance opt-out by @SimplyLiz in #15
- fix(2.1): wire ErrorCode::UnknownModel + pin QueryExpansion contract by @SimplyLiz in #16
- Release v2.1.0 by @SimplyLiz in #19
Full Changelog: v2.0.1...v2.1.0
What's Changed
- feat: v2.1.0 — stream_context (token-budgeted RAG context streaming) by @SimplyLiz in #8
- feat: embed_text — unary text-to-vector embedding by @SimplyLiz in #9
- feat(2.1): capability discovery + graceful unknown-variant handling by @SimplyLiz in #10
- feat(2.1): structured error codes on Error responses by @SimplyLiz in #11
- fix(query_expansion): honor model pin, restrict ranking to matching model by @SimplyLiz in #12
- feat(2.1): split ErrorCode conflations, drift-guard supported_messages by @SimplyLiz in #13
- feat(2.1): Tier 3 provenance via RegisterTier3Source by @SimplyLiz in #14
- feat(2.1): lip import --no-provenance opt-out by @SimplyLiz in #15
- fix(2.1): wire ErrorCode::UnknownModel + pin QueryExpansion contract by @SimplyLiz in #16
- Release v2.1.0 by @SimplyLiz in #19
Full Changelog: v2.0.1...v2.1.0
What's Changed
- feat: v2.1.0 — stream_context (token-budgeted RAG context streaming) by @SimplyLiz in #8
- feat: embed_text — unary text-to-vector embedding by @SimplyLiz in #9
- feat(2.1): capability discovery + graceful unknown-variant handling by @SimplyLiz in #10
- feat(2.1): structured error codes on Error responses by @SimplyLiz in #11
- fix(query_expansion): honor model pin, restrict ranking to matching model by @SimplyLiz in #12
- feat(2.1): split ErrorCode conflations, drift-guard supported_messages by @SimplyLiz in #13
- feat(2.1): Tier 3 provenance via RegisterTier3Source by @SimplyLiz in #14
- feat(2.1): lip import --no-provenance opt-out by @SimplyLiz in #15
- fix(2.1): wire ErrorCode::UnknownModel + pin QueryExpansion contract by @SimplyLiz in #16
- Release v2.1.0 by @SimplyLiz in #19
Full Changelog: v2.0.1...v2.1.0