feat: add gRPC-Web client service layer for OrchestratorService
- Create src/lib/services/orchestrator.ts with Connect-Web transport - Typed processRequest() async generator for server-streaming RPC - OrchestratorError class mapping gRPC status codes to app errors - Configurable endpoint with resetTransport() for reconfiguration Closes #4 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
25
implementation-plans/issue-004.md
Normal file
25
implementation-plans/issue-004.md
Normal file
@@ -0,0 +1,25 @@
|
||||
---
|
||||
---
|
||||
|
||||
# Issue #4: gRPC-Web client service layer
|
||||
|
||||
**Status:** COMPLETED
|
||||
**Issue:** https://git.shahondin1624.de/llm-multiverse/llm-multiverse-ui/issues/4
|
||||
**Branch:** `feature/issue-4-grpc-web-client`
|
||||
|
||||
## Summary
|
||||
|
||||
Create `src/lib/services/orchestrator.ts` wrapping Connect-Web client for the OrchestratorService, with typed `processRequest()` async generator and error mapping.
|
||||
|
||||
## Acceptance Criteria
|
||||
|
||||
- [x] `src/lib/services/orchestrator.ts` module created
|
||||
- [x] Wraps generated gRPC-Web stubs with typed interface
|
||||
- [x] Connection setup with configurable endpoint
|
||||
- [x] Error mapping from gRPC status codes to application errors
|
||||
- [x] `processRequest()` returns an async iterator of `ProcessRequestResponse`
|
||||
- [x] Handles streaming responses correctly
|
||||
|
||||
## Deviations
|
||||
|
||||
None.
|
||||
Reference in New Issue
Block a user