update: removed all schema registry stuff#139
Conversation
📝 WalkthroughWalkthroughThis PR removes the Confluent Schema Registry from infra, CI, Helm charts, and docs; it migrates domain events and producer wiring from Avro/Schema-Registry-based serialization to Pydantic (JSON) with FastStream and relocates UnifiedProducer to Changes
Sequence Diagram(s)sequenceDiagram
participant Producer as UnifiedProducer<br/>(events/core/producer.py)
participant Broker as FastStream Broker
participant Kafka as Kafka Topic
participant Subscriber as FastStream Subscriber<br/>(events/handlers.py)
participant Handler as Event Handler
Producer->>Broker: publish(pydantic_model)
Note over Broker: Serialize to JSON
Broker->>Kafka: Send JSON message
Kafka->>Subscriber: Deliver JSON message
Note over Subscriber: Deserialize to Pydantic<br/>model (validation)
Subscriber->>Handler: Call with typed model
Handler->>Handler: Process event
Estimated code review effort🎯 4 (Complex) | ⏱️ ~60 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 1 | ❌ 2❌ Failed checks (1 warning, 1 inconclusive)
✅ Passed checks (1 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Fix all issues with AI agents
In `@docs/testing/kafka-test-stability.md`:
- Around line 63-67: Update the documentation to remove or reframe the
confluent-kafka/librdkafka race-condition explanation: state that this project
uses aiokafka (aiokafka==0.12.0) with the FastStream backend, and that
UnifiedProducer (constructed with broker, event_repository, logger, settings,
event_metrics) delegates to await self._broker.publish() so the confluent-kafka
producer-init lock is not present nor required; either delete the
confluent-kafka-specific paragraphs or replace them with a short note that
aiokafka/FastStream avoids that race and broker lifecycle is managed externally
so explicit start()/stop() on UnifiedProducer is unnecessary.
🧹 Nitpick comments (1)
docs/operations/cicd.md (1)
180-181: Minor doc accuracy nit: the actual service list differs slightly.The narrative lists
(mongo, redis, kafka, zookeeper), but the actuale2e-boot/action.yml(line 31) also startsshared-caandzookeeper-certgen. Consider mentioning these for completeness, or adding a brief note that cert-generation services are also included.
|



Summary by cubic
Removed Confluent Schema Registry and Avro from the stack and switched Kafka events to JSON via FastStream with Pydantic models. This simplifies infra across local, CI, and Helm, and updates docs to reflect the new approach.
Refactors
Migration
Written for commit c8d0a90. Summary will update on new commits.
Summary by CodeRabbit
Refactor
Chores
Documentation
Tests