From 88e8957cbaed4342a3de1faa4bc5a8bc2805e45f Mon Sep 17 00:00:00 2001 From: Jeffrey Phillips Freeman Date: Sat, 14 Feb 2026 18:40:37 -0500 Subject: [PATCH] Docs: Updated implementation plan --- implementation_plan.md | 791 ++++++++++++++++++++++------------------- 1 file changed, 429 insertions(+), 362 deletions(-) diff --git a/implementation_plan.md b/implementation_plan.md index f048f614b..1273173ba 100644 --- a/implementation_plan.md +++ b/implementation_plan.md @@ -33,11 +33,12 @@ - Keep `docs/specification.md` as the single source of truth; this plan is sequencing only and stays intentionally minimal. - Local mode is the only execution target through M6; server mode is stub-only (interfaces raising `NotImplementedError`) with no server implementation. -- Actions (YAML) instantiate Plans (ULID) that move through Strategize → Execute → Apply; decision trees, corrections, and phase semantics live in the spec. -- Registry-first: ResourceType/Resource/Tool/Validation/Skill/Actor/Provider registries are authoritative; namespaced names for actions/projects/tools/skills/actors/automation profiles; ULIDs for plans/decisions/resources/attachments. +- Actions (YAML) are templates; `plan use` instantiates a Plan (ULID) that transitions Action → Strategize → Execute → Apply. Action is non-processing, Strategize/Execute may revert to Strategize, Apply ends in `applied`/`constrained`/`errored`/`cancelled` states; decision trees and corrections persist per spec. +- Identity rules: actions/projects/tools/skills/actors/automation profiles use namespaced names; plans/decisions/resources/validation attachments use ULIDs; top-level plans may carry names, subplans are ULID-only. +- Registry-first: ResourceType/Resource/Tool/Validation/Skill/Actor/Provider registries are authoritative. - Projects are namespaced scopes linking resources; resources are physical/virtual in a DAG; resource types define parent/child constraints, auto-discovery rules, sandbox strategy, and handler metadata. - YAML configs (actions/actors/tools/skills/validations/resource types/automation profiles) follow spec schemas with env-var interpolation; validate at load time. -- Tools are the only mutation path; tool lifecycle + resource binding captures ChangeSet entries; validations are tool subtypes attached to resources and gate Apply. +- Tools are the only mutation path; tool lifecycle (discover/activate/execute/deactivate) + resource binding captures ChangeSet entries; validations are tool subtypes attached to resources with optional project/plan scope and required/informational gating. - ACMS v1 (UKO + CRP + Context Assembly Pipeline) is the M6 target; details remain in the spec. ### Core Architectural Requirements @@ -827,6 +828,7 @@ The following work from the previous implementation has been completed and will - Created `features/tool_builtins.feature` (32 scenarios), Robot smoke test (7 tests), ASV benchmarks. - Verification: lint 0, typecheck 0, 2630 scenarios passed, 97% total coverage. Tool builtins 97-100% coverage. - Branch: `feature/m1-tool-builtins` (based on `feature/m1-tool-runtime-core`) +- 2026-02-14: Commit traceability sweep found no matching git log entries for skill schema/examples, skill CLI, provider actors, MCP config/adapter, actor compiler, or skill registry persistence; Section 2B traceability tasks remain open. --- ## Roadmap @@ -974,26 +976,26 @@ CLEVERAGENTS_TEST_MODE=true ### 2026-02-14 (Day 6 since kickoff on 2026-02-09) - Timeline reference: Day 7/M1 = 2026-02-15, Day 10/M2 = 2026-02-18, Day 14/M3 = 2026-02-22, Day 21/M4 = 2026-03-01, Day 25/M5 = 2026-03-05, Day 30/M6 = 2026-03-10. -- Summary (Team | Status | Risk | Notes): Behind ~5-7d | HIGH | Domain models + resource tables + sandbox strategies landed; critical path still blocked by lifecycle persistence wiring, CLI rebaseline, tool runtime, and ChangeSet/apply pipeline. +- Summary (Team | Status | Risk | Notes): Behind ~5-7d | HIGH | Tool runtime + file tools + sandbox strategies landed; resource registry tables done; M1 blocked by plan phase rebaseline, persistence wiring, resource/project CLI, and apply pipeline/validation gate. - Milestone forecast (Target -> ETA | Delta | Risk): - - M1 (2026-02-15) -> ETA 2026-02-20 | +5d | HIGH - - M2 (2026-02-18) -> ETA 2026-02-24 | +6d | HIGH - - M3 (2026-02-22) -> ETA 2026-03-02 | +8d | HIGH - - M4 (2026-03-01) -> ETA 2026-03-09 | +8d | MED-HIGH - - M5 (2026-03-05) -> ETA 2026-03-13 | +8d | MED-HIGH - - M6 (2026-03-10) -> ETA 2026-03-16 | +6d | MED-HIGH + - M1 (2026-02-15) -> ETA 2026-02-21 | +6d | HIGH + - M2 (2026-02-18) -> ETA 2026-02-25 | +7d | HIGH + - M3 (2026-02-22) -> ETA 2026-03-03 | +9d | HIGH + - M4 (2026-03-01) -> ETA 2026-03-10 | +9d | MED-HIGH + - M5 (2026-03-05) -> ETA 2026-03-13 | +8d | MEDIUM + - M6 (2026-03-10) -> ETA 2026-03-14 | +4d | MED-HIGH - Track forecast (Track | Status | ETA | Risk | Blocking): - - Track A (Plan lifecycle + persistence) | behind ~5-7d | ETA 2026-02-20 | HIGH | LifecyclePlanRepository + UoW wiring + CLI rebaseline - - Track B (Projects/resources + sandbox) | behind ~4-6d | ETA 2026-02-22 | HIGH | resource type loader + resource/project repos + CLI; sandbox strategies done - - Track C (Actors/tools/skills/validations) | behind ~6-8d | ETA 2026-03-02 | HIGH | tool runtime + registry + actor YAML compiler - - Track D (Change tracking + apply pipeline) | behind ~6-8d | ETA 2026-02-24 | HIGH | ChangeSet model + apply gating + validation stubs + - Track A (Plan lifecycle + persistence) | behind ~5-7d | ETA 2026-02-21 | HIGH | plan phase rebaseline + persistence wiring + - Track B (Projects/resources + sandbox) | behind ~5-7d | ETA 2026-02-21 | HIGH | resource type model + project/resource repos + CLI + - Track C (Actors/tools/skills/validations) | behind ~7-9d | ETA 2026-03-03 | HIGH | tool registry persistence + actor YAML compiler + validation attachments + - Track D (Change tracking + apply pipeline) | behind ~5-7d | ETA 2026-02-22 | HIGH | ChangeSet + apply pipeline + execute/apply wiring - Track Q (Quality automation) | ahead | ETA 2026-02-15 | LOW | maintenance only - Track T (Testing) | at risk (Rui out) | ETA 2026-02-27+ | HIGH | QA load on Brent + feature owners - Developer forecast (Name | Availability | Load | Risk | Focus): - - Jeff | available | critical-path overloaded | HIGH | lifecycle persistence + tool runtime + CLI rebaseline - - Luis | available | high | MED-HIGH | repositories + apply pipeline + persistence wiring - - Hamza | available | med-high | MEDIUM | resource type schema + project context + RDF groundwork - - Aditya | available | medium | MEDIUM | actor/skill/tool YAML configs + hierarchical graphs + - Jeff | available | critical-path overloaded | HIGH | plan phase rebaseline + persistence + resource/project CLI + execute/apply wiring + - Luis | available | high | MED-HIGH | repositories + apply pipeline + service wiring + - Hamza | available | med-high | MEDIUM | resource types + project DB + RDF groundwork + - Aditya | available | medium | MEDIUM | actor/skill/tool YAML configs + hierarchical graphs + MCP configs - Brent | available | high (QA load) | MED-HIGH | test coverage + integration stability - Rui | unavailable 2026-02-13 to 2026-02-27 | zero | HIGH | test backlog resumes after 2026-02-27 - Mike/Brian | standby | low | LOW | none @@ -1194,7 +1196,7 @@ Merge points and acceptance checks are tracked as checklist items under each mil - [X] Tests (ASV) [Brent]: Add `benchmarks/precommit_config_bench.py` to benchmark config parsing and hook list extraction. - [X] Quality [Brent]: Run `nox` (all default sessions, including benchmark). - [X] Git [Brent]: `git add .` - - [X] Commit [Brent]: `git commit -m "feat(qa): add pre-commit baseline hooks"`. + - [X] Git [Brent]: `git commit -m "feat(qa): add pre-commit baseline hooks"`. - [X] Forgejo PR [Brent]: Open PR from `feature/q0-min-precommit` to `master`, wait for CI + review, merge in UI (no CLI merge) - [X] Git [Brent]: `git checkout master` - [X] Git [Brent]: `git branch -d feature/q0-min-precommit` @@ -1214,7 +1216,7 @@ Merge points and acceptance checks are tracked as checklist items under each mil - [X] Tests (ASV) [Brent]: Add `benchmarks/ci_yaml_parse_bench.py` to benchmark workflow parsing and key lookup. (benchmarks/ci_yaml_parse_bench.py) - [X] Quality [Brent]: Run `nox` (all default sessions, including benchmark). (1673 scenarios passed, 0 failed) - [X] Git [Brent]: `git add .` (only after coverage check passes) - - [X] Commit [Brent]: `git commit -m "feat(ci): add nox-based PR validation workflow"`. + - [X] Git [Brent]: `git commit -m "feat(ci): add nox-based PR validation workflow"`. - [X] Forgejo PR [Brent]: Open PR from `feature/q0-min-ci` to `master`, wait for CI + review, merge in UI (no CLI merge) - [X] Git [Brent]: `git checkout master` - [X] Git [Brent]: `git branch -d feature/q0-min-ci` @@ -1301,14 +1303,14 @@ No standalone Q0-Advanced commits planned. Advanced QA enhancements are bundled ### Section 2B: Commit Traceability Fixups [IMMEDIATE] -- [ ] Traceability [Aditya]: Checked `git log --all` on 2026-02-14; no matching commit found for "docs(skill): add skill YAML schema and examples" — keep "Done: commit not found" and reopen if the branch/commit appears. -- [ ] Traceability [Aditya]: Checked `git log --all` on 2026-02-14; no matching commit found for "feat(cli): add skill commands" — keep "Done: commit not found" and reopen if the branch/commit appears. +- [ ] Traceability [Aditya]: Find the actual commit message used for "docs(skill): add skill YAML schema and examples" in `git log --all`, then update the completed COMMIT entry to replace "Done: commit not found" with the correct `Done: Day ,