This page tracks notable changes to the Engine. The format follows Keep a Changelog and the Engine adheres to Semantic Versioning. For the full commit history, see the engine repository. For migration walk-throughs, see Migration guides.Documentation Index
Fetch the complete documentation index at: https://internal.september.wtf/llms.txt
Use this file to discover all available pages before exploring further.
v2.3.0 — orchestrator extraction + hardening
Changed
- The orchestrator is no longer part of the Engine. It has been
extracted into the
bap-enginerepo as a separate service. Engines are pure agent runtimes; the orchestrator handles provisioning and routing. super_thinking(boolean) replaces the previous 4-level effort parameter. Set it on a per-call basis to enable extended thinking; leave it off for normal calls.- Hydration of
ToolDeffields is now complete — all metadata fields are wired through to the model.
Added
- MCP connector improvements: PKCE in OAuth flows, OAuth state
validation in
/assets/callback, session tracking on connections. - Migration
014_token_issued_at.sqladdstoken_issued_atfor cache validation on outbound credentials. /admin/lc/triggeraccepts a request body for forcing a fresh batch with optional scope.
Fixed
- AD error failures are now included in the execution audit log.
- Tombstoning stale entries in
action_registrywhen the server refreshes its catalog. task_idis propagated to allexecuteand coordinator log lines.- Skill auto-promotion now uses the maximum confidence value rather than the latest, preventing premature promotion on a single high-confidence run.
Security
- OAuth state validation in
/assets/callback. - MCP connectors require PKCE for the auth code flow.
Removed
orchestrator.py(moved to bap-engine).scripts/deploy.shandscripts/pg-backup.sh(now part of bap-engine deployment).src/infra/pg.py(Postgres adapter — Engine is SQLite-only).
v2.1.1 — packaging fix
Fixed
- Packaging metadata corrected after migration from PyPI to private GitHub distribution. Wheels now ship with the catalog and migrations intact.
v2.1.0 — SQLite tables fix
Fixed
- Resolved missing SQLite tables in the post-PyPI distribution path.
- Migration runner now correctly applies on first boot regardless of whether the volume is fresh or pre-populated.
Changed
- Engine package now installs from GitHub via tag (not PyPI).
- Migrations and catalog ship with the wheel; no more manual
COPY catalog/migrationsin Dockerfiles.
v2.0.0 — pip package distribution
Changed
- Breaking. Engine is now distributed as a pip package rather than a git submodule. Update your Dockerfile or installation flow accordingly.
- Catalog and migrations are bundled with the package.
Migration
See Migration guide v1 → v2 when one is published.Earlier versions
For releases prior to v2.0.0, see the engine repository releases page.How to read this changelog
Each release section uses these subsection conventions:- Added — new features, endpoints, events, or env vars.
- Changed — non-breaking changes to existing behavior.
- Deprecated — features still working but planned for removal.
- Removed — features no longer present. Breaking changes are flagged in bold.
- Fixed — bug fixes.
- Security — vulnerability disclosures and hardening.

