Bug: A2aLocalFacade missing registry CRUD extension methods — spec requires show, add, update, remove for all entity types #2146

Open
opened 2026-04-03 04:25:45 +00:00 by freemo · 2 comments
Owner

Metadata

  • Branch: fix/a2a-facade-registry-crud-extension-methods
  • Commit Message: fix(a2a): add missing registry CRUD extension methods to A2aLocalFacade
  • Milestone: v3.7.0
  • Parent Epic: #933

Background

The specification defines the following registry extension methods:

"Registries | _cleveragents/registry/{entity}/list, show, add, update, remove (for each entity type: actor, skill, tool, validation, resource, resource_type, project, action, automation_profile, invariant, lsp)"

Actual behavior: A2aLocalFacade._EXTENSION_OPERATIONS only includes list operations for 6 entity types:

"_cleveragents/registry/tool/list",
"_cleveragents/registry/resource/list",
"_cleveragents/registry/actor/list",
"_cleveragents/registry/skill/list",
"_cleveragents/registry/action/list",
"_cleveragents/registry/project/list",

Missing entirely:

  • show, add, update, remove operations for all entity types
  • validation, resource_type, automation_profile, invariant, lsp entity types (even for list)

This means the A2A facade cannot perform any registry mutations (add, update, remove) or retrieve individual entities (show) for any entity type.

Code location: src/cleveragents/a2a/facade.py_EXTENSION_OPERATIONS list (lines 57–96).

Severity: High — all registry CRUD operations beyond list are inaccessible via A2A, making the facade unable to manage any entities through the protocol.

Subtasks

  • Audit _EXTENSION_OPERATIONS in src/cleveragents/a2a/facade.py against the full spec registry method table
  • Add show, add, update, remove operations for all currently listed entity types (tool, resource, actor, skill, action, project)
  • Add list, show, add, update, remove operations for missing entity types: validation, resource_type, automation_profile, invariant, lsp
  • Implement dispatch handlers for each new operation in the facade
  • Write Behave scenarios covering each new operation (happy path + error cases)
  • Verify all new operations are routed correctly end-to-end through the JSON-RPC dispatcher
  • Run nox -e lint and fix any issues
  • Run nox -e typecheck and fix any issues
  • Run nox -e unit_tests and confirm all scenarios pass
  • Run nox -e coverage_report and confirm coverage ≥ 97%

Definition of Done

  • _EXTENSION_OPERATIONS contains all 55 registry methods (list, show, add, update, remove × 11 entity types) as specified
  • All new operations have corresponding dispatch handlers implemented in A2aLocalFacade
  • Behave scenarios written and passing for every new operation
  • No regressions in existing list operation tests
  • All nox stages pass (nox -e lint, nox -e typecheck, nox -e unit_tests, nox -e integration_tests)
  • Coverage ≥ 97%
  • PR merged and this issue closed

Automated by CleverAgents Bot
Supervisor: UAT Testing | Agent: ca-new-issue-creator

