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
18 changes: 18 additions & 0 deletions lib/publicJsonArtifacts.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,24 @@ export const PUBLIC_JSON_ARTIFACTS = Object.freeze({
// update manually synchronize a second copy of the same hash.
sha256: null,
}),
'/demos/rdp/qualification.json': Object.freeze({
source: '/demos/rdp/qualification.json',
fileName: 'qualification.json',
format: 'json',
title: 'RDP reference qualification evidence',
description:
'Exact trial outcomes, identity and effect checks, failure counts, and source versions for the accepted RDP reference batch.',
sha256: '13765ff5b9811049091bc2e90dc6f47413d80ca283a4bf4f7b85f824bdad1f82',
}),
'/demos/rdp/presentation.manifest.json': Object.freeze({
source: '/demos/rdp/presentation.manifest.json',
fileName: 'presentation.manifest.json',
format: 'json',
title: 'RDP presentation manifest',
description:
'Content hashes and exact retained-frame provenance for the paced RDP presentation video.',
sha256: '7561d3981f0374cacda865ee03548eb8d564d5d20f30ae93f42809a669c82551',
}),
'/desktop-preview/MANIFEST.json': Object.freeze({
source: '/desktop-preview/MANIFEST.json',
fileName: 'MANIFEST.json',
Expand Down
62 changes: 62 additions & 0 deletions pages/execute.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ import Head from 'next/head'
import Link from 'next/link'

import Footer from '@components/Footer'
import JsonArtifactLink from '@components/JsonArtifactLink'

const description =
'OpenAdapt Execute gives software and service providers verified execution in the systems their products cannot integrate with.'
Expand Down Expand Up @@ -117,6 +118,67 @@ export default function ExecutePage() {
</div>
</section>

<section id="rdp-demo" className="scroll-mt-24 border-b border-hairline px-5 py-16 md:py-20">
<div className="mx-auto max-w-5xl">
<p className="eyebrow">Real RDP execution</p>
<div className="mt-3 grid gap-8 lg:grid-cols-[1.35fr_0.65fr] lg:items-start">
<div>
<h2 className="font-display text-3xl font-semibold tracking-tight text-ink">
See the external remote-session path.
</h2>
<p className="mt-4 max-w-3xl text-base leading-relaxed text-ink-2">
This synthetic healthcare task crosses a real RDP client and server. OpenAdapt records the remote pixels, compiles the demonstration, verifies the intended record before the write, and checks the saved result outside the remote screen.
</p>
<div className="mt-6 overflow-hidden rounded-2xl border border-hairline bg-ink">
<video
className="aspect-[8/5] w-full object-contain"
autoPlay
controls
loop
muted
playsInline
poster="/demos/rdp/poster.jpg"
preload="metadata"
>
<source src="/demos/rdp/openadapt-rdp-demo.mp4" type="video/mp4" />
Your browser does not support the video element.
</video>
</div>
<p className="mt-3 text-xs leading-relaxed text-ink-3">
Reference qualification with synthetic data. The video uses paced presentation timing and exact retained RDP frames. A customer application and environment receive their own qualification.
</p>
</div>
<div className="grid gap-3 sm:grid-cols-3 lg:grid-cols-1">
<article className="rounded-2xl border border-hairline bg-panel p-5">
<p className="font-display text-3xl font-semibold text-ink">3 / 3</p>
<p className="mt-2 text-sm leading-relaxed text-ink-2">Healthy RDP runs confirmed the intended identity and saved effect.</p>
</article>
<article className="rounded-2xl border border-hairline bg-panel p-5">
<p className="font-display text-3xl font-semibold text-ink">3 / 3</p>
<p className="mt-2 text-sm leading-relaxed text-ink-2">Changed-screen trials halted before a write.</p>
</article>
<article className="rounded-2xl border border-hairline bg-panel p-5">
<p className="font-display text-3xl font-semibold text-ink">0</p>
<p className="mt-2 text-sm leading-relaxed text-ink-2">Model calls and silent incorrect successes in the accepted batch.</p>
</article>
<p className="flex flex-col gap-2 px-1 pt-2 text-sm">
<JsonArtifactLink source="/demos/rdp/qualification.json" className="font-medium">
Inspect the qualification evidence →
</JsonArtifactLink>
<a
href="https://github.com/OpenAdaptAI/openadapt-flow/blob/main/docs/backends/RDP.md"
target="_blank"
rel="noopener noreferrer"
className="font-medium"
>
Read the RDP architecture →
</a>
</p>
</div>
</div>
</div>
</section>

<section className="border-b border-hairline px-5 py-16 md:py-20">
<div className="mx-auto max-w-5xl">
<p className="eyebrow">From request to receipt</p>
Expand Down
Binary file added public/demos/rdp/openadapt-rdp-demo.mp4
Binary file not shown.
Binary file added public/demos/rdp/poster.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
47 changes: 47 additions & 0 deletions public/demos/rdp/presentation.manifest.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
{
"fps": 12,
"frame_size": [
1280,
800
],
"phases": [
{
"outcome": "RECORDED",
"phase": "Demonstration",
"presented_frame_count": 5,
"source_frame_count": 5,
"summary": {
"actions": 4,
"model_calls": 0,
"surface": "real RDP round-trip"
}
},
{
"outcome": "VERIFIED",
"phase": "Governed replay",
"presented_frame_count": 5,
"source_frame_count": 5,
"summary": {
"effect_confirmed": true,
"identity_verified": true,
"model_calls": 0,
"silent_incorrect_success": false
}
},
{
"outcome": "HALTED",
"phase": "Changed-screen refusal",
"presented_frame_count": 1,
"source_frame_count": 1,
"summary": {
"effect_written": false,
"model_calls": 0,
"safety_halt": true
}
}
],
"schema_version": "openadapt.rdp-presentation-render.v1",
"timing": "paced presentation timing; source frames remain exact",
"video": "openadapt-rdp-demo.mp4",
"video_sha256": "66bced89b5c0d3a5ddd5b04f7ec1181c91f26030d6f0f2c14436405ffefa3812"
}
Loading
Loading