Commit Graph

571 Commits

Author SHA1 Message Date
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 cb96af7286 fix(ci): pre-compile bytecode before parallel integration tests
Add python -m compileall -q src/ step to the integration_tests nox
session before launching pabot.  On CI runners with high core counts
(e.g. 32 processes) the first Robot test to spawn a Python subprocess
could fail because 30+ processes simultaneously cold-compile the
entire source tree from scratch.  Pre-compiling eliminates the
thundering-herd race and lets all workers read cached .pyc files.
2026-02-20 21:09:45 +00:00
brent.edwards 7bf8056003 style: fix formatting 2026-02-20 20:38:53 +00:00
brent.edwards ab8ed19aa7 fix(tests): remove AutomationLevel references after legacy field removal
Master's refactor(automation) commit removed the AutomationLevel enum
and automation_level field from Plan. Update all behave steps, robot
helpers, and feature scenarios that referenced the removed type:

- cli_lifecycle_robot_alignment_steps.py: drop import and field assignment
- persistence_robot_alignment_steps.py: drop import and field assignment
- subplan_model_steps.py: drop import, parameter, and field assignment
- subplan_model.feature: replace automation level scenario with profile check
- helper_cli_lifecycle.py: drop import and field assignment
- helper_persistence_lifecycle.py: drop import, field assignment, and assertion
2026-02-20 20:34:29 +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
brent.edwards 96b5704c8a Merge branch 'feature/m3-config-cli' into develop-brent-2
# Conflicts:
#	src/cleveragents/cli/main.py
2026-02-20 16:29:54 +00:00
brent.edwards 881750ad54 Merge branch 'feature/m3-session-cli' into develop-brent-2 2026-02-20 16:29:16 +00:00
brent.edwards 06c01a1d7b Merge branch 'feature/m1-persistence-tests-robot' into develop-brent-2 2026-02-20 16:29:11 +00:00
freemo 773f1b8fd7 Docs: Updated the implementation plan 2026-02-20 10:58:51 -05:00
freemo 0265b8c712 Docs: Added JINJA2 details to docs 2026-02-20 15:57:21 +00:00
freemo 174e117d8e refactor(automation): remove automation_level legacy fields 2026-02-20 15:57:21 +00:00
freemo 81162bfe91 feat(skill): add inline tool executor 2026-02-20 08:50:08 -05:00
freemo c0eb9d1efd feat(skill): add skill context and registry 2026-02-20 08:50:08 -05:00
freemo b18bace06b feat(skill): add skill protocol and metadata 2026-02-20 08:50:08 -05:00
freemo 3bd02a7c6e feat(cli): add automation-profile commands
Add CLI command group `agents automation-profile` with add, remove,
list, and show subcommands for managing automation profiles that
control plan execution autonomy.

Changes:
- New `automation_profile.py` CLI module with YAML config input,
  schema_version guard, namespaced name validation, --update support,
  and all output formats (json/yaml/plain/table/rich)
- Register automation-profile in main CLI app
- Add deprecation warnings for --automation-level on plan use and
  set-automation-level commands
- Update CLI reference docs with command examples, built-in profiles
  list, and deprecation notes
- 26 Behave scenarios covering all commands and error paths
- 9 Robot Framework integration smoke tests
- ASV benchmarks for CLI parsing performance
- Mark A6.cli items complete in implementation_plan.md
2026-02-20 08:50:06 -05:00
freemo 46381750ab feat(cli): add tool and validation commands 2026-02-20 08:49:30 -05:00
freemo ad91b4e89d feat(cli): add resource tree and inspect commands
Add tree, inspect, link-child, and unlink-child subcommands to the
agents resource CLI group. Extend ResourceRegistryService with
link_child, unlink_child, get_children, and get_resource_tree methods.