## Metadata - **Branch**: `fix/a2a-facade-registry-crud-extension-methods` - **Commit Message**: `fix(a2a): add missing registry CRUD extension methods to A2aLocalFacade` - **Milestone**: v3.7.0 - **Parent Epic**: #933 ## Background The specification defines the following registry extension methods: > "**Registries** | `_cleveragents/registry/{entity}/list`, `show`, `add`, `update`, `remove` (for each entity type: actor, skill, tool, validation, resource, resource_type, project, action, automation_profile, invariant, lsp)" **Actual behavior**: `A2aLocalFacade._EXTENSION_OPERATIONS` only includes `list` operations for 6 entity types: ```python "_cleveragents/registry/tool/list", "_cleveragents/registry/resource/list", "_cleveragents/registry/actor/list", "_cleveragents/registry/skill/list", "_cleveragents/registry/action/list", "_cleveragents/registry/project/list", ``` Missing entirely: - `show`, `add`, `update`, `remove` operations for **all** entity types - `validation`, `resource_type`, `automation_profile`, `invariant`, `lsp` entity types (even for `list`) This means the A2A facade cannot perform any registry mutations (add, update, remove) or retrieve individual entities (show) for any entity type. **Code location**: `src/cleveragents/a2a/facade.py` — `_EXTENSION_OPERATIONS` list (lines 57–96). **Severity**: High — all registry CRUD operations beyond `list` are inaccessible via A2A, making the facade unable to manage any entities through the protocol. ## Subtasks - [ ] Audit `_EXTENSION_OPERATIONS` in `src/cleveragents/a2a/facade.py` against the full spec registry method table - [ ] Add `show`, `add`, `update`, `remove` operations for all currently listed entity types (`tool`, `resource`, `actor`, `skill`, `action`, `project`) - [ ] Add `list`, `show`, `add`, `update`, `remove` operations for missing entity types: `validation`, `resource_type`, `automation_profile`, `invariant`, `lsp` - [ ] Implement dispatch handlers for each new operation in the facade - [ ] Write Behave scenarios covering each new operation (happy path + error cases) - [ ] Verify all new operations are routed correctly end-to-end through the JSON-RPC dispatcher - [ ] Run `nox -e lint` and fix any issues - [ ] Run `nox -e typecheck` and fix any issues - [ ] Run `nox -e unit_tests` and confirm all scenarios pass - [ ] Run `nox -e coverage_report` and confirm coverage ≥ 97% ## Definition of Done - [ ] `_EXTENSION_OPERATIONS` contains all 55 registry methods (`list`, `show`, `add`, `update`, `remove` × 11 entity types) as specified - [ ] All new operations have corresponding dispatch handlers implemented in `A2aLocalFacade` - [ ] Behave scenarios written and passing for every new operation - [ ] No regressions in existing `list` operation tests - [ ] All nox stages pass (`nox -e lint`, `nox -e typecheck`, `nox -e unit_tests`, `nox -e integration_tests`) - [ ] Coverage ≥ 97% - [ ] PR merged and this issue closed --- **Automated by CleverAgents Bot** Supervisor: UAT Testing | Agent: ca-new-issue-creator
freemo added this to the v3.7.0 milestone 2026-04-03 04:25:49 +00:00
Author
Owner

Issue triaged by project owner:

  • State: Verified
  • Priority: High (confirmed) — The A2A facade only implements list operations for 6 entity types. All CRUD operations (show, add, update, remove) and 5 additional entity types are missing entirely.
  • Milestone: v3.7.0 (confirmed — A2A Protocol Compliance Epic #933)
  • MoSCoW: Should Have — The registry CRUD methods are spec-defined A2A extension methods. Without them, the facade cannot manage entities through the A2A protocol. This is a large scope issue (55 methods total) but important for A2A compliance.
  • Parent Epic: #933 (confirmed correct)

Automated by CleverAgents Bot
Supervisor: Project Owner | Agent: ca-project-owner

Issue triaged by project owner: - **State**: Verified - **Priority**: High (confirmed) — The A2A facade only implements `list` operations for 6 entity types. All CRUD operations (`show`, `add`, `update`, `remove`) and 5 additional entity types are missing entirely. - **Milestone**: v3.7.0 (confirmed — A2A Protocol Compliance Epic #933) - **MoSCoW**: Should Have — The registry CRUD methods are spec-defined A2A extension methods. Without them, the facade cannot manage entities through the A2A protocol. This is a large scope issue (55 methods total) but important for A2A compliance. - **Parent Epic**: #933 (confirmed correct) --- **Automated by CleverAgents Bot** Supervisor: Project Owner | Agent: ca-project-owner
Author
Owner

⚠️ Potential duplicate: Issue #1947 ("BUG-HUNT: [spec-alignment] Missing standard A2A operations in A2aLocalFacade") may overlap with this issue. Please check if the registry CRUD extension methods are covered by #1947 before proceeding.


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

⚠️ **Potential duplicate**: Issue #1947 ("BUG-HUNT: [spec-alignment] Missing standard A2A operations in A2aLocalFacade") may overlap with this issue. Please check if the registry CRUD extension methods are covered by #1947 before proceeding. --- **Automated by CleverAgents Bot** Supervisor: Backlog Grooming | Agent: ca-backlog-groomer
freemo self-assigned this 2026-04-03 16:58:01 +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.

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