diff --git a/data/published-version-claims.json b/data/published-version-claims.json index 919c606..129f533 100644 --- a/data/published-version-claims.json +++ b/data/published-version-claims.json @@ -5,7 +5,9 @@ "Enforced by scripts/check_published_version_claims.mjs.", "", "Why this exists: every headline benchmark number on this site (OpenEMR", - "20/20 vs 10/10 at 39.2s vs 70.4s, MockMed 100/100 vs 20/20 at 4.9s vs", + "19/20 vs 10/10 at 39.2s vs 70.4s after the 2026-07-28 oracle correction;", + "earlier copy said 20/20 under the weaker original oracle. MockMed", + "100/100 vs 20/20 at 4.9s vs", "37.5s) was measured on 2026-07-08 from an openadapt-flow source build", "declaring 0.1.0 -- before v0.2.0, the first release tag containing the", "pinned commit. By 2026-07-27 the published engine was 1.24.0. The site", @@ -33,8 +35,8 @@ "kind": "pypi-latest", "source_of_truth": "public/status.json#/versions", "release_source_of_truth": "public/status.json#/releases", - "verified_on": "2026-08-20", - "evidence": "Published package and GitHub release records on 2026-08-20: openadapt 1.13.1, openadapt-flow 1.32.0, openadapt-capture 1.2.2, openadapt-desktop 0.15.0.", + "verified_on": "2026-08-22", + "evidence": "Published package and GitHub release records on 2026-08-22: openadapt 1.14.0, openadapt-flow 1.32.0, openadapt-capture 1.2.2, openadapt-desktop 0.15.0.", "packages": { "launcher": "openadapt", "flow": "openadapt-flow", @@ -42,7 +44,7 @@ "desktop": "openadapt-desktop" }, "versions": { - "launcher": "1.13.1", + "launcher": "1.14.0", "flow": "1.32.0", "capture": "1.2.2", "desktop": "0.15.0" diff --git a/data/templates.js b/data/templates.js index 6c7095e..3722043 100644 --- a/data/templates.js +++ b/data/templates.js @@ -80,7 +80,7 @@ const templates = [ summary: 'The flagship healthcare reference: an 18-step add-patient-note workflow on OpenEMR — log in, find the patient, open the chart, navigate to Patient Messages, enter a parameterized note, save — with the write confirmed against the record itself, never the screen.', metaDescription: - 'Automate patient note entry in OpenEMR: an 18-step demonstrated workflow compiled into deterministic replay, verified against the system of record, with a published field run of 20/20 compiled trials at zero model calls (measured 2026-07-08 on Flow 0.1.0).', + 'Automate patient note entry in OpenEMR: an 18-step demonstrated workflow compiled into deterministic replay, verified against the system of record. Published field run: 19/20 trials, zero model calls; run 20 was a safe halt under the corrected saved-row oracle.', runsOn: 'OpenEMR, the open-source EMR — demonstrated against the third-party OpenEMR public demo (fake patients only; never point this at a real install without qualification) and reproduced in CI against a fixture system of record.', steps: [ @@ -99,7 +99,7 @@ const templates = [ quickstart: RECORD_YOUR_OWN, source: `${FLOW_REPO}/tree/main/benchmark/openemr_e2e`, evidence: - 'Field run on the real third-party OpenEMR public demo, measured 2026-07-08 on Flow 0.1.0 (a pre-v0.2.0 source build) and not re-measured since: compiled replay went 20/20 versus 10/10 for a computer-use agent, faster and with zero model calls. Field test, not CI-reproducible — the public demo is shared, resets daily, and the agent sample is small; the verifier and task-prompt units run in CI.', + 'Field run on the real third-party OpenEMR public demo, measured 2026-07-08 on Flow 0.1.0 (a pre-v0.2.0 source build) and not re-measured since: compiled replay went 19/20 versus 10/10 for a computer-use agent, faster and with zero model calls. The one non-success was a safe halt: the stricter saved-row oracle (corrected 2026-07-28) refused to count a note still in the unsaved form. Earlier summaries said 20/20 under the weaker original oracle. Field test, not CI-reproducible — the public demo is shared, resets daily, and the agent sample is small; the verifier and task-prompt units run in CI.', }, { slug: 'frappe-loan-application', diff --git a/data/workflowCatalog.js b/data/workflowCatalog.js index 65934ef..68508db 100644 --- a/data/workflowCatalog.js +++ b/data/workflowCatalog.js @@ -89,7 +89,7 @@ export const CATALOG = [ }, secondaryEvidence: 'A separate historical field showcase on the shared OpenEMR public ' + - 'demo ran compiled 20/20 vs. computer-use agent 10/10, measured ' + + 'demo ran compiled 19/20 vs. computer-use agent 10/10, measured ' + '2026-07-08 on Flow 0.1.0 (a pre-v0.2.0 source build); that is a ' + 'field result on a daily-resetting shared instance, not a ' + 'CI-reproducible benchmark, and it has not been re-measured on a ' + diff --git a/pages/research.js b/pages/research.js index 80fae58..1f5b7c7 100644 --- a/pages/research.js +++ b/pages/research.js @@ -188,7 +188,7 @@ export default function ResearchPage() { Compiled replay vs. a computer-use agent. {' '} On an already-demonstrated OpenEMR task, compiled replay - completed 20/20 runs at a 39.2 s median with no model + completed 19/20 runs at a 39.2 s median with no model calls, versus the agent's 70.4 s and $0.55/run. On the bundled CI fixture, 100/100 at 4.9 s versus 37.5 s. diff --git a/public/llms-full.txt b/public/llms-full.txt index 6c804e9..7e70652 100644 --- a/public/llms-full.txt +++ b/public/llms-full.txt @@ -78,7 +78,7 @@ control plane is a separate commercial product. - Engine source: https://github.com/OpenAdaptAI/openadapt-flow - Install route: https://github.com/OpenAdaptAI/OpenAdapt and `pip install openadapt` -- Current published versions: launcher 1.13.1, Flow 1.32.0, capture 1.2.2, desktop 0.15.0 +- Current published versions: launcher 1.14.0, Flow 1.32.0, capture 1.2.2, desktop 0.15.0 - Product lifecycle: Beta --- diff --git a/public/llms.txt b/public/llms.txt index fe03fa4..1407f0d 100644 --- a/public/llms.txt +++ b/public/llms.txt @@ -9,7 +9,7 @@ OpenAdapt fits repetitive, consequential work where the application has no pract ## Canonical machine-readable status - [status.json](https://openadapt.ai/status.json): The single source of truth for product lifecycle, released component versions, per-substrate availability, delivery boundary, and the linked acceptance evidence for each substrate. Public surfaces render their labels from this file. Prefer it over any prose on this site if the two ever disagree. -- Current published versions: launcher 1.13.1, Flow (compiler/runtime) 1.32.0, capture 1.2.2, desktop 0.15.0. Product lifecycle: Beta. +- Current published versions: launcher 1.14.0, Flow (compiler/runtime) 1.32.0, capture 1.2.2, desktop 0.15.0. Product lifecycle: Beta. ## Execution substrates and their evidence boundary @@ -69,7 +69,7 @@ Every template corresponds to something that actually runs. Proven references ex - [Template gallery](https://openadapt.ai/templates): All templates with proof level, demonstrated steps, verification oracles, and CLI quickstart. - [Patient triage note](https://openadapt.ai/templates/patient-triage-note): Proven. The canonical tutorial uses the bundled synthetic clinic app. Its clinical-write policy gate refuses an under-verified bundle. -- [OpenEMR patient note](https://openadapt.ai/templates/openemr-patient-note): Proven. The 18-step add-patient-note workflow checks the record itself. A published field run completed 20/20 compiled trials with zero model calls, measured 2026-07-08 on openadapt-flow 0.1.0 (a pre-v0.2.0 source build). +- [OpenEMR patient note](https://openadapt.ai/templates/openemr-patient-note): Proven. The 18-step add-patient-note workflow checks the record itself. A published field run completed 19/20 compiled trials with zero model calls — run 20 was a safe halt under the corrected saved-row oracle — measured 2026-07-08 on openadapt-flow 0.1.0 (a pre-v0.2.0 source build). - [Frappe lending loan application](https://openadapt.ai/templates/frappe-loan-application): Proven. Independent REST, SQL, and exact table-delta oracles verify the result. - [openIMIS claim intake](https://openadapt.ai/templates/openimis-claim-intake): Proven. A direct SQL claim-row oracle verifies the result. - [Dental insurance eligibility checks](https://openadapt.ai/templates/dental-insurance-eligibility): Pattern. The workflow is compiled from the practice's own payer-portal demonstration. diff --git a/public/status.json b/public/status.json index bad0cd4..cfa8ef3 100644 --- a/public/status.json +++ b/public/status.json @@ -1,9 +1,9 @@ { "$comment": "Canonical machine-readable release, capability, evidence, and deployment status for OpenAdapt. Served at https://openadapt.ai/status.json and consumed by status-aware public surfaces and tests. OpenAdapt is one Beta product across browser, Windows, macOS, Linux, RDP, and Citrix/VDI. Capability availability is distinct from the deployment boundary and from the bounded evidence scope recorded for each substrate.", - "generated_at": "2026-08-20", + "generated_at": "2026-08-22", "product_lifecycle": "Beta", "versions": { - "launcher": "1.13.1", + "launcher": "1.14.0", "flow": "1.32.0", "capture": "1.2.2", "desktop": "0.15.0" @@ -11,24 +11,24 @@ "releases": { "launcher": { "package": "openadapt", - "version": "1.13.1", + "version": "1.14.0", "source": "pypi", "github_repository": "OpenAdaptAI/OpenAdapt", - "tag": "v1.13.1", - "release_commit": "7f69923e164a028893e7d570658aa5dcbebc121f", - "qualified_source_commit": "bb91e4b744fff1199241f48adf31761224771e11", + "tag": "v1.14.0", + "release_commit": "b9e096535224e0cb4b62d89f097a6b09c318bfe5", + "qualified_source_commit": "5de18046d4c63d57eddbe827259818b31d24ecd3", "artifacts": [ { "type": "bdist_wheel", - "filename": "openadapt-1.13.1-py3-none-any.whl", - "url": "https://files.pythonhosted.org/packages/ac/5b/1c651245dde5124e9bca11be36b7b241ca5a9cd85678d1893718212b5a36/openadapt-1.13.1-py3-none-any.whl", - "sha256": "e168825bf3f553e537786c2ab24a9da726f96a8043ac5d52604cb95d83e6ea3b" + "filename": "openadapt-1.14.0-py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/d8/9a/2ac1a9748901c11109bf82ee4a37708f03bfe857dfdd25dcc98957acb6fc/openadapt-1.14.0-py3-none-any.whl", + "sha256": "ac79ccb3b502f6a6c309fd05fa965ed874bee3470e45cf9ac919ef4df6c0bc8f" }, { "type": "sdist", - "filename": "openadapt-1.13.1.tar.gz", - "url": "https://files.pythonhosted.org/packages/14/3a/c5a50e0fdd22985453734e560507749dfb82485b9085dd08d666ca706ae3/openadapt-1.13.1.tar.gz", - "sha256": "ba6a6c86bd21eebf31ed59b4d0f5c0860f16aed479826da8cf4dc6a5288b5de0" + "filename": "openadapt-1.14.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/5e/20/eed353c2356b01fb608f6f472b241c3200eec310b054ff28154f6d7cfb5f/openadapt-1.14.0.tar.gz", + "sha256": "0a5456faa6769a2186cd653050134bb3c91cb202e9a147fcd611b0671c52370f" } ] }, diff --git a/tests/workflowCatalog.test.js b/tests/workflowCatalog.test.js index 8740293..24a59c7 100644 --- a/tests/workflowCatalog.test.js +++ b/tests/workflowCatalog.test.js @@ -136,10 +136,11 @@ test('trial numbers match the committed evidence provenance, not invented ones', // openIMIS is a reference demonstration, not a benchmark — say so. assert.match(openimis.trialResults.scope, /not a benchmark/i) - // OpenEMR: matched model-free 12/12; historical field showcase 20/20 vs 10/10. + // OpenEMR: matched model-free 12/12; historical field showcase 19/20 vs 10/10 + // after the 2026-07-28 oracle correction (run 20 = safe halt). const openemr = CATALOG.find((e) => e.id === 'openemr') assert.match(openemr.trialResults.headline, /12\/12/) - assert.match(openemr.secondaryEvidence, /20\/20.*10\/10/) + assert.match(openemr.secondaryEvidence, /19\/20.*10\/10/) }) test('the page frames itself as a reference catalog, not a marketplace', () => {