chore: integration batch — 6 features/tasks for v3.2.0, v3.4.0, v3.5.0 #508

Closed
freemo wants to merge 12 commits from integration/batch-2026-03-02 into master

12 Commits

Author SHA1 Message Date
freemo 8dce196184 Merge remote-tracking branch 'origin/feature/m6-server-stubs' into integration/batch-2026-03-02
CI / benchmark-publish (pull_request) Has been skipped
CI / lint (pull_request) Successful in 13s
CI / build (pull_request) Successful in 16s
CI / quality (pull_request) Successful in 17s
CI / typecheck (pull_request) Successful in 30s
CI / security (pull_request) Successful in 31s
CI / unit_tests (pull_request) Successful in 1m43s
CI / docker (pull_request) Successful in 38s
CI / integration_tests (pull_request) Successful in 2m53s
CI / coverage (pull_request) Successful in 3m43s
CI / benchmark-regression (pull_request) Successful in 22m43s
# Conflicts:
#	vulture_whitelist.py
2026-03-02 08:03:59 +00:00
freemo 1d7930522b Merge remote-tracking branch 'origin/feature/m5-subplan-service' into integration/batch-2026-03-02 2026-03-02 08:03:40 +00:00
freemo ad3092bd56 Merge remote-tracking branch 'origin/feature/m6-acms-crp-models' into integration/batch-2026-03-02 2026-03-02 08:03:40 +00:00
freemo dfea3baffd Merge remote-tracking branch 'origin/feature/m4-config-project-scope' into integration/batch-2026-03-02 2026-03-02 08:03:40 +00:00
freemo d69025919c Merge remote-tracking branch 'origin/perf/asv-test-runtime-benchmarks' into integration/batch-2026-03-02 2026-03-02 08:03:40 +00:00
freemo 29694219fc Merge remote-tracking branch 'origin/perf/consolidate-small-features' into integration/batch-2026-03-02 2026-03-02 08:03:40 +00:00
freemo 5cb7dd42fb feat(interfaces): add server client stubs
CI / lint (pull_request) Successful in 21s
CI / quality (pull_request) Successful in 35s
CI / security (pull_request) Successful in 47s
CI / benchmark-publish (pull_request) Has been skipped
CI / typecheck (pull_request) Successful in 1m17s
CI / build (pull_request) Successful in 19s
CI / unit_tests (pull_request) Successful in 2m43s
CI / integration_tests (pull_request) Successful in 3m26s
CI / docker (pull_request) Successful in 40s
CI / coverage (pull_request) Successful in 3m43s
CI / benchmark-regression (pull_request) Successful in 22m20s
Add protocol stubs for remote server communication infrastructure:
- ServerClient: Health check and version negotiation protocol
- RemoteExecutionClient: Remote plan execution and status protocol
- AuthClient: Authentication and token management protocol
- StubServerClient/StubRemoteExecutionClient/StubAuthClient: Stub
  implementations raising NotImplementedError for all methods
- ServerConnectionConfig: Validated config model (server_url, namespace,
  auth_token_ref, tls_verify)
- Config keys: core.server_url, core.server_namespace, core.server_tls_verify
- CLI: agents connect <url> stub command with explicit warning
- CLI: agents info shows Server Mode (disabled/stubbed)

ISSUES CLOSED: #201
2026-03-02 07:54:20 +00:00
freemo b49059209a feat(config): add project-scoped config overrides
CI / lint (pull_request) Successful in 15s
CI / benchmark-publish (pull_request) Has been skipped
CI / build (pull_request) Successful in 15s
CI / quality (pull_request) Successful in 31s
CI / typecheck (pull_request) Successful in 41s
CI / security (pull_request) Successful in 51s
CI / unit_tests (pull_request) Successful in 2m57s
CI / integration_tests (pull_request) Successful in 4m34s
CI / docker (pull_request) Successful in 39s
CI / coverage (pull_request) Successful in 3m39s
CI / benchmark-regression (pull_request) Successful in 22m18s
Add --project flag to config set, config get, and config list CLI
commands, enabling per-project configuration overrides stored under
[project."<name>"] TOML tables in the global config file.

Project-scoped resolution slots between environment variable and global
levels in the ConfigService resolution chain. config list --project
shows only overrides for the named project with source annotations.

Implementation:
- ConfigService: add set_project_value() and get_project_overrides()
  methods for TOML-backed project-scoped persistence and retrieval
- CLI config commands: wire --project flag through set, get, and list
  subcommands; project-scoped list filters to overrides only
- Database persistence: project-scoped config stored as alternative
  backend for projects not using TOML
- Documentation: update docs/reference/config_resolution.md with
  project-scopable key lists, CLI examples, precedence diagram, and
  non-scopable key rejection behavior

Tests:
- Behave: 12 BDD scenarios in features/config_project_scope.feature
  covering set/get/list, precedence over global defaults, and
  non-scopable key rejection
- Robot: 5 integration smoke tests in robot/config_project_scope.robot
  for end-to-end project-scoped round-trip verification
- ASV: benchmarks/config_project_scope_bench.py measuring resolution
  overhead with project scope active

