jaah.ai: embed the Jarvis website widget (jaah-ai/sales)
TARGET PROJECT: jaah-ai/sales (the jaah.ai marketing site). Filed under epic 5159 only because the Finisher can create nothing elsewhere; the operator moves this task to the sales project before it runs. Do not run it in jaah-ai/jaah.
Epic 5159 (Website Jarvis) accepted embedding Jarvis on BOTH docs.jaah.ai and jaah.ai (PRD R13 / AC14). docs.jaah.ai shipped in jaah-ai/jaah (PR #4558). jaah.ai is not embedded yet: the site loads no Jarvis script today.
Fix: add the widget's one script tag to the site's shared page shell (every page, every locale):
<script type="module" async src="https://docs.jaah.ai/jarvis/jarvis.js" data-site="www" data-locale="<page locale>"></script>
- `data-locale` = the page's locale (en ar de es fr ru zh); omit it if `<html lang>` is already set correctly.
- If the site has a cookie-consent module, wire `data-consent` (absent | pending | granted) as jaah-ai/jaah apps/site-widget/README.md § Consent describes, and mark the cookie banner `data-jarvis-avoid` so the launcher lifts above it.
- Widget contract (attributes, layout, z-index, consent): jaah-ai/jaah `apps/site-widget/README.md`.
Prerequisites (owner, not code): the API must accept jaah.ai as a host. It does when `jaah.ai` (and `www.jaah.ai` if served) is in Settings › Site enquiries allowed hosts (it gates the waitlist already) or in Settings › Support agent › Website hosts, and on the reCAPTCHA Enterprise key's domains (it already serves the waitlist). The widget file is served from docs.jaah.ai only after jaah-ai/jaah `develop` is promoted to `master` (human gate) — until then the script 404s on prod and nothing renders (harmless).
Out of scope: any change in jaah-ai/jaah (widget, API, nginx); building a native React chat component; changing the site's layout, analytics or performance budget beyond adding this tag; Arabic RTL polish inside the widget (a jaah-ai/jaah concern).
Done means:
- The tag is present in the built HTML of the home page, a blog post and a non-English page (e.g. /de/): `curl -s https://<preview or prod>/ | grep 'jarvis/jarvis.js'` matches, with `data-site="www"`.
- The script is async/module, so Lighthouse on the home page shows no new render-blocking resource and no LCP regression above 100ms vs. without the tag.
- Once the jaah-ai/jaah promotion is live: on jaah.ai in a private window, the launcher shows bottom-right without covering page content or the cookie banner at 360/768/1280; asking "What offers or plans does Jaah have?" returns an answer citing a jaah.ai page; on /de/ the widget chrome is German. Screenshots cited in the report.
- The sales repo's own gate is green.
Activity
- Ready
- Runner ended (complete)
- Runner ended (done)