Commit Graph

21 Commits

Author SHA1 Message Date
39673d31b8 fix: resolve golangci-lint errcheck warnings
Some checks failed
CI / Lint (push) Failing after 59s
CI / Test (push) Failing after 1m39s
CI / Release (push) Has been cancelled
CI / Notify (push) Has been cancelled
- Add error checks for unchecked return values (errcheck)
- Remove unused struct fields (unused)
- Fix gofmt formatting issues
2026-02-20 08:45:19 -05:00
81581337cd Merge pull request 'feature/go-handler-refactor' (#1) from feature/go-handler-refactor into main
Some checks failed
CI / Lint (push) Failing after 1m18s
CI / Test (push) Failing after 1m19s
CI / Release (push) Has been skipped
CI / Notify (push) Successful in 1s
Reviewed-on: #1
2026-02-20 12:33:18 +00:00
ea9b3a8f2b feat: add TypedMessageHandler + generic Decode[T] helper
Some checks failed
CI / Lint (pull_request) Failing after 1m25s
CI / Test (pull_request) Failing after 1m25s
CI / Release (pull_request) Has been skipped
CI / Notify (pull_request) Successful in 1s
- handler: add OnTypedMessage() for typed NATS message callbacks
  Avoids double-decode (msgpack→map→typed) by skipping map step
- handler: refactor wrapHandler into wrapTypedHandler + wrapMapHandler
- natsutil: add generic Decode[T](data) for direct msgpack→struct decode
- tests: add typed handler tests + benchmark (11 tests pass)
2026-02-20 07:10:33 -05:00
35912d5844 feat: add e2e tests, perf benchmarks, and infrastructure improvements
- messages/bench_test.go: serialization benchmarks (msgpack map vs struct vs protobuf)
- clients/clients_test.go: HTTP client tests with pooling verification (20 tests)
- natsutil/natsutil_test.go: encode/decode roundtrip + binary data tests
- handler/handler_test.go: handler dispatch tests + benchmark
- config/config.go: live reload via fsnotify + RWMutex getter methods
- clients/clients.go: SharedTransport + sync.Pool buffer pooling
- messages/messages.go: typed structs with msgpack+json tags
- messages/proto/: protobuf schema + generated code

Benchmark baseline (ChatRequest roundtrip):
  MsgpackMap:    2949 ns/op, 36 allocs
  MsgpackStruct: 2030 ns/op, 13 allocs (31% faster, 64% fewer allocs)
  Protobuf:       793 ns/op,  8 allocs (73% faster, 78% fewer allocs)
2026-02-20 06:44:37 -05:00
d321c9852b refactor: rewrite handler-base as Go module
Replace Python handler-base library with Go module providing:
- config: environment-based configuration
- health: HTTP health/readiness server for k8s probes
- natsutil: NATS/JetStream client with msgpack serialization
- telemetry: OpenTelemetry tracing and metrics setup
- clients: HTTP clients for LLM, embeddings, reranker, STT, TTS
- handler: base Handler runner wiring NATS + health + telemetry

Implements ADR-0061 Phase 1.
2026-02-19 17:16:17 -05:00
5eb2c43a5d fix: replace astral-sh/setup-uv action with shell install
All checks were successful
CI / Lint (push) Successful in 1m34s
CI / Test (push) Successful in 1m59s
CI / Release (push) Successful in 4s
CI / Notify (push) Successful in 1s
The JS-based GitHub Action doesn't work on Gitea's act runner.
Use curl installer + GITHUB_PATH instead.
v0.1.2
2026-02-13 19:40:55 -05:00
cb91015964 chore: add Renovate config for automated dependency updates
All checks were successful
CI / Lint (push) Successful in 1m35s
CI / Release (push) Successful in 5s
CI / Notify (push) Successful in 1s
CI / Test (push) Successful in 1m39s
Ref: ADR-0057
v0.1.1
2026-02-13 15:33:54 -05:00
408f31e56d feat: add py.typed, Ray handles for clients, and pre-commit config
All checks were successful
CI / Test (push) Successful in 4m8s
CI / Lint (push) Successful in 4m19s
CI / Release (push) Successful in 58s
CI / Notify (push) Successful in 2s
- Add py.typed marker for PEP 561 type hint support
- Add ray_utils module for Ray handle detection and caching
- Update all clients (Embeddings, LLM, TTS, STT, Reranker) to use
  Ray handles when running inside Ray cluster for faster internal calls
- Add .pre-commit-config.yaml with ruff and standard hooks
- Add pre-commit and ray[serve] to optional dependencies
- Bump ruff version to 0.4.0
v0.1.0
2026-02-02 09:08:43 -05:00
dbf1a93141 fix: auto-fix ruff linting errors and remove unsupported upload-artifact
All checks were successful
CI / Lint (push) Successful in 52s
CI / Test (push) Successful in 1m1s
CI / Release (push) Successful in 5s
CI / Notify (push) Successful in 1s
v0.0.1
2026-02-02 08:34:00 -05:00
7b30ff6a05 fix: upgrade setup-uv to v7 with explicit activate-environment: false
Some checks failed
CI / Release (push) Has been skipped
CI / Notify (push) Successful in 2s
CI / Lint (push) Failing after 1m15s
CI / Test (push) Failing after 1m34s
2026-02-02 08:26:08 -05:00
dc1eeecd58 fix: downgrade setup-uv to v4 for act_runner compatibility
Some checks failed
CI / Lint (push) Failing after 42s
CI / Test (push) Failing after 44s
CI / Release (push) Has been cancelled
CI / Notify (push) Has been cancelled
2026-02-02 08:25:22 -05:00
b2e1e29404 fix: add pytest-cov to dev dependencies
Some checks failed
CI / Test (push) Failing after 43s
CI / Release (push) Has been skipped
CI / Notify (push) Successful in 2s
CI / Lint (push) Failing after 9s
2026-02-02 08:23:43 -05:00
80c6f29716 fix: use --extra dev for optional dependencies
Some checks failed
CI / Lint (push) Failing after 11s
CI / Test (push) Failing after 43s
CI / Release (push) Has been skipped
CI / Notify (push) Successful in 3s
2026-02-02 08:14:57 -05:00
65374ec286 fix: add --all-groups to uv sync to install dev dependencies
Some checks failed
CI / Test (push) Failing after 34s
CI / Release (push) Has been skipped
CI / Notify (push) Successful in 1s
CI / Lint (push) Failing after 31s
2026-02-02 08:06:51 -05:00
007b4c0115 feat: add ntfy notifications and semantic versioning (ADR-0015)
Some checks failed
CI / Lint (push) Failing after 1m55s
CI / Test (push) Failing after 2m22s
CI / Notify (push) Has been cancelled
CI / Release (push) Has been cancelled
2026-02-02 08:00:27 -05:00
49b0d784e2 ci: test Docker Hub auth
Some checks failed
CI / Lint (push) Has been cancelled
CI / Test (push) Has been cancelled
2026-02-02 07:53:54 -05:00
c696efecbb ci: re-trigger pipeline
Some checks failed
CI / Lint (push) Failing after 2s
CI / Test (push) Failing after 1s
2026-02-02 07:51:06 -05:00
11fd197dcb ci: add Gitea Actions workflow with uv, ruff, pytest
Some checks failed
CI / Lint (push) Failing after 1s
CI / Test (push) Failing after 1s
2026-02-02 07:15:57 -05:00
849da661e6 test: add unit tests for handler-base
- tests/conftest.py: Pytest fixtures and configuration
- tests/unit/test_config.py: Settings tests
- tests/unit/test_nats_client.py: NATS client tests
- tests/unit/test_health.py: Health server tests
- tests/unit/test_clients.py: Service client tests
- pytest.ini: Pytest configuration
2026-02-02 06:23:44 -05:00
99c97b7973 feat: Add handler-base library for NATS AI/ML services
- Handler base class with graceful shutdown and signal handling
- NATSClient with JetStream and msgpack serialization
- Pydantic Settings for environment configuration
- HealthServer for Kubernetes probes
- OpenTelemetry telemetry setup
- Service clients: STT, TTS, LLM, Embeddings, Reranker, Milvus
2026-02-01 20:36:00 -05:00
00df482412 Initial commit 2026-02-02 01:35:14 +00:00