Compare commits

..

7 Commits

Author SHA1 Message Date
Repository Isolator 15216b322f docs: add error codes and resolution guide
- Comprehensive error code reference organized by category (400-range, 500-range)
- Detailed explanations for each error code with common causes
- Step-by-step resolution procedures for every error type
- Prevention strategies and best practices
- Troubleshooting guide with common error patterns
- Developer guidelines for error handling
- Links to related documentation and resources
2026-04-19 10:30:00 +00:00
HAL9000 9a5ccc6b01 Merge pull request 'Update timeline: milestone status for 2026-04-19' (#10684) from timeline-update-2026-04-19-final into master
CI / benchmark-regression (push) Failing after 0s
CI / benchmark-publish (push) Failing after 0s
CI / helm (push) Successful in 40s
CI / push-validation (push) Successful in 22s
CI / build (push) Successful in 3m57s
CI / lint (push) Successful in 4m13s
CI / quality (push) Successful in 4m34s
CI / typecheck (push) Successful in 4m56s
CI / security (push) Successful in 5m4s
CI / e2e_tests (push) Successful in 8m2s
CI / integration_tests (push) Successful in 8m8s
CI / unit_tests (push) Successful in 9m27s
CI / coverage (push) Successful in 14m53s
CI / docker (push) Successful in 1m49s
CI / status-check (push) Successful in 3s
2026-04-19 06:18:05 +00:00
HAL9000 f167098541 Merge branch 'master' into timeline-update-2026-04-19-final
CI / helm (pull_request) Successful in 42s
CI / lint (pull_request) Successful in 3m58s
CI / build (pull_request) Successful in 4m1s
CI / typecheck (pull_request) Successful in 4m40s
CI / quality (pull_request) Successful in 4m42s
CI / security (pull_request) Successful in 5m22s
CI / push-validation (pull_request) Successful in 23s
CI / integration_tests (pull_request) Successful in 8m7s
CI / e2e_tests (pull_request) Successful in 8m31s
CI / unit_tests (pull_request) Successful in 9m44s
CI / coverage (pull_request) Successful in 14m52s
CI / docker (pull_request) Successful in 2m3s
CI / status-check (pull_request) Successful in 3s
2026-04-19 05:27:54 +00:00
HAL9000 072f470212 fix(agents): make bug-hunt-pool-supervisor tracking non-blocking to prevent initialization hangs
CI / helm (pull_request) Successful in 40s
CI / push-validation (pull_request) Successful in 23s
CI / lint (pull_request) Successful in 4m0s
CI / typecheck (pull_request) Successful in 4m23s
CI / build (pull_request) Successful in 3m36s
CI / quality (pull_request) Successful in 4m15s
CI / security (pull_request) Successful in 4m37s
CI / e2e_tests (pull_request) Successful in 7m43s
CI / integration_tests (pull_request) Successful in 8m44s
CI / unit_tests (pull_request) Successful in 9m18s
CI / docker (pull_request) Successful in 1m37s
CI / coverage (pull_request) Successful in 14m53s
CI / benchmark-regression (push) Failing after 0s
CI / benchmark-publish (push) Failing after 0s
CI / status-check (pull_request) Successful in 5s
CI / helm (push) Successful in 32s
CI / build (push) Successful in 3m48s
CI / lint (push) Successful in 3m55s
CI / quality (push) Successful in 4m23s
CI / typecheck (push) Successful in 4m48s
CI / security (push) Successful in 4m51s
CI / push-validation (push) Successful in 23s
CI / e2e_tests (push) Successful in 7m30s
CI / integration_tests (push) Successful in 7m44s
CI / unit_tests (push) Successful in 9m11s
CI / docker (push) Successful in 1m38s
CI / coverage (push) Successful in 14m50s
CI / status-check (push) Successful in 13s
The automation-tracking-manager call in step 5 was blocking the main loop
indefinitely, causing 3+ consecutive initialization failures. This commit
documents the fix in CHANGELOG.md with the proper issue reference.

ISSUES CLOSED: #8835
2026-04-19 04:02:17 +00:00
HAL9000 1f95ea0c2a Update timeline: milestone status for 2026-04-19
CI / push-validation (pull_request) Successful in 35s
CI / helm (pull_request) Successful in 38s
CI / lint (pull_request) Successful in 4m2s
CI / quality (pull_request) Successful in 4m18s
CI / typecheck (pull_request) Successful in 4m43s
CI / security (pull_request) Successful in 4m48s
CI / build (pull_request) Successful in 3m48s
CI / e2e_tests (pull_request) Successful in 6m57s
CI / integration_tests (pull_request) Successful in 7m48s
CI / unit_tests (pull_request) Successful in 10m11s
CI / docker (pull_request) Successful in 1m37s
CI / coverage (pull_request) Successful in 14m56s
CI / status-check (pull_request) Successful in 5s
2026-04-19 04:00:21 +00:00
HAL9000 832d0b26ae Update timeline: milestone status for 2026-04-19 2026-04-19 03:59:57 +00:00
HAL9000 89baa0a525 Update timeline: milestone status for 2026-04-19 2026-04-19 03:59:35 +00:00
5 changed files with 1249 additions and 5593 deletions
+8 -6
View File
@@ -7,8 +7,6 @@ The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
### Fixed
- **Stale ACP Module Importable via `__pycache__`** (#5566): Added Behave BDD regression tests to prevent the old `cleveragents.acp` module from being imported via stale compiled bytecode left after the ACP→A2A rename. Tests verify that importing `cleveragents.acp` raises `ImportError` and that the `acp` directory does not exist in the source tree at `src/cleveragents/acp/`. This ensures ongoing compliance with the v3.6.0 deliverable requirement: "No acp references in public API; all imports use a2a namespace".
- **Actor v3 YAML Schema Validation in CLI** (#5869): The `agents actor add --config`
command now validates v3 YAML files using `ActorConfigSchema`, ensuring proper
schema compliance including cycle detection for GRAPH actors, required field
@@ -30,6 +28,14 @@ The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
correctly in all deployment modes: Docker containers, local pip installs
(wheel or editable), and development environments.
- **TDD Non-AssertionError Guard Visibility** (#8294): `apply_tdd_inversion` in
- **bug-hunt-pool-supervisor Non-Blocking Tracking** (#8835): The automation-tracking-manager
call in step 5 was blocking the main loop indefinitely, causing 3+ consecutive initialization
failures. Step 5 now explicitly marks tracking as best-effort -- if the call does not complete
within a reasonable time or fails, it is skipped and the supervisor continues to the next
cycle. A new Rule 9 reinforces that tracking must never block the main loop; core
functionality (module mapping, worker dispatch, monitoring) takes priority over status
reporting.
`features/environment.py` now emits its non-assertion exception guard warning to
both the structured logger and `stderr` via a new `_warning_with_stderr` helper.
This makes the guard firing visible in standard Behave console output and CI log
@@ -193,8 +199,6 @@ The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
### Fixed
- **Stale ACP Module Importable via `__pycache__`** (#5566): Added Behave BDD regression tests to prevent the old `cleveragents.acp` module from being imported via stale compiled bytecode left after the ACP→A2A rename. Tests verify that importing `cleveragents.acp` raises `ImportError` and that the `acp` directory does not exist in the source tree at `src/cleveragents/acp/`. This ensures ongoing compliance with the v3.6.0 deliverable requirement: "No acp references in public API; all imports use a2a namespace".
- **Path Traversal Sandbox Escape via Prefix Collision** (#7558): Fixed
`validate_path()` in `file_tools.py` using `str.startswith()` for sandbox
containment, which allowed sibling directories with a matching name prefix
@@ -332,8 +336,6 @@ The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
### Fixed
- **Stale ACP Module Importable via `__pycache__`** (#5566): Added Behave BDD regression tests to prevent the old `cleveragents.acp` module from being imported via stale compiled bytecode left after the ACP→A2A rename. Tests verify that importing `cleveragents.acp` raises `ImportError` and that the `acp` directory does not exist in the source tree at `src/cleveragents/acp/`. This ensures ongoing compliance with the v3.6.0 deliverable requirement: "No acp references in public API; all imports use a2a namespace".
- `LangChainChatProvider.name` and `model_id` are now mutable properties with setters,
fixing an `AttributeError` when `PlanService` attempted to resolve provider names after
instantiation. (#1553)
File diff suppressed because it is too large Load Diff
+26 -5502
View File
File diff suppressed because one or more lines are too long
-13
View File
@@ -1,13 +0,0 @@
Feature: ACP module is not importable
As a CleverAgents developer
I want to ensure the old ACP module is completely removed
So that the v3.6.0 deliverable #1 requirement is met: "No acp references in public API"
Scenario: Importing cleveragents.acp raises ImportError
When I attempt to import the cleveragents.acp module
Then an ImportError should be raised
And the error message should indicate the module does not exist
Scenario: The acp directory does not exist in the source tree
When I check the source tree for the acp directory
Then the src/cleveragents/acp directory should not exist
@@ -1,72 +0,0 @@
"""Step definitions for a2a_acp_module_removed.feature.
Tests that the old ACP module is completely removed and not importable,
ensuring v3.6.0 deliverable #1 compliance: "No acp references in public API".
"""
from __future__ import annotations
import importlib
import sys
from pathlib import Path
from typing import Any
from behave import then, when
@when("I attempt to import the cleveragents.acp module")
def step_attempt_import_acp(context: Any) -> None:
"""Attempt to import cleveragents.acp and capture any ImportError."""
context.import_error = None
try:
# Remove from sys.modules if it exists to ensure fresh import
if "cleveragents.acp" in sys.modules:
del sys.modules["cleveragents.acp"]
# Attempt to import
importlib.import_module("cleveragents.acp")
context.import_succeeded = True
except ImportError as e:
context.import_error = e
context.import_succeeded = False
@then("an ImportError should be raised")
def step_check_import_error(context: Any) -> None:
"""Verify that an ImportError was raised."""
assert context.import_error is not None, (
"Expected ImportError to be raised when importing cleveragents.acp, "
"but import succeeded"
)
assert not context.import_succeeded, "Expected import to fail, but it succeeded"
@then("the error message should indicate the module does not exist")
def step_check_error_message(context: Any) -> None:
"""Verify that the error message indicates the module doesn't exist."""
error_msg = str(context.import_error)
assert "cleveragents.acp" in error_msg or "No module named" in error_msg, (
f"Expected error message to mention 'cleveragents.acp' or 'No module named', "
f"but got: {error_msg}"
)
@when("I check the source tree for the acp directory")
def step_check_acp_directory(context: Any) -> None:
"""Check if the acp directory exists in the source tree."""
# Get the path to the cleveragents package
import cleveragents
cleveragents_path = Path(cleveragents.__file__).parent
acp_path = cleveragents_path / "acp"
context.acp_directory_exists = acp_path.exists()
context.acp_path = acp_path
@then("the src/cleveragents/acp directory should not exist")
def step_check_acp_not_exists(context: Any) -> None:
"""Verify that the acp directory does not exist."""
assert not context.acp_directory_exists, (
f"Expected acp directory to not exist, but found it at: {context.acp_path}"
)