Skip to content

Run the shipping web demo journey in Chromium CI - #1731

Merged
timohueser merged 2 commits into
developfrom
codex/browser-demo-journey
Sep 13, 2026
Merged

timohueser merged 2 commits into
developfrom
codex/browser-demo-journey

Conversation

@timohueser

@timohueser timohueser commented Sep 13, 2026

Copy link
Copy Markdown
Owner

The web demo CI built WebAssembly but never started a browser. The wasm job now runs one Chromium journey against the same Trunk output and embedded Grimsel assets. It selects Ride log, follows Save to Home, opens Rides and Ride detail with the device controls, switches to Load route and waits for Route received after reset, saves again, then reloads and completes a fresh demo.

The suite observes existing readiness, screen and reset-status exports. It rejects page errors, failed resets, stalled transitions and missing or unchanged canvas output. Playwright 1.63.0 pins Chromium headless shell revision 1243 (153.0.8010.12). There is one worker, bounded state waits and no test retries. CI requires the journey step to succeed; a skipped step cannot pass. The same invocation writes native JUnit, browser diagnostics and failure screenshots/traces to web-demo-browser-ATTEMPT.

Validation:

  • One NO_COLOR=true CARGO_INCREMENTAL=0 CARGO_TARGET_DIR=/Users/timo/Documents/OSM/target trunk build --config docs/Trunk.toml passed. Reused its docs/dist for the browser suite.
  • npm test --prefix apps/obc-web-demo/tests/browser: 1 complete journey passed, 17.5 seconds (18.1 seconds total), Chromium 153.0.8010.12 on macOS. An earlier complete run passed before diagnostics persistence was added; the final run verified the retained evidence.
  • Local JUnit: 1 test, 0 errors/failures/skips. Browser diagnostics record all 14 screen/reset observations and no page or console errors. Browser advisory warnings remain in the log.
  • python3 -m unittest discover -s tools/tests -v: 172 passed, including discovery, selection and aggregate-routing checks.
  • ./tools/obc suites check, python3 tools/suite_registry.py validate-filters, ./tools/obc test affected --base origin/develop --dry-run, actionlint .github/workflows/ci.yml, git diff --check.
  • cargo fmt --all, plus cargo fmt in each standalone board, bootloader and desktop root.
  • python3 docs/build_docs.py --check-links passed. Build/test instructions and testing policy changed in a separate docs commit; no production page or protected public copy changed.

Deliberately omitted: a second Trunk build, native Rust tests/Clippy, the full CI mirror, broad UI snapshots, board/resource builds, and all physical tests. Existing native Demo/storage tests own exact saved-object counts, identities and sample bytes. This browser journey establishes page/WASM/renderer/control/reset integration only. PR #1694 and its production page remain separately owned.

Closes #1728. Merged as ae46d3d3143af9288c530e4112aac1de3ae12ec9 after independent review and run 34788058140 passed all required jobs and the aggregate for head e6b4139bf380f691cafa3e5811e5495a475edbcd. The downloaded browser artifact contains one passing case (18.141 seconds), 14 screen/reset observations and no errors. The earlier run was cancelled by the rebase after its browser job passed; final acceptance uses run 34788058140. Part of #1449 and #1448; other browser/application and physical acceptance obligations remain open.

Independent adversarial review cleared the implementation and the final rebase delta at e6b4139bf380f691cafa3e5811e5495a475edbcd. No blocking findings remain. No checks were repeated by the reviewer.

@coderabbitai

coderabbitai Bot commented Sep 13, 2026

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Advanced

Run ID: 9d8001f1-dbbf-4623-928c-04e7d13bf7ce


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Run the shipping web demo journey in Chromium CI

1 participant