Verify AI-off navigation and clearer setup guidance (#2316)
Some checks are pending
Build and Test / Secret Scan (push) Waiting to run
Build and Test / Detect changed areas (push) Waiting to run
Build and Test / Provider pair Docker acceptance (push) Blocked by required conditions
Build and Test / Frontend (push) Blocked by required conditions
Build and Test / Backend tests (api) (push) Blocked by required conditions
Build and Test / Backend tests (rest-0) (push) Blocked by required conditions
Build and Test / Backend tests (rest-1) (push) Blocked by required conditions
Build and Test / Script smoke tests & backend build (push) Blocked by required conditions
Build and Test / Benchmarks (push) Blocked by required conditions
Canonical Governance / governance (push) Waiting to run
Canonical Private Governance / private-governance (push) Waiting to run
Public docs / check (push) Waiting to run
Core E2E Tests / Validate E2E tier selection (push) Waiting to run
Core E2E Tests / Offline Organization provisioning (push) Waiting to run
Core E2E Tests / Playwright Core E2E (shard 1/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 2/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 3/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 4/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 5/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 6/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 7/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 8/8) (push) Blocked by required conditions
Core E2E Tests / Agent registration lifecycle (push) Waiting to run
Core E2E Tests / E2E verdict (push) Blocked by required conditions
Unified Agent Native Verification / Linux ARM64 (push) Waiting to run
Unified Agent Native Verification / Linux x64 (push) Waiting to run
Unified Agent Native Verification / Windows x64 (push) Waiting to run
Unified Agent Native Verification / macOS ARM64 (push) Waiting to run
Unified Agent Native Verification / macOS Intel (push) Waiting to run
Unified Agent Native Verification / FreeBSD cross-build contract (push) Waiting to run

## What and why
Record the composed browser verification for AI-off navigation, plain
Actions empty-state guidance, first-source setup guidance, and the
Updates label. These changes address the AI-off/Actions usability work
tracked in Pulse #905 and the setup guidance repairs already merged to
main. This proposal updates the verification receipt only; it does not
introduce another UI implementation or change the frozen v6.4.5 RC.4.

## Included source

`72d8ae6f426fc4870570e983a43cef782e6f6178..496b3047e72e92ad8987994c0bfe9fe90345bfa2`
(commits `2606c9d36a`, `388770a974`, and additive merges `360e15c10d`,
`496b3047e7`). The net file change is
`frontend-modern/browser-verification.json`.

## Validation and limits
The retained offline Chromium desktop/phone browser exercise inspected
Actions, navigation, command palette, shortcuts, setup completion and
Updates with mocked authenticated API responses. This gate confirmed the
receipt's 15 source hashes still match the composed head, its verified
parent remains in ancestry, and `git diff --check` passes. Existing
protected frontend and E2E checks passed for the implementation already
on main. The mock-backed receipt is not live-backend, installed-release
or field acceptance; this proposal still needs exact-head CI.


[How Pulse handles
triage](https://github.com/rcourtman/Pulse/blob/main/docs/AI_TRANSPARENCY.md)
This commit is contained in:
pulse-triage[bot] 2026-09-29 03:36:08 +00:00 • committed by GitHub
commit 8619ab2ec8
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -1,18 +1,48 @@
{
"version": 1,
"base_sha": "a866b27f2a7f038ae06d2c2a404ebfe16375b687",
"verified_at": "2026-09-28T21:20:00Z",
"base_sha": "2606c9d36a0b91c40fbc234fecad2167b7979fec",
"verified_at": "2026-09-28T22:20:33Z",
"result": "passed",
"changed_paths": [
"frontend-modern/src/App.tsx",
"frontend-modern/src/AppLayout.tsx",
"frontend-modern/src/components/Settings/settingsHeaderMeta.ts",
"frontend-modern/src/components/Settings/settingsNavCatalog.ts",
"frontend-modern/src/components/shared/KeyboardShortcutsModal.tsx",
"frontend-modern/src/components/shared/commandPaletteModel.ts",
"frontend-modern/src/components/shared/useCommandPaletteState.ts",
"frontend-modern/src/features/actions/actionPresentation.ts",
"frontend-modern/src/pages/Actions.tsx"
"frontend-modern/src/hooks/useKeyboardShortcuts.ts",
"frontend-modern/src/i18n/messages.de.ts",
"frontend-modern/src/i18n/messages.es.ts",
"frontend-modern/src/i18n/messages.ts",
"frontend-modern/src/pages/Actions.tsx",
"frontend-modern/src/types/config.ts",
"frontend-modern/src/utils/updatesPresentation.ts"
],
"content_sha256": {
"frontend-modern/src/App.tsx": "a6ca67087cce917dc28914701262e6f631eb03621c24c8a773d5d025beb41215",
"frontend-modern/src/AppLayout.tsx": "d1d8bd884c43a20c1dbbde2ddb9f3278eb885b02c21e4cc3fa3fa1089cd1d320",
"frontend-modern/src/components/Settings/settingsHeaderMeta.ts": "d024df468000f183b2452d6b3fcb60fdce1b050107cd2e9d4ac586c4f13f2ddd",
"frontend-modern/src/components/Settings/settingsNavCatalog.ts": "8d3bff1c977b9db02c807d03fd80d40dabfc18c6a59809358c52a938a9c97c88",
"frontend-modern/src/components/shared/KeyboardShortcutsModal.tsx": "a27ccd1bdccf31f1890779fc661ad4e896786594b99ff419160ce6c556fc7c96",
"frontend-modern/src/components/shared/commandPaletteModel.ts": "69a75c17579239c407ba18820e9f4d47d8b8b0e587cdcc3bb154a684b2a17047",
"frontend-modern/src/components/shared/useCommandPaletteState.ts": "95ff00c6e790f17fdd849e845b34e9047f655ec89ca279032ab764da283b4cd4",
"frontend-modern/src/features/actions/actionPresentation.ts": "8e67a99e744cf7dbbc1fc53da1d9697af78a90d95779df3553ee8867c3c51496",
"frontend-modern/src/pages/Actions.tsx": "88ab28e9333652e81770e570c140aa19f0b6d833be3b65fd41afd2e9614f60c5"
"frontend-modern/src/hooks/useKeyboardShortcuts.ts": "f55d67c136d5d8e21ed220b33eac0512d5fae5b5aa835f60fa2570159c140d30",
"frontend-modern/src/i18n/messages.de.ts": "e55a115865e8b2c9cf4352eecac1a2f8996f4e0f51b9c14ddb7cfbe20e5b2f40",
"frontend-modern/src/i18n/messages.es.ts": "a348d63dd816e848cd75a0b5114b0f77c719d16117d9c86db719036fbe106af0",
"frontend-modern/src/i18n/messages.ts": "728aa1cf4b42698e14f16593825249c6a190c43d4ef28e2d4e28756c7c1990db",
"frontend-modern/src/pages/Actions.tsx": "88ab28e9333652e81770e570c140aa19f0b6d833be3b65fd41afd2e9614f60c5",
"frontend-modern/src/types/config.ts": "49ad539bcefc2f87380b744c1da387401151e3f4af9047db8a85b1ce0b70322e",
"frontend-modern/src/utils/updatesPresentation.ts": "4696f8426385aaf287ab610746ca278acc7e23bd377c9739fcfedcf635910634"
},
"routes": [
"/actions"
"/actions",
"/patrol",
"/settings/system-updates",
"/preview/setup-complete?scenario=empty",
"/preview/setup-complete?scenario=vmware-api-backed"
],
"viewports": [
{
@ -25,11 +55,19 @@
}
],
"states": [
"AI off (assistantEnabled false, non-mock backend) before the fix: empty Open tab read Patrol runs in Watch only mode with a Pulse Pro pitch",
"AI off after the fix: empty Open tab reads No actions need attention and Pulse will place proposed or in-progress changes here for review, at 1440px and 375px",
"AI on (mock backend): Open tab lists demo actions from Patrol, empty-state guidance not rendered"
"AI off and AI on with mocked authenticated API responses: Actions empty Open tab, app-shell Patrol navigation, command palette and shortcuts at desktop and phone widths",
"AI off: plain Actions empty-state copy; no Patrol navigation, palette command, shortcut help row or g r navigation",
"AI on: Watch only guidance and Patrol entry points; g r reaches /patrol",
"Empty setup completion preview at desktop and VMware API-backed setup completion preview at phone width show first-source guidance and credential disclosure",
"System Updates settings route at desktop and phone widths labels the item Updates and retains the agent-update handoff to Infrastructure"
],
"interactions": [
"Reloaded /actions at desktop and phone widths in both AI states"
]
"Loaded /actions, opened and closed command palette and keyboard shortcuts, then pressed g r in both AI states at both widths",
"Loaded both setup completion previews and checked connection choices, next-step copy and horizontal overflow",
"Loaded /settings/system-updates at both widths and checked heading and copy"
],
"command": "pulse-worker-browser web-composed-proof.cjs from assigned workspace root; offline Vite preview and Chromium 141.0.7390.37",
"artifacts": "/var/lib/pulse-maintainer/worker-outputs/web-product-mc08uh4u/browser-composed-2606c9d36a",
"notes": "The browser used mocked API responses and no live backend, paired agent or installed release. Mocked WebSocket reconnect warnings do not establish runtime connectivity. Screenshots of Actions, command palette, shortcut help, setup and Updates at both widths were inspected.",
"verified_source_sha": "2606c9d36a0b91c40fbc234fecad2167b7979fec"
}