-
Notifications
You must be signed in to change notification settings - Fork 99
Labels
delegated provingRelated to the delegated provingRelated to the delegated provingon holdThis issue is blocked or we don't want to start it yetThis issue is blocked or we don't want to start it yet
Milestone
Description
We want to remove the dependency on Pingora and replace it with our own gRPC service built with tonic.
This new service will maintain shared state across "workers" and handle request delegation.
The service should be fully compatible with the existing ProverApi interface, so clients do not need to be aware of which worker is actually handling the request.
Tasks
-
Core service implementation
- Create a tonic service that:
- Maintains shared state of worker availability.
- Queues requests and assigns them to free workers.
- Exposes the same API (
ProverApi) as the workers.
- Create a tonic service that:
-
Status endpoint
- Add an endpoint to expose the overall service status.
-
Rate limiting
- Add configurable rate limiting to protect the workers from overload.
-
Health checks
- Implement worker health checks to automatically detect and exclude unhealthy workers.
-
Worker management
- Add functionality to dynamically add or remove workers.
-
Metrics, logging, and tracing
- Integrate metrics collection, structured logs, and tracing for observability.
-
Self-reflection
- Add an endpoint for self-reflection / introspection (e.g., list workers, queue length, recent activity).
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
delegated provingRelated to the delegated provingRelated to the delegated provingon holdThis issue is blocked or we don't want to start it yetThis issue is blocked or we don't want to start it yet