test/cli-docstring-example-validation
2746 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
98994e8b84 |
docs(lsp): document LspLifecycleManager restart_server deadlock fix
CI / lint (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / security (push) Waiting to run
CI / quality (push) Waiting to run
CI / unit_tests (push) Waiting to run
CI / integration_tests (push) Waiting to run
CI / e2e_tests (push) Waiting to run
CI / coverage (push) Blocked by required conditions
CI / benchmark-regression (push) Blocked by required conditions
CI / benchmark-publish (push) Waiting to run
CI / build (push) Waiting to run
CI / docker (push) Blocked by required conditions
CI / helm (push) Waiting to run
CI / status-check (push) Blocked by required conditions
Reviewed and APPROVED. Documentation-only PR. |
||
|
|
acb90b812c |
fix(exceptions): replace Any with str | os.PathLike | None for FileSystemError.path
CI / lint (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / security (push) Waiting to run
CI / quality (push) Waiting to run
CI / unit_tests (push) Waiting to run
CI / integration_tests (push) Waiting to run
CI / e2e_tests (push) Waiting to run
CI / coverage (push) Blocked by required conditions
CI / benchmark-regression (push) Blocked by required conditions
CI / benchmark-publish (push) Waiting to run
CI / build (push) Waiting to run
CI / docker (push) Blocked by required conditions
CI / helm (push) Waiting to run
CI / status-check (push) Blocked by required conditions
Reviewed and APPROVED. Closes #3034. |
||
|
|
6a458e0dbb |
chore(agents): add mandatory labels to supervisor tracking issue creation
CI / lint (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / security (push) Waiting to run
CI / quality (push) Waiting to run
CI / unit_tests (push) Waiting to run
CI / integration_tests (push) Waiting to run
CI / e2e_tests (push) Waiting to run
CI / coverage (push) Blocked by required conditions
CI / benchmark-regression (push) Blocked by required conditions
CI / benchmark-publish (push) Waiting to run
CI / build (push) Waiting to run
CI / docker (push) Blocked by required conditions
CI / helm (push) Waiting to run
CI / status-check (push) Blocked by required conditions
Reviewed and APPROVED. Closes #3070. |
||
|
|
5cc50f5ca1 |
fix(cli): build spec-required execute output dict with sandbox, worker, and progress fields
CI / lint (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / security (push) Waiting to run
CI / quality (push) Waiting to run
CI / unit_tests (push) Waiting to run
CI / integration_tests (push) Waiting to run
CI / e2e_tests (push) Waiting to run
CI / coverage (push) Blocked by required conditions
CI / benchmark-regression (push) Blocked by required conditions
CI / benchmark-publish (push) Waiting to run
CI / build (push) Waiting to run
CI / docker (push) Blocked by required conditions
CI / helm (push) Waiting to run
CI / status-check (push) Blocked by required conditions
Reviewed and APPROVED. Closes #3435. |
||
|
|
cdc93dc3cd |
fix(resources): support multiple named devcontainer configurations
CI / lint (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / security (push) Waiting to run
CI / quality (push) Waiting to run
CI / unit_tests (push) Waiting to run
CI / integration_tests (push) Waiting to run
CI / e2e_tests (push) Waiting to run
CI / coverage (push) Blocked by required conditions
CI / benchmark-regression (push) Blocked by required conditions
CI / benchmark-publish (push) Waiting to run
CI / build (push) Waiting to run
CI / docker (push) Blocked by required conditions
CI / helm (push) Waiting to run
CI / status-check (push) Blocked by required conditions
Reviewed and APPROVED. Closes #2615. |
||
|
|
367a272b60 |
feat(cli): add devcontainer lifecycle state column to agents resource list output
CI / lint (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / security (push) Waiting to run
CI / quality (push) Waiting to run
CI / unit_tests (push) Waiting to run
CI / integration_tests (push) Waiting to run
CI / e2e_tests (push) Waiting to run
CI / coverage (push) Blocked by required conditions
CI / benchmark-regression (push) Blocked by required conditions
CI / benchmark-publish (push) Waiting to run
CI / build (push) Waiting to run
CI / docker (push) Blocked by required conditions
CI / helm (push) Waiting to run
CI / status-check (push) Blocked by required conditions
Reviewed and APPROVED. Closes #2596. |
||
|
|
6c4bea1ba1 |
fix(tool): implement tool_type filter in ToolRegistry.list_tools()
CI / lint (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / security (push) Waiting to run
CI / quality (push) Waiting to run
CI / unit_tests (push) Waiting to run
CI / integration_tests (push) Waiting to run
CI / e2e_tests (push) Waiting to run
CI / coverage (push) Blocked by required conditions
CI / benchmark-regression (push) Blocked by required conditions
CI / benchmark-publish (push) Waiting to run
CI / build (push) Waiting to run
CI / docker (push) Blocked by required conditions
CI / helm (push) Waiting to run
CI / status-check (push) Blocked by required conditions
Reviewed and APPROVED. Closes #2974. |
||
|
|
13eb2a7c8c |
refactor(cli): deduplicate session list summary logic in list_sessions
CI / lint (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / security (push) Waiting to run
CI / quality (push) Waiting to run
CI / unit_tests (push) Waiting to run
CI / integration_tests (push) Waiting to run
CI / e2e_tests (push) Waiting to run
CI / coverage (push) Blocked by required conditions
CI / benchmark-regression (push) Blocked by required conditions
CI / benchmark-publish (push) Waiting to run
CI / build (push) Waiting to run
CI / docker (push) Blocked by required conditions
CI / helm (push) Waiting to run
CI / status-check (push) Blocked by required conditions
Reviewed and APPROVED. Closes #3046. |
||
|
|
63f5269f39 |
fix(cli): replace manual DI wiring in _get_tool_registry_service with container resolution
CI / lint (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / security (push) Waiting to run
CI / quality (push) Waiting to run
CI / unit_tests (push) Waiting to run
CI / integration_tests (push) Waiting to run
CI / e2e_tests (push) Waiting to run
CI / coverage (push) Blocked by required conditions
CI / benchmark-regression (push) Blocked by required conditions
CI / benchmark-publish (push) Waiting to run
CI / build (push) Waiting to run
CI / docker (push) Blocked by required conditions
CI / helm (push) Waiting to run
CI / status-check (push) Blocked by required conditions
Reviewed and APPROVED. Closes #3006. |
||
|
|
096cd79fbf |
fix(resource-registry): use full inheritance chain in type compatibility check
CI / lint (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / security (push) Waiting to run
CI / quality (push) Waiting to run
CI / unit_tests (push) Waiting to run
CI / integration_tests (push) Waiting to run
CI / e2e_tests (push) Waiting to run
CI / coverage (push) Blocked by required conditions
CI / benchmark-regression (push) Blocked by required conditions
CI / benchmark-publish (push) Waiting to run
CI / build (push) Waiting to run
CI / docker (push) Blocked by required conditions
CI / helm (push) Waiting to run
CI / status-check (push) Blocked by required conditions
Reviewed and APPROVED. Closes #2929. |
||
|
|
9bf6b2d7b0 |
fix(invariant): add frozen=True to Invariant domain models
CI / lint (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / security (push) Waiting to run
CI / quality (push) Waiting to run
CI / unit_tests (push) Waiting to run
CI / integration_tests (push) Waiting to run
CI / e2e_tests (push) Waiting to run
CI / coverage (push) Blocked by required conditions
CI / benchmark-regression (push) Blocked by required conditions
CI / benchmark-publish (push) Waiting to run
CI / build (push) Waiting to run
CI / docker (push) Blocked by required conditions
CI / helm (push) Waiting to run
CI / status-check (push) Blocked by required conditions
Reviewed and APPROVED. Closes #3116. |
||
|
|
2a48c508d6 |
fix(providers): wire OpenAIChatProvider and AnthropicChatProvider into ProviderRegistry
CI / lint (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / security (push) Waiting to run
CI / quality (push) Waiting to run
CI / unit_tests (push) Waiting to run
CI / integration_tests (push) Waiting to run
CI / e2e_tests (push) Waiting to run
CI / coverage (push) Blocked by required conditions
CI / benchmark-regression (push) Blocked by required conditions
CI / benchmark-publish (push) Waiting to run
CI / build (push) Waiting to run
CI / docker (push) Blocked by required conditions
CI / helm (push) Waiting to run
CI / status-check (push) Blocked by required conditions
Reviewed and APPROVED. Closes #3427. |
||
|
|
e9860e27ec |
fix(cli): wrap format_output() in spec-required JSON/YAML envelope
CI / lint (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / security (push) Waiting to run
CI / quality (push) Waiting to run
CI / unit_tests (push) Waiting to run
CI / integration_tests (push) Waiting to run
CI / e2e_tests (push) Waiting to run
CI / coverage (push) Blocked by required conditions
CI / benchmark-regression (push) Blocked by required conditions
CI / benchmark-publish (push) Waiting to run
CI / build (push) Waiting to run
CI / docker (push) Blocked by required conditions
CI / helm (push) Waiting to run
CI / status-check (push) Blocked by required conditions
Reviewed and APPROVED. Closes #3431. |
||
|
|
3b6e12d8e6 |
fix(cli): add spec-required Session Export, Contents, and Integrity panels to agents session export
CI / lint (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / security (push) Waiting to run
CI / quality (push) Waiting to run
CI / unit_tests (push) Waiting to run
CI / integration_tests (push) Waiting to run
CI / e2e_tests (push) Waiting to run
CI / coverage (push) Blocked by required conditions
CI / benchmark-regression (push) Blocked by required conditions
CI / benchmark-publish (push) Waiting to run
CI / build (push) Waiting to run
CI / docker (push) Blocked by required conditions
CI / helm (push) Waiting to run
CI / status-check (push) Blocked by required conditions
Reviewed and APPROVED. Closes #3424. |
||
|
|
bc0852111b |
fix(cli): add checkpoint label, creation time, and side effects to rollback confirmation prompt
CI / lint (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / security (push) Waiting to run
CI / quality (push) Waiting to run
CI / unit_tests (push) Waiting to run
CI / integration_tests (push) Waiting to run
CI / e2e_tests (push) Waiting to run
CI / coverage (push) Blocked by required conditions
CI / benchmark-regression (push) Blocked by required conditions
CI / benchmark-publish (push) Waiting to run
CI / build (push) Waiting to run
CI / docker (push) Blocked by required conditions
CI / helm (push) Waiting to run
CI / status-check (push) Blocked by required conditions
Reviewed and APPROVED. Closes #3443. |
||
|
|
219470f548 |
fix(tui): synchronize HelpPanelOverlay keybinding display with actual app BINDINGS
CI / lint (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / security (push) Waiting to run
CI / quality (push) Waiting to run
CI / unit_tests (push) Waiting to run
CI / integration_tests (push) Waiting to run
CI / e2e_tests (push) Waiting to run
CI / coverage (push) Blocked by required conditions
CI / benchmark-regression (push) Blocked by required conditions
CI / benchmark-publish (push) Waiting to run
CI / build (push) Waiting to run
CI / docker (push) Blocked by required conditions
CI / helm (push) Waiting to run
CI / status-check (push) Blocked by required conditions
Reviewed and APPROVED. Closes #3444. |
||
|
|
fd1c674e6d |
docs: shell safety API, invariant reconciliation architecture, new feature highlights
CI / lint (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / security (push) Waiting to run
CI / quality (push) Waiting to run
CI / unit_tests (push) Waiting to run
CI / integration_tests (push) Waiting to run
CI / e2e_tests (push) Waiting to run
CI / coverage (push) Blocked by required conditions
CI / benchmark-regression (push) Blocked by required conditions
CI / benchmark-publish (push) Waiting to run
CI / build (push) Waiting to run
CI / docker (push) Blocked by required conditions
CI / helm (push) Waiting to run
CI / status-check (push) Blocked by required conditions
Reviewed and APPROVED. Documentation-only PR. Closes #3377. |
||
|
|
9e74fceddc |
docs: update and extend documentation for v3.8.0 changes
CI / lint (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / security (push) Waiting to run
CI / quality (push) Waiting to run
CI / unit_tests (push) Waiting to run
CI / integration_tests (push) Waiting to run
CI / e2e_tests (push) Waiting to run
CI / coverage (push) Blocked by required conditions
CI / benchmark-regression (push) Blocked by required conditions
CI / benchmark-publish (push) Waiting to run
CI / build (push) Waiting to run
CI / docker (push) Blocked by required conditions
CI / helm (push) Waiting to run
CI / status-check (push) Blocked by required conditions
Reviewed and APPROVED. Documentation-only PR. |
||
|
|
3abeef3a19 |
fix(plan-executor): wire SubplanService and SubplanExecutionService into Execute phase
CI / lint (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / security (push) Waiting to run
CI / quality (push) Waiting to run
CI / unit_tests (push) Waiting to run
CI / integration_tests (push) Waiting to run
CI / e2e_tests (push) Waiting to run
CI / coverage (push) Blocked by required conditions
CI / benchmark-regression (push) Blocked by required conditions
CI / benchmark-publish (push) Waiting to run
CI / build (push) Waiting to run
CI / docker (push) Blocked by required conditions
CI / helm (push) Waiting to run
CI / status-check (push) Blocked by required conditions
Reviewed and APPROVED. Closes #3561. |
||
|
|
a967921320 |
docs(timeline): update schedule adherence Day 95 (2026-04-05)
CI / lint (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / security (push) Waiting to run
CI / quality (push) Waiting to run
CI / unit_tests (push) Waiting to run
CI / integration_tests (push) Waiting to run
CI / e2e_tests (push) Waiting to run
CI / coverage (push) Blocked by required conditions
CI / benchmark-regression (push) Blocked by required conditions
CI / benchmark-publish (push) Waiting to run
CI / build (push) Waiting to run
CI / docker (push) Blocked by required conditions
CI / helm (push) Waiting to run
CI / status-check (push) Blocked by required conditions
Reviewed and APPROVED. Documentation-only PR. Force merge. |
||
|
|
2917aa7ddb |
fix(cli): extend agents diagnostics to check all 9 supported providers
CI / lint (pull_request) Successful in 24s
CI / typecheck (pull_request) Successful in 51s
CI / quality (pull_request) Successful in 46s
CI / security (pull_request) Successful in 1m0s
CI / build (pull_request) Successful in 38s
CI / helm (pull_request) Successful in 24s
CI / unit_tests (pull_request) Successful in 6m47s
CI / e2e_tests (pull_request) Successful in 18m26s
CI / docker (pull_request) Successful in 1m29s
CI / integration_tests (pull_request) Successful in 22m58s
CI / coverage (pull_request) Successful in 10m55s
CI / status-check (pull_request) Successful in 2s
CI / benchmark-publish (pull_request) Has been skipped
CI / benchmark-regression (pull_request) Successful in 56m49s
Extend _check_providers() in system.py to report diagnostic status for all 9 providers supported by ProviderRegistry: OpenAI, Anthropic, Google, Azure, OpenRouter, Gemini, Cohere, Groq, and Together AI. Previously only 4 providers (OpenAI, Anthropic, Google, OpenRouter) were checked, leaving users of Groq, Together AI, Cohere, Azure, and Gemini with no diagnostic feedback about their provider configuration. Changes: - Add Azure (AZURE_OPENAI_API_KEY), Gemini (GEMINI_API_KEY), Cohere (COHERE_API_KEY), Groq (GROQ_API_KEY), and Together AI (TOGETHER_API_KEY) to the provider_checks list - Add Behave feature file with 11 scenarios covering all 9 providers (presence, OK status when configured, WARN with recommendation when not) ISSUES CLOSED: #3422 |
||
|
|
af9db5ea28 |
fix(acms): implement real retrieval logic in all 6 spec-required context strategies
CI / lint (pull_request) Successful in 32s
CI / quality (pull_request) Successful in 32s
CI / typecheck (pull_request) Successful in 46s
CI / build (pull_request) Successful in 31s
CI / helm (pull_request) Successful in 35s
CI / security (pull_request) Successful in 1m19s
CI / unit_tests (pull_request) Failing after 6m45s
CI / docker (pull_request) Has been skipped
CI / e2e_tests (pull_request) Successful in 15m36s
CI / coverage (pull_request) Successful in 10m43s
CI / integration_tests (pull_request) Failing after 23m29s
CI / status-check (pull_request) Failing after 3s
CI / benchmark-publish (pull_request) Has been skipped
CI / benchmark-regression (pull_request) Successful in 56m58s
|
||
|
|
8608584e99 |
fix(plan-executor): wire SubplanService and SubplanExecutionService into Execute phase
CI / lint (pull_request) Successful in 38s
CI / typecheck (pull_request) Successful in 54s
CI / quality (pull_request) Successful in 39s
CI / security (pull_request) Successful in 1m4s
CI / build (pull_request) Successful in 28s
CI / helm (pull_request) Successful in 24s
CI / unit_tests (pull_request) Failing after 6m49s
CI / docker (pull_request) Has been skipped
CI / e2e_tests (pull_request) Successful in 17m47s
CI / coverage (pull_request) Successful in 11m21s
CI / integration_tests (pull_request) Failing after 23m41s
CI / status-check (pull_request) Failing after 1s
CI / benchmark-publish (pull_request) Has been skipped
CI / benchmark-regression (pull_request) Successful in 56m59s
Implemented optional SubplanService and SubplanExecutionService wiring in PlanExecutor.__init__() (None = no-op). - Added _spawn_subplans() helper: - Queries spawn decisions via SubplanService.get_spawn_decisions() and calls SubplanService.spawn() for each decision. - No-ops when there are no spawn decisions. - Added _execute_subplans() helper: - Delegates to SubplanExecutionService.execute_all() to run spawned subplans, handling both sequential and parallel groups as dictated by decisions. - Added _apply_subplan_results_to_plan() helper: - Updates parent plan status tracking when child subplans fail. - Annotates error_details with failed_subplan_ids when appropriate. - Integrated spawning and execution into existing flow: - Called _spawn_subplans() and _execute_subplans() from both _run_execute_with_runtime() and _run_execute_with_stub() after actor completion. - Introduced PlanExecutor properties: - subplan_service and subplan_execution_service for external wiring and testability. - Added tests and scenarios: - Behave feature file with 6 scenarios covering subplan_spawn, subplan_parallel_spawn, no-op, and failure tracking. - Robot Framework integration test suite with 6 end-to-end subplan spawning test cases. Key design decisions - Optional services (None = no-op) to maintain backward compatibility with existing deployments. - Subplan spawning is a no-op when no spawn decisions exist, avoiding unnecessary work. - Parent plan error_details is annotated with failed_subplan_ids when a child subplan fails to aid debugging and traceability. - Both runtime and stub execute paths share the same spawning logic to ensure consistent behavior across execution modes. ISSUES CLOSED: #3561 |
||
|
|
4b4f7d3305 |
docs(timeline): update schedule adherence Day 95 cycle-2 (2026-04-05)
CI / lint (pull_request) Successful in 26s
CI / typecheck (pull_request) Successful in 50s
CI / quality (pull_request) Successful in 27s
CI / security (pull_request) Successful in 1m0s
CI / build (pull_request) Successful in 24s
CI / helm (pull_request) Successful in 24s
CI / unit_tests (pull_request) Failing after 7m10s
CI / docker (pull_request) Has been skipped
CI / coverage (pull_request) Successful in 11m17s
CI / e2e_tests (pull_request) Successful in 17m47s
CI / integration_tests (pull_request) Failing after 23m0s
CI / status-check (pull_request) Failing after 1s
CI / benchmark-publish (pull_request) Has been skipped
CI / benchmark-regression (pull_request) Successful in 57m6s
Cycle-2 refresh with latest Forgejo data (30 min after initial update): - Open bugs: 853 -> 878 (+25 new UAT bugs) - Open PRs: 181 -> 183 (+2) - M3: 61% (228/371) -> 61% (228/376) — total grew +5 - M4: 58% (104/179) -> 57% (104/183) — total grew +4 - M5: 66% (126/191) -> 64% (126/196) — total grew +5 - M6: 56% (180/323) -> 55% (180/325) — total grew +2 - M7: 42% (138/327) -> 41% (138/335) — total grew +8 - M8: 43% (359/830) -> 41% (359/880) — dramatic +50 new issues - M9: 25% (118/464) -> 25% (118/465) — stable - Updated all gantt charts, status summary, risk section, Day 95 entry |
||
|
|
d0254ba43a |
docs(timeline): update schedule adherence Day 95 (2026-04-05)
CI / benchmark-publish (pull_request) Waiting to run
CI / build (pull_request) Waiting to run
CI / lint (pull_request) Waiting to run
CI / typecheck (pull_request) Waiting to run
CI / security (pull_request) Waiting to run
CI / quality (pull_request) Waiting to run
CI / unit_tests (pull_request) Waiting to run
CI / docker (pull_request) Blocked by required conditions
CI / integration_tests (pull_request) Waiting to run
CI / e2e_tests (pull_request) Waiting to run
CI / coverage (pull_request) Blocked by required conditions
CI / benchmark-regression (pull_request) Blocked by required conditions
CI / helm (pull_request) Waiting to run
CI / status-check (pull_request) Blocked by required conditions
Updated Day 95 entry with latest Forgejo data: - Open bugs: 866 -> 853 (13 resolved) - Open PRs: 179 -> 181 (+2 new) - M3: 62% (228/366) -> 61% (228/371) — total grew - M4: 60% (104/174) -> 58% (104/179) — total grew - M5: 67% (126/189) -> 66% (126/191) — total grew - M6: 55% (178/323) -> 56% (180/323) — slight improvement - M7: 41% (131/317) -> 42% (138/327) — slight improvement - M8: 43% (350/822) -> 43% (359/830) — stable - M9: 25% (117/462) -> 25% (118/464) — stable - Updated gantt chart completion percentages and legend - Updated current status summary and risk section |
||
|
|
a0ac30d5de |
docs: update and extend documentation for v3.8.0 changes
CI / lint (pull_request) Successful in 21s
CI / typecheck (pull_request) Successful in 52s
CI / security (pull_request) Successful in 55s
CI / quality (pull_request) Successful in 39s
CI / build (pull_request) Successful in 29s
CI / helm (pull_request) Successful in 23s
CI / unit_tests (pull_request) Failing after 6m49s
CI / docker (pull_request) Has been skipped
CI / e2e_tests (pull_request) Successful in 17m22s
CI / integration_tests (pull_request) Failing after 23m1s
CI / coverage (pull_request) Successful in 11m3s
CI / status-check (pull_request) Failing after 1s
CI / benchmark-publish (pull_request) Has been skipped
CI / benchmark-regression (pull_request) Successful in 56m57s
- docs/reference/plan_cli.md: add note about legacy/v3 plan workflow mixing being disallowed (introduced in v3.8.0, issue #1577) - docs/reference/uko_runtime.md: document v3.8.0 provenance tracking (sourceResource, validFrom, isCurrent on typed triples) and revision chain for temporal queries across indexing runs (issue #891) - docs/reference/decision_correction.md: add CorrectionAttemptRecord section documenting the correction_attempts table, state lifecycle, repository API, and usage examples (issue #920) - docs/modules/uko-provenance.md: new module guide for UKO provenance tracking covering purpose, how provenance is attached, revision chain mechanics, query patterns, persistence format, BDD coverage, and gotchas |
||
|
|
bd5238f705 |
fix(agents): add critical safeguards to issue-implementor PR-first priority logic
CI / lint (push) Successful in 21s
CI / typecheck (push) Successful in 51s
CI / security (push) Successful in 1m0s
CI / quality (push) Successful in 33s
CI / build (push) Successful in 18s
CI / helm (push) Successful in 23s
CI / unit_tests (push) Failing after 7m16s
CI / docker (push) Has been skipped
CI / e2e_tests (push) Successful in 15m56s
CI / integration_tests (push) Failing after 22m53s
CI / coverage (push) Has been cancelled
CI / status-check (push) Has been cancelled
CI / benchmark-publish (push) Has been cancelled
CI / benchmark-regression (push) Has been cancelled
Adds comprehensive bug prevention safeguards to the issue-implementor agent definition to prevent critical failure where PR priority gate logic was not correctly implemented, resulting in 37 PRs being incorrectly skipped. Changes made: - Added explicit warnings never to use `limit` parameter when fetching PRs - Added comprehensive logging during PR analysis with progress indicators - Added mandatory verification that total analyzed PRs equals total fetched - Added PR-first rule enforcement logging showing when issue work blocked/allowed - Added error detection for violations of absolute PR priority rule - Added historical bug documentation section with prevention measures This ensures future instances will: - Always fetch ALL open PRs (never use sampling/limits) - Log verification counts during analysis - Explicitly enforce the absolute PR-first priority rule - Detect and report any violations of the priority rule The bug caused the supervisor to incorrectly conclude "no PRs need work" when 37 out of 50 open PRs actually required automated attention, violating the fundamental PR-FIRST rule that blocks all issue work until every PR has an active worker. ISSUES CLOSED: #3377 |
||
|
|
a0df5a4cd0 |
fix(cli): wrap format_output() in spec-required JSON/YAML envelope across all CLI commands
CI / lint (pull_request) Successful in 27s
CI / typecheck (pull_request) Successful in 57s
CI / security (pull_request) Successful in 1m2s
CI / quality (pull_request) Successful in 34s
CI / build (pull_request) Successful in 23s
CI / helm (pull_request) Successful in 26s
CI / unit_tests (pull_request) Failing after 7m7s
CI / docker (pull_request) Has been skipped
CI / e2e_tests (pull_request) Failing after 11m8s
CI / integration_tests (pull_request) Failing after 22m44s
CI / coverage (pull_request) Successful in 10m50s
CI / status-check (pull_request) Failing after 2s
CI / benchmark-publish (pull_request) Has been skipped
CI / benchmark-regression (pull_request) Successful in 57m6s
Implements the spec-required JSON/YAML output envelope for all CLI commands
that use format_output(). The envelope structure is:
{
"command": "<command that was run>",
"status": "ok" | "warn" | "error",
"exit_code": 0,
"data": { ... command-specific payload ... },
"timing": { "duration_ms": 123 },
"messages": [{ "level": "ok", "text": "..." }]
}
Changes:
- Add _build_envelope() helper to construct the spec-required envelope
- Add optional command, status, exit_code, messages parameters to format_output()
- Wrap json/yaml output in the envelope; plain/table/rich/color unchanged
- Add timing measurement (duration_ms) to all json/yaml outputs
- Add new BDD feature file (cli_json_envelope.feature) with 14 scenarios
testing envelope field presence, values, and data payload
- Update 14 existing step files to unwrap the envelope when checking
specific data keys (backward-compatible via _unwrap_envelope() helper)
Closes #3431
|
||
|
|
631e847497 |
fix(cli): add checkpoint label, creation time, and side effects to rollback confirmation prompt
CI / lint (pull_request) Successful in 25s
CI / typecheck (pull_request) Successful in 46s
CI / quality (pull_request) Successful in 35s
CI / security (pull_request) Successful in 1m7s
CI / build (pull_request) Successful in 28s
CI / helm (pull_request) Successful in 25s
CI / unit_tests (pull_request) Successful in 7m6s
CI / e2e_tests (pull_request) Successful in 18m1s
CI / integration_tests (pull_request) Successful in 22m28s
CI / docker (pull_request) Successful in 1m25s
CI / coverage (pull_request) Successful in 10m44s
CI / status-check (pull_request) Successful in 3s
CI / benchmark-publish (pull_request) Has been skipped
CI / benchmark-regression (pull_request) Successful in 56m53s
Resolves issue #3443: the `agents plan rollback` confirmation prompt was missing the checkpoint's descriptive label, relative creation time, and side-effects count (decisions invalidated / child plans cancelled). Changes: - Added `_format_relative_time(dt)` helper to produce human-readable relative timestamps (e.g. "42 minutes ago", "2 hours ago"). - In `rollback_plan`, moved `get_container()` / `checkpoint_service()` before the confirmation block so checkpoint metadata is available. - When `--yes` is not passed, `svc.get_checkpoint()` is called to fetch the checkpoint label (`metadata.reason`) and creation time. - Decisions created after the checkpoint are counted via `decision_service.list_decisions()`; `subplan_spawn` / `subplan_parallel_spawn` decisions are counted as child plans. - Side-effects line is printed before the prompt when counts > 0. - Falls back to the original simple prompt if checkpoint metadata cannot be fetched (e.g. checkpoint not found). - Updated existing rollback mock helpers to wire `get_checkpoint` and `decision_service` properly. - Added 3 new Behave scenarios covering label display, side-effects display, and fallback behaviour. Closes #3443 |
||
|
|
a0275f2401 |
fix(cli): build spec-required execute output dict with sandbox, worker, progress fields in plan execute
CI / lint (pull_request) Successful in 21s
CI / typecheck (pull_request) Successful in 58s
CI / security (pull_request) Successful in 1m0s
CI / quality (pull_request) Successful in 35s
CI / build (pull_request) Successful in 24s
CI / helm (pull_request) Successful in 24s
CI / unit_tests (pull_request) Successful in 6m54s
CI / e2e_tests (pull_request) Successful in 19m6s
CI / integration_tests (pull_request) Successful in 22m57s
CI / docker (pull_request) Successful in 1m24s
CI / coverage (pull_request) Successful in 10m53s
CI / status-check (pull_request) Successful in 2s
CI / benchmark-publish (pull_request) Has been skipped
CI / benchmark-regression (pull_request) Successful in 57m5s
Implements the spec-required JSON envelope for `agents plan execute --format json`.
Previously, the command returned the raw plan domain model dict via
`_plan_spec_dict()`, which was missing the sandbox, worker, started,
attempt, strategy_summary, and progress fields required by the spec.
Changes:
- Add `_execute_output_dict(plan, started_at, duration_ms)` function that
builds the spec-required execute output envelope with:
- Top-level envelope: command, status, exit_code, data, timing, messages
- data.sandbox: strategy, path, branch, status (derived from sandbox_refs)
- data.worker: execution_actor or 'local/executor' fallback
- data.started: HH:MM:SS from execute_started_at timestamp
- data.attempt: from plan.identity.attempt
- data.strategy_summary: decisions, invariants, planned_child_plans,
estimated_files, risk (from estimation_result when available)
- data.progress: 4-step list with label/status derived from plan state
- Update `execute_plan()` to track wall-clock start time and use
`_execute_output_dict()` instead of `_plan_spec_dict()` for non-rich output
- Add BDD tests verifying the spec-required envelope structure, sandbox
strategy field, and progress list label/status fields
ISSUES CLOSED: #3435
|
||
|
|
e4493e8978 |
fix(cli): correct session show rich output Session Summary panel field labels and fields
CI / lint (pull_request) Successful in 21s
CI / typecheck (pull_request) Successful in 52s
CI / quality (pull_request) Successful in 35s
CI / security (pull_request) Successful in 1m8s
CI / build (pull_request) Successful in 29s
CI / helm (pull_request) Successful in 22s
CI / unit_tests (pull_request) Failing after 6m49s
CI / docker (pull_request) Has been skipped
CI / e2e_tests (pull_request) Successful in 17m4s
CI / integration_tests (pull_request) Failing after 22m47s
CI / coverage (pull_request) Successful in 10m57s
CI / status-check (pull_request) Failing after 1s
CI / benchmark-publish (pull_request) Has been skipped
CI / benchmark-regression (pull_request) Successful in 57m8s
Fixes three deviations from docs/specification.md in the agents session show
rich output Session Summary panel:
1. Renamed 'Session ID:' label to 'ID:' to match spec exactly.
2. Removed 'Namespace:' field which is not part of the spec.
3. Added 'Automation:' field sourced from session.metadata['automation_profile'],
defaulting to '(none)' when not set.
4. Field order now matches spec: ID → Actor → Messages → Created → Updated → Automation.
Updated features/session_cli.feature to assert the corrected field labels are
present ('ID:', 'Actor:', 'Messages:', 'Created:', 'Updated:', 'Automation:')
and that the removed fields ('Session ID:', 'Namespace:') are absent.
Added 'the session CLI output should not contain' step definition to
features/steps/session_cli_steps.py to support the new negative assertions.
ISSUES CLOSED: #3040
|
||
|
|
01472648c9 |
docs(timeline): update schedule adherence Day 95 (2026-04-05)
CI / unit_tests (push) Waiting to run
CI / lint (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / security (push) Waiting to run
CI / quality (push) Waiting to run
CI / integration_tests (push) Waiting to run
CI / e2e_tests (push) Waiting to run
CI / coverage (push) Blocked by required conditions
CI / benchmark-regression (push) Blocked by required conditions
CI / benchmark-publish (push) Waiting to run
CI / build (push) Waiting to run
CI / docker (push) Blocked by required conditions
CI / helm (push) Waiting to run
CI / status-check (push) Blocked by required conditions
|
||
|
|
d72993d908 |
docs: add shell safety API, invariant reconciliation architecture, and new feature highlights
CI / lint (pull_request) Successful in 29s
CI / typecheck (pull_request) Successful in 50s
CI / security (pull_request) Successful in 1m3s
CI / quality (pull_request) Successful in 33s
CI / build (pull_request) Successful in 23s
CI / helm (pull_request) Successful in 24s
CI / unit_tests (pull_request) Failing after 7m12s
CI / docker (pull_request) Has been skipped
CI / e2e_tests (pull_request) Successful in 17m51s
CI / integration_tests (pull_request) Failing after 23m31s
CI / coverage (pull_request) Successful in 10m44s
CI / status-check (pull_request) Failing after 1s
CI / benchmark-publish (pull_request) Has been skipped
CI / benchmark-regression (pull_request) Successful in 56m49s
- docs/api/tui.md: Document ShellDangerLevel, DangerousPattern, DEFAULT_PATTERNS, DangerousPatternDetector, ShellSafetyService, and SafetyCheckResult with full API reference, parameter tables, and usage examples - docs/architecture.md: Add Invariant Reconciliation section covering the builtin/invariant-reconciliation actor, four-scope algorithm, failure behaviour, and DI registration - README.md: Add Invariant Reconciliation, TUI shell danger detection, and UKO provenance tracking to the Highlights section ISSUES CLOSED: #3377 |
||
|
|
f1ab5d90dc |
docs: update documentation for v3.8.0 unreleased features
CI / unit_tests (push) Waiting to run
CI / benchmark-publish (push) Waiting to run
CI / build (push) Waiting to run
CI / docker (push) Blocked by required conditions
CI / helm (push) Waiting to run
CI / status-check (push) Blocked by required conditions
CI / lint (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / security (push) Waiting to run
CI / quality (push) Waiting to run
CI / integration_tests (push) Waiting to run
CI / e2e_tests (push) Waiting to run
CI / coverage (push) Blocked by required conditions
CI / benchmark-regression (push) Blocked by required conditions
- Promote [Unreleased] CHANGELOG entries to [3.8.0] (2026-04-05) - Add Shell Danger Detection section to docs/api/tui.md covering ShellDangerLevel, DangerousPattern, ShellSafetyService, and SafetyCheckResult with full API reference and usage examples - Add InvariantService section to docs/api/core.md documenting the new DI-registered singleton, its methods, and emitted events - Update docs/architecture.md Plan Lifecycle section to document invariant reconciliation as a phase transition gate - Update README.md Highlights with shell danger detection, inline permission questions, invariant reconciliation, UKO provenance tracking, and JSON-RPC 2.0 A2A wire format - Create docs/modules/shell-safety.md with full module guide covering purpose, key classes, built-in patterns, custom pattern registration, TUI integration, and testing guidance ISSUES CLOSED: #1003 #997 #1391 #1004 #891 #1501 #1577 #1941 #2334 |
||
|
|
88cfc33ab2 |
Fix critical coordination bugs in implementation pool supervisor
CI / status-check (push) Blocked by required conditions
CI / docker (push) Blocked by required conditions
CI / lint (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / security (push) Waiting to run
CI / quality (push) Waiting to run
CI / unit_tests (push) Waiting to run
CI / integration_tests (push) Waiting to run
CI / helm (push) Waiting to run
CI / e2e_tests (push) Waiting to run
CI / coverage (push) Blocked by required conditions
CI / benchmark-regression (push) Blocked by required conditions
CI / benchmark-publish (push) Waiting to run
CI / build (push) Waiting to run
- Fix session adoption logic with correct title patterns for both worker-issue-impl and worker-pr-fix sessions - Add PR worker adoption to coordinate orphaned PR fix workers - Enhance worker verification with comprehensive status checking, retry logic, and proper error handling - Add defensive programming with worker count enforcement and state validation to prevent coordination drift - Improve JSON parsing with safe error handling throughout - Add periodic maintenance cycle (every 5 iterations) for worker state validation and limit enforcement These fixes resolve the core issue where the implementation pool supervisor was not properly coordinating 40+ existing workers, causing worker count to exceed the designed limit of 32. |
||
|
|
1bd0c7999d
|
fix(agents): Fix worker management, PR priority, and bot approval requirements
CI / unit_tests (push) Waiting to run
CI / lint (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / security (push) Waiting to run
CI / quality (push) Waiting to run
CI / integration_tests (push) Waiting to run
CI / e2e_tests (push) Waiting to run
CI / coverage (push) Blocked by required conditions
CI / benchmark-regression (push) Blocked by required conditions
CI / benchmark-publish (push) Waiting to run
CI / build (push) Waiting to run
CI / docker (push) Blocked by required conditions
CI / helm (push) Waiting to run
CI / status-check (push) Blocked by required conditions
Fixed three critical issues in the CleverAgents autonomous system: 1. Worker Management: Enhanced issue-implementor health signaling to report detailed worker listings with session IDs and status. Added worker verification after dispatch to ensure workers actually start. Improved idle detection with aggressive work discovery when capacity is available. 2. PR Priority: Fixed PR work detection to include orphaned PRs from completed issues. Added absolute PR priority enforcement that blocks all issue work when any PR needs attention. Fixed worker dispatch prompts to clearly indicate operation mode (pr-fix vs issue-impl). 3. Bot Approval Requirements: Implemented single approval merging for bot PRs. Bot PRs (containing 'Automated by CleverAgents Bot') now merge with 1 approval while human PRs still require 2 per CONTRIBUTING.md. Updated branch protection to required_approvals: 1 with logic in agents to enforce the distinction. Added detection for approved-but-stuck PRs. These changes ensure the system operates at maximum efficiency with proper parallelism while maintaining quality gates through CI and code review. |
||
|
|
f510c7b5a3 |
fix(invariant): add frozen=True to Invariant model config and redesign soft-delete pattern
CI / lint (pull_request) Successful in 28s
CI / typecheck (pull_request) Successful in 57s
CI / security (pull_request) Successful in 54s
CI / quality (pull_request) Successful in 33s
CI / build (pull_request) Successful in 34s
CI / helm (pull_request) Successful in 24s
CI / unit_tests (pull_request) Failing after 7m11s
CI / docker (pull_request) Has been skipped
CI / e2e_tests (pull_request) Successful in 17m51s
CI / integration_tests (pull_request) Failing after 23m12s
CI / coverage (pull_request) Successful in 10m51s
CI / status-check (pull_request) Failing after 2s
CI / benchmark-publish (pull_request) Has been skipped
CI / benchmark-regression (pull_request) Successful in 56m49s
Replace validate_assignment=True with frozen=True on Invariant,
InvariantViolation, InvariantEnforcementRecord, and InvariantSet models
to enforce the value-object immutability contract required by the spec.
Redesign InvariantService.remove_invariant() to use model_copy(update=
{'active': False}) instead of direct field mutation, since frozen models
raise ValidationError on assignment.
Fix invariant_reconciliation_actor_steps.py step that mutated
inv.non_overridable = True to construct the Invariant directly with
non_overridable=True at creation time.
Add BDD scenarios covering:
- Immutability contract: mutation raises error on all three models
- Hashability: frozen Pydantic v2 models are hashable
- Soft-delete copy-and-replace: removed invariant is a new object
All 266 scenarios pass. Lint and typecheck pass.
ISSUES CLOSED: #3116
|
||
|
|
97eebeb62c |
fix(providers): remove type: ignore suppressions from registry.py and resolve underlying type errors (#3459)
CI / status-check (push) Blocked by required conditions
CI / lint (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / security (push) Waiting to run
CI / quality (push) Waiting to run
CI / unit_tests (push) Waiting to run
CI / integration_tests (push) Waiting to run
CI / e2e_tests (push) Waiting to run
CI / helm (push) Waiting to run
CI / coverage (push) Blocked by required conditions
CI / benchmark-regression (push) Blocked by required conditions
CI / benchmark-publish (push) Waiting to run
CI / build (push) Waiting to run
CI / docker (push) Blocked by required conditions
Co-authored-by: Jeffrey Phillips Freeman <the@jeffreyfreeman.me> Co-committed-by: Jeffrey Phillips Freeman <the@jeffreyfreeman.me> |
||
|
|
4d32281351 |
fix(session): correct field names and data types in Session.as_cli_dict() for spec compliance
CI / status-check (push) Blocked by required conditions
CI / lint (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / docker (push) Blocked by required conditions
CI / security (push) Waiting to run
CI / quality (push) Waiting to run
CI / unit_tests (push) Waiting to run
CI / integration_tests (push) Waiting to run
CI / helm (push) Waiting to run
CI / e2e_tests (push) Waiting to run
CI / coverage (push) Blocked by required conditions
CI / benchmark-regression (push) Blocked by required conditions
CI / benchmark-publish (push) Waiting to run
CI / build (push) Waiting to run
Fixes issue #3440: agents session show JSON output uses wrong field names and wrong data types. - Add LinkedPlan value object with plan_id, phase, state fields - Add automation field to Session domain model - Rewrite as_cli_dict() with spec-compliant field names in session_summary wrapper - Use 'text' key in recent_messages items - Replace linked_plan_ids with linked_plans objects - Format estimated_cost as string (e.g. '$0.0184') - Update session show rich output with spec-compliant labels - Update tests to assert new field names ISSUES CLOSED: #3440 Co-authored-by: Jeffrey Phillips Freeman <the@jeffreyfreeman.me> Co-committed-by: Jeffrey Phillips Freeman <the@jeffreyfreeman.me> |
||
|
|
a804506c89 |
fix(cli): compute real impact counts in agents actor remove command
CI / benchmark-publish (push) Waiting to run
CI / build (push) Waiting to run
CI / unit_tests (push) Waiting to run
CI / lint (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / security (push) Waiting to run
CI / quality (push) Waiting to run
CI / integration_tests (push) Waiting to run
CI / e2e_tests (push) Waiting to run
CI / coverage (push) Blocked by required conditions
CI / benchmark-regression (push) Blocked by required conditions
CI / docker (push) Blocked by required conditions
CI / helm (push) Waiting to run
CI / status-check (push) Blocked by required conditions
Replaces hardcoded 0 values in the Impact panel of `agents actor remove` with real DB-backed counts for sessions, active plans, and actions referencing the removed actor. ISSUES CLOSED: #3420 Co-authored-by: Jeffrey Phillips Freeman <the@jeffreyfreeman.me> Co-committed-by: Jeffrey Phillips Freeman <the@jeffreyfreeman.me> |
||
|
|
8891160bd8 |
fix(cli): add Name and Updated columns to agents plan list table output
CI / lint (pull_request) Successful in 28s
CI / typecheck (pull_request) Successful in 55s
CI / quality (pull_request) Successful in 35s
CI / security (pull_request) Successful in 53s
CI / build (pull_request) Successful in 23s
CI / helm (pull_request) Successful in 22s
CI / unit_tests (pull_request) Failing after 6m42s
CI / docker (pull_request) Has been skipped
CI / e2e_tests (pull_request) Successful in 18m37s
CI / integration_tests (pull_request) Failing after 23m29s
CI / coverage (pull_request) Successful in 10m58s
CI / status-check (pull_request) Failing after 1s
CI / benchmark-publish (pull_request) Has been skipped
CI / benchmark-regression (pull_request) Successful in 57m9s
- Implemented Updated column in the plan list rich output by extending
lifecycle_list_plans() in src/cleveragents/cli/commands/plan.py.
The column is inserted after the existing Project column and before
Elapsed to maintain logical grouping.
- Added updated_str using plan.timestamps.updated_at.strftime('%Y-%m-%d %H:%M')
for a human-friendly timestamp in local time.
- Added three Behave scenarios in features/plan_cli_spec_alignment.feature
to assert presence of Name, Updated, and Invariants columns.
- Added 'When I run plan list with no filters' step definition.
- Added list_columns() function to robot/helper_plan_cli_spec.py verifying
all three columns with partial header checks due to terminal truncation.
- Added 'Plan List Rich Output Includes Required Columns' test case to
robot/plan_cli_spec.robot.
ISSUES CLOSED: #2611
|
||
|
|
2637b272dd |
feat(cli): add devcontainer lifecycle state column to agents resource list output
CI / lint (pull_request) Successful in 39s
CI / typecheck (pull_request) Successful in 54s
CI / security (pull_request) Successful in 54s
CI / quality (pull_request) Successful in 34s
CI / build (pull_request) Successful in 18s
CI / helm (pull_request) Successful in 24s
CI / unit_tests (pull_request) Successful in 6m48s
CI / e2e_tests (pull_request) Successful in 19m50s
CI / integration_tests (pull_request) Failing after 22m57s
CI / docker (pull_request) Successful in 1m22s
CI / coverage (pull_request) Successful in 11m8s
CI / status-check (pull_request) Failing after 1s
CI / benchmark-publish (pull_request) Has been skipped
CI / benchmark-regression (pull_request) Successful in 56m59s
Add a 'State' column to the 'agents resource list' rich table output that shows the current lifecycle state for devcontainer-instance and container-instance resources. For newly-discovered devcontainers the state displays as 'detected (not built)'; running, stopped, and failed states are also shown. Changes: - Add _get_lifecycle_state_str() helper that queries get_lifecycle_tracker() for container resource types and returns a human-readable state string - Add 'State' column to the rich table in resource_list() - Show warning banner '⚠ Devcontainer detected at ...' for resources in the detected state, matching the spec output for agents resource add - Update _resource_dict() to include 'lifecycle_state' field in JSON/YAML output (null for non-container resources) - Add BDD feature file and step definitions covering all lifecycle states, warning banner behaviour, and JSON output ISSUES CLOSED: #2596 |
||
|
|
66ac33b185 |
fix(tui): synchronize HelpPanelOverlay keybinding display with actual app BINDINGS
CI / lint (pull_request) Successful in 27s
CI / quality (pull_request) Successful in 33s
CI / typecheck (pull_request) Successful in 50s
CI / security (pull_request) Successful in 1m28s
CI / build (pull_request) Successful in 23s
CI / helm (pull_request) Successful in 23s
CI / unit_tests (pull_request) Successful in 6m47s
CI / e2e_tests (pull_request) Successful in 18m21s
CI / integration_tests (pull_request) Successful in 23m14s
CI / docker (pull_request) Successful in 1m24s
CI / coverage (pull_request) Successful in 11m22s
CI / status-check (pull_request) Successful in 1s
CI / benchmark-publish (pull_request) Has been skipped
CI / benchmark-regression (pull_request) Successful in 56m50s
- Replace ctrl+tab with ctrl+t for preset cycling in _CONTEXT_ITEMS Main Screen context, matching the actual BINDINGS registered in app.py - Remove the tab/Cycle to next persona entry from Main Screen context since no such binding exists in app.BINDINGS (tracked separately in #3338) - Add Behave BDD scenarios asserting that help panel keybindings match the actual registered BINDINGS: ctrl+t present, ctrl+tab absent, no stale tab entry for persona cycling - Add step definition for 'should not contain' assertion to support the new negative-assertion scenarios Resolves the double-inconsistency where users following the help panel instructions (ctrl+tab) would press the wrong key and get no response. ISSUES CLOSED: #3444 |
||
|
|
a8f26cb691 |
docs(lsp): document LspLifecycleManager restart_server lock pattern fix (#3165)
CI / lint (pull_request) Successful in 21s
CI / typecheck (pull_request) Successful in 47s
CI / security (pull_request) Successful in 1m0s
CI / quality (pull_request) Successful in 32s
CI / build (pull_request) Successful in 23s
CI / helm (pull_request) Successful in 23s
CI / unit_tests (pull_request) Successful in 7m2s
CI / e2e_tests (pull_request) Successful in 18m12s
CI / integration_tests (pull_request) Failing after 22m57s
CI / docker (pull_request) Successful in 1m21s
CI / coverage (pull_request) Successful in 10m55s
CI / status-check (pull_request) Failing after 1s
CI / benchmark-publish (pull_request) Has been skipped
CI / benchmark-regression (pull_request) Successful in 56m47s
|
||
|
|
34f773c90a |
fix(cli): add spec-required Session Export, Contents, and Integrity panels to agents session export
CI / lint (pull_request) Successful in 26s
CI / typecheck (pull_request) Successful in 51s
CI / quality (pull_request) Successful in 33s
CI / security (pull_request) Successful in 1m1s
CI / build (pull_request) Successful in 28s
CI / helm (pull_request) Successful in 24s
CI / unit_tests (pull_request) Failing after 6m52s
CI / docker (pull_request) Has been skipped
CI / e2e_tests (pull_request) Successful in 16m23s
CI / integration_tests (pull_request) Failing after 23m3s
CI / coverage (pull_request) Successful in 10m45s
CI / status-check (pull_request) Failing after 1s
CI / benchmark-publish (pull_request) Has been skipped
CI / benchmark-regression (pull_request) Successful in 56m43s
Implements the three Rich panels required by specification.md §"agents session export"
(lines 1987–2115) that were missing from the export_session() command.
Changes:
- Add _render_export_panels() helper that renders three spec-required panels:
* "Session Export" panel: session ID, output path, message count, file size, format
* "Contents" panel: messages, plan references, metadata keys, actor config, schema version
* "Integrity" panel: checksum (sha256:xxxx...xxxx), encrypted flag
- Fix success message from "Session exported to {output}" to "Export completed"
- Fix stdout export path to also render Rich panels (previously only printed raw JSON)
- Keep --format and --force options (useful extensions, do not break spec compliance)
- Update Behave scenarios in features/session_cli.feature to verify panel rendering
- Update Robot Framework helper and test file with new export panel assertions
ISSUES CLOSED: #3424
|
||
|
|
a05f4c69a7 |
fix(resources): support multiple named devcontainer configurations in auto-discovery
CI / lint (pull_request) Failing after 19s
CI / typecheck (pull_request) Successful in 46s
CI / quality (pull_request) Successful in 34s
CI / security (pull_request) Successful in 1m0s
CI / coverage (pull_request) Has been skipped
CI / build (pull_request) Successful in 17s
CI / helm (pull_request) Successful in 22s
CI / unit_tests (pull_request) Successful in 7m9s
CI / docker (pull_request) Has been skipped
CI / e2e_tests (pull_request) Successful in 17m9s
CI / integration_tests (pull_request) Failing after 23m2s
CI / status-check (pull_request) Failing after 2s
CI / benchmark-publish (pull_request) Has been skipped
CI / benchmark-regression (pull_request) Has been skipped
Extend DevcontainerDiscoveryResult and discover_devcontainers() to scan .devcontainer/<name>/devcontainer.json patterns (one subdirectory level) in addition to the existing fixed paths. Each named configuration produces a distinct result with config_name set to the subdirectory name (e.g. 'api', 'frontend'). Root-level configs retain config_name=None. - Replace _SCAN_PATHS with _FIXED_SCAN_PATHS for root-level configs - Add glob-based scan of .devcontainer/<name>/devcontainer.json - Add config_name: str | None attribute to DevcontainerDiscoveryResult - Validate config_name (must be non-empty str or None) - Add 8 new Behave scenarios covering named, multiple, mixed, empty cases - Add 4 new Robot Framework integration tests for named config discovery - All existing tests continue to pass (no regression) ISSUES CLOSED: #2615 |
||
|
|
b82a9b6962 |
fix(cli): add spec-required Validation and Merge panels and correct title/message in agents session import (#3460)
CI / lint (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / security (push) Waiting to run
CI / quality (push) Waiting to run
CI / unit_tests (push) Waiting to run
CI / integration_tests (push) Waiting to run
CI / e2e_tests (push) Waiting to run
CI / coverage (push) Blocked by required conditions
CI / benchmark-regression (push) Blocked by required conditions
CI / benchmark-publish (push) Waiting to run
CI / build (push) Waiting to run
CI / docker (push) Blocked by required conditions
CI / helm (push) Waiting to run
CI / status-check (push) Blocked by required conditions
Co-authored-by: Jeffrey Phillips Freeman <the@jeffreyfreeman.me> Co-committed-by: Jeffrey Phillips Freeman <the@jeffreyfreeman.me> |
||
|
|
f44060e857 |
fix(providers): wire OpenAIChatProvider and AnthropicChatProvider into ProviderRegistry
CI / lint (pull_request) Successful in 20s
CI / typecheck (pull_request) Successful in 51s
CI / quality (pull_request) Successful in 34s
CI / security (pull_request) Successful in 1m4s
CI / build (pull_request) Successful in 18s
CI / helm (pull_request) Successful in 22s
CI / unit_tests (pull_request) Successful in 6m54s
CI / e2e_tests (pull_request) Successful in 17m37s
CI / integration_tests (pull_request) Successful in 23m11s
CI / docker (pull_request) Successful in 1m32s
CI / coverage (pull_request) Successful in 10m54s
CI / status-check (pull_request) Successful in 1s
CI / benchmark-publish (pull_request) Has been skipped
CI / benchmark-regression (pull_request) Successful in 56m53s
Previously, ProviderRegistry.create_ai_provider() dispatched to dedicated provider classes only for Google and OpenRouter. For OpenAI and Anthropic, execution fell through to the generic LangChainChatProvider factory, leaving OpenAIChatProvider and AnthropicChatProvider as dead code in production. This commit: - Adds ProviderType.OPENAI dispatch branch in create_ai_provider() to instantiate OpenAIChatProvider with the configured API key and model - Adds ProviderType.ANTHROPIC dispatch branch in create_ai_provider() to instantiate AnthropicChatProvider with the configured API key and model - Both branches raise ValueError with the missing env var name when the API key is not configured, consistent with Google and OpenRouter branches - Updates src/cleveragents/providers/llm/__init__.py to export all four dedicated provider classes (OpenAIChatProvider, AnthropicChatProvider, GoogleChatProvider, OpenRouterChatProvider) - Updates provider_registry_coverage.feature to assert that create_ai_provider returns OpenAIChatProvider for openai and AnthropicChatProvider for anthropic - Adds new scenarios for Anthropic dispatch and missing-key error paths for both OpenAI and Anthropic - Updates the 'AI provider exposes working llm factory' scenario to use groq (which still goes through the generic LangChainChatProvider path) since OpenAI now uses the dedicated class - Adds step definitions for OpenAIChatProvider and AnthropicChatProvider isinstance assertions Closes #3427 |
||
|
|
21ee34a407 |
Merge pull request 'fix(cli): render spec-required panels in agents plan rollback rich output' (#3279) from fix/plan-rollback-rich-output-panels into master
CI / lint (push) Waiting to run
CI / benchmark-publish (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / security (push) Waiting to run
CI / quality (push) Waiting to run
CI / unit_tests (push) Waiting to run
CI / build (push) Waiting to run
CI / integration_tests (push) Waiting to run
CI / e2e_tests (push) Waiting to run
CI / coverage (push) Blocked by required conditions
CI / benchmark-regression (push) Blocked by required conditions
CI / docker (push) Blocked by required conditions
CI / helm (push) Waiting to run
CI / status-check (push) Blocked by required conditions
|
||
|
|
3224f2136e |
fix(resource-registry): use full inheritance chain in contextual binding type compatibility
CI / lint (pull_request) Successful in 27s
CI / typecheck (pull_request) Successful in 52s
CI / quality (pull_request) Successful in 32s
CI / security (pull_request) Successful in 59s
CI / build (pull_request) Successful in 29s
CI / helm (pull_request) Successful in 23s
CI / unit_tests (pull_request) Successful in 6m58s
CI / e2e_tests (pull_request) Successful in 19m39s
CI / integration_tests (pull_request) Successful in 22m49s
CI / coverage (pull_request) Successful in 10m43s
CI / docker (pull_request) Successful in 1m23s
CI / status-check (pull_request) Successful in 1s
CI / benchmark-publish (pull_request) Has been skipped
CI / benchmark-regression (pull_request) Successful in 56m57s
Replace the flat `parent_types` membership check in `BindingResolutionService._is_type_compatible` with a call to `self._registry.is_subtype_of()`, which uses `resolve_inheritance_chain()` from `cleveragents.resource.inheritance` to walk the full ADR-042 inheritance chain. Previously, a tool requiring type `container-instance` would fail to bind a `devcontainer-instance` resource because the check only looked at the immediate `parent_types` list rather than traversing the full chain. The fix ensures multi-level inheritance (e.g. `local/special-dev-container` → `devcontainer-instance` → `container-instance`) is correctly resolved for contextual, static, and parameter bindings. Changes: - `binding_resolution_service.py`: `_is_type_compatible` now delegates to `registry.is_subtype_of()`; removed unused `ResourceTypeSpec` import. - `consolidated_binding_resolution.feature`: 4 new scenarios covering 2-level chain, 3-level chain, unrelated-type rejection, and static binding via inheritance chain. - `binding_resolution_steps.py`: mock registry exposes `is_subtype_of()` backed by the real inheritance engine; new step definitions for inheritance chain setup. ISSUES CLOSED: #2929 |