UAT: A2A facade missing multi-turn interaction extension methods (_cleveragents/fs/* and _cleveragents/terminal/*) #1388

Open
opened 2026-04-02 17:02:45 +00:00 by freemo · 0 comments
Owner

Bug Report

Feature Area: TuiMaterializer A2A Integration / A2A Module
Severity: Medium
Found by: UAT tester uat-worker-a2a

What Was Tested

Verified whether the A2aLocalFacade supports the multi-turn interaction extension methods for filesystem and terminal operations required by the spec.

Expected Behavior (from spec)

Per docs/specification.md lines 23415-23425 (Multi-Turn Interactions):

Interaction Pattern Purpose
_cleveragents/fs/read_text_file Agent reads a file on the client machine (local project resources)
_cleveragents/fs/write_text_file Agent writes a file on the client machine
_cleveragents/terminal/create Agent requests a terminal on the client machine (sandbox execution)
_cleveragents/terminal/output Terminal output streaming
_cleveragents/terminal/release Terminal lifecycle management
_cleveragents/terminal/wait_for_exit Terminal lifecycle management
_cleveragents/terminal/kill Terminal lifecycle management

These enable a server-hosted agent to access client-local resources without requiring the server to have direct access to the user's filesystem or terminal.

Actual Behavior

None of these extension methods are registered in A2aLocalFacade:

from cleveragents.a2a.facade import _SUPPORTED_OPERATIONS

spec_ops = [
    '_cleveragents/fs/read_text_file',
    '_cleveragents/fs/write_text_file',
    '_cleveragents/terminal/create',
    '_cleveragents/terminal/output',
    '_cleveragents/terminal/release',
    '_cleveragents/terminal/wait_for_exit',
    '_cleveragents/terminal/kill',
]
for op in spec_ops:
    print(f'{op}: {"PRESENT" if op in _SUPPORTED_OPERATIONS else "MISSING"}')
# All print MISSING

Code Location

  • src/cleveragents/a2a/facade.py_EXTENSION_OPERATIONS list (lines ~30-55) — missing _cleveragents/fs/* and _cleveragents/terminal/* groups
  • Missing handler methods: _handle_fs_read_text_file(), _handle_fs_write_text_file(), _handle_terminal_create(), etc.

Impact

Server-hosted agents cannot access client-local files or terminals through the A2A multi-turn interaction protocol. This blocks the server-mode deployment scenario where agents need to read/write project files on the user's machine. The input-required task state for human-in-the-loop approval flows also depends on this infrastructure.

## Bug Report **Feature Area:** TuiMaterializer A2A Integration / A2A Module **Severity:** Medium **Found by:** UAT tester uat-worker-a2a ### What Was Tested Verified whether the `A2aLocalFacade` supports the multi-turn interaction extension methods for filesystem and terminal operations required by the spec. ### Expected Behavior (from spec) Per `docs/specification.md` lines 23415-23425 (Multi-Turn Interactions): | Interaction Pattern | Purpose | |---|---| | `_cleveragents/fs/read_text_file` | Agent reads a file on the client machine (local project resources) | | `_cleveragents/fs/write_text_file` | Agent writes a file on the client machine | | `_cleveragents/terminal/create` | Agent requests a terminal on the client machine (sandbox execution) | | `_cleveragents/terminal/output` | Terminal output streaming | | `_cleveragents/terminal/release` | Terminal lifecycle management | | `_cleveragents/terminal/wait_for_exit` | Terminal lifecycle management | | `_cleveragents/terminal/kill` | Terminal lifecycle management | These enable a server-hosted agent to access client-local resources without requiring the server to have direct access to the user's filesystem or terminal. ### Actual Behavior None of these extension methods are registered in `A2aLocalFacade`: ```python from cleveragents.a2a.facade import _SUPPORTED_OPERATIONS spec_ops = [ '_cleveragents/fs/read_text_file', '_cleveragents/fs/write_text_file', '_cleveragents/terminal/create', '_cleveragents/terminal/output', '_cleveragents/terminal/release', '_cleveragents/terminal/wait_for_exit', '_cleveragents/terminal/kill', ] for op in spec_ops: print(f'{op}: {"PRESENT" if op in _SUPPORTED_OPERATIONS else "MISSING"}') # All print MISSING ``` ### Code Location - `src/cleveragents/a2a/facade.py` — `_EXTENSION_OPERATIONS` list (lines ~30-55) — missing `_cleveragents/fs/*` and `_cleveragents/terminal/*` groups - Missing handler methods: `_handle_fs_read_text_file()`, `_handle_fs_write_text_file()`, `_handle_terminal_create()`, etc. ### Impact Server-hosted agents cannot access client-local files or terminals through the A2A multi-turn interaction protocol. This blocks the server-mode deployment scenario where agents need to read/write project files on the user's machine. The `input-required` task state for human-in-the-loop approval flows also depends on this infrastructure.
freemo self-assigned this 2026-04-02 18:45:15 +00:00
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.

Dependencies

No dependencies set.

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