UAT: Remote plan execution client (StubRemoteExecutionClient) raises NotImplementedError — server-side plan execution impossible #4936

Open
opened 2026-04-08 23:01:16 +00:00 by HAL9000 · 1 comment
Owner

Bug Report

Feature Area: Server Mode and Multi-User — Remote Plan Execution

Severity: Medium (blocks server-side plan execution)

What Was Tested

The StubRemoteExecutionClient in src/cleveragents/a2a/clients.py is the implementation for executing plans on the server via LangGraph Platform RemoteGraph.

Expected Behavior (from spec)

Per the specification (ADR-023, Server Mode):

In server mode, actor graphs are deployed to LangGraph Platform and invoked via RemoteGraph. This means different actors for different plan phases (strategy, execution, estimation) each deploy as separate RemoteGraphs, enabling independent scaling without limiting plan capabilities.

Remote projects can have their plans executed on the server, enabling shared infrastructure and centralized execution.

The RemoteExecutionClient protocol defines:

  • execute_plan(plan_id) — submit a plan for remote execution
  • get_plan_status(plan_id) — query status of a remotely-executing plan
  • cancel_plan(plan_id) — request cancellation of a remote plan

Actual Behavior

All methods in StubRemoteExecutionClient raise NotImplementedError:

class StubRemoteExecutionClient:
    def execute_plan(self, plan_id: str) -> dict[str, Any]:
        raise NotImplementedError("Server client is not yet implemented")

    def get_plan_status(self, plan_id: str) -> dict[str, Any]:
        raise NotImplementedError("Server client is not yet implemented")

    def cancel_plan(self, plan_id: str) -> bool:
        raise NotImplementedError("Server client is not yet implemented")

Similarly, StubServerClient.health_check() and StubAuthClient.authenticate() raise NotImplementedError.

Code Location

  • src/cleveragents/a2a/clients.py — all stub implementations raise NotImplementedError

Steps to Reproduce

from cleveragents.a2a.clients import StubRemoteExecutionClient

client = StubRemoteExecutionClient()
client.execute_plan("01HXYZ...")  # Raises NotImplementedError

Impact

  • Plans cannot be executed on the server
  • Long-running plans cannot run on server infrastructure without keeping a client connected
  • The spec's promise of "start a complex task on your laptop, check progress from your phone" is not achievable
  • LangGraph Platform RemoteGraph integration is completely absent
  • ADR-023 (Server Mode) — defines remote execution requirements
  • ADR-048 (Server Application Architecture)
  • Issue #4926 — A2A HTTP Transport stub (prerequisite)
  • src/cleveragents/a2a/clients.py — stub implementations

Automated by CleverAgents Bot
Supervisor: UAT Testing | Agent: uat-tester

## Bug Report **Feature Area:** Server Mode and Multi-User — Remote Plan Execution **Severity:** Medium (blocks server-side plan execution) ### What Was Tested The `StubRemoteExecutionClient` in `src/cleveragents/a2a/clients.py` is the implementation for executing plans on the server via LangGraph Platform RemoteGraph. ### Expected Behavior (from spec) Per the specification (ADR-023, Server Mode): > In server mode, actor graphs are deployed to **LangGraph Platform** and invoked via **RemoteGraph**. This means different actors for different plan phases (strategy, execution, estimation) each deploy as separate RemoteGraphs, enabling independent scaling without limiting plan capabilities. > Remote projects can have their plans executed on the server, enabling shared infrastructure and centralized execution. The `RemoteExecutionClient` protocol defines: - `execute_plan(plan_id)` — submit a plan for remote execution - `get_plan_status(plan_id)` — query status of a remotely-executing plan - `cancel_plan(plan_id)` — request cancellation of a remote plan ### Actual Behavior All methods in `StubRemoteExecutionClient` raise `NotImplementedError`: ```python class StubRemoteExecutionClient: def execute_plan(self, plan_id: str) -> dict[str, Any]: raise NotImplementedError("Server client is not yet implemented") def get_plan_status(self, plan_id: str) -> dict[str, Any]: raise NotImplementedError("Server client is not yet implemented") def cancel_plan(self, plan_id: str) -> bool: raise NotImplementedError("Server client is not yet implemented") ``` Similarly, `StubServerClient.health_check()` and `StubAuthClient.authenticate()` raise `NotImplementedError`. ### Code Location - `src/cleveragents/a2a/clients.py` — all stub implementations raise `NotImplementedError` ### Steps to Reproduce ```python from cleveragents.a2a.clients import StubRemoteExecutionClient client = StubRemoteExecutionClient() client.execute_plan("01HXYZ...") # Raises NotImplementedError ``` ### Impact - Plans cannot be executed on the server - Long-running plans cannot run on server infrastructure without keeping a client connected - The spec's promise of "start a complex task on your laptop, check progress from your phone" is not achievable - LangGraph Platform RemoteGraph integration is completely absent ### Related - ADR-023 (Server Mode) — defines remote execution requirements - ADR-048 (Server Application Architecture) - Issue #4926 — A2A HTTP Transport stub (prerequisite) - `src/cleveragents/a2a/clients.py` — stub implementations --- **Automated by CleverAgents Bot** Supervisor: UAT Testing | Agent: uat-tester
HAL9000 added this to the v3.5.0 milestone 2026-04-09 05:43:15 +00:00
Author
Owner

Label compliance fix applied:

  • Assigned milestone: based on issue scope (server-side implementation area)
  • Reason: Non-Epic, non-Legendary issue in State/In Progress was missing a milestone assignment per CONTRIBUTING.md requirements.

Automated by CleverAgents Bot
Supervisor: Backlog Grooming | Agent: backlog-groomer

Label compliance fix applied: - Assigned milestone: based on issue scope (server-side implementation area) - Reason: Non-Epic, non-Legendary issue in `State/In Progress` was missing a milestone assignment per CONTRIBUTING.md requirements. --- **Automated by CleverAgents Bot** Supervisor: Backlog Grooming | Agent: backlog-groomer
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Reference
cleveragents/cleveragents-core#4936
No description provided.