test(word-addin): all-buttons Word-online demo recorder + keyless model stand-in

↗ view on GitHub · Amalanand Muthukumaran · 2026-08-03 · b29e56cd

WHY THIS MATTERS
The existing word-web recorder (word-web-session.mjs) demonstrates only the
chat redline flow. Reviewers asked for proof that EVERY actionable control
in the pane works against real Word on the web - including the two insert
buttons and both Improve Writing replace modes that no earlier video showed.
A reproducible recorder is better than a one-off screen capture: anyone can
re-run it and get the same evidence.

WHAT IS IN HERE
- e2e-live/word-web-full-demo.mjs: drives real Word online (same persistent
  profile + sideload path as word-web-session.mjs) through every button:
  chat "Apply N tracked edits" / "Insert below cursor" / "Insert below
  (tracked)", Improve Writing (tracked + plain replace), Proofread apply,
  Anonymise apply, Draft Clause (both inserts), Workflows run + insert,
  Projects tab, and Sign out. Each model flow targets DIFFERENT contract
  text so the tracked changes never collide and the "Apply 2 ..." labels are
  deterministic.
- e2e-live/anthropic-stub.mjs: a minimal Anthropic Messages API stand-in
  (SSE streaming protocol only) with scripted responses per prompt shape.
  Lets the FULL stack run - real Supabase auth, real backend, real SSE,
  real Word JS API - when no funded ANTHROPIC_API_KEY is available. Start
  it on :4141 and launch the backend with
  ANTHROPIC_BASE_URL=http://127.0.0.1:4141.

HOW THE RECORDER WORKS (and one hard-won lesson)
Playwright coordinate clicks (locator.click) inside the task pane silently
NO-OP: the pane is a doubly-nested cross-origin iframe
(word.cloud.microsoft -> officeapps _xdm_ frame -> localhost:3000) and
Chromium mis-routes compositor input for it, while Playwright's
actionability checks still pass. fill(), canvas clicks and the add-ins
dialog are unaffected. The paneClick() helper therefore dispatches DOM
click events via locator.evaluate(el => el.click()) for every pane control.
Repository open-legal-products/mike
Author Amalanand Muthukumaran <mamalanand3@gmail.com>
Authored
Committed
Parents b039be86
Stats 2 files changed , +617
Part of Add a Word add-in for chat and tracked rewrites

Capture this commit into my fork

Download a Markdown prompt that tells Claude how to port this exact commit into your working tree. Run it via claude -p < capture-commit-b29e56cd.md from inside the repo you want the change in.

⬇ Download capture-commit-b29e56cd.md