Commit Graph

155 Commits

Author SHA1 Message Date
aditya 80a56846fe Merge branch 'master' into develop-aditya-2
# Conflicts:
#	implementation_plan.md
2026-02-24 09:37:42 +00:00
khyari hamza bfc6ab0fb1 feat(resource): add handler runtime for git-checkout and fs-directory 2026-02-23 22:20:44 +00:00
khyari hamza 832fe369fe refactor(benchmark): clean up resource registry bench per review
- remove unused imports (UTC, datetime, ResourceKind, SandboxStrategy)
- remove dead code (_bench_ulid, _CB32, _BENCH_CTR)
- use StaticPool for in-memory SQLite consistency
2026-02-23 22:20:44 +00:00
khyari hamza 78213084ae feat(resource): add resource registry and DAG metadata 2026-02-23 22:20:44 +00:00
khyari hamza abcfba7e66 feat(decision): add decision domain and context snapshots 2026-02-23 22:19:19 +00:00
freemo 76375134f1 Fix: linting errors fixed 2026-02-23 09:47:00 -05:00
aditya a6e56fe96e feat(skill): add MCP adapter for external tools 2026-02-23 13:03:10 +00:00
freemo f69224e7e9 feat(cli): add action and plan CLI extensions 2026-02-23 10:46:53 +00:00
freemo 999013a4a4 feat(plan): add phase reversion state machine 2026-02-23 10:45:01 +00:00
freemo 234a2fe52a feat(config): add config service with multi-level resolution 2026-02-23 10:44:58 +00:00
aditya 7013d4462d feat(actor): extend hierarchical actor YAML schema and loader 2026-02-23 10:42:44 +00:00
brent.edwards f48eb5a05f feat(cli): add interactive repl
Implement `agents repl` command providing an interactive read-eval-print
loop that dispatches to existing CLI commands without the `agents` prefix.

Features:
- Command dispatch via existing Typer app
- readline history with --no-history opt-out (default: ~/.cleveragents/history)
- Tab-completion for all CLI commands and built-in commands
- !! last-command repetition
- Prompt context from CLEVERAGENTS_PROJECT / CLEVERAGENTS_PLAN env vars
- Ctrl+C (continue) and Ctrl+D (exit) signal handling
- Multi-line input with \ continuation
- :help and :exit/:quit built-in commands

Test coverage:
- 15 Behave scenarios (features/repl.feature)
- 10 Robot Framework smoke tests (robot/repl_smoke.robot)
- ASV benchmark suite (benchmarks/repl_bench.py)
- All nox sessions pass: lint, typecheck, unit_tests, integration_tests
- Coverage: 97.2% (threshold: 97%)
2026-02-23 03:11:12 +00:00
freemo 92c83ecc7e Fix: Fixed linting errors 2026-02-22 14:18:24 -05:00
freemo dd3c70665e Merge remote-tracking branch 'origin/feature/m6-acp-stubs' into feature/jeff-combined-day14-batch2 2026-02-22 17:05:00 +00:00
freemo ee67ecb7cb merge: resolve M4.1+M4.2 conflicts (M4.2 supersedes M4.1 models/service) 2026-02-22 17:04:03 +00:00
freemo e2fa756be4 merge: resolve M1.2 conflict in services/__init__.py 2026-02-22 16:54:36 +00:00
freemo 9371992525 Merge remote-tracking branch 'origin/feature/m5-automation-profiles' into feature/jeff-combined-day14-batch2 2026-02-22 16:50:42 +00:00
freemo 5946dcc636 merge: resolve M3.5+M4.1 conflict in services/__init__.py 2026-02-22 16:49:56 +00:00
freemo 62605bc6f8 merge: resolve M2.7+M3.5 conflict in cli/main.py 2026-02-22 16:46:07 +00:00
freemo dc2a42889a Merge remote-tracking branch 'origin/feature/m2-lsp-stubs' into feature/jeff-combined-day14-batch2 2026-02-22 16:43:52 +00:00
freemo 33a5adcfee feat(M4.2): Correction service with revert/append BFS + dry-run
Adds CorrectionRequest, CorrectionResult, CorrectionMode,
CorrectionPatch, CorrectionDryRunReport, CorrectionNotFoundError,
and CorrectionConflictError domain models.

Implements CorrectionService with BFS-based revert (marks decisions
as rolled back and restores via inverse changes) and append mode
(spawns a child correction plan).  Includes request_correction()
with dry-run support and dispatch_correction() convenience method.

33 Behave scenarios, 8 Robot smoke tests, ASV benchmark suite,
and reference documentation.

Ref: Day-14 Rebaseline – M4.2 Decision-correction flows [Jeff]
2026-02-22 16:40:06 +00:00
freemo a2da043cbd feat(M1.2): PlanExecutionContext, RuntimeExecuteActor, and runtime mode
Adds PlanExecutionContext carrying plan metadata and delegating
changeset ops to ChangeSetStore.  RuntimeExecuteResult captures
execution output (changeset_id, tool_call_count, sandbox_refs,
decision_ids_processed, execution_duration_ms).

RuntimeExecuteActor dispatches StrategyDecision lists through
ToolRunner with full changeset capture and optional streaming
callbacks.  PlanExecutor gains execution_context param with
has_runtime / changeset_store / execution_context properties
and _run_execute_with_runtime / _run_execute_with_stub split.

31 Behave scenarios, 5 Robot smoke tests, ASV benchmark suite,
and reference documentation.

