Skip to content

chore: release v3.0.0 - #1717

Merged
Muizzkolapo merged 2 commits into
mainfrom
release/v3.0.0
Nov 8, 2026
Merged

Muizzkolapo merged 2 commits into
mainfrom
release/v3.0.0

Conversation

@Muizzkolapo

Copy link
Copy Markdown
Owner

Batch the 62 unreleased changelog entries into 3.0.0 and bump the version in pyproject.toml and agent_actions/__version__.py. Major, because the batch holds 9 Breaking Change entries.

  • CHANGELOG.md and .changes/3.0.0.md hold every entry, as changie batch 3.0.0 and changie merge wrote them. One stale entry from the v2.0.0 release ("Release v2.0.0 — batch changie entries, bump version") is dropped.
  • uv.lock takes the anthropic bound that pyproject.toml already declares (Update anthropic requirement from <2,>=0.30.0 to >=0.30.0,<3 #1599 updated only pyproject.toml).

Release notes (for the GitHub release after merge)

v3.0.0 has 9 breaking changes, 4 features and 39 bug fixes since v2.0.0. The full list is in CHANGELOG.md.

Breaking changes

  • A config edit no longer re-runs work. Answers already stored stand, and each run names the edited action. agac run --rerun <action> answers an action and its readers again. A changed staged input re-answers only the records it changed.
  • More refusals at load and preflight. A missing schema file; the dead keys constraints, enable_caching, max_execution_time and where_clause; skip_condition and skip_if (use a guard with on_false: skip).
  • Schema dispatch. schema: dispatch_task('fn') declares schema_options:, and the function returns one of those names.
  • FILE tools. A record the action cannot be handed fails the action, with every missing field named. A roll-up row carries only the upstream fields its inputs share.

New features

  • endpoints: declares OpenAI-compatible providers; select one with model_vendor: <name>.
  • request_timeout bounds each online LLM request; record_concurrency sends up to 32 records of an online action at once.
  • A guard can compare two fields: extract.score < extract.limit.

Main fixes

  • One run per workflow: a second agac run, agac retry, retry --filter, agac clean or reset_workflow.py --full exits 1 while a run is in progress.
  • schema: dispatch_task works online and in batch, resolved once per record.
  • Retry waits as long as Retry-After asks. Schema bounds reach the provider and the mock. Each repair attempt has its own prompt trace.
  • The run output shows guard skips, failing verdicts and a final action that holds no record. Report tables print whole on a narrow terminal.
  • The docs site builds again.

Batch the unreleased changelog entries into 3.0.0 and bump the version.
Major because the batch holds 9 Breaking Change entries. uv.lock also
takes the anthropic bound that pyproject.toml already declares.
The CI changelog check needs one unreleased entry, and a release batches
them all. The v2.0.0 release added the same entry.
@Muizzkolapo
Muizzkolapo merged commit 91e7078 into main Nov 8, 2026
5 checks passed
@github-actions github-actions Bot locked and limited conversation to collaborators Nov 8, 2026
@Muizzkolapo
Muizzkolapo deleted the release/v3.0.0 branch November 8, 2026 20:20
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant