Commit Graph

1928 Commits

Author SHA1 Message Date
freemo 89184689dc build: Coverage was broken, now fixed.
CI / lint (push) Successful in 16s
CI / typecheck (push) Successful in 26s
CI / security (push) Successful in 17s
CI / quality (push) Successful in 15s
CI / build (push) Successful in 12s
CI / behave (3.13) (push) Successful in 4m37s
CI / docker (push) Successful in 8s
CI / coverage (push) Successful in 5m11s
2026-02-12 17:02:21 -05:00
brent.edwards e801eb1ee8 feat(ci): add nox-based PR validation workflow
- Rewrite .forgejo/workflows/ci.yml to route all jobs through nox sessions
- Fix coverage_report nox session: serial behave mode replaces broken parallel
  mode (22% -> 97% accuracy), raise fail-under from 85% to 97%
- Pass posargs through format nox session for CI --check support
- Add 11 CI workflow validation scenarios (Behave) + Robot smoke test + ASV bench
- Add 108 new Behave scenarios covering 6 largest coverage gaps to reach 97%:
  yaml_template_engine, actor/config, actor/registry, message_router,
  context_analysis, context_service
- Update docs/development/ci-cd.md with nox-based CI docs and 97% threshold
- Restore implementation_plan.md verbose style, check off completed CI tasks

Verified: 1673 scenarios pass, 97% coverage, lint clean, typecheck clean
2026-02-12 22:01:51 +00:00
freemo 3d96c3d9ff Docs: made the glossary a little less verbose
CI / lint (push) Successful in 16s
CI / typecheck (push) Successful in 26s
CI / security (push) Successful in 18s
CI / quality (push) Successful in 15s
CI / build (push) Successful in 11s
CI / behave (3.13) (push) Successful in 4m36s
CI / docker (push) Successful in 8s
CI / coverage (push) Successful in 5m9s
2026-02-12 16:29:40 -05:00
CoreRasurae 5d1825fb60 ci: CI jobs need to have git command
CI / lint (pull_request) Successful in 16s
CI / typecheck (pull_request) Successful in 28s
CI / security (pull_request) Successful in 16s
CI / quality (pull_request) Successful in 17s
CI / build (pull_request) Successful in 12s
CI / behave (3.13) (pull_request) Successful in 4m26s
CI / docker (pull_request) Successful in 8s
CI / coverage (pull_request) Successful in 5m14s
CI / lint (push) Successful in 15s
CI / typecheck (push) Successful in 25s
CI / security (push) Successful in 17s
CI / quality (push) Successful in 14s
CI / build (push) Successful in 12s
CI / behave (3.13) (push) Successful in 4m32s
CI / docker (push) Successful in 8s
CI / coverage (push) Successful in 5m7s
Some tests require it
2026-02-12 20:20:00 +00:00
CoreRasurae e7ad541b71 build(env): Update security Vulture check exceptions 2026-02-12 20:19:57 +00:00
CoreRasurae aa299966ad build(env): Update noxfile config to include a secuity check with vulture 2026-02-12 20:19:55 +00:00
CoreRasurae 091c93838c build(env): Update noxfile config to also lint the behave features and robot tests 2026-02-12 20:19:52 +00:00
CoreRasurae c8f6bbaf9a build(env): Update noxfile config to be backward compatible with older behave 2026-02-12 20:19:49 +00:00
CoreRasurae f2f7aa5dc9 feat(core): add v3 lifecycle models, automation levels, subplan support, and security hardening
Implement multiple Stage A/B/E/SEC milestones for the v3 lifecycle system:
- Stage A5.3+A5.4: Add LifecycleActionModel and LifecyclePlanModel SQLAlchemy
  models with to_domain()/from_domain() conversion methods
- Stage A5.6: Implement ActionRepository with full CRUD, namespace/state
  queries, referential integrity checks, and retry decorator
- Stage E1: Add subplan domain models (ExecutionMode, SubplanMergeStrategy,
  SubplanConfig, SubplanStatus, SubplanAttempt, SubplanFailureHandler) with
  computed properties on Plan (is_subplan, is_root_plan, depth, has_subplans)
