Commit Graph

382 Commits

Author SHA1 Message Date
freemo 0b2fa13fe4 feat(resource): add DAG linking and discovery 2026-02-17 15:19:01 -05:00
freemo 47d1f9ab77 feat(service): resolve automation profiles with precedence 2026-02-17 15:17:17 -05:00
freemo 56a789753b feat(execute): add changeset model and change capture 2026-02-17 15:17:12 -05:00
freemo dc63637d74 feat(tool): add tool registry persistence 2026-02-17 15:17:02 -05:00
freemo 54610f66d4 feat(project): add context policy model 2026-02-17 15:14:02 -05:00
freemo d7b6db6fb6 feat(domain): add automation profile model and built-ins 2026-02-17 15:13:58 -05:00
freemo 59a5d2f049 feat(resource): add fs-mount and fs-directory types 2026-02-17 15:13:53 -05:00
freemo 3811fd33ca fix(lint): narrow docstring tables to 88-char line limit
Fix 25 E501 line-too-long violations in RST/markdown docstring tables
across resource.py, tool.py, models.py, and lifecycle.py. Also fix
invalid test expectation in project_commands_coverage.feature where
project list with no database was expected to abort but now succeeds
with an empty list after the redesign.
2026-02-17 15:13:43 -05:00
brent.edwards 767d9d0f82 Merge pull request 'test(cov): Fix coverage test failures' (#94) from fix/behave_tests_coverage into master
Reviewed-on: cleveragents/cleveragents-core#94
2026-02-17 19:04:45 +00:00
brent.edwards 7538add6bb fix: merge with master to fix lint 2026-02-17 18:45:55 +00:00
CoreRasurae ef905baff6 test(cov): Fix coverage test failures 2026-02-17 16:40:18 +00:00
brent.edwards 1f8760f94a Merge pull request 'fix(test): correct project list scenario that expected abort on empty db' (#90) from fix/project-list-test into master
Reviewed-on: cleveragents/cleveragents-core#90
2026-02-17 16:04:05 +00:00
khyari hamza 46f697bd95 fix(test): add temp directory and DB bootstrap to project list scenario
The 'Test project list command with no projects' scenario was missing a
Given step to set up a writable working directory. Without it, the
container fell back to CWD/.cleveragents/db.sqlite which could not be
opened (directory did not exist), causing sqlite3.OperationalError.

- Add 'Given I have a temporary working directory' to the scenario
- Bootstrap the SQLite schema in the When step so the ns_projects table
  exists for the empty-list query
2026-02-17 14:40:16 +00:00
khyari hamza 4ba714c389 style: shorten docstring markdown tables to satisfy E501 (88 cols) 2026-02-17 14:04:24 +00:00
khyari hamza 4d63b5af7e fix(test): correct project list scenario that expected abort on empty db
The 'Test project list command with no database' scenario asserted the
command should abort, but the DI container creates a default SQLite DB
so list_projects() returns an empty list and exits 0 with 'No projects
found'.  Update the scenario to match the actual (correct) behavior.
2026-02-17 13:19:06 +00:00
freemo 43b231b33b Docs: Fixed some missing check-off marks on todo items 2026-02-17 00:08:44 -05:00
Jeffrey Phillips Freeman 4dc05051dd feat(cli): add project commands (core) 2026-02-16 23:56:55 -05:00
Jeffrey Phillips Freeman 827c241baa feat(service): wire resource registry and project services 2026-02-16 23:53:50 -05:00
Jeffrey Phillips Freeman 0c6ed1c709 feat(repo): add project repositories 2026-02-16 23:50:59 -05:00
Jeffrey Phillips Freeman 96ceedbef4 Docs: Cleaned up ADR home page with better descriptions of content 2026-02-16 23:49:18 -05:00
Jeffrey Phillips Freeman ee5f0376d7 Replaced hand written Reference section with one generated from docstrings 2026-02-16 23:40:33 -05:00
brent.edwards 002eafd6f7 Merge pull request 'feat(qa): enforce coverage >=97% in CI' (#50) from feature/q0-min-coverage into master
Reviewed-on: cleveragents/cleveragents-core#50
2026-02-17 04:01:09 +00:00
Jeffrey Phillips Freeman 339b7de700 Docs: Added ADRs and improved TOC handling 2026-02-16 22:11:01 -05:00
brent.edwards 6f7ab08e12 Merge branch 'master' into feature/q0-min-coverage
# Conflicts:
#	benchmarks/cli_format_bench.py
#	benchmarks/plan_phase_migration_bench.py
#	benchmarks/project_migration_bench.py
#	benchmarks/resource_registry_migration_bench.py
#	benchmarks/uow_lifecycle_bench.py
2026-02-17 02:35:20 +00:00
brent.edwards 2f681b74ca docs(implementation_plan.md): Added what was accomplished 2026-02-17 02:27:59 +00:00
brent.edwards 122af46305 fix(tests): resolve unit test and benchmark failures
- Fix project_repository_steps session mismatch: use shared session
  for repos so context.pr_session.commit() commits flushed data
- Fix cli_format_bench setup/teardown to accept fmt parameter for
  parameterized ASV benchmarks
- Fix plan_model_bench PlanPhase.APPLIED -> PlanPhase.APPLY
- Fix benchmark idempotency: use batch counters to generate unique IDs
  across repeated ASV iterations (plan_phase_migration_bench,
  project_migration_bench, resource_registry_migration_bench)
- Fix uow_lifecycle_bench FK constraint by reusing pre-seeded action
- Fix plan_lifecycle_persistence_bench to create fresh plan per iteration
2026-02-17 02:24:35 +00:00
brent.edwards 7ddd99b07d chore(merge): integrate master into feature/q0-min-coverage
Resolve three merge conflicts from master integration:

- benchmarks/coverage_report_bench.py: remove duplicate PYPROJECT_PATH
  constant (already defined below the conflict region)
- noxfile.py: combine HEAD's os.makedirs('build') guard with master's
  resolved PYTHONPATH (Path('src').resolve())
- implementation_plan.md: take master for completed Q0-min-ci block,
  preserve HEAD's in-progress Q0-min-coverage state, adopt master's
  Q0-Advanced consolidation (no standalone commits)
2026-02-17 00:56:43 +00:00
brent.edwards 5254708146 Merge branch 'master' into fix/benchmark-tests 2026-02-17 00:41:16 +00:00
Jeffrey Phillips Freeman 1fb91cba28 refactor(plan): remove legacy plan persistence 2026-02-17 00:38:33 +00:00
Jeffrey Phillips Freeman 44533444ed feat(service): persist plan lifecycle via repositories 2026-02-17 00:38:33 +00:00
Jeffrey Phillips Freeman d0f265ef62 feat(service): persist plan lifecycle via repositories 2026-02-17 00:37:53 +00:00
freemo ea76990bb6 Docs: Fixed some bugs int he ToC's javascript 2026-02-16 19:26:49 -05:00
freemo 155a5d7819 Docs: Updated ADRs and referenced them from the specification 2026-02-16 18:53:06 -05:00
CoreRasurae 946933139c fix(bench): Benchmark tests database issues on concurrent test calls 2026-02-16 23:13:08 +00:00
CoreRasurae d111157573 fix(bench): use unique names per iteration to avoid UNIQUE constraint failures 2026-02-16 22:28:04 +00:00
Jeffrey Phillips Freeman f7d2f63ab8 feat(cli): add resource commands (core) 2026-02-16 16:46:54 -05:00
Jeffrey Phillips Freeman 36c571db83 feat(repo): add resource repositories 2026-02-16 21:35:54 +00:00
freemo c5617b0457 Build: Added even more MCP and LSP servers to the devcontainer 2026-02-16 16:29:30 -05:00
freemo 3240c94f9d Build: Updated devcontainer with relevant mcp servers on opencode 2026-02-16 15:07:35 -05:00
freemo 983eee7a37 Fix: Fixed failing unit tests due to outdated behave version and alembic typo, and other fixes. 2026-02-16 14:21:06 -05:00
Jeffrey Phillips Freeman e273b52769 feat(db): add projects and project links tables 2026-02-16 12:18:51 -05:00
Jeffrey Phillips Freeman dbca60c98e feat(db): add projects and project links tables 2026-02-15 11:04:18 -05:00
Jeffrey Phillips Freeman 5a7703473a feat(resource): add git-checkout and fs-directory resource types 2026-02-15 10:44:14 -05:00
Jeffrey Phillips Freeman 1f06bb2f76 feat(resource): add resource type model + schema loader 2026-02-15 15:19:09 +00:00
Jeffrey Phillips Freeman ae40bb24c0 feat(uow): wire lifecycle repositories 2026-02-15 09:04:17 +00:00
Jeffrey Phillips Freeman 5691858d46 feat(repo): add lifecycle plan repository 2026-02-15 08:29:31 +00:00
Jeffrey Phillips Freeman 6183ee3230 feat(db): rebaseline plan phase/state enums for Action and Apply terminal states 2026-02-15 06:16:19 +00:00
freemo d07e9903eb Docs: Reassigned blocking tasks to me. 2026-02-15 00:14:19 -05:00
freemo 039ab87b52 feat(domain): rebaseline plan phases and apply states 2026-02-15 00:12:07 -05:00
freemo 88e8957cba Docs: Updated implementation plan 2026-02-14 20:30:55 -05:00