633 Commits

Author SHA1 Message Date
HAL9000 6eb7ceb3fd docs(spec): align custom resource type YAML format with schema definition
The spec had three inconsistent YAML formats for custom resource types
across different sections. The canonical format is defined in
docs/schema/resource_type.schema.yaml. Update spec examples to match:

- physical_or_virtual -> resource_kind (matches schema field name)
- cli_arguments -> cli_args (matches schema field name)
- allowed_parent_types -> parent_types (matches schema field name)
- checkpointable (top-level) -> capabilities.checkpoint (matches schema)
- readable/writable/sandboxable -> read/write/sandbox (matches schema)
- handler: ClassName -> handler: module:ClassName (matches schema format)
- classification -> resource_kind (fixes extensibility section)
- child_types: [{type: x}] -> child_types: [x] (matches schema items)
- document auto_discovery as the place for per-child discovery settings

Also update ResourceTypeRecord UML class diagram to match schema fields.

ISSUES CLOSED: #5622
2026-06-19 01:49:37 -04:00
HAL9000 d1ced790ca docs: update CHANGELOG, CONTRIBUTORS, and fix DI snippet for module guides (#4848)
- Add CHANGELOG.md [Unreleased] entry for the three new module guides
- Add CONTRIBUTORS.md entry for HAL9000 authoring the module guides
- Fix InvariantReconciliationActor DI container snippet in
  invariant-reconciliation.md: replace incorrect event_bus/audit_service
  params with the actual constructor params (invariant_service,
  decision_service) as defined in src/cleveragents/actor/reconciliation.py

ISSUES CLOSED: #4848
2026-06-16 18:28:16 -04:00
HAL9000 44652c216a docs: add sandbox, correction, and invariant module guides
Document lifecycle details, security warnings, and CLI usage for the new module guides so implementors have a single reference.

ISSUES CLOSED: #4848
2026-06-16 18:18:18 -04:00
HAL9000 4a68e02107 docs(spec): align checkpoint trigger names and config key path with implementation
Fixes two spec-implementation discrepancies identified in issue #5009:

1. Checkpoint trigger names: rename on_tool_write → before_tool_execute and
   on_tool_write_complete → after_tool_execute to match the implementation in
   src/cleveragents/tool/runner.py and src/cleveragents/application/services/
   config_service.py. The implementation names are more precise — they describe
   the execution phase rather than implying only write tools trigger them
   (though the implementation correctly gates them on write tools).

2. Config key path: correct the Configuration Reference table entry from
   sandbox.checkpoint.auto-create-on to core.checkpoints.auto-create-on,
   matching both the implementation (config_service.py line 482) and the
   inline spec at line 19449. Also update the default values in the table
   to use the corrected trigger names.

Closes #5009
2026-06-15 13:14:25 -04:00
HAL9000 a7b6b3d0d4 docs(timeline): verify timeline status for 2026-04-16 Cycle 2 [AUTO-TIME-3] 2026-06-15 02:41:37 -04:00
HAL9000 9edee2d7d5 docs: fix inaccurate fast-path claim in CLI basics documentation
The version, info, and diagnostics commands were incorrectly stated as being on the fast-path. Only --help and --version are eager exit options that skip subcommand module loading.

ISSUES CLOSED: #7592
2026-06-14 23:57:38 -04:00
HAL9000 f38491e5a6 docs: add showcase example for CLI version/info/diagnostics basics
Add a verified CLI showcase for the version, info, and diagnostics commands,
register in examples.json and update CHANGELOG/CONTRIBUTORS.

ISSUES CLOSED: #7592
2026-06-14 23:57:38 -04:00
HAL9000 f808abff86 chore(ci): fix pre-commit hook failures
Fix JSON syntax errors in .devcontainer/devcontainer.json (removed
invalid JS-style // comments) and .devcontainer/opencode.json (removed
90+ trailing commas). Apply auto-fixes for end-of-file and trailing
whitespace issues across 100+ files. Fix SIM105 ruff violations in
benchmarks/core_circuit_breaker_bench.py (use contextlib.suppress).

Note: The security fix from issue #7478 (validate_path startswith bypass)
was already delivered to master in commit e18ac5f2. This PR as currently
structured is non-atomic (35 commits across 10+ issues) and needs
significant restructure before merge. This commit only addresses the
CI/pre-commit failures.

ISSUES CLOSED: #7478
2026-06-14 09:51:14 -04:00
HAL9000 b6fe72e40f chore(agents): fix bug-hunt-pool-supervisor tracking prefix AUTO-BUG-POOL to AUTO-BUG-SUP (complete fix) 2026-06-14 03:03:30 -04:00
HAL9000 ad88422efe docs(spec): clarify layer boundary DI exception, ULID scope, TUI/ACMS gap-fill [AUTO-ARCH-1]
Add targeted clarifications to docs/specification.md to fill identified gaps:

1. Layer boundary DI Container Exception (Cross-Milestone Architectural Invariants)
2. ULID Scope Clarification - domain vs internal identifiers
3. ACMS Pipeline Protocol Contracts with storage tiers and budget protocol
4. TUI Component Interfaces with verifiable checks

Co-authored-by: CleverAgents Bot <bot@cleveragents.com>

ISSUES CLOSED: #10451
2026-06-12 12:08:13 -04:00
HAL9000 c1a29a331b docs: add showcase example for resource and skill management
CI / lint (pull_request) Successful in 1m9s
CI / push-validation (pull_request) Successful in 54s
CI / quality (pull_request) Successful in 1m20s
CI / typecheck (pull_request) Successful in 1m37s
CI / security (pull_request) Successful in 1m37s
CI / build (pull_request) Successful in 1m19s
CI / helm (pull_request) Successful in 1m31s
CI / unit_tests (pull_request) Successful in 6m45s
CI / docker (pull_request) Successful in 2m54s
CI / integration_tests (pull_request) Successful in 10m45s
CI / coverage (pull_request) Successful in 22m39s
CI / status-check (pull_request) Successful in 5s
Align the resource and skill management showcase with review feedback: consistent resource type counts (101), explicit save-to-disk instructions before each skill registration command, metadata callouts for non-obvious behaviors (Config: unknown, capability summary zeros, local/linear-tracker 0-tool count), and README framing to acknowledge platform feature walkthroughs.

Remove obsolete tdd_issue tags from coverage threshold Robot tests now that the noxfile enforces COVERAGE_THRESHOLD = 97.

Harden the Skip If No LLM Keys E2E helper with per-key regex validation and log-level suppression to prevent credential leakage in CI logs. Restore the Resolve LLM Actor keyword that was inadvertently removed from common_e2e.resource.

Update CHANGELOG.md and CONTRIBUTORS.md per project requirements.

ISSUES CLOSED: #4470
2026-06-06 22:55:02 -04:00
HAL9000 34f658a32a docs(showcase): showcase CLI version/info/diagnostics commands
Created comprehensive showcase documentation for CLI version, info, and diagnostics commands
Documented fast-path vs regular command behavior
Included verified outputs and machine-readable JSON/YAML examples
Registered the showcase entry in docs/showcase/examples.json
Added BDD tests for the showcase documentation

Closes #7592
2026-06-06 06:28:09 -04:00
HAL9000 c0ca274691 fix(showcase): add "agents actor run" to commands list in examples.json
The BDD test step_commands_include checks for exact list membership.
"agents actor run" was missing from the commands list, causing the
"Showcase commands list is not empty" scenario to fail with:
  AssertionError: Command 'agents actor run' not found in commands list
2026-06-06 04:58:21 -04:00
Repository Isolator 1551c6e41d docs(showcase): add REPL and actor run CLI showcase
- Register REPL and actor run showcase in examples.json
- Add BDD tests for showcase documentation structure
- Verify markdown file exists and is properly formatted
- Validate JSON metadata for showcase entry
- Test documented commands and content sections

Closes #7552
2026-06-06 04:58:20 -04:00
HAL9000 8be7f59931 feat(providers): implement OpenRouter provider support in ProviderRegistry
Added handling for ProviderType.OPENROUTER in _create_provider_llm in src/cleveragents/providers/registry.py to resolve ValueError: Unsupported provider type when using OpenRouter via create_llm.

Created features/openrouter_provider_registry.feature with 11 scenarios validating OpenRouter provider behavior in ProviderRegistry.

Created features/steps/openrouter_provider_registry_steps.py with step definitions for the new feature file.

Created docs/reference/providers.md with comprehensive documentation including the OpenRouter configuration guide.

ISSUES CLOSED: #8907
2026-06-06 04:37:11 -04:00
HAL9000 0b8b971e7f docs: document actor removal impact handling and --unsafe flag
CI / lint (pull_request) Successful in 56s
CI / typecheck (pull_request) Successful in 1m6s
CI / helm (pull_request) Successful in 45s
CI / build (pull_request) Successful in 52s
CI / security (pull_request) Successful in 1m15s
CI / quality (pull_request) Successful in 1m22s
CI / push-validation (pull_request) Successful in 37s
CI / unit_tests (pull_request) Successful in 6m56s
CI / docker (pull_request) Successful in 1m51s
CI / integration_tests (pull_request) Successful in 10m51s
CI / coverage (pull_request) Successful in 11m14s
CI / status-check (pull_request) Successful in 4s
- Added comprehensive documentation about actor removal impact handling, outlining potential effects on dependencies, data integrity, and service continuity. Includes a clear, step-by-step checklist for evaluating impact prior to removal and guidance on planning mitigations.

- Documented the --unsafe flag and when it's required, with explicit warnings, usage criteria, and recommended safeguards, rollback steps, and testing considerations.

- Added non-zero impact scenarios and best practices for safe removal, including concrete examples of edge cases, guidance on graceful shutdown, data migration considerations, and rollback planning to minimize disruption.

- Updated the actor management workflow showcase with new guidance, aligning demonstrations and diagrams with the updated removal process and decision points.

Closes #7540
2026-06-06 03:52:55 -04:00
HAL9000 a5218c143c docs: add DI unification implementation plan for issue #8867 2026-06-06 01:15:58 -04:00
HAL9000 7f47ec85da docs(milestones): split oversized milestone pages into sub-pages (PR #9957)
CI / build (pull_request) Successful in 1m7s
CI / lint (pull_request) Successful in 1m13s
CI / quality (pull_request) Successful in 1m13s
CI / helm (pull_request) Successful in 43s
CI / typecheck (pull_request) Successful in 1m22s
CI / security (pull_request) Successful in 1m25s
CI / push-validation (pull_request) Successful in 31s
CI / unit_tests (pull_request) Successful in 5m11s
CI / integration_tests (pull_request) Successful in 8m22s
CI / docker (pull_request) Successful in 2m22s
CI / coverage (pull_request) Successful in 10m39s
CI / status-check (pull_request) Successful in 4s
Refactor Milestones documentation to address PR #9957 reviewer feedback:

- Split v3.0.0.md (506 lines) into 3 sub-pages under milestones/v3.0.0/:
  - index.md — Overview, goals, feature table, architecture notes (87 lines)
  - cli-reference.md — Full CLI command reference (142 lines)
  - deep-dive.md — Sandbox, persistence, domain model internals (95 lines)

- Split v3.1.0.md (682 lines) into 5 sub-pages under milestones/v3.1.0/:
  - index.md — Overview, goals, feature table, architecture notes (69 lines)
  - actor-yaml.md — Actor YAML format + Compiler/LangGraph integration (131 lines)
  - integration.md — MCP Adapter + Tool Router provider normalization (91 lines)
  - skills.md — Skill Registry + Validation Runner gates (127 lines)
  - quickstart.md — Common workflows and reference guide (66 lines)

- Update mkdocs.yml navigation to reflect the new sub-page structure
- Total: from 2 files at 506/682 lines to 9 files all under 150 lines

ISSUES CLOSED: #9957
2026-06-04 01:49:54 -04:00
HAL9000 980fcabc48 docs: document ACP to A2A module rename and symbol standardization [AUTO-DOCS-8]
CI / push-validation (pull_request) Successful in 28s
CI / lint (pull_request) Successful in 32s
CI / helm (pull_request) Successful in 36s
CI / build (pull_request) Successful in 43s
CI / quality (pull_request) Successful in 55s
CI / typecheck (pull_request) Successful in 1m18s
CI / security (pull_request) Successful in 1m19s
CI / unit_tests (pull_request) Successful in 6m51s
CI / integration_tests (pull_request) Successful in 10m33s
CI / docker (pull_request) Failing after 12m6s
CI / coverage (pull_request) Failing after 12m22s
CI / status-check (pull_request) Failing after 3s
2026-06-03 22:51:33 -04:00
HAL9000 35bf1d6962 [AUTO-TIME-1] Update timeline: schedule adherence 2026-04-17
CI / lint (pull_request) Successful in 41s
CI / quality (pull_request) Successful in 52s
CI / security (pull_request) Successful in 1m7s
CI / typecheck (pull_request) Successful in 1m23s
CI / build (pull_request) Successful in 47s
CI / push-validation (pull_request) Successful in 23s
CI / helm (pull_request) Successful in 32s
CI / unit_tests (pull_request) Successful in 6m0s
CI / docker (pull_request) Successful in 1m39s
CI / integration_tests (pull_request) Successful in 9m44s
CI / coverage (pull_request) Successful in 11m36s
CI / status-check (pull_request) Successful in 3s
2026-06-03 22:29:32 -04:00
HAL9000 8170dabb4f docs(timeline): [AUTO-TIME-2] update schedule adherence 2026-04-18 with changelog and contributor entries
CI / lint (pull_request) Successful in 41s
CI / build (pull_request) Successful in 38s
CI / helm (pull_request) Successful in 41s
CI / typecheck (pull_request) Successful in 1m6s
CI / quality (pull_request) Successful in 1m8s
CI / security (pull_request) Successful in 1m17s
CI / push-validation (pull_request) Successful in 26s
CI / unit_tests (pull_request) Successful in 5m44s
CI / integration_tests (pull_request) Successful in 8m4s
CI / docker (pull_request) Successful in 1m40s
CI / coverage (pull_request) Successful in 11m43s
CI / status-check (pull_request) Successful in 4s
- Add Schedule Adherence tables for 2026-04-18 (M3-M10)
- Add Daily Snapshot section with milestone risk assessments
- Fix missing newline at end of timeline table content
- Update CHANGELOG.md under [Unreleased] with entry for timeline snapshot
- Update CONTRIBUTORS.md with HAL 9000 contribution entry
- Proper newline termination before new markdown table sections

ISSUES CLOSED: #10288

Epic reference: Tracking issue #8519 (AUTO-TIME supervisor)

Automated by CleverAgents Bot
Supervisor: Timeline Update | Agent: timeline-update-pool-supervisor
2026-06-03 22:07:47 -04:00
CleverAgents Bot 5ca87cd5af docs(v3.6.0-v3.7.0): add comprehensive feature documentation and guides
CI / push-validation (pull_request) Successful in 43s
CI / helm (pull_request) Successful in 49s
CI / build (pull_request) Successful in 55s
CI / lint (pull_request) Successful in 1m12s
CI / typecheck (pull_request) Successful in 1m18s
CI / quality (pull_request) Successful in 1m25s
CI / security (pull_request) Successful in 1m28s
CI / unit_tests (pull_request) Successful in 6m23s
CI / docker (pull_request) Successful in 1m47s
CI / integration_tests (pull_request) Successful in 10m51s
CI / coverage (pull_request) Successful in 11m30s
CI / status-check (pull_request) Successful in 4s
- Add v3.6.0 features guide covering advanced context management, enhanced security profiles, improved observability, performance optimizations, and API enhancements
- Add v3.7.0 features guide covering TUI redesign, Agent-to-Agent Communication (A2A), enhanced automation execution, advanced skill management, and improved developer experience
- Add comprehensive v3.7.0 TUI guide with detailed navigation, management interfaces, keyboard shortcuts, and advanced features
- Add v3.7.0 A2A protocol specification covering message format, transport layers, authentication, error handling, and multi-agent orchestration
- Add v3.6.0-v3.7.0 release notes with upgrade paths, deprecation timeline, and migration guides
- Include practical examples and best practices for all major features
- Ensure all documentation is properly formatted with table of contents and cross-references

This documentation audit and update provides comprehensive coverage of v3.6.0 and v3.7.0 features with examples, ensuring users can effectively utilize new capabilities.
2026-06-03 21:06:30 -04:00
HAL9000 0aacec7845 fix(cli): address PR #6626 review blockers for context set output
- Fix ruff import ordering in project_context_cli_steps.py (yaml moved to third-party section)
- Remove unused noqa: F401 suppression in rendering/__init__.py
- Add *args, **kwargs to _test_format_output stub in coverage boost steps (fixes TypeError)
- Extract context-set step definitions into dedicated module (project_context_set_steps.py)
  to bring project_context_cli_steps.py under 500-line limit (469 -> 316 lines)
- Revert spec changes for context show/inspect/simulate message format (bare strings)
  to keep PR focused on issue #6319 (context set only),
2026-06-03 17:30:22 -04:00
HAL9000 388fc458c5 fix(cli): fix project context set JSON/YAML output structure (#6319)
Implemented spec-compliant JSON, YAML, plain, and rich outputs for `agents project context set`. Added BDD coverage verifying the new output structure across formats.\n\nISSUES CLOSED: #6319
2026-06-03 17:30:22 -04:00
HAL9000 46fff75c1a docs: add v3.2.0 and v3.3.0 feature documentation [AUTO-DOCS-2] 2026-06-03 15:56:46 -04:00
CleverAgents Bot 70517398a6 [AUTO-TIME-1] Day 105 timeline update — 2026-04-15
CI / lint (pull_request) Successful in 37s
CI / quality (pull_request) Successful in 54s
CI / typecheck (pull_request) Successful in 1m2s
CI / security (pull_request) Successful in 1m23s
CI / unit_tests (pull_request) Successful in 5m13s
CI / helm (pull_request) Successful in 30s
CI / build (pull_request) Successful in 32s
CI / push-validation (pull_request) Successful in 34s
CI / docker (pull_request) Successful in 2m48s
CI / integration_tests (pull_request) Successful in 9m39s
CI / coverage (pull_request) Successful in 13m18s
CI / status-check (pull_request) Successful in 3s
Update schedule adherence and milestone progress:
- v3.2.0: 26% complete (933 open)
- v3.3.0: 36% complete (212 open)
- v3.4.0: 37% complete (158 closed / 427 total)
- v3.5.0: 18% complete (1,107 open)
- v3.6.0: 33% complete (329 open)
- v3.7.0: 42% complete (603 open)
- v3.8.0: 29% complete (364 open)
- v3.9.0: 41% complete (35 open)

Automated by CleverAgents Bot
2026-06-03 11:55:34 -04:00
HAL9000 b31d52fe0e docs(spec): clarify Anonymous Tool enforcement rules in glossary
Expands the Anonymous Tool glossary entry to explicitly document:
- Anonymous tools are never passed to ToolRegistry.register()
- Name field is required but context-local (no namespace prefix)
- Attempting global registration raises ToolError
- Namespacing requirement applies only to registered tools

Closes #8799. [AUTO-ARCH-14]
2026-06-03 00:24:21 -04:00
HAL9000 7ba1e5737f docs(spec): document context_tier_hydrator module in ACMS architecture section
Adds Context Tier Hydration subsection to the ACMS Architecture section of
the specification, documenting the context_tier_hydrator module's public
interface (hydrate_tiers_for_plan, hydrate_tiers_from_project), file listing
strategy (git ls-files for git-checkout resources, os.walk fallback), budget
limits (256 KB per file, 10 MB total per project), and fragment structure
(TieredFragment with ContextTier.HOT placement, metadata keys path/detail_depth/relevance_score).

Also updates CHANGELOG.md under [Unreleased] > Documentation and adds
contribution entry to CONTRIBUTORS.md.

ISSUES CLOSED: #6175
2026-06-02 23:07:34 -04:00
HAL9000 5e89f1016c refactor(subplans): Centralize subplan errors per v3.3.0 spec (#8725)
Move SubplanSpawnError from local subplan_service definition to centralized
cleveragents.core.exceptions alongside four new spec-defined error types:
SubplanExecutionError, MaxParallelExceededError, and SubplanDepthLimitError.

Per the v3.3.0 specification (AUTO-ARCH-6), all subplan-related errors are
defined in exceptions.py with proper inheritance hierarchy under DomainError/
PlanError/BusinessRuleViolation. The old local SpawnValidationError class has
been replaced with SubplanSpawnError(PlanError) with a simplified constructor
API (message string instead of validation_errors list).

Updates:
- exceptions.py: Added 4 subplan error classes + __all__ entries
- subplan_service.py: Remove local SpawnValidationError, import SubplanSpawnError from exceptions
- services/__init__.py: Update TYPE_CHECKING stub and _LAZY_IMPORTS for new location
- vulture_whitelist.py: Replace old entry with new error class names
- docs/reference/subplan_service.md: Update to reference SubplanSpawnError (v3.3.0)
- features/*.feature + steps: Update test references from SpawnValidationError to SubplanSpawnError
2026-06-02 19:50:41 -04:00
HAL9000 bc6677b3cd feat(subplans): Subplan System Specification and Invariant Enforcement v3.3.0 (#8725)
Add comprehensive Subplan System specification defining module boundaries,
data models (Subplan, SubplanResult, SubplanTree), PostgreSQL schema with
indexes, the 8-step spawning algorithm, concurrency control via per-plan
semaphores, and error handling.

Implement invariant loading and enforcement in Strategize phase:
- Add InvariantViolationError exception class
- Add load_active_invariants() and check_invariants() methods to InvariantService
- Add _is_violation heuristic for action/invariant matching
- Add BDD tests with @load_invariants, @check_invariants, etc. tags

ISSUES CLOSED: #8725
2026-06-02 19:50:41 -04:00
HAL9000 8ebd922e77 docs(specification): add deleted_at field to agents project delete JSON/YAML output
CI / lint (pull_request) Successful in 35s
CI / helm (pull_request) Successful in 21s
CI / build (pull_request) Successful in 45s
CI / push-validation (pull_request) Successful in 31s
CI / quality (pull_request) Successful in 52s
CI / typecheck (pull_request) Successful in 1m3s
CI / security (pull_request) Successful in 1m15s
CI / unit_tests (pull_request) Successful in 4m23s
CI / docker (pull_request) Successful in 2m0s
CI / integration_tests (pull_request) Successful in 7m57s
CI / coverage (pull_request) Successful in 12m1s
CI / status-check (pull_request) Successful in 3s
Updated docs/specification.md to document the correct JSON/YAML output structure
for the project delete command, replacing the legacy deletion_summary object with
the deleted, success, and deleted_at fields that match the actual implementation
introduced in PR #6639. Added BDD feature file and step definitions to validate
the output format.

ISSUES CLOSED: #7872
2026-06-02 04:09:01 -04:00
HAL9000 f7ce8f0093 fix: update pr-review-pool-supervisor tracking prefix from AUTO-REV-POOL to AUTO-REV-SUP
- Updated pr-review-pool-supervisor.md tracking prefix from AUTO-REV-POOL to AUTO-REV-SUP
- Updated automation-tracking.md table and search query to use AUTO-REV-SUP
- Updated agent-system-specification.md all references from AUTO-REV-POOL to AUTO-REV-SUP
- Aligns documentation with actual production tracking prefix

ISSUES CLOSED: #7891
2026-06-02 00:58:16 -04:00
HAL9000 518c40be21 docs: document 2026-04-06 to 2026-04-08 improvements
CI / build (pull_request) Successful in 39s
CI / helm (pull_request) Successful in 24s
CI / lint (pull_request) Successful in 1m3s
CI / push-validation (pull_request) Successful in 38s
CI / typecheck (pull_request) Successful in 1m17s
CI / quality (pull_request) Successful in 1m37s
CI / security (pull_request) Successful in 1m49s
CI / unit_tests (pull_request) Successful in 8m23s
CI / docker (pull_request) Successful in 1m41s
CI / integration_tests (pull_request) Successful in 25m16s
CI / coverage (pull_request) Successful in 14m28s
CI / status-check (pull_request) Successful in 3s
- add changelog entries summarizing watchdog supervision and documentation updates\n- add ci-log-fetcher module guide detailing interface contract and usage\n- refresh system-watchdog doc with CI-blocker escalation and struggling PR detection\n- normalize coverage threshold robot test by dropping temporary tdd_expected_fail tags\n\nISSUES CLOSED: #7987
2026-05-31 09:38:17 -04:00
freemo 1fd4918be8 docs(spec): clarify TUI session export formats and persona schema fields
CI / push-validation (pull_request) Successful in 34s
CI / helm (pull_request) Successful in 45s
CI / build (pull_request) Successful in 49s
CI / lint (pull_request) Successful in 1m6s
CI / quality (pull_request) Successful in 1m8s
CI / typecheck (pull_request) Successful in 1m21s
CI / security (pull_request) Successful in 1m33s
CI / unit_tests (pull_request) Successful in 6m3s
CI / docker (pull_request) Successful in 1m24s
CI / coverage (pull_request) Successful in 12m56s
CI / integration_tests (pull_request) Successful in 24m23s
CI / status-check (pull_request) Successful in 3s
Accept implementation extensions as spec updates based on UAT findings:

1. `/session:export` now officially supports three formats:
   - `json` (default, canonical, importable)
   - `md` (Markdown transcript, lossy)
   - `txt` (plain-text transcript, lossy)
   Updated ADR-046 command table and spec Conversation Export section.

2. Persona data model now includes two optional display fields:
   - `icon`: emoji or single character for tab labels and lists
   - `greeting`: message shown when persona is activated
   Updated ADR-045 data model YAML example and Decision section.

These changes accept positive implementation extensions discovered by
UAT testing (issues #4871, #4858) rather than reverting them.

Refs: #4940
2026-05-31 08:35:06 -04:00
HAL9000 bc64074036 docs: add tool and validation management showcase
CI / push-validation (pull_request) Successful in 27s
CI / build (pull_request) Successful in 39s
CI / lint (pull_request) Successful in 43s
CI / helm (pull_request) Successful in 46s
CI / typecheck (pull_request) Successful in 1m11s
CI / quality (pull_request) Successful in 1m11s
CI / security (pull_request) Successful in 1m15s
CI / unit_tests (pull_request) Successful in 7m0s
CI / docker (pull_request) Successful in 1m33s
CI / coverage (pull_request) Successful in 15m2s
CI / integration_tests (pull_request) Successful in 24m26s
CI / status-check (pull_request) Successful in 3s
- document the CLI workflow for registering tools, wrapping validations, and querying registry metadata

- index the new example in docs/showcase/examples.json

- re-enable coverage threshold regression checks by removing obsolete tdd_expected_fail tags

ISSUES CLOSED: #4565

Refs: #4305

Refs: #4227
2026-05-30 17:21:55 -04:00
HAL9000 fc0366d05a fix(docs): correct SDK link from a2aprojects to a2aproject
CI / build (pull_request) Successful in 35s
CI / lint (pull_request) Successful in 43s
CI / quality (pull_request) Successful in 49s
CI / typecheck (pull_request) Successful in 58s
CI / helm (pull_request) Successful in 37s
CI / security (pull_request) Successful in 1m20s
CI / push-validation (pull_request) Successful in 48s
CI / unit_tests (pull_request) Successful in 6m44s
CI / docker (pull_request) Successful in 1m50s
CI / coverage (pull_request) Successful in 16m26s
CI / integration_tests (pull_request) Successful in 27m25s
CI / status-check (pull_request) Successful in 5s
The SDK URL was incorrectly changed to a2aprojects/a2a-python (404 broken link).
Revert to the correct a2aproject/a2a-python which is the official A2A Python SDK org.

Fixes blocker from PR review.
2026-05-30 09:33:19 -04:00
freemo 9b64297eff docs(a2a): fix SSE streaming event example method name
Corrects the Example Streaming Event in docs/reference/a2a.md to use
the correct JSON-RPC 2.0 notification method name `task/statusUpdate`
instead of the incorrect `message/stream`.

`message/stream` is the client→server REQUEST method that initiates
streaming. The actual SSE data payloads are JSON-RPC 2.0 notifications
(no `id` field) with method names `task/statusUpdate` or
`task/artifactUpdate`, as implemented in SseEventFormatter.

Closes #2519
2026-05-30 09:33:19 -04:00
CoreRasurae 3e13411fcf fix(actors): distinguish namespace/name from provider/model in actor name parsing
CI / lint (pull_request) Successful in 1m17s
CI / typecheck (pull_request) Successful in 2m2s
CI / security (pull_request) Successful in 2m5s
CI / quality (pull_request) Successful in 1m12s
CI / push-validation (pull_request) Successful in 47s
CI / helm (pull_request) Successful in 1m1s
CI / build (pull_request) Successful in 1m8s
CI / integration_tests (pull_request) Successful in 4m52s
CI / unit_tests (pull_request) Failing after 6m20s
CI / coverage (pull_request) Has been skipped
CI / docker (pull_request) Has been skipped
CI / status-check (pull_request) Failing after 3s
When action YAML references actors using namespace/name format (e.g.
`strategy_actor: local/my-strategist`), `_parse_actor_name()` incorrectly
treated the namespace prefix as a provider name, causing
`ValueError: Unknown provider type: local`.

Changes:

- `_is_known_provider()`: New utility function (strategy_resolution.py)
  that checks whether a slash-separated first segment matches a known
  `ProviderType` value (openai, anthropic, etc.). Consolidated into a
  single implementation; llm_actors.py now imports from
  strategy_resolution.py.

- `_parse_actor_name()`: When the first segment IS a known provider,
  preserves existing behaviour (provider/model). When it is NOT a known
  provider, treats the input as namespace/name and returns the full name
  as the model identifier with the default provider. Callers SHOULD
  pre-resolve namespace/name references via the actor registry before
  calling this function. Both implementations (strategy_resolution.py
  and llm_actors.py) updated; ProviderType import moved to top level.

- `PlanLifecycleService.resolve_actor_provider_model()`: New method
  that resolves a namespaced actor name (e.g. local/my-strategist) to
  provider/model format by looking up the actor record and extracting
  its provider and model fields.

- `LifecycleService` Protocol (strategy_resolution.py): Added
  `resolve_actor_provider_model` to the protocol, eliminating the
  need for `# type: ignore[union-attr]` at call sites.

- `PlanLifecycleProtocol` (llm_actors.py): Added
  `resolve_actor_provider_model` to the protocol.

- Caller pre-resolution: StrategyActor, LLMStrategizeActor,
  LLMExecuteActor, SessionWorkflow._resolve_llm(), and CLI session
  commands now pre-resolve actor names through the lifecycle service
  or via injected actor_resolver callables before calling
  `_parse_actor_name()`, ensuring namespace/name references are
  correctly mapped to their underlying LLM providers.

- `_build_actor_resolver()` (cli/commands/session.py) and
  `_build_actor_resolver_for_session_workflow()` (a2a/facade.py):
  Moved `_is_known_provider` imports to top level; removed redundant
  `except (NotFoundError, Exception)`; added warning logging for
  outer exception handlers.

- `make_mock_lifecycle()` (mock_strategy_llm.py) and
  `_make_mock_lifecycle()` (llm_actors_coverage_steps.py): Added
  `resolve_actor_provider_model` to mock lifecycle services for
  test compatibility.

- Added `@tdd_issue @tdd_issue_11254` tags to all new BDD scenarios
  related to namespace/name disambiguation in llm_actors_coverage,
  strategy_actor_llm, and plan_lifecycle_service_coverage_boost_r4
  feature files.

- Updated docs/CHANGELOG.md with the fix entry.

ISSUES CLOSED: #11254
2026-05-22 20:42:25 +01:00
CoreRasurae 8548644819 fix(cli): wire SubplanExecutionService in _get_plan_executor() to enable child plan execution
CI / push-validation (pull_request) Successful in 1m1s
CI / helm (pull_request) Successful in 1m12s
CI / lint (pull_request) Successful in 2m22s
CI / build (pull_request) Successful in 2m17s
CI / typecheck (pull_request) Successful in 3m2s
CI / security (pull_request) Successful in 3m1s
CI / quality (pull_request) Successful in 57s
CI / integration_tests (pull_request) Successful in 5m0s
CI / unit_tests (pull_request) Successful in 6m8s
CI / docker (pull_request) Successful in 1m30s
CI / coverage (pull_request) Successful in 11m51s
CI / status-check (pull_request) Successful in 6s
CI / push-validation (push) Successful in 31s
CI / helm (push) Successful in 37s
CI / build (push) Successful in 1m7s
CI / lint (push) Successful in 1m28s
CI / quality (push) Successful in 1m30s
CI / typecheck (push) Successful in 1m44s
CI / security (push) Successful in 1m49s
CI / benchmark-regression (push) Failing after 40s
CI / e2e_tests (push) Successful in 54s
CI / integration_tests (push) Successful in 3m33s
CI / unit_tests (push) Successful in 5m21s
CI / docker (push) Successful in 1m29s
CI / coverage (push) Successful in 11m6s
CI / status-check (push) Successful in 3s
CI / benchmark-publish (push) Successful in 1h39m32s
Wire subplan_service from the DI container into _get_plan_executor() so
PlanExecutor can spawn child plans during the Execute phase.  When
SubplanService is available but SubplanExecutionService is not explicitly
injected, _execute_subplans() now lazily creates a SubplanExecutionService
on-the-fly using the parent plan's subplan_config and the new
_execute_child_plan callback.

- _get_plan_executor(): retrieve subplan_service from container, pass to
  PlanExecutor constructor
- _execute_subplans(): lazily build SubplanExecutionService when only
  SubplanService is wired (Forgejo #10268)
- _execute_child_plan(): new PlanExecutor method that runs a child plan's
  strategize + execute phases, registered as executor_fn callback

ISSUES CLOSED: #10268
2026-05-19 19:28:35 +01:00
HAL9000 2cba7d41bc chore(agents): fix bug-hunt-pool-supervisor tracking prefix AUTO-BUG-POOL to AUTO-BUG-SUP (complete fix)
CI / coverage (push) Blocked by required conditions
CI / docker (push) Blocked by required conditions
CI / status-check (push) Blocked by required conditions
CI / benchmark-regression (push) Has been skipped
CI / helm (push) Successful in 48s
CI / push-validation (push) Successful in 35s
CI / build (push) Successful in 1m4s
CI / lint (push) Successful in 1m18s
CI / quality (push) Successful in 1m22s
CI / typecheck (push) Successful in 1m46s
CI / e2e_tests (push) Successful in 4m42s
CI / integration_tests (push) Successful in 7m51s
CI / unit_tests (push) Successful in 12m20s
CI / security (push) Failing after 13m26s
CI / benchmark-publish (push) Successful in 1h31m13s
CI / benchmark-publish (pull_request) Has been skipped
CI / benchmark-regression (pull_request) Failing after 1m27s
CI / status-check (pull_request) Successful in 3s
CI / integration_tests (pull_request) Successful in 4m32s
CI / unit_tests (pull_request) Successful in 9m46s
CI / helm (pull_request) Successful in 54s
CI / build (pull_request) Successful in 1m4s
CI / push-validation (pull_request) Successful in 22s
CI / docker (pull_request) Successful in 1m48s
CI / lint (pull_request) Successful in 1m10s
CI / quality (pull_request) Successful in 1m27s
CI / typecheck (pull_request) Successful in 1m42s
CI / e2e_tests (pull_request) Successful in 5m24s
CI / security (pull_request) Successful in 2m10s
CI / coverage (pull_request) Successful in 12m19s
Replace all remaining AUTO-BUG-POOL references with correct AUTO-BUG-SUP in agent-system-specification.md, automation-tracking.md documentation and agent-system-specification.md spec document, replaced with correct `AUTO-BUG-SUP` prefix used by the bug-hunt-pool-supervisor agent (#7875).

ISSUES CLOSED: #7875
2026-05-09 00:05:17 +00:00
HAL9000 57881a075b docs(spec): update specification — validation gate blocks on empty validation summary
CI / helm (push) Successful in 33s
CI / build (push) Successful in 1m2s
CI / lint (push) Successful in 1m12s
CI / quality (push) Successful in 1m18s
CI / typecheck (push) Successful in 1m38s
CI / security (push) Successful in 1m42s
CI / push-validation (push) Successful in 20s
CI / e2e_tests (push) Successful in 4m14s
CI / integration_tests (push) Successful in 4m50s
CI / unit_tests (push) Successful in 6m1s
CI / docker (push) Successful in 1m31s
CI / coverage (push) Successful in 10m48s
CI / status-check (push) Successful in 3s
CI / benchmark-regression (push) Has been skipped
CI / benchmark-publish (pull_request) Has been skipped
CI / helm (pull_request) Successful in 39s
CI / push-validation (pull_request) Successful in 37s
CI / build (pull_request) Successful in 59s
CI / lint (pull_request) Successful in 1m14s
CI / typecheck (pull_request) Successful in 1m26s
CI / quality (pull_request) Successful in 1m34s
CI / security (pull_request) Successful in 1m43s
CI / benchmark-regression (pull_request) Failing after 1m7s
CI / integration_tests (pull_request) Successful in 3m36s
CI / unit_tests (pull_request) Successful in 4m44s
CI / e2e_tests (pull_request) Successful in 5m19s
CI / docker (pull_request) Successful in 1m30s
CI / coverage (pull_request) Successful in 11m8s
CI / status-check (pull_request) Successful in 3s
CI / benchmark-publish (push) Successful in 1h17m43s
2026-05-08 19:14:24 +00:00
HAL9000 a130d63357 docs(timeline): update schedule adherence Day 101 (2026-04-12) (#7858)
CI / lint (push) Successful in 1m0s
CI / quality (push) Successful in 1m8s
CI / typecheck (push) Successful in 1m20s
CI / benchmark-publish (push) Has started running
CI / security (push) Successful in 1m30s
CI / benchmark-regression (push) Has been skipped
CI / helm (push) Successful in 32s
CI / push-validation (push) Successful in 33s
CI / build (push) Successful in 53s
CI / integration_tests (push) Successful in 3m16s
CI / e2e_tests (push) Successful in 3m26s
CI / unit_tests (push) Successful in 5m54s
CI / docker (push) Successful in 1m22s
CI / coverage (push) Successful in 13m17s
CI / status-check (push) Successful in 4s
CI / benchmark-publish (pull_request) Has been skipped
CI / helm (pull_request) Successful in 45s
CI / build (pull_request) Successful in 57s
CI / lint (pull_request) Successful in 1m11s
CI / quality (pull_request) Successful in 1m33s
CI / typecheck (pull_request) Successful in 1m39s
CI / security (pull_request) Successful in 2m3s
CI / push-validation (pull_request) Successful in 31s
CI / benchmark-regression (pull_request) Failing after 1m16s
CI / integration_tests (pull_request) Successful in 3m46s
CI / unit_tests (pull_request) Successful in 4m58s
CI / e2e_tests (pull_request) Successful in 5m32s
CI / docker (pull_request) Successful in 1m37s
CI / coverage (pull_request) Successful in 11m59s
CI / status-check (pull_request) Successful in 3s
2026-05-08 10:21:23 +00:00
HAL9000 3d7afb4378 fix(resource): wire discover_devcontainers() into git-checkout and fs-directory handlers
GitCheckoutHandler.discover_children() and FsDirectoryHandler.discover_children()
now call discover_devcontainers() after scanning for fs-directory children. Any
.devcontainer/devcontainer.json or root-level .devcontainer.json found at the
resource location is registered as a devcontainer-instance child resource with
provisioning_state: discovered. Named configurations are also discovered and carry
the configuration name in the config_name property.

This wires the previously-isolated discover_devcontainers() function into the
production code path, enabling the spec's zero-configuration devcontainer experience.

ISSUES CLOSED: #4740
2026-05-07 23:49:20 +00:00
HAL9000 2778bde95a fix(repositories): derive PlanResult.success from result_success column instead of error_message
CI / benchmark-publish (pull_request) Has been skipped
CI / helm (pull_request) Successful in 40s
CI / build (pull_request) Successful in 58s
CI / lint (pull_request) Successful in 1m3s
CI / typecheck (pull_request) Successful in 1m25s
CI / quality (pull_request) Successful in 1m26s
CI / security (pull_request) Successful in 1m35s
CI / benchmark-regression (pull_request) Failing after 51s
CI / push-validation (pull_request) Successful in 20s
CI / integration_tests (pull_request) Successful in 3m30s
CI / e2e_tests (pull_request) Successful in 4m13s
CI / unit_tests (pull_request) Successful in 7m2s
CI / docker (pull_request) Successful in 1m48s
CI / coverage (pull_request) Successful in 11m25s
CI / status-check (push) Blocked by required conditions
CI / benchmark-publish (push) Has started running
CI / status-check (pull_request) Successful in 3s
CI / benchmark-regression (push) Has been skipped
CI / helm (push) Successful in 44s
CI / push-validation (push) Successful in 55s
CI / build (push) Successful in 1m35s
CI / quality (push) Successful in 1m57s
CI / lint (push) Successful in 2m9s
CI / typecheck (push) Successful in 2m28s
CI / security (push) Successful in 2m34s
CI / integration_tests (push) Successful in 5m33s
CI / unit_tests (push) Successful in 6m7s
CI / e2e_tests (push) Successful in 6m41s
CI / coverage (push) Has started running
CI / docker (push) Successful in 1m33s
ISSUES CLOSED: #7501
2026-05-07 14:22:57 +00:00
HAL9000 f2d1f4efe7 docs: fix quickstart plan/apply command signatures
CI / push-validation (push) Successful in 38s
CI / helm (push) Successful in 47s
CI / build (push) Successful in 1m2s
CI / lint (push) Successful in 1m14s
CI / quality (push) Successful in 1m23s
CI / typecheck (push) Successful in 1m47s
CI / security (push) Successful in 1m59s
CI / integration_tests (push) Successful in 4m2s
CI / e2e_tests (push) Successful in 4m35s
CI / unit_tests (push) Failing after 6m19s
CI / coverage (push) Has been skipped
CI / docker (push) Has been skipped
CI / status-check (push) Failing after 3s
CI / benchmark-regression (push) Has been skipped
CI / benchmark-publish (push) Successful in 1h17m32s
CI / benchmark-publish (pull_request) Has been skipped
CI / push-validation (pull_request) Successful in 43s
CI / helm (pull_request) Successful in 47s
CI / lint (pull_request) Successful in 1m21s
CI / quality (pull_request) Successful in 1m32s
CI / build (pull_request) Successful in 1m18s
CI / security (pull_request) Successful in 1m39s
CI / benchmark-regression (pull_request) Failing after 1m23s
CI / typecheck (pull_request) Successful in 2m14s
CI / integration_tests (pull_request) Successful in 4m16s
CI / unit_tests (pull_request) Failing after 4m59s
CI / coverage (pull_request) Has been skipped
CI / docker (pull_request) Has been skipped
CI / e2e_tests (pull_request) Successful in 4m52s
CI / status-check (pull_request) Failing after 3s
Update docs/quickstart.md to use correct CLI command signatures:
- Replace 'cleveragents plan --project' with 'cleveragents plan use <action> --project'
- Replace 'cleveragents apply --project' with 'cleveragents plan list' + 'cleveragents plan apply <plan-id>'

Addresses reviewer non-blocking suggestion to verify CLI commands match
actual signatures before merging.
2026-05-06 04:29:40 +00:00
HAL9000 54fef4768c docs: add quick start guide (PR #9245)
Add docs/quickstart.md with end-to-end quick start guide covering
prerequisites, installation, project creation, resource registration,
plan/apply workflow, and troubleshooting.

Update mkdocs.yml navigation to include Quick Start page and rename
ADR-028 title to Skill/Tool Abstraction Definition.

Update CHANGELOG.md with quick start guide entry.

Closes #9245
2026-05-06 04:29:40 +00:00
HAL9000 8384f53e28 test(cli): cover actor remove format regression (#6491)
Add Robot regression coverage for `actor remove --format json`, document the flag in the CLI synopsis, and record the fix in the changelog.\n\nISSUES CLOSED: #6491
2026-05-06 01:07:15 +00:00
hurui200320 85c579b51f fix(cli): display full session IDs in session list output
CI / status-check (push) Blocked by required conditions
CI / benchmark-regression (push) Waiting to run
CI / push-validation (push) Successful in 36s
CI / helm (push) Successful in 45s
CI / build (push) Successful in 58s
CI / lint (push) Successful in 1m9s
CI / quality (push) Successful in 1m18s
CI / typecheck (push) Successful in 1m31s
CI / security (push) Successful in 1m36s
CI / e2e_tests (push) Successful in 3m42s
CI / unit_tests (push) Successful in 4m38s
CI / integration_tests (push) Successful in 4m51s
CI / coverage (push) Has started running
CI / docker (push) Successful in 1m30s
CI / benchmark-publish (push) Has started running
CI / helm (pull_request) Successful in 32s
CI / push-validation (pull_request) Successful in 23s
CI / build (pull_request) Successful in 1m2s
CI / lint (pull_request) Successful in 1m11s
CI / quality (pull_request) Successful in 1m16s
CI / typecheck (pull_request) Successful in 1m24s
CI / security (pull_request) Successful in 1m38s
CI / benchmark-publish (pull_request) Has been skipped
CI / e2e_tests (pull_request) Successful in 4m36s
CI / unit_tests (pull_request) Successful in 4m48s
CI / benchmark-regression (pull_request) Failing after 1m23s
CI / docker (pull_request) Successful in 1m49s
CI / coverage (pull_request) Successful in 10m54s
CI / integration_tests (pull_request) Failing after 3m59s
CI / status-check (pull_request) Failing after 4s
Remove the [:8] truncation from session IDs in the Rich table row,
Most Recent summary, and Oldest summary fields of list_sessions()
and _session_list_dict().  Session IDs are 26-character ULIDs and
must be usable directly for copy-paste into session tell, session
show, and other session commands.  The structured output (JSON/YAML)
already used full IDs in the sessions[*].id field, but the summary
panel leaked the truncation into those formats as well.

Added Behave scenarios:
- Rich table displays full 26-character ULIDs (scoped to table region)
- Summary panel shows full ULIDs for unnamed sessions (scoped to panel)
- Summary panel shows session names for named sessions
- Full ULID from list output works with session tell (round-trip,
  uses parsed ULID, not hardcoded constant)

Review Cycle 2 fixes:
- docs/specification.md: Updated YAML output example to full ULIDs
- docs/showcase/*.md: Updated all example output blocks to full ULIDs
- docs/reference/session_cli.md: Replaced placeholder with full ULID
- features/session_cli.feature: Consecutive When steps -> And
- features/steps/session_cli_steps.py: Summary panel asserts both IDs,
  8-char negative guard in table output, ULID capture scoped to table
  region with fixture verification, named-session absence check for
  second session
- CHANGELOG.md: Added [Unreleased] entry for the behavioral change

ISSUES CLOSED: #10970
2026-05-05 10:56:18 +00:00
hurui200320 7164b04019 refactor(providers): unify provider factory behind single source of truth
CI / lint (push) Successful in 1m1s
CI / build (push) Successful in 53s
CI / quality (push) Successful in 1m23s
CI / typecheck (push) Successful in 1m24s
CI / benchmark-regression (push) Has been skipped
CI / security (push) Successful in 1m42s
CI / push-validation (push) Successful in 21s
CI / helm (push) Successful in 25s
CI / e2e_tests (push) Successful in 4m6s
CI / integration_tests (push) Successful in 4m12s
CI / unit_tests (push) Successful in 6m39s
CI / docker (push) Successful in 1m44s
CI / coverage (push) Successful in 10m51s
CI / status-check (push) Successful in 2s
CI / benchmark-publish (push) Successful in 1h17m10s
CI / benchmark-publish (pull_request) Has been skipped
CI / helm (pull_request) Successful in 33s
CI / build (pull_request) Successful in 50s
CI / lint (pull_request) Successful in 1m7s
CI / quality (pull_request) Successful in 1m9s
CI / typecheck (pull_request) Successful in 1m20s
CI / security (pull_request) Successful in 1m25s
CI / push-validation (pull_request) Successful in 19s
CI / integration_tests (pull_request) Successful in 3m20s
CI / e2e_tests (pull_request) Failing after 5m3s
CI / unit_tests (pull_request) Successful in 6m40s
CI / docker (pull_request) Successful in 1m30s
CI / coverage (pull_request) Successful in 11m9s
CI / status-check (pull_request) Failing after 3s
CI / benchmark-regression (pull_request) Failing after 1m11s
Extract _get_api_key() and _create_provider_instance() as a single internal
factory that handles all provider types, including MOCK. Both create_llm() and
create_ai_provider() now delegate to _create_provider_instance(), eliminating
the duplicated if/elif provider-switching chains and the divergence between the
two code paths. Adding a new provider now requires touching exactly one place.

Key changes:
- New _get_api_key(provider_type) consolidates API key lookup and validation
  that was previously duplicated across create_llm(), _create_provider_llm(),
  and every branch of create_ai_provider().
- New _create_provider_instance() is the unified raw-LLM factory, replacing
  _create_provider_llm() and the specialised adapter constructors in
  create_ai_provider(). MOCK is now handled here via FakeListLLM.
- create_ai_provider() wraps all providers uniformly in LangChainChatProvider
  instead of using specialised adapters (OpenAIChatProvider, AnthropicChatProvider,
  GoogleChatProvider, OpenRouterChatProvider) for the four primary providers.
- create_llm() drops its own API key validation block; validation now happens
  inside _create_provider_instance() via _get_api_key().
- All BDD scenarios updated: _create_provider_llm references become
  _create_provider_instance, and provider-type assertions on create_ai_provider
  results are updated to LangChainChatProvider.

Review fixes (Cycle 2):
- Add _coerce_env_bool() for consistent boolean env-var coercion in
  CLEVERAGENTS_ALLOW_MOCK_PROVIDER checks.
- Introduce _ApiKeyMissing sentinel to distinguish 'not provided' from None
  in provider configuration.
- Set MOCK supports_streaming=False in DEFAULT_CAPABILITIES to align with
  FakeListLLM semantics.
- Make MOCK is_configured conditional on CLEVERAGENTS_ALLOW_MOCK_PROVIDER.
- Use FakeListLLM(responses=['mock response'] * 10) to prevent IndexError
  in multi-step workflows.
- Strip max_retries from kwargs before passing to LangChain constructors.
- Extract _resolve_provider_type() helper shared by create_llm() and
  create_ai_provider() to reduce duplication and improve readability.
- Ensure __api_key_sentinel flows through factory_kwargs even when api_key
  is None, avoiding double _get_api_key() calls.
- Add CHANGELOG env-var documentation and providers.md env-var table.
- Resolve template DB lock issues by persisting in-memory SQLite via
  VACUUM INTO instead of direct file creation on tmpfs.

ISSUES CLOSED: #10949
2026-05-05 06:16:46 +00:00
HAL9000 988a169831 docs: add InvariantReconciliationActor API docs, devcontainer discovery module guide, and mkdocs nav
CI / benchmark-regression (push) Has been skipped
CI / benchmark-publish (push) Failing after 41s
CI / quality (push) Failing after 1m4s
CI / security (push) Failing after 1m4s
CI / unit_tests (push) Failing after 1m3s
CI / build (push) Failing after 45s
CI / push-validation (push) Successful in 47s
CI / helm (push) Successful in 42s
CI / lint (push) Successful in 1m33s
CI / e2e_tests (push) Failing after 45s
CI / integration_tests (push) Failing after 47s
CI / typecheck (push) Successful in 1m43s
CI / docker (push) Has been skipped
CI / coverage (push) Has been skipped
CI / status-check (push) Failing after 6s
CI / benchmark-publish (pull_request) Has been skipped
CI / helm (pull_request) Successful in 50s
CI / build (pull_request) Successful in 57s
CI / lint (pull_request) Successful in 1m9s
CI / quality (pull_request) Successful in 1m18s
CI / benchmark-regression (pull_request) Failing after 1m16s
CI / typecheck (pull_request) Successful in 1m30s
CI / security (pull_request) Successful in 1m36s
CI / e2e_tests (pull_request) Successful in 3m52s
CI / integration_tests (pull_request) Successful in 4m30s
CI / push-validation (pull_request) Successful in 20s
CI / unit_tests (pull_request) Successful in 6m31s
CI / docker (pull_request) Successful in 1m36s
CI / coverage (pull_request) Successful in 12m19s
CI / status-check (pull_request) Successful in 4s
- docs/api/actor.md: Add InvariantReconciliationActor section documenting
  the built-in reconciliation actor introduced in v3.8.0, including the
  reconciliation algorithm, ReconciliationResult/ConflictRecord/ScopeInvariants
  data classes, standalone reconcile_invariants() function, DI registration,
  and failure behaviour.

- docs/modules/devcontainer-discovery.md: New module guide for the
  devcontainer auto-discovery system (v3.8.0 fix #2615), covering
  DevcontainerDiscoveryResult, discover_devcontainers(), is_trigger_type(),
  monorepo named-config support, and gotchas.

- mkdocs.yml: Add 'Devcontainer Auto-Discovery' to the Modules nav section,
  alongside shell-safety, uko-provenance, invariant-reconciliation,
  context-hydration, and git-worktree-sandbox module docs.

- robot/coverage_threshold.robot: Add tdd_issue and tdd_issue_4305 tags
  to the Noxfile Contains Coverage Threshold Constant test case.

ISSUES CLOSED: #4485
2026-05-05 06:15:57 +00:00