Skip to content

test(ui-e2e): delete the vacuous MSW worker test and the unused msw declarations - #26032

Merged
objectstack-fleet[bot] merged 1 commit into
mainfrom
claude/project-thread-b1rnu1
Oct 26, 2026
Merged

objectstack-fleet[bot] merged 1 commit into
mainfrom
claude/project-thread-b1rnu1

Conversation

@objectstack-fleet

Copy link
Copy Markdown
Contributor

Requested by Elon · project thread

Part of #25914 — the in-scope half (triage 2026-10-24: "delete the vacuous MSW test"). The card stays open for the items left to the maintainer, listed at the end.

Clause-②: no
Metadata-protocol: none

Summary

Re-measured on main 88531fa:

  • ui/apps/console/public/mockServiceWorker.js does not exist, so ui/e2e/console-rendering.spec.ts "should include the MSW service worker in the build output" always took its silent return (SPA fallback served text/html) and asserted nothing. Deleted.
  • objectui#13453 did not retire msw: it was still declared in ui/package.json (devDependency plus the "msw": { "workerDirectory": ["public"] } block), ui/packages/plugin-form and ui/packages/plugin-grid (devDependencies). git grep for 'msw', msw/*, setupServer, setupWorker outside the lockfile finds no importer in code; the only hit is the example snippet in ui/skills/objectui/guides/testing.md, which is consumer guidance and imports nothing here. Removed, together with the generated worker ui/public/mockServiceWorker.js that the workerDirectory block produced and the console .gitignore entry for a worker nothing generates any more.
  • pnpm-lock.yaml regenerated with pnpm install --lockfile-only: the three importer entries go; msw@2.15.0 stays in the lock as an optional peer of another package, so its transitive entries flip to optional: true rather than disappearing.

Verification (head d1dc66c)

  • dispatch-gates --commands derived 42 families; --ran reconciliation: 42 derived, 38 run (all exit 0), 4 NOT MEASURED (exit 3, need whole-tree dist/: check:dts-closure, check:dual-build-cjs-loads, check:lean-entry-closure, check:sourcemap-no-sources-content), 0 UNRUN. CI's Build/Lint lanes own those four.
  • pnpm install --frozen-lockfile against the new lock: exit 0.
  • e2e test list (there is no e2e completeness gate; check-test-completeness reads vitest logs only): playwright test --list --project=chromium → 77 tests in 12 files (one fewer than main); console-rendering.spec.ts lists its remaining 3 tests.
  • check:commit-card-trailers --range origin/main..HEAD green.
  • No changeset: only devDependencies and test/config files change; nothing in any package's published output moves.

Left for a maintainer ruling (out of scope here)

  • Making the 4-spec live allowlist (test:e2e:live:ci) a required check — a new gate.
  • Moving the informational live lane (live-e2e.yml) from every PR to daily only — a governed workflow change.
  • Triage of the 18 live specs that run in no CI (objectui#13104's list is the starting point).

Noticed, not changed

  • ui/apps/console/vercel.json still excludes mockServiceWorker.js from its SPA rewrite; harmless, left as deploy config.
  • ui/.claude/skills/objectui-contributor/guides/console-development.md still tells contributors to start a mock API with @objectstack/plugin-msw, which docs/upgrading-to-11.md says was removed.
  • console-rendering.spec.ts's console-error filter still ignores MSW / mockServiceWorker messages; inert, left alone.

Generated by Claude Code

🤖 Generated with Claude Code

https://claude.ai/code/session_01ATRAHgc6RT4GLFAL1N5Zfy

…eclarations

The console-rendering spec's "should include the MSW service worker in the
build output" returned without asserting whenever mockServiceWorker.js was
missing, and it is missing: the console ships no worker. msw itself was
declared in the ui root, plugin-form and plugin-grid with no importer, plus a
generated worker under ui/public and a console .gitignore entry for it.

Co-authored-by: Claude <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ATRAHgc6RT4GLFAL1N5Zfy
@objectstack-fleet objectstack-fleet Bot added skip-changeset PR has no user-facing published change; bypasses the changeset gate tests labels Oct 26, 2026
@github-actions github-actions Bot added size/m dependencies Pull requests that update a dependency file labels Oct 26, 2026
@objectstack-fleet

Copy link
Copy Markdown
Contributor Author

席位核对 — ACCEPT at d1dc66cd

Seat review of #26032, part of #25914 (devx seat #6023).

  • 7 files, +45/−403. Not governed (0 of 7 paths on the register). No workflow edit.
  • The vacuous test is gone. should include the MSW service worker in the build output returned silently on the SPA fallback, so it could never fail.
  • The msw removals are proven unused. Its devDependency goes from the ui root, plugin-form and plugin-grid, along with the root msw.workerDirectory block, ui/public/mockServiceWorker.js and the console .gitignore line. On the PR head, a git grep for from 'msw', msw/ and mockServiceWorker finds no importer. What is left is @objectstack/plugin-msw prose in historical notes and ui/AGENTS.md, which is a different package and governed text.
  • Lockfile: the only change is the msw subtree importers going away, with its transitive entries re-marked optional: true because msw is still reachable as an optional peer. No version moves.
  • Path deviation accepted: the deleted worker is ui/public/mockServiceWorker.js. ui/apps/console/public/… never existed, and this is the same retirement.
  • Part of #25914. Left for the maintainer, as the body lists: promoting the 4 live specs to a required check, moving the informational live lane to daily, and triaging the 18 unrun live specs. The seat puts these to the maintainer.
  • Contract review not triggered.

Landing: pr_ready + automerge_enable once every check on d1dc66cd is green, under the maintainer's standing grant.

Card: #25914


Generated by Claude Code

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

Labels

dependencies Pull requests that update a dependency file size/m skip-changeset PR has no user-facing published change; bypasses the changeset gate tests

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants