Skip to content

v0.3.0

Choose a tag to compare

@davesnowdon davesnowdon released this 27 May 19:31
· 98 commits to main since this release
Immutable release. Only release title and notes can be modified.
a71936c

What's Changed

  • feat: add metadata JSON field to tasks by @hanumanclaw in #216
  • surface error codes by @davesnowdon in #217
  • new CLI plan by @davesnowdon in #218
  • fix: log WARNING on slug_collision so the squatter is visible from logs by @davesnowdon in #219
  • fix(search): silence sentence_transformers progress bars by @davesnowdon in #220
  • feat(task_list): add with_claims flag to inline active claims by @davesnowdon in #221
  • architecture review by @davesnowdon in #228
  • feat(search): async SearchEngine.create() factory with eager model load by @davesnowdon in #229
  • feat(search): public health() / counts surface; migrate every probe by @davesnowdon in #230
  • feat(search): IndexableDocument as the cross-seam type by @davesnowdon in #231
  • feat(reconcile): indices reconcile via KnowledgeManager by @davesnowdon in #232
  • refactor(search): privatise tantivy and chroma backends by @davesnowdon in #233
  • fix(coordination): WARN log when _parse_datetime cannot parse a value by @davesnowdon in #234
  • fix(search): /health stops embedding-encoding on every probe by @davesnowdon in #235
  • perf(graph): debounce save_cache via dirty-flag + N-ops/K-seconds by @davesnowdon in #236
  • fix(sync): handle FileMovedEvent so external renames preserve doc id by @davesnowdon in #238
  • fix(sse): replace soft-race int counter with asyncio.BoundedSemaphore by @davesnowdon in #237
  • fix(search): harden natural-language Tantivy callers by @davesnowdon in #241
  • perf(lcma): persistent SQLite connections in StatsStore + EdgeStore by @davesnowdon in #239
  • test: add validation guards for persistent sqlite lifecycle by @davesnowdon in #242
  • Fix Tantivy writer lock contention by @davesnowdon in #245
  • refactor(intake): CorpusIntake module — route lithos_delete through it (PR 1 of 2) by @davesnowdon in #246
  • refactor(intake): route lithos_write through CorpusIntake (#247) by @davesnowdon in #248
  • lcma refactoring plan by @davesnowdon in #249
  • refactor(reconcile): KnowledgeGraph private plan/apply, dispatch via KM (#250) by @davesnowdon in #265
  • feat(provenance): ProvenanceProjection Module scaffold + scout-read migration (#251) by @davesnowdon in #266
  • docs: accept ADR-0006 (broaden Corpus, add CorpusIntake.assert_edge) by @davesnowdon in #267
  • docs(adr): ADR-0007 WatchIntake + ADR-0003 amendment by @davesnowdon in #268
  • refactor(reconcile): ProvenanceProjection private plan/apply, dispatch via KM (#254) by @davesnowdon in #269
  • feat(cognitive-memory): Module scaffold + lifecycle (#255) by @davesnowdon in #270
  • feat(watch-intake): extract WatchIntake Module from LithosServer (#261) by @davesnowdon in #271
  • fix(search): add SearchConfig.device, force CPU in tests (#272) by @davesnowdon in #273
  • refactor(reconcile): route cli reindex and server _rebuild_indices through KnowledgeManager.plan_reconcile by @davesnowdon in #274
  • feat(cognitive-memory): migrate retrieve to CognitiveMemory + add error taxonomy by @davesnowdon in #275
  • feat(cognitive-memory): migrate node_stats and edge_upsert/list/delete to CognitiveMemory by @davesnowdon in #276
  • feat(cognitive-memory): migrate reinforcement to CognitiveMemory methods by @davesnowdon in #277
  • feat(cognitive-memory): migrate cache_lookup and conflict_resolve to CognitiveMemory by @davesnowdon in #278
  • feat(intake): CorpusIntake.assert_edge + relocate EdgeStore (#263) by @davesnowdon in #279
  • chore(tests): remove private-state access from test surface (#264) by @davesnowdon in #280
  • refactor(server): remove lcma imports + add import-graph guard (#262) by @davesnowdon in #281
  • Spec update by @davesnowdon in #282
  • fix(server): emit task.updated event from lithos_task_update by @davesnowdon in #284
  • feat(coordination): rename completed_at to resolved_at and add resolved_since filter by @davesnowdon in #288
  • chore(observability): demote routine dedup/intake guardrail logs from WARNING to INFO by @davesnowdon in #289
  • feat(task): per-key metadata merge in lithos_task_update (#290) by @davesnowdon in #291
  • feat(task): surface full task record on status, add lithos_task_get by @davesnowdon in #294
  • docs(task): document metadata argument on lithos_task_create (closes #295) by @davesnowdon in #296
  • fix(watcher): emit canonical note.created/updated payload (closes #297) by @davesnowdon in #298
  • fix(write): treat .md-ending paths as explicit filenames (closes #300) by @davesnowdon in #301
  • bump version to 0.3.0 by @davesnowdon in #302

Full Changelog: v0.2.1...v0.3.0


🎉 Published to PyPI!

Install with:

pip install lithos-mcp==0.3.0

🐳 Published to Docker Hub!

Pull with:

docker pull davesnowdon/lithos:0.3.0

Or run directly:

docker run -d -p 8765:8765 -v lithos-data:/data davesnowdon/lithos:0.3.0