- Stage A6: Add AutomationLevel enum (MANUAL, REVIEW_BEFORE_APPLY,
  FULL_AUTOMATION), settings integration, PlanLifecycleService auto-progression,
  pause/resume, and CLI commands (--automation-level, set-automation-level)
- Stage SEC1: Remove eval()/exec() from stream_router.py, replace with named
  operation and transform registries; code blocks and unregistered transforms
  now raise StreamRoutingError
- Add langchain-anthropic dependency
- Update BDD tests for security changes and relax ADR directory requirement
2026-02-12 20:19:42 +00:00
freemo a1c1540a00 Docs: updated plan
CI / lint (push) Successful in 16s
CI / typecheck (push) Successful in 26s
CI / security (push) Successful in 17s
CI / quality (push) Successful in 15s
CI / build (push) Successful in 13s
CI / behave (3.13) (push) Successful in 3m47s
CI / coverage (push) Successful in 4m22s
CI / docker (push) Successful in 8s
2026-02-12 15:01:51 -05:00
freemo 453c1479de Docs: Fixed several descrepencies within the specification document
CI / lint (push) Successful in 16s
CI / typecheck (push) Successful in 26s
CI / security (push) Successful in 16s
CI / quality (push) Successful in 15s
CI / build (push) Successful in 11s
CI / behave (3.13) (push) Successful in 3m53s
CI / docker (push) Successful in 8s
CI / coverage (push) Successful in 4m19s
2026-02-12 14:48:30 -05:00
freemo ea81a5856b Docs: updated the glossary to make it more succinct
CI / lint (push) Successful in 16s
CI / security (push) Successful in 17s
CI / typecheck (push) Successful in 25s
CI / quality (push) Successful in 15s
CI / build (push) Successful in 13s
CI / behave (3.13) (push) Successful in 3m47s
CI / docker (push) Successful in 8s
CI / coverage (push) Successful in 4m23s
2026-02-12 14:20:29 -05:00
freemo 6c7a48e7dc Docs: split out some sections from the specification
CI / lint (push) Successful in 15s
CI / typecheck (push) Successful in 25s
CI / security (push) Successful in 17s
CI / quality (push) Successful in 15s
CI / build (push) Successful in 12s
CI / behave (3.13) (push) Successful in 3m46s
CI / docker (push) Successful in 9s
CI / coverage (push) Successful in 4m28s
2026-02-12 14:04:10 -05:00
freemo 687bf6b6ec Docs: using standard kroki server since ours appears to be down (or broken)
CI / lint (push) Successful in 16s
CI / typecheck (push) Successful in 26s
CI / security (push) Successful in 17s
CI / quality (push) Successful in 14s
CI / build (push) Successful in 12s
CI / behave (3.13) (push) Successful in 3m53s
CI / docker (push) Successful in 8s
CI / coverage (push) Successful in 4m19s
2026-02-12 13:41:26 -05:00
freemo 578bfbf102 Docs: updated implementation plan to remove discrepencies between it and the specification
CI / lint (push) Successful in 16s
CI / typecheck (push) Successful in 26s
CI / security (push) Successful in 16s
CI / quality (push) Successful in 15s
CI / build (push) Successful in 13s
CI / behave (3.13) (push) Successful in 3m48s
CI / coverage (push) Successful in 4m22s
CI / docker (push) Successful in 8s
2026-02-12 13:24:44 -05:00
freemo 31fd332c7b Docs: Updated implementation plan to eliminate indescrepencies with specification
CI / lint (push) Successful in 17s
CI / typecheck (push) Successful in 25s
CI / security (push) Successful in 17s
CI / quality (push) Successful in 15s
CI / build (push) Successful in 12s
CI / behave (3.13) (push) Successful in 3m48s
CI / docker (push) Successful in 8s
CI / coverage (push) Successful in 4m25s
2026-02-12 13:11:38 -05:00
freemo dc2fa53942 Docs: Updated the implementation plan, included more schedule adherance data as well
CI / lint (push) Successful in 16s
CI / typecheck (push) Successful in 26s
CI / security (push) Successful in 17s
CI / quality (push) Successful in 14s
CI / build (push) Successful in 12s
CI / coverage (push) Has been cancelled
CI / behave (3.13) (push) Has been cancelled
CI / docker (push) Has been cancelled
2026-02-12 13:08:01 -05:00
freemo a4b56fa308 Docs: Cleaned up some minor issues like docs not being in nav
CI / lint (push) Successful in 16s
CI / typecheck (push) Successful in 24s
CI / security (push) Successful in 16s
CI / quality (push) Successful in 14s
CI / build (push) Successful in 12s
CI / behave (3.13) (push) Successful in 3m48s
CI / docker (push) Successful in 8s
CI / coverage (push) Successful in 4m18s
2026-02-12 11:08:54 -05:00
freemo f9d3aa6f3a Docs: Made the ACMS more extensible 2026-02-12 11:02:10 -05:00
freemo e4febab61e Docs: Updated the depth / detail level concept to be more extensible with additional levels as well 2026-02-12 10:07:37 -05:00
freemo bce6109e2f Docs: First iteration of ACMS added
CI / lint (push) Successful in 16s
CI / typecheck (push) Successful in 26s
CI / security (push) Successful in 16s
CI / quality (push) Successful in 15s
CI / build (push) Successful in 12s
CI / behave (3.13) (push) Successful in 3m50s
CI / docker (push) Successful in 9s
CI / coverage (push) Successful in 4m18s
2026-02-12 08:54:01 -05:00
freemo 013408961a Docs: Removed Context section as we are about to rewrite it in the next commit 2026-02-12 08:53:57 -05:00
brent.edwards 13a0aaeb9d Merge pull request 'feat: Add Q0: Pre-commit hooks setup.' (#41) from Q0-quality-automation into master
CI / lint (push) Successful in 16s
CI / typecheck (push) Successful in 25s
CI / security (push) Successful in 17s
CI / quality (push) Successful in 14s
CI / build (push) Successful in 12s
CI / behave (3.13) (push) Successful in 3m47s
CI / docker (push) Successful in 39s
CI / coverage (push) Successful in 4m16s
Reviewed-on: #41
Reviewed-by: Rui Hu <rui.hu@cleverthis.com>
2026-02-12 07:21:52 +00:00
brent.edwards 63b54ac8ab fix(nox): run asv machine --yes before benchmarks
CI / lint (pull_request) Successful in 16s
CI / typecheck (pull_request) Successful in 25s
CI / security (pull_request) Successful in 16s
CI / quality (pull_request) Successful in 14s
CI / build (pull_request) Successful in 12s
CI / behave (3.13) (pull_request) Successful in 3m45s
CI / coverage (pull_request) Successful in 4m10s
CI / docker (pull_request) Successful in 47s
asv requires machine info to be configured before running benchmarks.
Without this, asv run fails on first use or in CI/containers.
2026-02-12 07:03:31 +00:00
brent.edwards 64f58f6406 fix(deps): pin behave==1.2.6 in tests extra to match dev extra
behave-parallel pulls behave>=1.2.6 which resolves to 1.3.3. Behave
1.3.3 no longer strips trailing colons from step text before tables,
breaking the architecture.feature step matcher.
2026-02-12 07:01:08 +00:00
brent.edwards 58d79558ce fix(docker): copy README.md into build stage for hatchling
CI / lint (pull_request) Successful in 14s
CI / typecheck (pull_request) Successful in 24s
CI / security (pull_request) Successful in 16s
CI / quality (pull_request) Successful in 14s
CI / build (pull_request) Successful in 41s
CI / behave (3.13) (pull_request) Successful in 3m39s
CI / docker (pull_request) Successful in 39s
CI / coverage (pull_request) Successful in 4m17s
2026-02-12 06:35:02 +00:00
brent.edwards d0f1c8bae3 fix(ci): use docker:dind as main container instead of services
CI / lint (pull_request) Successful in 15s
CI / security (pull_request) Successful in 17s
CI / typecheck (pull_request) Successful in 23s
CI / quality (pull_request) Successful in 15s
CI / build (pull_request) Successful in 12s
CI / behave (3.13) (pull_request) Successful in 3m41s
CI / docker (pull_request) Failing after 22s
CI / coverage (pull_request) Successful in 4m19s
Forgejo act_runner service container networking fails with 'network not
found'. Use docker:dind directly with --privileged and start dockerd
inline to avoid the services networking issue.
2026-02-12 06:26:56 +00:00
brent.edwards 945cced381 fix(ci): fix docker build job and Dockerfile
CI / lint (pull_request) Successful in 16s
CI / typecheck (pull_request) Successful in 24s
CI / security (pull_request) Successful in 17s
CI / quality (pull_request) Successful in 15s
CI / build (pull_request) Successful in 12s
CI / behave (3.13) (pull_request) Successful in 3m45s
CI / docker (pull_request) Failing after 6s
CI / coverage (pull_request) Successful in 4m12s
- Add DinD service container and docker:cli image so docker CLI is available
- Fix Dockerfile: remove missing uv.lock, fix build order (copy source before build)
- Remove helm job (k8s/ directory does not exist yet)
2026-02-12 06:17:36 +00:00
brent.edwards 04070ca3ff Merge branch 'master' into Q0-quality-automation
CI / lint (pull_request) Successful in 17s
CI / typecheck (pull_request) Successful in 27s
CI / security (pull_request) Successful in 16s
CI / quality (pull_request) Successful in 14s
CI / build (pull_request) Successful in 11s
CI / behave (3.13) (pull_request) Successful in 3m47s
CI / docker (pull_request) Failing after 32s
CI / helm (pull_request) Failing after 7s
CI / coverage (pull_request) Successful in 4m16s
# Conflicts:
#	implementation_plan.md
2026-02-12 06:05:43 +00:00
brent.edwards c9605c9381 test(features/steps): remove ansi codes
CI / lint (pull_request) Successful in 17s
CI / security (pull_request) Successful in 17s
CI / typecheck (pull_request) Successful in 24s
CI / quality (pull_request) Successful in 15s
CI / build (pull_request) Successful in 13s
CI / behave (3.13) (pull_request) Successful in 3m43s
CI / docker (pull_request) Failing after 33s
CI / helm (pull_request) Failing after 6s
CI / coverage (pull_request) Successful in 4m20s
Remove rich formatting from output
2026-02-12 05:44:57 +00:00
brent.edwards d4a48caeec test(features/steps): fix features that depend on running as user not superuser
CI / lint (pull_request) Successful in 16s
CI / typecheck (pull_request) Successful in 25s
CI / security (pull_request) Successful in 16s
CI / quality (pull_request) Successful in 14s
CI / build (pull_request) Successful in 12s
CI / behave (3.13) (pull_request) Failing after 3m54s
CI / docker (pull_request) Has been skipped
CI / helm (pull_request) Has been skipped
CI / coverage (pull_request) Failing after 4m17s
2026-02-12 05:23:29 +00:00
freemo 4363fbe7c4 Docs: moved implementation plan here 2026-02-12 00:23:19 -05:00
brent.edwards 17fe46d925 test(behave): fix behave tests
CI / lint (pull_request) Successful in 18s
CI / typecheck (pull_request) Successful in 26s
CI / security (pull_request) Successful in 17s
CI / quality (pull_request) Successful in 14s
CI / build (pull_request) Successful in 12s
CI / behave (3.13) (pull_request) Failing after 3m50s
CI / docker (pull_request) Has been skipped
CI / helm (pull_request) Has been skipped
CI / coverage (pull_request) Failing after 4m20s
There had been over 100 behave tests failing. There should be none failing now.
2026-02-12 04:47:02 +00:00
freemo 2bceddeed3 Docs: revampted implementation plan again 2026-02-11 23:24:18 -05:00
brent.edwards 3ed11f7988 build(behave.ini): remove ", src" from "paths"
CI / lint (pull_request) Successful in 17s
CI / typecheck (pull_request) Successful in 25s
CI / security (pull_request) Successful in 16s
CI / quality (pull_request) Successful in 14s
CI / build (pull_request) Successful in 13s
CI / behave (3.13) (pull_request) Failing after 3m46s
CI / docker (pull_request) Has been skipped
CI / helm (pull_request) Has been skipped
CI / coverage (pull_request) Failing after 4m20s
The code was seeing the whole text as one path.
2026-02-12 03:36:51 +00:00
brent.edwards 4ae8a9ee3a ci(.forgejo/workflows/ci.yml): remove unused behave-parallel
CI / lint (pull_request) Successful in 17s
CI / typecheck (pull_request) Successful in 26s
CI / security (pull_request) Successful in 17s
CI / quality (pull_request) Successful in 14s
CI / behave (3.13) (pull_request) Failing after 14s
CI / docker (pull_request) Has been skipped
CI / helm (pull_request) Has been skipped
CI / build (pull_request) Successful in 11s
CI / coverage (pull_request) Failing after 14s
No longer installing behave-parallel. Also removed other uploads that won't work.
2026-02-12 03:30:13 +00:00
brent.edwards ea783c57e9 ci(.forgejo/workflows/ci.yml): remove behave 3.11 and 3.12
CI / lint (pull_request) Successful in 17s
CI / typecheck (pull_request) Successful in 24s
CI / security (pull_request) Successful in 18s
CI / quality (pull_request) Failing after 16s
CI / behave (3.13) (pull_request) Failing after 15s
CI / helm (pull_request) Has been skipped
CI / docker (pull_request) Has been skipped
CI / build (pull_request) Failing after 14s
CI / coverage (pull_request) Failing after 17s
2026-02-12 03:17:26 +00:00
brent.edwards 3cc662f5cc ci(.forgejo/workflows/ci.yml): remove the attempt to upload complexity report
Forgejo shows the following error: ::error::@actions/artifact v2.0.0+, upload-artifact@v4+ and download-artifact@v4+ are not currently supported on GHES.
2026-02-12 03:14:37 +00:00
brent.edwards a40d48cbea style(src/cleveragents/reactive/application.py): simplify the code that gets an F on complexity metric
CI / lint (pull_request) Successful in 16s
CI / typecheck (pull_request) Successful in 26s
CI / security (pull_request) Successful in 17s
CI / quality (pull_request) Failing after 16s
CI / behave (3.11) (pull_request) Failing after 11s
CI / behave (3.12) (pull_request) Failing after 11s
CI / behave (3.13) (pull_request) Failing after 14s
CI / docker (pull_request) Has been skipped
CI / helm (pull_request) Has been skipped
CI / build (pull_request) Failing after 14s
CI / coverage (pull_request) Failing after 16s
2026-02-12 03:04:18 +00:00
brent.edwards 51bfee28a9 style(robot/-and-typings/numpy): fix style problems found by ruff check
CI / lint (pull_request) Successful in 15s
CI / typecheck (pull_request) Successful in 25s
CI / security (pull_request) Successful in 18s
CI / quality (pull_request) Failing after 15s
CI / behave (3.11) (pull_request) Failing after 11s
CI / behave (3.12) (pull_request) Failing after 11s
CI / behave (3.13) (pull_request) Failing after 13s
CI / docker (pull_request) Has been skipped
CI / helm (pull_request) Has been skipped
CI / build (pull_request) Failing after 14s
CI / coverage (pull_request) Failing after 15s
2026-02-12 02:47:08 +00:00
brent.edwards c5004ae918 build(features/steps): fix 14 files to match new ruff format
CI / lint (pull_request) Failing after 16s
CI / typecheck (pull_request) Successful in 27s
CI / coverage (pull_request) Has been skipped
CI / security (pull_request) Successful in 19s
CI / quality (pull_request) Failing after 15s
CI / behave (3.11) (pull_request) Failing after 11s
CI / behave (3.12) (pull_request) Failing after 10s
CI / behave (3.13) (pull_request) Failing after 14s
CI / docker (pull_request) Has been skipped
CI / helm (pull_request) Has been skipped
CI / build (pull_request) Failing after 13s
2026-02-12 02:26:03 +00:00
brent.edwards 16794e43ae build(.pre-commit-config.yaml): moving ruff to version 0.15.0
CI / lint (pull_request) Failing after 15s
CI / typecheck (pull_request) Successful in 26s
CI / coverage (pull_request) Has been skipped
CI / security (pull_request) Successful in 18s
CI / quality (pull_request) Failing after 17s
CI / behave (3.11) (pull_request) Failing after 12s
CI / behave (3.12) (pull_request) Failing after 11s
CI / behave (3.13) (pull_request) Failing after 13s
CI / docker (pull_request) Has been skipped
CI / helm (pull_request) Has been skipped
CI / build (pull_request) Failing after 13s
The version of ruff wasn't right in .pre-commit-config.yaml
2026-02-12 02:15:34 +00:00
brent.edwards 1774debbc4 ci(pyproject.toml): force the version of ruff
CI / lint (pull_request) Failing after 16s
CI / typecheck (pull_request) Successful in 27s
CI / coverage (pull_request) Has been skipped
CI / security (pull_request) Successful in 18s
CI / quality (pull_request) Failing after 15s
CI / behave (3.11) (pull_request) Failing after 11s
CI / behave (3.12) (pull_request) Failing after 11s
CI / behave (3.13) (pull_request) Failing after 13s
CI / docker (pull_request) Has been skipped
CI / helm (pull_request) Has been skipped
CI / build (pull_request) Failing after 14s
ruff should now be version 0.15.
2026-02-12 02:07:59 +00:00
freemo 395ae04539 Docs: updated the implementation plan again 2026-02-11 21:04:11 -05:00
freemo 736da7799c Docs: Updated implementation plan with new plan plus added asv requirements to commits 2026-02-11 20:30:59 -05:00
freemo bb7d71f3bb Docs: removed the concept of drafts 2026-02-11 20:30:43 -05:00
brent.edwards 3c63a4c132 ci(.forgejo/workflows/ci.yml): adding node to the jobs
CI / lint (pull_request) Failing after 16s
CI / typecheck (pull_request) Successful in 26s
CI / coverage (pull_request) Has been skipped
CI / security (pull_request) Successful in 20s
CI / quality (pull_request) Failing after 16s
CI / behave (3.11) (pull_request) Failing after 11s
CI / behave (3.12) (pull_request) Failing after 11s
CI / behave (3.13) (pull_request) Failing after 14s
CI / docker (pull_request) Has been skipped
CI / helm (pull_request) Has been skipped
CI / build (pull_request) Failing after 13s
Many steps in ci were failing due to missing `node`.
2026-02-12 01:27:19 +00:00
freemo f01d1d6170 Docs: fixed a few inconsistencies in the documentation 2026-02-11 20:23:17 -05:00
brent.edwards 761db2518c test: harden code sandbox, add path traversal protection, and fix test mocks
CI / lint (pull_request) Failing after 3s
CI / typecheck (pull_request) Failing after 3s
CI / coverage (pull_request) Has been skipped
CI / quality (pull_request) Failing after 5s
CI / security (pull_request) Failing after 6s
CI / behave (3.11) (pull_request) Failing after 2s
CI / behave (3.12) (pull_request) Failing after 2s
CI / behave (3.13) (pull_request) Failing after 3s
CI / docker (pull_request) Has been skipped
CI / helm (pull_request) Has been skipped
CI / build (pull_request) Failing after 3s
2026-02-12 01:07:44 +00:00
freemo ab561adc6c Docs: Cleaned up the lead in a bit. 2026-02-11 19:27:02 -05:00