From 2e094ef938c9641f90fa762304824330ce8a301b Mon Sep 17 00:00:00 2001 From: Jeffrey Phillips Freeman Date: Sun, 22 Mar 2026 23:16:56 +0000 Subject: [PATCH] feat(acms): add text, vector, and graph backend protocol implementations Define TextBackend, VectorBackend, and GraphBackend protocols with corresponding result dataclasses. Implement in-memory stub backends for pipeline integration testing. Register backends in DI container with configurable provider selection. ISSUES CLOSED: #498 --- CHANGELOG.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1a90c2322..60251d589 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -35,6 +35,15 @@ with `shlex.split()` and `shell=False` for defense-in-depth command injection prevention, consistent with the existing pattern in `cli_plan_context_commands_steps.py`. (#734) +- Added ACMS Backend Abstraction Layer (BAL) protocol definitions and + in-memory stub implementations. Defines `TextBackend`, `VectorBackend`, + and `GraphBackend` protocols with frozen result dataclasses (`TextResult`, + `VectorResult`, `GraphResult`). In-memory stubs (`InMemoryTextBackend`, + `InMemoryVectorBackend`, `InMemoryGraphBackend`) validate arguments and + return empty results for development and testing. Backends registered as + configurable singletons in the DI container with provider selection via + `override_providers()`. Includes Behave BDD tests (35 scenarios), Robot + Framework smoke tests, ASV benchmarks, and reference documentation. (#498) - Added BuiltinAdapter class and MCP automatic resource slot creation. BuiltinAdapter wraps register_file_tools/register_git_tools/register_subplan_tool into a unified adapter interface. McpAdapter.infer_resource_slots() analyzes -- 2.52.0