All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
dev.streamline.client.moonshotpackage — HTTP clients for the Streamline Moonshot control plane (port9094):BranchesClient(M5 — list / create / delete / merge branches)ContractsClient(M4 — register / get / validate JSON-Schema contracts)AttestationClient(M4 — request signatures, verify them)SearchClient(M2 — semantic search across topics)MemoryClient(M1 — agent memory remember / recall)
- Spring Boot starter (
streamline-spring-boot-starter) auto-wires the five moonshot clients whenstreamline.moonshot.http-urlis set.
- Circuit breaker pattern (
CircuitBreaker.java) with configurable thresholds and execute() wrapper - Circuit breaker integration in
Producer— automatically checks CB before send, records success/failure - Circuit breaker usage example (
CircuitBreakerUsage.java) - TLS/SASL authentication example (
SecurityUsage.java) - CircuitBreaker test suite (14 tests covering state transitions, thresholds, error classification)
isRetryable()method onStreamlineExceptionfor circuit breaker integration
- Producer now wires
compressionTypeandidempotentsettings to Kafka ProducerConfig - Producer now wires
retries,retryBackoffMs, andmaxRequestSizeto Kafka ProducerConfig
- fix: resolve thread safety issue in producer pool (2026-03-06)
- feat: add schema registry usage example (2026-03-06)
- Changed: update Kafka client dependency to 3.7
- Testing: add Testcontainers integration test suite
- Changed: simplify Maven module dependency tree
- Fixed: resolve thread safety issue in consumer registry
- Added: add Spring Boot auto-configuration for producer
- Correct deserialization of nullable fields
- Extract common config into shared module
- Optimize batch producer flush strategy
- Multi-module Maven project (core client + Spring Boot starter)
StreamlineClientwith builder patternProducerandConsumerwith Kafka protocol supportAdminclient for topic management- Spring Boot 3.2.0 auto-configuration with
@ConditionalOnClass @StreamlineListenerannotation for declarative event handling- Exception hierarchy with error codes and hints
- Testcontainers integration for testing
- CI pipeline with build, test, and code coverage
- CodeQL security scanning
- Release workflow with Maven Central publishing
- Release drafter for automated release notes
- Dependabot for dependency updates
- CONTRIBUTING.md with development setup guide
- Security policy (SECURITY.md)
- EditorConfig for consistent formatting
- Issue templates for bug reports and feature requests
- Initial release of Streamline Java SDK
- Core client library with Kafka protocol compatibility
- Spring Boot starter module
- Testcontainers support for integration testing
- Apache 2.0 license
- test: add BatchAccumulator unit test scaffolding
- test: add WireFormat serialization test coverage
- test: add BatchAccumulator edge case and boundary tests