UAT: Entity sync operations (_cleveragents/sync/*) return "not_implemented" — team resource sharing broken #4933

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

Bug Report

Feature Area: Server Mode and Multi-User — Entity Sync / Team Resource Sharing

Severity: Medium (blocks team collaboration features)

What Was Tested

The A2A extension methods for entity synchronization (_cleveragents/sync/pull, _cleveragents/sync/push, _cleveragents/sync/status) in src/cleveragents/a2a/facade.py.

Expected Behavior (from spec)

Per the specification (ADR-023, Server Mode) and the spec's Server Mode section:

Entity synchronization between client and server uses A2A extension methods (_cleveragents/sync/*):

  • Auto-sync (server.sync.auto): Entities sync on connection and at server.sync.interval (default: 300s)
  • Sync interval: Background syncs at server.sync.interval (default: 300 seconds)
  • Manual sync: Can be triggered explicitly when auto-sync is disabled
  • Direction: Server namespaces are downloaded to local cache; local namespace entities are never uploaded automatically

The spec also states that in server mode, a user can:

  • Share actions, actors, skills, and projects with team members
  • Access team-shared resources from any device

Actual Behavior

All three sync operations return stub responses:

# _cleveragents/sync/pull
{"status": "not_implemented", "stub": True}

# _cleveragents/sync/push
{"status": "not_implemented", "stub": True}

# _cleveragents/sync/status
{"status": "not_implemented", "stub": True}

The handler code in facade.py:

def _handle_sync_stub(self, params: dict[str, Any]) -> dict[str, Any]:
    return {"status": "not_implemented", "stub": True}

Code Location

  • src/cleveragents/a2a/facade.py_handle_sync_stub method (lines ~490-491)
  • src/cleveragents/application/services/config_service.pyserver.sync.auto and server.sync.interval config keys are registered but never used

Steps to Reproduce

from cleveragents.a2a.facade import A2aLocalFacade
from cleveragents.a2a.models import A2aRequest

facade = A2aLocalFacade()

# Try to sync
response = facade.dispatch(A2aRequest(method="_cleveragents/sync/pull", params={}))
print(response.result)  # {"status": "not_implemented", "stub": True}

Impact

  • Teams cannot share actors, actions, skills, or projects via server mode
  • The server.sync.auto and server.sync.interval config keys are registered but have no effect
  • Background sync never runs
  • Cross-device entity access is impossible
  • ADR-023 (Server Mode) — defines sync requirements
  • Issue #4926 — A2A HTTP Transport stub (prerequisite)
  • src/cleveragents/a2a/facade.py — sync stubs

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

## Bug Report **Feature Area:** Server Mode and Multi-User — Entity Sync / Team Resource Sharing **Severity:** Medium (blocks team collaboration features) ### What Was Tested The A2A extension methods for entity synchronization (`_cleveragents/sync/pull`, `_cleveragents/sync/push`, `_cleveragents/sync/status`) in `src/cleveragents/a2a/facade.py`. ### Expected Behavior (from spec) Per the specification (ADR-023, Server Mode) and the spec's Server Mode section: > Entity synchronization between client and server uses A2A extension methods (`_cleveragents/sync/*`): > - **Auto-sync** (`server.sync.auto`): Entities sync on connection and at `server.sync.interval` (default: 300s) > - **Sync interval**: Background syncs at `server.sync.interval` (default: 300 seconds) > - **Manual sync**: Can be triggered explicitly when auto-sync is disabled > - **Direction**: Server namespaces are downloaded to local cache; local namespace entities are never uploaded automatically The spec also states that in server mode, a user can: > - Share actions, actors, skills, and projects with team members > - Access team-shared resources from any device ### Actual Behavior All three sync operations return stub responses: ```python # _cleveragents/sync/pull {"status": "not_implemented", "stub": True} # _cleveragents/sync/push {"status": "not_implemented", "stub": True} # _cleveragents/sync/status {"status": "not_implemented", "stub": True} ``` The handler code in `facade.py`: ```python def _handle_sync_stub(self, params: dict[str, Any]) -> dict[str, Any]: return {"status": "not_implemented", "stub": True} ``` ### Code Location - `src/cleveragents/a2a/facade.py` — `_handle_sync_stub` method (lines ~490-491) - `src/cleveragents/application/services/config_service.py` — `server.sync.auto` and `server.sync.interval` config keys are registered but never used ### Steps to Reproduce ```python from cleveragents.a2a.facade import A2aLocalFacade from cleveragents.a2a.models import A2aRequest facade = A2aLocalFacade() # Try to sync response = facade.dispatch(A2aRequest(method="_cleveragents/sync/pull", params={})) print(response.result) # {"status": "not_implemented", "stub": True} ``` ### Impact - Teams cannot share actors, actions, skills, or projects via server mode - The `server.sync.auto` and `server.sync.interval` config keys are registered but have no effect - Background sync never runs - Cross-device entity access is impossible ### Related - ADR-023 (Server Mode) — defines sync requirements - Issue #4926 — A2A HTTP Transport stub (prerequisite) - `src/cleveragents/a2a/facade.py` — sync stubs --- **Automated by CleverAgents Bot** Supervisor: UAT Testing | Agent: uat-tester
HAL9000 added this to the v3.8.0 milestone 2026-04-09 05:43:19 +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#4933
No description provided.