All nox quality gates pass: lint, typecheck, unit_tests (7522 scenarios),
integration_tests (Config Project Scope suite passed), and coverage at
98% line rate (threshold 97%).

Closes #259
2026-03-02 06:48:23 +00:00
freemo 8683f36817 perf(tests): add ASV benchmarks for test suite runtime regression tracking
CI / benchmark-publish (pull_request) Has been skipped
CI / build (pull_request) Successful in 17s
CI / lint (pull_request) Successful in 18s
CI / quality (pull_request) Successful in 18s
CI / typecheck (pull_request) Successful in 34s
CI / security (pull_request) Successful in 37s
CI / unit_tests (pull_request) Successful in 3m12s
CI / integration_tests (pull_request) Successful in 4m51s
CI / docker (pull_request) Successful in 40s
CI / coverage (pull_request) Successful in 4m19s
CI / benchmark-regression (pull_request) Successful in 23m16s
Add ASV benchmark modules to track test suite performance over time:
- bench_unit_tests.py: Feature discovery, step module loading, parallel
  chunk computation, behave config parsing, and test suite metrics
- bench_coverage_report.py: Coverage collection pipeline timing and
  report generation overhead
- bench_subprocess_overhead.py: Subprocess count tracking and per-feature
  startup cost measurement

These benchmarks establish baselines for the post-optimization state
and enable CI-driven regression detection.

ISSUES CLOSED: #486
2026-03-02 06:30:00 +00:00
freemo 7687c5e9b0 feat(acms): add context request protocol models
CI / lint (pull_request) Successful in 14s
CI / benchmark-publish (pull_request) Has been skipped
CI / typecheck (pull_request) Successful in 33s
CI / quality (pull_request) Successful in 25s
CI / build (pull_request) Successful in 15s
CI / security (pull_request) Successful in 53s
CI / unit_tests (pull_request) Successful in 3m18s
CI / integration_tests (pull_request) Successful in 3m55s
CI / docker (pull_request) Successful in 40s
CI / coverage (pull_request) Successful in 3m42s
CI / benchmark-regression (pull_request) Successful in 22m48s
Add CRP domain models for the Advanced Context Management System:
- ContextRequest: Focus-driven context retrieval with breadth, depth,
  strategy, temporal_scope, and skeleton_ratio parameters
- ContextFragment: Retrieved context with UKO URI, provenance,
  relevance score, token count, and detail level metadata
- ContextBudget: Token budget management with reservation support
- DetailLevel: Five-tier enum (skeleton through full)
- DetailLevelMap: Name-to-integer resolution registry with inheritance

Add builtin/context skill with stubbed tools (request_context,
query_history, get_context_budget) wired to future ACMS pipeline.

ISSUES CLOSED: #190
2026-03-02 06:25:46 +00:00
freemo 749e56eb4f feat(service): add subplan service and spawn workflow
CI / lint (pull_request) Successful in 16s
CI / benchmark-publish (pull_request) Has been skipped
CI / build (pull_request) Successful in 16s
CI / quality (pull_request) Successful in 29s
CI / typecheck (pull_request) Successful in 55s
CI / security (pull_request) Successful in 57s
CI / unit_tests (pull_request) Successful in 2m58s
CI / integration_tests (pull_request) Successful in 4m10s
CI / docker (pull_request) Successful in 47s
CI / coverage (pull_request) Successful in 3m48s
CI / benchmark-regression (pull_request) Successful in 22m45s
Add SubplanService for building child plans from DecisionService spawn
entries and SubplanConfig. The service validates resource scopes, merge
strategies, and max_parallel bounds before spawning.

Key additions:
- SubplanService: Orchestrates child plan creation from spawn entries
- SpawnMetadata: Persisted metadata (spawn_decision_id, parent/root
  plan IDs, execution mode) for status output
- Spawn validation: Checks resource scopes, merge strategy, and
  parallelism bounds before spawning
- Documentation: subplan_service.md with spawn workflow and lifecycle

ISSUES CLOSED: #197
2026-03-02 06:22:19 +00:00
freemo 6088730897 perf(tests): consolidate 141 trivially small feature files into 34 domain groups
CI / benchmark-publish (pull_request) Has been skipped
CI / lint (pull_request) Successful in 16s
CI / build (pull_request) Successful in 16s
CI / quality (pull_request) Successful in 23s
CI / typecheck (pull_request) Successful in 35s
CI / security (pull_request) Successful in 37s
CI / unit_tests (pull_request) Successful in 3m2s
CI / integration_tests (pull_request) Successful in 4m37s
CI / docker (pull_request) Successful in 43s
CI / coverage (pull_request) Successful in 3m49s
CI / benchmark-regression (pull_request) Successful in 22m48s
Consolidate 141 BDD feature files that each complete in under 0.1 seconds
into 25 domain-grouped feature files, reducing subprocess count from 339
to ~223. Each consolidated file groups scenarios from the same domain/module
that share step definitions and fixtures. All scenarios are preserved with
clear comment headers indicating their original source file.

This reduces subprocess overhead by ~116 invocations (141 original files
replaced by 25 consolidated files), targeting the 42% of subprocess count
that contributed only 0.2% of actual test runtime.

ISSUES CLOSED: #485
2026-03-02 05:02:02 +00:00