Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
36 changes: 18 additions & 18 deletions docs/platform-compatibility-report.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

<!-- Generated by scripts/render_platform_versions.py. Do not edit. -->

- Generated: `2026-08-26T21:02:14+00:00`
- Generated: `2026-08-28T15:51:10+00:00`
- Selection: `latest-published`
- Compatibility: **dependency-compatible**
- Signature: `unsigned (signing infrastructure pending)`
Expand All @@ -12,9 +12,9 @@
| Role | Package | Version | Release source reference | Published artifacts |
|---|---|---:|---|---|
| launcher | `openadapt` | `1.16.0` | [`v1.16.0`](https://github.com/OpenAdaptAI/OpenAdapt/tree/v1.16.0)<br>commit `089c27c046f5cd972d299361f9d68285c1896c71`<br>tree `3779d8fceeb65d26bad440fa52d11ab7238eae70` | `openadapt-1.16.0-py3-none-any.whl` `371693e7607d1cdc1ea360ef5d657c1af791a0af39677fa2ce5933e7ba712719`<br>`openadapt-1.16.0.tar.gz` `39d01612417dff5981b536b324a63498df1ea6f0128c723276609ebbe18d9a18` |
| flow | `openadapt-flow` | `1.33.0` | [`v1.33.0`](https://github.com/OpenAdaptAI/openadapt-flow/tree/v1.33.0)<br>commit `80dc49b7296e5e6999b04124f26a647047a14b95`<br>tree `3074fd53f7a1673b51d610d178825a23676de644` | `openadapt_flow-1.33.0-py3-none-any.whl` `1d54ccffe3a554ecff82f69917f63f55233bd54ac1cb737058e096e4582aa494`<br>`openadapt_flow-1.33.0.tar.gz` `8f85bc5a9e3a8eb1c1d69178e7cfd03fc9de4d0d31832f117eacc0cc2052fd1c` |
| flow | `openadapt-flow` | `1.34.0` | [`v1.34.0`](https://github.com/OpenAdaptAI/openadapt-flow/tree/v1.34.0)<br>commit `30fc60e55778a0e0f92b9776117cafcfe2512249`<br>tree `7a0263eda60b23f685cbd8abb4174da2db88fd4b` | `openadapt_flow-1.34.0-py3-none-any.whl` `56d32818989cb3a92830080ead39e10b08718c55e00988117f22cbfeaac98854`<br>`openadapt_flow-1.34.0.tar.gz` `a941a70015fe91897e655bfc9bf83e6cf8fbcf8bd4e4c7206ffb133c505203f8` |
| capture | `openadapt-capture` | `1.2.2` | [`v1.2.2`](https://github.com/OpenAdaptAI/openadapt-capture/tree/v1.2.2)<br>commit `06ade22948c12dcc6608bd54b5cca5c9c306e77c`<br>tree `b0a3b5b53f23536e01314f36aa46fd5b2d8baba6` | `openadapt_capture-1.2.2-py3-none-any.whl` `550fffe50990fa8431d332bdd5fe4755976d83baa7ad62553f50ad9e4ddcd1ae`<br>`openadapt_capture-1.2.2.tar.gz` `6f4298d3daadf9cced8994207e34b3116a79209ef792e98f778a0770e2f3406c` |
| privacy | `openadapt-privacy` | `1.0.3` | [`v1.0.3`](https://github.com/OpenAdaptAI/openadapt-privacy/tree/v1.0.3)<br>commit `43228e2b8d2e308083a9266f4bb6b247b5abdd93`<br>tree `d3ed6ebefca797cf36d83292be97de407bd9b1d8` | `openadapt_privacy-1.0.3-py3-none-any.whl` `ca0a92bce80be441240b3382812b001c99326a3ae3665e5d3026dee588ee3e07`<br>`openadapt_privacy-1.0.3.tar.gz` `2e0f201c206c67f936dd8c53a1ddfeb0effc6ca14175d97e0413be0a0d16668b` |
| privacy | `openadapt-privacy` | `1.0.4` | [`v1.0.4`](https://github.com/OpenAdaptAI/openadapt-privacy/tree/v1.0.4)<br>commit `7252de4820451b069310a3ccaecf484ad0af8c18`<br>tree `4c7bc72aa5c5879c7a51a4d3586c4b7e1c1ed5ff` | `openadapt_privacy-1.0.4-py3-none-any.whl` `e10bd265aba5e54c97aeb80a9ac0509384d19eb46ce46656880b619fd06f542b`<br>`openadapt_privacy-1.0.4.tar.gz` `89670173890192ecea31eea832e6e1c9b612cb7f19969fe99cda082cd71f2cb3` |
| types | `openadapt-types` | `0.10.1` | [`v0.10.1`](https://github.com/OpenAdaptAI/openadapt-types/tree/v0.10.1)<br>commit `9e0336ee92a807912338db570855a98d15919725`<br>tree `b63af56d5e639af1cfa7f1d008883c955e1b6ddf` | `openadapt_types-0.10.1-py3-none-any.whl` `c90a5a03721bf686895ae7212c88f178b96294d431edd37aebe9e5617fccc477`<br>`openadapt_types-0.10.1.tar.gz` `e39f850587ce05481c39bee87ecd266df1ddfd335cabdca23c4e2adc1df1c590` |
| desktop | `openadapt-desktop` | `0.15.0` | [`desktop-v0.15.0`](https://github.com/OpenAdaptAI/openadapt-desktop/tree/desktop-v0.15.0)<br>commit `ac01e90f04e604f40e030046457f5b5167c88755`<br>tree `06a0c7c3fc61194149f821522939a08fadc18736` | `openadapt_desktop-0.15.0-py3-none-any.whl` `11dd8da225d660f23fc5e779d564ef34c5d85ad40b303951ec7697e94f488401`<br>`openadapt_desktop-0.15.0.tar.gz` `f45e35d53469fcb75710010d56a9d3f362130f1637a2f5fb50889553104a5670` |
| agent | `openadapt-agent` | `2.0.1` | [`v2.0.1`](https://github.com/OpenAdaptAI/openadapt-agent/tree/v2.0.1)<br>commit `d9f16b2946dfdd0228eeb2660047347df9dce8d8`<br>tree `26606c89b4294603b628f1b3aaa8283c45765326` | `openadapt_agent-2.0.1-py3-none-any.whl` `5c5f6e3eca4c127d87b3affb8944223c0836916e0df57d0c6b8ba737b3bc8b5a`<br>`openadapt_agent-2.0.1.tar.gz` `67e05b299a4f035a0482b3032decc151fafc22de9a12bb3d8f884f37ea4cc937` |
Expand All @@ -23,10 +23,10 @@

| Unit | Version | Selected or locked OpenAdapt packages |
|---|---:|---|
| launcher_environment | `1.16.0` | `openadapt==1.16.0`<br>`openadapt-flow==1.33.0` |
| customer_runner | `1.33.0` | `openadapt-flow==1.33.0`<br>`openadapt-types==0.10.1` |
| launcher_environment | `1.16.0` | `openadapt==1.16.0`<br>`openadapt-flow==1.34.0` |
| customer_runner | `1.34.0` | `openadapt-flow==1.34.0`<br>`openadapt-types==0.10.1` |
| desktop_sidecar | `0.15.0` | `openadapt-capture==1.2.1`<br>`openadapt-flow==1.27.1`<br>`openadapt-privacy==1.0.0`<br>`openadapt-types==0.7.0` |
| agent_bridge | `2.0.1` | `openadapt-agent==2.0.1`<br>`openadapt-flow==1.33.0` |
| agent_bridge | `2.0.1` | `openadapt-agent==2.0.1`<br>`openadapt-flow==1.34.0` |

## Selected-platform dependency compatibility

Expand All @@ -38,27 +38,27 @@ These edges show whether each selected integration version satisfies its publish
| desktop-sidecar-lock | `openadapt-desktop==0.15.0` | `openadapt-flow` | `==1.27.1` | `1.27.1` | `extra == "build"` |
| desktop-sidecar-lock | `openadapt-desktop==0.15.0` | `openadapt-privacy` | `>=1.0.0` | `1.0.0` | `always` |
| desktop-sidecar-lock | `openadapt-desktop==0.15.0` | `openadapt-types` | `==0.7.0` | `0.7.0` | `always` |
| selected-platform | `openadapt-agent==2.0.1` | `openadapt-flow` | `<2,>=1.18.1` | `1.33.0` | `always` |
| selected-platform | `openadapt-capture==1.2.2` | `openadapt-privacy` | `>=0.1.0` | `1.0.3` | `extra == "all"`<br>`extra == "privacy"` |
| selected-platform | `openadapt-flow==1.33.0` | `openadapt-capture` | `>=1.2.0` | `1.2.2` | `extra == "capture"` |
| selected-platform | `openadapt-flow==1.33.0` | `openadapt-privacy` | `>=1.0.0` | `1.0.3` | `extra == "privacy"` |
| selected-platform | `openadapt-flow==1.33.0` | `openadapt-types` | `<0.11.0,>=0.10.0` | `0.10.1` | `extra == "console"`<br>`extra == "dev"`<br>`extra == "interop"` |
| selected-platform | `openadapt-agent==2.0.1` | `openadapt-flow` | `<2,>=1.18.1` | `1.34.0` | `always` |
| selected-platform | `openadapt-capture==1.2.2` | `openadapt-privacy` | `>=0.1.0` | `1.0.4` | `extra == "all"`<br>`extra == "privacy"` |
| selected-platform | `openadapt-flow==1.34.0` | `openadapt-capture` | `>=1.2.0` | `1.2.2` | `extra == "capture"` |
| selected-platform | `openadapt-flow==1.34.0` | `openadapt-privacy` | `>=1.0.0` | `1.0.4` | `extra == "privacy"` |
| selected-platform | `openadapt-flow==1.34.0` | `openadapt-types` | `<0.11.0,>=0.10.0` | `0.10.1` | `extra == "console"`<br>`extra == "dev"`<br>`extra == "interop"` |
| selected-platform | `openadapt==1.16.0` | `openadapt-capture` | `<2.0.0,>=1.2.0` | `1.2.2` | `extra == "all"`<br>`extra == "capture"`<br>`extra == "core"` |
| selected-platform | `openadapt==1.16.0` | `openadapt-flow` | `<2.0.0,>=1.29.0` | `1.33.0` | `always`<br>`extra == "all"`<br>`extra == "browser"`<br>`extra == "capture"`<br>`extra == "core"`<br>`extra == "flow"`<br>`extra == "privacy"`<br>`extra == "rdp"`<br>`extra == "windows"`<br>`sys_platform == "darwin" and extra == "all"`<br>`sys_platform == "darwin" and extra == "macos"`<br>`sys_platform == "linux" and extra == "all"`<br>`sys_platform == "linux" and extra == "linux"` |
| selected-platform | `openadapt==1.16.0` | `openadapt-flow` | `<2.0.0,>=1.29.0` | `1.34.0` | `always`<br>`extra == "all"`<br>`extra == "browser"`<br>`extra == "capture"`<br>`extra == "core"`<br>`extra == "flow"`<br>`extra == "privacy"`<br>`extra == "rdp"`<br>`extra == "windows"`<br>`sys_platform == "darwin" and extra == "all"`<br>`sys_platform == "darwin" and extra == "macos"`<br>`sys_platform == "linux" and extra == "all"`<br>`sys_platform == "linux" and extra == "linux"` |

## Cross-component schemas

| Contract | Owner | Accepted versions | Exact source |
|---|---|---|---|
| `workflow_bundle` | `flow` | `schema_version` [1, 2] | [`openadapt_flow/bundle_validation.py`](https://github.com/OpenAdaptAI/openadapt-flow/blob/80dc49b7296e5e6999b04124f26a647047a14b95/openadapt_flow/bundle_validation.py) `fe1e5ec441183adf1aa2209f1669f779043fb4ad1f41a651ca0f96123778240f`<br>[`openadapt_flow/ir.py`](https://github.com/OpenAdaptAI/openadapt-flow/blob/80dc49b7296e5e6999b04124f26a647047a14b95/openadapt_flow/ir.py) `e01b5bc70341e423782765241716890840d2874139fd17a4ca9e70d6d9930739` |
| `workflow_bundle` | `flow` | `schema_version` [1, 2] | [`openadapt_flow/bundle_validation.py`](https://github.com/OpenAdaptAI/openadapt-flow/blob/30fc60e55778a0e0f92b9776117cafcfe2512249/openadapt_flow/bundle_validation.py) `fe1e5ec441183adf1aa2209f1669f779043fb4ad1f41a651ca0f96123778240f`<br>[`openadapt_flow/ir.py`](https://github.com/OpenAdaptAI/openadapt-flow/blob/30fc60e55778a0e0f92b9776117cafcfe2512249/openadapt_flow/ir.py) `e1e5345dd173b694587dde515b59cd60de0cf6028c1f35d589706b84ad792598` |
| `capture_structural_observation` | `capture` | `openadapt.capture.structural-observation/v` [1] | [`openadapt_capture/structural.py`](https://github.com/OpenAdaptAI/openadapt-capture/blob/06ade22948c12dcc6608bd54b5cca5c9c306e77c/openadapt_capture/structural.py) `8f8bce37148a3357ace147c46a7c45e6d5501b70622b24b1ac2490f2def304fc` |
| `control_overlay_frame` | `types` | `openadapt.control-overlay-frame/v` [1, 2] | [`openadapt_types/control_overlay.py`](https://github.com/OpenAdaptAI/openadapt-types/blob/9e0336ee92a807912338db570855a98d15919725/openadapt_types/control_overlay.py) `3aa01f89b43e12478c9e2ff1a9e61689397370691d15247ded9dcd5b05242790`<br>[`openadapt_types/control_overlay_tracking.py`](https://github.com/OpenAdaptAI/openadapt-types/blob/9e0336ee92a807912338db570855a98d15919725/openadapt_types/control_overlay_tracking.py) `af8d934f0572c5f4e9c63ba720d4a1d0e73c8cdf3f7b87cc4562c01a8a551755` |
| `control_overlay_timeline` | `types` | `openadapt.control-overlay-timeline/v` [1, 2] | [`openadapt_types/control_overlay.py`](https://github.com/OpenAdaptAI/openadapt-types/blob/9e0336ee92a807912338db570855a98d15919725/openadapt_types/control_overlay.py) `3aa01f89b43e12478c9e2ff1a9e61689397370691d15247ded9dcd5b05242790`<br>[`openadapt_types/control_overlay_tracking.py`](https://github.com/OpenAdaptAI/openadapt-types/blob/9e0336ee92a807912338db570855a98d15919725/openadapt_types/control_overlay_tracking.py) `af8d934f0572c5f4e9c63ba720d4a1d0e73c8cdf3f7b87cc4562c01a8a551755` |
| `human_decision_task` | `types` | `openadapt.human-decision-task/v` [1, 2] | [`openadapt_types/human_decision.py`](https://github.com/OpenAdaptAI/openadapt-types/blob/9e0336ee92a807912338db570855a98d15919725/openadapt_types/human_decision.py) `6ed5d2db82f5c73dfab568868f13f7a2cbfde6fb7b3f05b027b40c503ab04e29` |
| `human_decision_receipt` | `types` | `openadapt.human-decision-receipt/v` [1] | [`openadapt_types/human_decision.py`](https://github.com/OpenAdaptAI/openadapt-types/blob/9e0336ee92a807912338db570855a98d15919725/openadapt_types/human_decision.py) `6ed5d2db82f5c73dfab568868f13f7a2cbfde6fb7b3f05b027b40c503ab04e29` |
| `human_decision_relay` | `flow` | `openadapt.human-decision-relay/v` [2] | [`openadapt_flow/console/decision_relay.py`](https://github.com/OpenAdaptAI/openadapt-flow/blob/80dc49b7296e5e6999b04124f26a647047a14b95/openadapt_flow/console/decision_relay.py) `d5320404d4342dbb52be1f2ead1cdb5cf0e22877feaaa1e47974b301df697292` |
| `remote_decision_projection` | `flow` | `openadapt.remote-decision-projection/v` [1] | [`openadapt_flow/console/human_decisions.py`](https://github.com/OpenAdaptAI/openadapt-flow/blob/80dc49b7296e5e6999b04124f26a647047a14b95/openadapt_flow/console/human_decisions.py) `02651ad8888a5c17bfff6fb47165ba861193243dc0f7c951f8b94f544ca19477` |
| `runtime_validation` | `flow` | `openadapt.runtime-validation/v` [1, 2, 3] | [`openadapt_flow/runtime_validation.py`](https://github.com/OpenAdaptAI/openadapt-flow/blob/80dc49b7296e5e6999b04124f26a647047a14b95/openadapt_flow/runtime_validation.py) `69a27484f625e78b826291adba517cc00ec6c9a89477d09c703af90cc6d6b73e` |
| `human_decision_relay` | `flow` | `openadapt.human-decision-relay/v` [2] | [`openadapt_flow/console/decision_relay.py`](https://github.com/OpenAdaptAI/openadapt-flow/blob/30fc60e55778a0e0f92b9776117cafcfe2512249/openadapt_flow/console/decision_relay.py) `d5320404d4342dbb52be1f2ead1cdb5cf0e22877feaaa1e47974b301df697292` |
| `remote_decision_projection` | `flow` | `openadapt.remote-decision-projection/v` [1] | [`openadapt_flow/console/human_decisions.py`](https://github.com/OpenAdaptAI/openadapt-flow/blob/30fc60e55778a0e0f92b9776117cafcfe2512249/openadapt_flow/console/human_decisions.py) `02651ad8888a5c17bfff6fb47165ba861193243dc0f7c951f8b94f544ca19477` |
| `runtime_validation` | `flow` | `openadapt.runtime-validation/v` [1, 2, 3] | [`openadapt_flow/runtime_validation.py`](https://github.com/OpenAdaptAI/openadapt-flow/blob/30fc60e55778a0e0f92b9776117cafcfe2512249/openadapt_flow/runtime_validation.py) `18675d6b4c40458394febb36cbe28e99f410cb65b4cab138b68df3cacc6f7dd4` |

## Host operating systems

Expand All @@ -80,5 +80,5 @@ Compatibility and delivery facts do not assign lifecycle state. Use the signed P
## Qualification evidence

- [openadapt-public-status](https://openadapt.ai/status.json): Canonical machine-readable release, capability, and substrate qualification status, maintained in openadapt-web (public/status.json).
- [flow-public-demo-evidence-packs](https://github.com/OpenAdaptAI/openadapt-flow/tree/80dc49b7296e5e6999b04124f26a647047a14b95/public-demo/evidence-packs): Versioned public evidence packs with per-pack manifest files, replay evidence, and fault-case results.
- [flow-effectbench-task-pack](https://github.com/OpenAdaptAI/openadapt-flow/blob/80dc49b7296e5e6999b04124f26a647047a14b95/benchmark/effectbench/task_pack/manifest.json): Effect-verification benchmark task pack manifest used by the flow qualification harness.
- [flow-public-demo-evidence-packs](https://github.com/OpenAdaptAI/openadapt-flow/tree/30fc60e55778a0e0f92b9776117cafcfe2512249/public-demo/evidence-packs): Versioned public evidence packs with per-pack manifest files, replay evidence, and fault-case results.
- [flow-effectbench-task-pack](https://github.com/OpenAdaptAI/openadapt-flow/blob/30fc60e55778a0e0f92b9776117cafcfe2512249/benchmark/effectbench/task_pack/manifest.json): Effect-verification benchmark task pack manifest used by the flow qualification harness.
Loading