ワンクリックで
e2e-spec
// Use when about to write or modify a Playwright e2e spec under `packages/danmaku-anywhere/e2e/`. Points at the canonical doctrine and surfaces the load-bearing rules so the spec doesn't get bounced in review.
// Use when about to write or modify a Playwright e2e spec under `packages/danmaku-anywhere/e2e/`. Points at the canonical doctrine and surfaces the load-bearing rules so the spec doesn't get bounced in review.
Use to monitor an open PR for AI/bot review comments, evaluate them critically, push fixes for real issues, and resolve threads — capped at a sensible duration so it self-terminates. Invoke as "babysit PR
Use when an extension change needs agentic verification in a real browser — content scripts, popup UI, network calls, fonts, console errors. Spawns the agent's own Chrome via the chrome-devtools-ext MCP. Complements (does not replace) human-eye verification via `pnpm dev:browser`.
Use when you need to load a specific published preview/nightly extension build into the agent's MCP browser by run-number, branch name, or tag. Faster than rebuilding locally when you only want to exercise an existing artifact.
Use when evaluating review comments from AI reviewers (gemini-code-assist, copilot-pull-request-reviewer) on a PR. Default to assuming the reviewer is right; verify before declining. Includes reporting in chat and resolving threads after handling.
Use when finishing a brainstorm, writing a design spec, or producing an implementation plan in this project. Directs the output to ClickUp as a doc on the DA-XXX task instead of saving to the repo or local disk.
| name | e2e-spec |
| description | Use when about to write or modify a Playwright e2e spec under `packages/danmaku-anywhere/e2e/`. Points at the canonical doctrine and surfaces the load-bearing rules so the spec doesn't get bounced in review. |
The source of truth is packages/danmaku-anywhere/e2e/AGENTS.md. It auto-loads when you're already working in that directory; this skill exists for the path where da-dev step 3 makes you start an e2e change from elsewhere. Read AGENTS.md end-to-end before writing the first test(). This file is the cheat sheet, not a replacement.
da.season.get(...), mount mirror) complement UI assertions; they don't replace them.popup.toast.expectSuccess / expectError (scoped by data-severity), not raw text. When you must match text, use a regex that matches both en and zh.e2e/pom/ rather than reaching into selectors from a spec. If a one-off selector is genuinely not worth a POM method, leave a one-line comment explaining why.test(). Names what's exercised and what's asserted. No design-doc essays, no step-by-step narration.These are enforced by e2e/setup/fixtures.ts; you don't opt in.
test.use({ allowedNetworkOrigins: [...] }) with a one-line justification per entry. Prefer per-spec mocks.console.error during the test body fails it. Opt out via test.use({ expectedConsoleErrors: [/.../] }) with a one-line justification; treat opt-outs as tech debt.da.mount.waitForRegistration is grandfathered; new equivalents need explicit PR justification.IS_DA_E2E branches in source. The flag stays, but every branch needs a one-line comment naming why the e2e path differs.If you're writing under e2e/specs/migration/, AGENTS.md has a dedicated section. Two things to internalize before starting:
Extensions.loadUnpacked in a persistent context. Close-and-relaunch is NOT a valid swap (Chrome keeps prior compiled SW bytecode).user_data_dir must be a short path (os.tmpdir()), not testInfo.outputPath('userDataDir'). Chrome's IDB silently breaks on Windows paths over MAX_PATH (260 chars).Don't write a migration spec from this cheat sheet alone; read AGENTS.md's migration section in full.
packages/danmaku-anywhere/e2e/AGENTS.md.e2e/specs/ and use it as a template. POM usage, seeding patterns, assertion shape.browser-verify while authoring to find selectors, confirm timing, and capture the event sequence. The dev API (globalThis.__da.describe()) lists what's available for seeding.cd packages/danmaku-anywhere && pnpm test:e2e -- <spec>. Iterate.pnpm test:e2e); the suite is the load-bearing verification per da-dev step 4.AGENTS.md wins. See reviewing-ai-feedback. "suggested change violates a project convention" is a known false-positive pattern. Decline citing the rule.