Skip to content

chore(release): openadapt 1.18.0 - #1429

Merged
abrichr merged 4 commits into
mainfrom
release/openadapt-1.18.0
Oct 20, 2026
Merged

abrichr merged 4 commits into
mainfrom
release/openadapt-1.18.0

Conversation

@abrichr

@abrichr abrichr commented Oct 20, 2026 •

Copy link
Copy Markdown
Member

Prepares the openadapt launcher 1.18.0. Nothing is published by this PR.

The release BOM pins openadapt-flow 2.3.0, openadapt-types 0.24.0 and openadapt-agent 2.2.1 from their monorepo release tags.

What changes

Why Flow 2.2, not 2.0 or 2.3

I checked every openadapt_flow import, module attribute and keyword argument in openadapt/ against the Flow v2.0.0, v2.1.0 and v2.2.0 release tags.

  • Missing in 2.0.0 and 2.1.0, used without a guard:

    • openadapt_flow._prewarm and openadapt_flow.backends._browser_process.shared_browser (FlowEngine.__enter__, the quickstart workers);
    • _browser_setup.BROWSER_ENV, installed_browser_channel and _bundled_present (worker browser choice).

    On 2.0 or 2.1 the quickstart fails with ImportError or AttributeError before Act 1.

  • Missing in 2.0.0 and 2.1.0, guarded: openadapt_flow.offline_seal (no Seal is printed).

  • Missing in 2.0.0 and 2.1.0, by subprocess: openadapt pull forwards to openadapt-flow pull, which first shipped in Flow 2.2.0.

  • Present in 2.2.0: every import, attribute and keyword argument the launcher uses.

  • The only Flow 2.3.0 addition used: run_tutorial_workflow(params=), which the quickstart feature-detects (_accepts). On 2.2.0 every run in Act 2 uses the demonstrated note.

Publish

After this merges and release-and-publish.yml is green on main:

gh workflow run release-and-publish.yml --repo OpenAdaptAI/OpenAdapt --ref main -f version=1.18.0

The workflow's only input is version, which must equal pyproject.toml. It first checks that the Flow and agent releases pinned in platform-manifest.json exist on PyPI with matching digests. Then the release App creates the v1.18.0 tag, and the tag push builds, publishes to PyPI and creates the GitHub Release. v1.18.0 doesn't exist on origin.

  • BOM: platform-manifest.json and the report are regenerated with flow=2.3.0, types=0.24.0, agent=2.2.1. Launcher, capture, privacy and desktop keep their published pins. The BOM has one more dependency edge (13), because Flow 2.3.0 depends on openadapt-types.
  • verify_release_components.py accepts a monorepo release (<package>-v<version> under packages/<dir>) as well as a standalone v<version> release. Tests cover both forms and three mismatches.

Local checks

  • tests/test_flow_floor.py: 15 passed.
  • The test_cli_smoke.py metadata, extras and preflight tests pass. One doctor test needs openadapt_flow installed and was left to CI.
  • validate_platform_manifest.py --require-compatible --launcher-candidate passes online and offline.
  • verify_release_components.py reports openadapt-flow 2.3.0 and openadapt-agent 2.2.1 matching PyPI and the manifest.
  • The manifest, release-lock, component and flow-floor suites: 102 passed.
  • verify_release_lock.py passes, and the prospect-name check is clean.

🤖 Generated with Claude Code

abrichr and others added 3 commits October 20, 2026 12:26
Bumps the launcher to 1.18.0 and requires openadapt-flow>=2.2.0,<3.0.0 in
every dependency and extra, and in doctor/deploy. The quickstart imports
openadapt_flow._prewarm, backends._browser_process and offline_seal and
three _browser_setup names, and `openadapt pull` forwards to
`openadapt-flow pull`; none of them are in Flow 2.0 or 2.1. Nothing it uses
needs Flow 2.3: run_tutorial_workflow(params=) is feature-detected.

Changelog for 1.18.0 and the root uv.lock for the new floor.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…or 1.18.0

Relocks to Flow 2.3.0, openadapt-types 0.24.0 and openadapt-agent 2.2.1 and
regenerates platform-manifest.json with that selection; Flow, Types and
Agent now bind their monorepo release tags. verify_release_components.py
accepts a monorepo release (<package>-v<version> under packages/<dir>) as
well as a standalone v<version> one. The BOM has one more edge: Flow 2.3.0
depends on openadapt-types.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@abrichr
abrichr marked this pull request as ready for review October 20, 2026 17:27
@abrichr
abrichr enabled auto-merge October 20, 2026 17:27
Installed-Flow mocks move from 2.0.x to 2.2.x, and 2.1.0 joins the
rejected versions in the range and deploy-preflight tests.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@abrichr
abrichr added this pull request to the merge queue Oct 20, 2026
Merged via the queue into main with commit a6552b4 Oct 20, 2026
37 checks passed
@abrichr
abrichr deleted the release/openadapt-1.18.0 branch October 20, 2026 20:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant