Plain HTML
WARNING/embed/host-smoke/plain-html
- • Open static host harness.
- • Verify iframe mounts and sends ready event.
Next.js host
WARNING/embed/host-smoke/nextjs
- • Run dashboard dev server.
- • Open host smoke route.
- • Confirm hydration does not remount duplicate iframes.
WordPress-like host
WARNING/embed/host-smoke/wordpress-like
- • Load content wrapper harness.
- • Confirm script after HTML still auto-mounts.
Mobile portrait
WARNINGviewport 390x844
- • Open /preview and /embed/demo at mobile width.
- • Check safe-area spacing and page scroll.
Mobile landscape
WARNINGviewport 844x390
- • Rotate landscape.
- • Confirm resize postMessage adjusts iframe height.
Multi-widget page
PASS/embed/multi
- • Open /embed/multi.
- • Confirm each iframe has unique data-kline-widget-id.
Unauthorized domain
WARNINGbackend fixture BOOTSTRAP_UNAUTHORIZED_DOMAIN
- • Start backend fixture.
- • Use an unverified Origin/Referer.
- • Confirm controlled iframe error and no retry loop.
Provider failure
WARNINGbackend fixture BARS_NETWORK_ERROR
- • Force provider error fixture.
- • Confirm error/stale UI label.
Stale/delayed/live label
WARNING/admin/data-status-transparency
- • Open data status transparency route.
- • Confirm live/delayed/stale labels are visually distinct.
PASSPlaywright config
playwright.config.ts is added as the future browser QA entrypoint.
PASSCore route list
E2E cases cover /, /preview, /embed/demo, /embed/multi and /admin/widgets/new.
BLOCKEDPlaywright dependency install
Sandbox cannot run pnpm install; install browsers/deps locally before using pnpm test:e2e.
WARNINGScreenshot baseline
Screenshot baseline policy is specified but not captured in this environment.