# AetherDesk AI PC Acceptance Checklist

Generated: 2026-07-01

Use this checklist to decide whether AetherDesk is behaving like a real AI PC for agentic operations and systems workflows.

## Preview loading

- Open served preview at `http://127.0.0.1:<port>/` when possible.
- Open file preview only as a fallback.
- Confirm `real-pc-shell.css?v=21` loads from the project folder.
- Confirm `real-pc-shell.js?v=21` loads from the project folder.
- Confirm the real PC shell overlay appears instead of the older flat page.

Pass condition:

- A normal user sees a desktop-like screen with taskbar, desktop icons, Start/search, and window controls.

## Short-screen usability

Test with a squat viewport, approximately 900x520 or shorter.

- Desktop icons remain usable and scrollable instead of being clipped.
- Taskbar remains visible.
- Start menu fits onscreen.
- Windows do not permanently cover the taskbar.
- AI PC HUD and sync pill do not block the main work area.
- Safe Mode immediately quiets crowded AI surfaces.

Pass condition:

- A person with one cursor and keyboard can still operate Files, Terminal, Agent, Notebook, and Search.

## First-contact operator flow

- First-run operator hint appears unless dismissed.
- Hint has obvious buttons: Search, Files, Terminal, Agent, Notebook.
- `F1` opens quick help.
- `F2` opens the current AI PC Control Map.
- `Ctrl+K` opens Start/search and focuses the search box.

Pass condition:

- The operator can discover the main controls without reading external docs.

## Keyboard desktop behavior

- Arrow keys move between visible desktop icons.
- `Home` and `End` jump first/last icon.
- `Enter` opens focused desktop icon.
- Start menu rows support arrows, Home, End, Enter, Escape.
- Focus ring is visible and not subtle.

Pass condition:

- A keyboard-only operator can launch apps and recover orientation.

## Window behavior

- Windows open visibly and can be focused.
- `Ctrl+Alt+Tab` opens the window switcher.
- Window switcher includes minimized/parked windows.
- `Ctrl+Alt+Home` parks open windows / shows desktop.
- `Ctrl+Alt+End` restores parked windows.
- `Ctrl+Alt+ArrowLeft` snaps active window left.
- `Ctrl+Alt+ArrowRight` snaps active window right.
- `Ctrl+Alt+ArrowUp` maximizes active window.
- `Ctrl+Alt+ArrowDown` centers active window.

Pass condition:

- Multi-window work feels closer to a desktop than a web dashboard.

## Mission and workflow behavior

- Mission dock appears unless collapsed or Safe Mode is active.
- `Ctrl+Alt+.` toggles the mission dock.
- Objective, next action, and notes persist across reloads.
- `Ctrl+Alt+Space` opens Mission Modes.
- Mission modes launch the expected app sets.
- Launching a mission mode updates objective, next action, and mission mode in local state.

Pass condition:

- The desktop has an explicit current mission and can launch coherent work layouts.

## Agent request workflow

- `Ctrl+Alt+Enter` opens Ask the AI PC.
- Submitting a request queues it locally.
- Submitted request updates mission dock next action.
- Submitted request opens Agent Ops.
- `Ctrl+Alt+Shift+Enter` opens Agent Queue.
- Queue can activate, mark done, remove, and clear completed requests.

Pass condition:

- Operator intent becomes visible local workflow state instead of disappearing into chat.

## Proof and handoff

- `Copy handoff` appears in the mission dock after shell mount.
- `Ctrl+Alt+Shift+C` copies a markdown handoff receipt.
- Handoff receipt includes objective, next action, notes, windows, and controls.
- `Ctrl+Alt+Shift+S` records a black-box snapshot.
- `Ctrl+Alt+Shift+V` opens snapshot viewer.
- Snapshot viewer can copy selected snapshot markdown.

Pass condition:

- A human or agent can preserve the current work state and resume from it.

## Preferences and safe reset

- `Ctrl+Alt+,` opens Preferences.
- Preferences shows counts for queue, snapshots, receipts, local keys, and state size.
- Preferences can copy local AI PC state bundle.
- Clear actions confirm before removing state.
- `Ctrl+Alt+Shift+Backspace` toggles Safe Mode.
- Safe Mode hides AI chrome without deleting state.

Pass condition:

- The operator can recover, inspect, and clean local state without devtools.

## Backend sync behavior

Test both file preview and served preview.

For `file://`:

- Sync status says `local-preview` or equivalent.
- No UI crash occurs.
- Requests remain local and manageable.

For `http://` / `https://` with backend:

- `Ctrl+Alt+Shift+U` attempts sync.
- Sync pill updates status.
- Requests receive backend metadata when `/api/pc/agent-task` accepts them.
- Failed sync leaves requests local with error metadata.

Pass condition:

- The system is useful offline and backend-ready online.

## Product feel

- First screen feels like a PC, not only a control manifesto.
- Core apps are visually prioritized on compact screens.
- Advanced systems remain accessible through Start/search/Control Map.
- Overlays feel like operating-system affordances, not separate web pages.
- Safe Mode makes the machine calm quickly.

Pass condition:

- A new operator can sit down and understand: search, files, terminal, agent, notebook, queue, proof, settings.

## Static smoke script

A static marker/asset check script is available at:

`C:\Users\issda\AetherDesk\scripts\aetherdesk-ai-pc-static-smoke.js`

Run manually when validation is allowed:

```powershell
node C:\Users\issda\AetherDesk\scripts\aetherdesk-ai-pc-static-smoke.js
```

This does not prove runtime behavior. It only checks that expected marker blocks and asset path changes exist.

### Expanded static smoke coverage

The static smoke script now checks more than shell markers:

- required runtime files exist
- shell assets use relative paths
- JS and CSS feature markers exist
- manifest JSON parses
- manifest includes core shortcuts, mission modes, backend sync contract, acceptance gates, and safe resume order
- preview server exposes manifest and health endpoints
- PowerShell and CMD launchers contain expected launch behavior
- key docs exist and reference the right operator surfaces

This still does not prove runtime behavior. It is a fast preflight before the visual acceptance checklist.
