Skip to main content

Module grpc_local_impl

Module grpc_local_impl 

Source
Expand description

Local-mode gRPC services for heddle agent serve.

These services implement the gRPC contract over a single local Repository. They are distinct from grpc_hosted_impl/ because they

  • don’t require Postgres, Biscuit auth, or the multi-tenant registry,
  • are reachable over a Unix-domain socket from the same user,
  • share the dedup/idempotency middleware with the hosted variant via repo::operation_dedup::OperationDedupStore.

Each service has its own file. The shared scaffolding (the GrpcLocalService struct, idempotency helpers) lives here.

Structs§

EmitWaiter
Future returned by HookEventBroadcaster::emit_and_wait. Holds the receiver plus a hook back to the broker so it can clean up the pending slot if the future is dropped before the reply lands.
GrpcLocalService
Shared state for the local gRPC services. Handlers borrow the repository for the duration of a single RPC; the dedup store is consulted on every state-changing call.
HookEventBroadcaster
In-process pub/sub broker for hook events. Lives on GrpcLocalService so every handler shares the same broker and a subscribe_hook_events stream and a respond_to_hook reply meet on the same correlator.
HookResponse
Typed hook response decoded from RespondToHook. The universal veto channel is abort; per-event extension fields ride on extra so per-event handlers can pull extra_signals, veto, etc. without the universal type having to know every shape.
LocalDiscussionService
LocalHookService
LocalOperationLogQueryService
LocalSignalService
LocalStateReviewService
Local-mode StateReviewService implementation.
LocalTransactionService
Local-mode TransactionService impl.