v2.0.1
Dead-code hardening release. Removes the Kafka consumer path outright instead of carrying it as inactive weight. No change to the {category, operational_domain} output contract; the classifier's live surface remains the /classify HTTP provider.
Removed
- Kafka consumer (
src/consumer.py) and its test suite. The consumer was an event-driven alternative to the/classifyHTTP path — readingNoteCreatedevents off anote-eventstopic, classifying in-process, and writing labels back as namespaced tags. It went dead once the notes consumer moved to an HTTPBackgroundTaskswriteback loop: nothing publishesnote-eventsanymore, so it was a no-op against the live system. Deleted here (src/consumer.py,tests/test_consumer.py,tests/test_consumer_integration.py); the reference implementation remains available in git history and the ADRs. - Unused Kafka dependencies (
kafka-python,testcontainers[kafka]) dropped frompyproject.toml/requirements.txt;uv.lockregenerated. - CI
integration-testjob (the Testcontainers Kafka lane in.github/workflows/tests.yml) and the matching Jenkins stage — neither had an integration test left to run. - Orphaned Kafka vars in
.env.example, the consumer entry in the README structure listing, anddocs/integration-testing.md.
Full unit suite (68 tests), ruff, and CodeQL pass clean.