- tree: display resource hierarchy with --depth, --type, and format options
- inspect: show resource details with --tree and --file options
- link-child/unlink-child: manage DAG edges with cycle detection
- 24 Behave scenarios, 4 Robot integration tests, ASV benchmarks
- CLI reference documentation in docs/reference/resource_cli.md
2026-02-20 08:48:33 -05:00
freemo 0ad18d4306 feat(actor): align actor registry persistence 2026-02-20 08:48:33 -05:00
brent.edwards 0dfdc02564 test(perf): add scale test fixtures 2026-02-20 03:31:43 +00:00
brent.edwards 558bcaf586 test(validation): add edge case suites 2026-02-20 02:54:08 +00:00
brent.edwards 04c8a886db feat(cli): add session commands 2026-02-20 01:10:19 +00:00
brent.edwards f182148d82 test(persistence): add Robot persistence coverage 2026-02-20 00:28:15 +00:00
brent.edwards 69a86858a7 feat(cli): add config get/set/list commands 2026-02-19 23:48:40 +00:00
brent.edwards e8704249d0 Merge pull request 'ci(CI.yml): code changes against develop will run CI' (#124) from develop-brent-1 into master
Reviewed-on: cleveragents/cleveragents-core#124
2026-02-19 23:10:33 +00:00
brent.edwards 53902ba718 ci(CI.yml): code changes against develop will run CI
Added `develop-*` to the list of things that run CI
2026-02-19 22:50:30 +00:00
brent.edwards 4f90d7703b test(cli): add Robot lifecycle CLI coverage 2026-02-19 22:44:34 +00:00
brent.edwards 2ba753c799 test(domain): add subplan model suites 2026-02-19 22:07:56 +00:00
brent.edwards 83dcfe35dc docs(qa): add review playbook and priority matrix 2026-02-19 22:00:53 +00:00
brent.edwards 4243ac8cff Merge pull request 'develop-hamza-1' (#123) from develop-hamza-1 into master
Reviewed-on: cleveragents/cleveragents-core#123
2026-02-19 20:27:15 +00:00
khyari hamza eeb0d49377 test(security): add coverage for audit CLI, logging, and redaction edge cases
Add 22 new Behave scenarios covering:
- audit CLI commands (list, show, prune, count)
- audit service context manager and owned-session paths
- corrupt JSON details fallback in _row_to_entry
- configure_structlog dev/prod/invalid and get_logger
- redaction edge cases (empty key, empty URL, empty pattern,
  show_secrets bypass, nested dict processor)
2026-02-19 20:10:56 +00:00
khyari hamza 201be39632 fix(security): address review findings for audit logging 2026-02-19 19:23:30 +00:00
khyari hamza 81928ce0f4 docs(plan): mark SEC7 audit logging items complete 2026-02-19 19:23:30 +00:00
khyari hamza ae41167a1d feat(security): add audit logging for apply 2026-02-19 19:23:30 +00:00
khyari hamza abe3d43bea chore: WIP branch for feat(security): add audit logging for apply
Refs: H-22, SEC7.audit
Planned: Day 14
2026-02-19 19:23:30 +00:00
brent.edwards 4c4d87f11e Merge pull request 'testing airspeedvelocity' (#122) from mngrif-asv-test into master
Reviewed-on: cleveragents/cleveragents-core#122
2026-02-19 19:16:06 +00:00
mngrif f727baf5ea testing airspeedvelocity 2026-02-19 13:24:00 -05:00
mngrif 9a4e55cab0 testing airspeedvelocity 2026-02-19 12:48:31 -05:00
mngrif b19ac44573 testing airspeedvelocity 2026-02-19 12:28:49 -05:00
mngrif 65efa4bc9e testing airspeedvelocity 2026-02-19 12:17:03 -05:00
hamza.khyari 9244b96190 Merge pull request 'develop-hamza-1' (#120) from develop-hamza-1 into master
Reviewed-on: cleveragents/cleveragents-core#120
2026-02-19 15:40:44 +00:00
hamza.khyari 708574912e Merge pull request 'feat(ops): add cleanup commands [H-24, CONC3]' (#117) from feature/m4-concurrency-cleanup into develop-hamza-1
Reviewed-on: cleveragents/cleveragents-core#117
2026-02-19 14:22:23 +00:00
khyari hamza cea3bad758 refactor(ops): address re-review findings for cleanup commands
- Use model_copy(update=...) in test helpers so Pydantic ge=
  validators are enforced during tests, not just env vars (NEW-1)
- Promote _extract_plan_id_from_sandbox to public staticmethod
  and reuse in CLI active-plan detection to eliminate duplicate
  plan-ID parsing logic (NEW-2)
- Cache _get_sandbox_dirs result for service instance lifetime
  and have CLI active-plan detection use the cached listing so
  /tmp is iterated only once per invocation (NEW-3)
2026-02-19 14:20:16 +00:00
khyari hamza f4c088bae8 fix(ops): address review findings for cleanup commands
- Add best-effort active plan detection from sandbox mtimes to
  protect running plans from cleanup (B1)
- Add ge= validators on all retention settings to prevent unsafe
  negative/zero values; checkpoint max requires ge=2 (B3, NB6)
- Handle CoW sandbox plan_id extraction (ca-cow-sandbox- prefix)
  so copy-on-write sandboxes are also protected (NB4)
- Add OSError guards in sandbox dir iteration for race safety (NB7)
- Add TODO markers and CLI notice for unimplemented session cleanup (NB1)
- Rebase onto develop-hamza-1 to incorporate SEC5 changes (B2)
2026-02-19 13:58:39 +00:00
khyari hamza bab4560dde feat(ops): add cleanup commands 2026-02-19 13:46:48 +00:00
khyari hamza bd38a00cf0 chore: WIP branch for feat(ops): add cleanup commands
Refs: H-24, CONC3.gc
Planned: Day 13
2026-02-19 13:46:48 +00:00