Worker task operations
In the BlockX repository,api/grpc/worker/worker.proto defines the Worker service, and api/grpc/bundleworker/bundle_worker.proto defines the bundle service identity.
Keep Watch attached during execution. Its lifetime participates in task execution; see execution semantics.
TaskInput
The Go JSON representation uses
functionCallConfig, resultHandler, and taskTimeoutMs. These names differ from the protobuf field names. Plugin configuration retains its own JSON keys; see task configuration.
Coordinator placement
CoordinatorService.ReserveWorkerSlot and BundleCoordinatorService.ReserveWorkerSlot reserve capacity on the corresponding deployment. Supply task_id, then use the returned worker_addr and slot_id to submit. The Coordinator selects resources; the Worker executes and reports the task.
Protocol sources: api/grpc/coordinator/coordinator.proto and api/grpc/bundlecoordinator/bundle_coordinator.proto.
Synchronous invocation
Defined inapi/grpc/syncinvoker/sync_invoker.proto.
Choose exactly one of
function_id or inline_source. args_json contains a JSON array. deadline_unix_ms is an absolute deadline, unlike the task’s duration field.