Ref: Day-14 Rebaseline – M1.2 Plan-execute runtime wiring [Jeff]
2026-02-22 15:13:43 +00:00
freemo 7153050211 feat(M6.1): ACP facade stubs with transport, events, and versioning
Adds cleveragents.acp package with seven modules: models (AcpMessage,
AcpEnvelope, AcpCapability, AcpPeerInfo), errors (AcpError hierarchy),
facade (AcpFacade with register/discover/send/receive), transport
(AcpTransportBase, LoopbackTransport), events (AcpEventBus),
and versioning (AcpVersion with compatible_with check).

44 Behave scenarios, 5 Robot smoke tests, ASV benchmark suite,
and reference documentation.

Ref: Day-14 Rebaseline – M6.1 ACP-facade stubs [Jeff]
2026-02-22 15:02:19 +00:00
freemo 67bd287a6c feat(correction): add correction model and CLI hooks 2026-02-22 11:07:35 +00:00
freemo cbb985627d feat(automation): add automation profiles and guards 2026-02-22 10:19:43 +00:00
freemo 50316e97be feat(lsp): add registry and runtime stubs 2026-02-22 10:15:25 +00:00
freemo 2d4b330f75 feat(invariant): add invariant models and enforcement 2026-02-22 09:23:35 +00:00
freemo c6d831b5ff feat(actor): add tool-calling runtime for execution actors 2026-02-22 08:31:45 +00:00
freemo ca1c341b18 Tests: Significantly improved coverage of the unit tests 2026-02-22 00:43:08 -05:00
CoreRasurae d37cfbe769 test(robot): fix failing integration tests related to safe.directory config and git version 2026-02-21 18:11:31 +00:00
CoreRasurae e3ddf6c868 fix(security): remove eval-based config parsing 2026-02-21 16:32:03 +00:00
CoreRasurae ca6dbd4576 feat(skill): add skill registry persistence 2026-02-21 16:30:40 +00:00
CoreRasurae 975fbba070 feat(skill): add git operation skills 2026-02-21 16:30:33 +00:00
CoreRasurae 8a219286d6 feat(change): add ChangeSet models and invocation tracker 2026-02-21 16:27:40 +00:00
freemo 5bdca88eca feat(change): add tool router for providers 2026-02-21 10:23:31 -05:00
freemo 9f2e7e88b0 feat(plan): add diff review and apply integration
Add PlanApplyService with diff(), artifacts(), persist_apply_summary(),
handle_merge_failure(), and guard_empty_changeset() methods.

- plan diff: renders changeset in rich/plain/json/yaml formats
- plan artifacts: shows plan metadata, changeset summary, sandbox refs
- persist_apply_summary: stores files_changed/validations_run in plan metadata
- handle_merge_failure: transitions plan to error state with conflict details
- guard_empty_changeset: blocks apply on empty changeset (--allow-empty override)

CLI: plan diff and plan artifacts commands with --format flag.
Tests: 20 Behave scenarios, 8 Robot integration tests, 4 ASV benchmarks.
Docs: docs/reference/plan_apply.md with CLI reference.

Implements D0b.apply from the implementation plan.
2026-02-21 10:22:18 -05:00
freemo 1df21e6a64 feat(cli): add output rendering framework with materialization strategies 2026-02-21 10:19:45 -05:00
freemo eae18c7578 feat(skill): add directory and search skills 2026-02-21 10:18:26 -05:00
freemo 582af29a24 feat(skill): add file operation skills 2026-02-21 10:18:26 -05:00
freemo 7aa36759c6 feat(plan): execute strategize and execute via actors 2026-02-21 10:18:26 -05:00
brent.edwards 37018341e3 Merge remote-tracking branch 'origin/master' into develop-aditya 2026-02-20 23:02:06 +00:00
brent.edwards ed9bd090b6 fix(bench): remove unsupported mix_stderr param from CliRunner in config_cli_bench
Typer 0.24.0 CliRunner does not support the mix_stderr keyword
argument.  This caused ASV benchmark discovery to fail with a
TypeError during the CI benchmark-regression job.
2026-02-20 22:19:26 +00:00
brent.edwards 56c38a04ce fix(ci): remove stale AutomationLevel refs from benchmarks and prevent ANSI in JSON output
- Remove AutomationLevel imports from cli_robot_flow_bench.py and
  persistence_robot_bench.py (enum was removed by master's automation
  refactor); replace with AutomationProfileRef where needed.
- Use typer.echo() instead of console.print() for machine-readable
  output (JSON/YAML/plain) in config.py and session.py to prevent
  Rich from injecting ANSI escape codes that corrupt json.loads().
- Set NO_COLOR=1 in noxfile unit_tests, integration_tests, and
  coverage_report sessions as a belt-and-suspenders safeguard for
  all CLI commands that route format_output through Rich.
2026-02-20 21:46:46 +00:00
brent.edwards 7bf8056003 style: fix formatting 2026-02-20 20:38:53 +00:00
brent.edwards 85dc638093 Merge branch 'master' into develop-aditya
# Conflicts:
#	implementation_plan.md
2026-02-20 18:58:05 +00:00
brent.edwards d1b3c25a5e Merge branch 'master' into develop-brent-2
# Conflicts:
#	implementation_plan.md
#	src/cleveragents/cli/main.py
2026-02-20 18:25:28 +00:00
brent.edwards a181b774c9 Merge branch 'feature/m6-perf-scale' into develop-brent-2
# Conflicts:
#	docs/development/testing.md
2026-02-20 16:31:01 +00:00
brent.edwards 5c323470e2 Merge branch 'feature/m6-validation-edge' into develop-brent-2 2026-02-20 16:30:19 +00:00
brent.edwards 4d41459800 Merge branch 'feature/m6-review-playbook' into develop-brent-2 2026-02-20 16:30:15 +00:00
brent.edwards 2cfa9eafbc Merge branch 'feature/m5-subplan-tests' into develop-brent-2 2026-02-20 16:30:11 +00:00