Compare commits

...

2 Commits

Author SHA1 Message Date
HAL9000 5da1556d44 Merge branch 'master' into feature/8685-plan-correction-data-model
CI / helm (pull_request) Successful in 51s
CI / push-validation (pull_request) Successful in 58s
CI / build (pull_request) Successful in 1m17s
CI / lint (pull_request) Successful in 1m29s
CI / quality (pull_request) Successful in 1m33s
CI / security (pull_request) Successful in 1m57s
CI / typecheck (pull_request) Successful in 2m12s
CI / integration_tests (pull_request) Successful in 4m56s
CI / unit_tests (pull_request) Successful in 6m25s
CI / docker (pull_request) Successful in 1m28s
CI / coverage (pull_request) Successful in 10m49s
CI / status-check (pull_request) Successful in 3s
2026-05-14 09:33:41 +00:00
HAL9000 3f99e5e5e5 ci(workflows): fix Forgejo syntax and benchmark resilience, correct CHANGELOG structure
CI / helm (pull_request) Successful in 58s
CI / push-validation (pull_request) Successful in 59s
CI / build (pull_request) Successful in 1m23s
CI / lint (pull_request) Successful in 2m30s
CI / typecheck (pull_request) Successful in 2m39s
CI / quality (pull_request) Successful in 2m11s
CI / security (pull_request) Successful in 2m16s
CI / integration_tests (pull_request) Successful in 4m1s
CI / unit_tests (pull_request) Failing after 5m33s
CI / coverage (pull_request) Has been skipped
CI / docker (pull_request) Has been skipped
CI / status-check (pull_request) Failing after 10s
- Replace github.* with forgejo.* context variables in benchmark-scheduled.yml
  (fixes: condition checks always fail on Forgejo using GitHub event context)
- Add S3 baseline existence check to benchmark-regression job in master.yml
  so it gracefully skips when no baselines are available instead of failing
- Move ReactiveEventBus.emit() fix entry from ### Added to ### Fixed section
  of CHANGELOG.md (it is a bug fix, not a feature addition)
2026-05-14 06:58:47 +00:00
3 changed files with 31 additions and 14 deletions
+3 -3
View File
@@ -22,7 +22,7 @@ env:
jobs:
benchmark-regression:
if: github.event_name == 'schedule' && github.event.schedule == '0 2 * * *' || github.event_name == 'workflow_dispatch' && github.event.inputs.run_full_suite == 'false'
if: forgejo.event_name == 'schedule' && forgejo.event.schedule == '0 2 * * *' || forgejo.event_name == 'workflow_dispatch' && forgejo.event.inputs.run_full_suite == 'false'
runs-on: docker
timeout-minutes: 120
container:
@@ -67,7 +67,7 @@ jobs:
- name: Run benchmark regression via nox
env:
NOX_DEFAULT_VENV_BACKEND: uv
ASV_BASE_SHA: ${{ github.event.inputs.base_sha || 'master' }}
ASV_BASE_SHA: ${{ forgejo.event.inputs.base_sha || 'master' }}
run: |
mkdir -p build
nox -s benchmark_regression 2>&1 | tee build/nox-benchmark-regression-output.log
@@ -107,7 +107,7 @@ jobs:
retention-days: 90
benchmark-full:
if: github.event_name == 'schedule' && github.event.schedule == '0 3 * * 0' || github.event_name == 'workflow_dispatch' && github.event.inputs.run_full_suite == 'true'
if: forgejo.event_name == 'schedule' && forgejo.event.schedule == '0 3 * * 0' || forgejo.event_name == 'workflow_dispatch' && forgejo.event.inputs.run_full_suite == 'true'
runs-on: docker
timeout-minutes: 180
container:
+19 -1
View File
@@ -51,8 +51,26 @@ jobs:
- name: Run asv continuous via nox
env:
ASV_BASE_SHA: ${{ steps.hash.outputs.ASV_BASE_SHA }}
ASV_BASE_SHA: ${{ steps.hash.outputs.ASV_BASE_SHA }}
ASV_S3_BUCKET: ${{ secrets.ASV_S3_BUCKET }}
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
run: |
mkdir -p build/asv/results
# Check whether S3 baseline data exists before running benchmarks
HAS_BASELINE=false
if [ -n "${ASV_S3_BUCKET}" ] && [ -n "${AWS_ACCESS_KEY_ID}" ]; then
python -m pip install -q awscli
aws s3 ls "s3://${ASV_S3_BUCKET}/asv/results/" >/dev/null 2>&1 && HAS_BASELINE=true || true
fi
if [ "${HAS_BASELINE}" = "false" ]; then
echo "Benchmark regression skipped: no S3 baseline results available to compare against."
mkdir -p build/asv/html
exit 0
fi
nox -s benchmark_regression
- name: Archive the results
+9 -10
View File
@@ -85,16 +85,6 @@ Changed `wf10_batch.robot` to be less likely to create files, and
- **A2A module rename BDD test suite** (#8615): Comprehensive Behave tests validating that the ACP→A2A module rename is complete — verifying all 22 A2A symbols are properly exported, no legacy ACP references remain in `.py` files under `cleveragents.a2a/`, and the module docstring uses current A2A naming. The step definitions include self-contained symbol lookups to avoid cross-scenario dependency failures.
- Fixed `ReactiveEventBus.emit()` exception handler to log the full exception
message (`str(exc)`) and enable traceback forwarding (`exc_info=True`).
Previously the handler logged only the exception type name (e.g.
"ValueError") with no diagnostic detail, making production debugging
impossible. The handler now includes the error message text and full
traceback in the structlog warning entry. Removed `@tdd_expected_fail` tag
from the TDD test so both scenarios run as normal regression guards. (#988)
### Added
- **`pr-review-worker` review-started notification** (#11028): The `first_review`
and `re_review` modes now post a "review started" notification comment to the
PR at the beginning of the review, giving PR authors immediate visibility
@@ -104,6 +94,15 @@ Changed `wf10_batch.robot` to be less likely to create files, and
- **Plan Rollback Command** (#8557): Implemented `agents plan rollback <plan-id> [<checkpoint-id>]` for checkpoint-based plan state restoration in Epic #8493. The command restores a plan's sandbox to the state captured at a given checkpoint, discarding all decisions made after that checkpoint. The checkpoint can be specified as an optional positional second argument or via the `--to-checkpoint` named option. Supports `--yes/-y` flag to skip confirmation prompts and `--format/-f` for output format selection (rich/plain/json/yaml). Included with comprehensive BDD test coverage (>= 97%) and spec-aligned output formatting showing rollback summary, changes reverted, impact analysis, and post-rollback state panels.
### Fixed
- Fixed `ReactiveEventBus.emit()` exception handler to log the full exception
message (`str(exc)`) and enable traceback forwarding (`exc_info=True`).
Previously the handler logged only the exception type name (e.g.
"ValueError") with no diagnostic detail, making production debugging
impossible. The handler now includes the error message text and full
traceback in the structlog warning entry. Removed `@tdd_expected_fail` tag
from the TDD test so both scenarios run as normal regression guards. (#988)
- **Guard cleanup_stale against execute/processing and execute/complete plans** (#11121):
``_create_sandbox_for_plan()`` in ``src/cleveragents/cli/commands/plan.py`` now
skips ``GitWorktreeSandbox.cleanup_stale()`` when the plan is in