refactor(front): one page file per route, leaner Room services, tests on the real route tree #534
No reviewers
Labels
No labels
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
spec
wayfinder:grilling
wayfinder:map
wayfinder:prototype
wayfinder:research
wayfinder:task
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
amaurycoudr/chess-project!534
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "claude/spec-408-implementation-3f8d53"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
The front's rules as the owner decided (ADR 0043 supersedes 0011), and the refactor they allow. Nothing a Player sees changes.
front/view-is-compositiondeleted; routes import page files,services/and exported constants;@/routeTree.genonly fromapp/; widgets for connected non-route pieces.*.page.tsxreplace 26 view/UI files; not-found screens import directly.Evidence
auth.harness,games.harness,home.testre-declared/games' loader,/account's search validator, profile params…).After: they mount the app's router through
@/app/router.harness. Gate green on Node 24: lint, typecheck, test (engine 742, api 826, front 1385), build, format:check.@/routeTree.gen→ fails; a component importing a widget → fails; a test importing@/app/router.harness→ passes, any otherapp/file → fails.Merge Danger
Door: two-way
Blast Radius: front-structure
Refactor and rule edits only. Where a test changed beyond its mount, it follows from the real tree:
fetchand allows only the site frame's/rpc/accountand/rpc/devtoolsreads, once each.waitForaround five landing checks (sign-in, sign-up ×2, reset-password, account delete) and home's "create called once": navigation now settles a tick later. Same values.<main>, since the site frame adds its own.Owner decisions folded in
<name>.widget.tsx:auth/account-nav.widget.tsx(site frame) andauth/claim-banner.widget.tsx(My games). Routes andapp/may import widgets;components/may not.@/app/router.harness, their one allowedapp/import.lib/routes.harness.tsxis deleted, and onlyapp/imports@/routeTree.gen.Proposed rule changes
.agents/skills/to-spec/SKILL.mdstill gives "front tests go through the view" as an example; should read "the page".Closes #408
Closes #414
Closes #415
Closes #416
Closes #417
Screenshots
Before is production, after is this merge request's review app at
f9f53ad.Desktop
Mobile
added 2 commits
7e2d65c9- refactor(front): merge each route's view and UI into one page file43e5989f- chore(front): drop the transitional view allowances from the lint configCompare with previous version
added 1 commit
7263e908- refactor(front): group the Room's services by concept and merge its announcement hooksCompare with previous version
added 2 commits
42ee1332- test(front): render the auth, games and home view tests on the app's route treee1a1872e- Merge branch 'claude/spec-408-implementation-3f8d53' into worktree-agent-ad96c6f38065c53bcCompare with previous version
added 1 commit
31b760f4- fix(front): address the spec 408 review: home I/O check, route-tree lint, auth linkCompare with previous version
changed the description
marked this merge request as ready
added 8 commits
68c95e41- 1 commit from branchmaina37c5c0f- feat(front): one page file per route in the front's rules and lint30b3ae60- refactor(front): merge each route's view and UI into one page file2a892714- chore(front): drop the transitional view allowances from the lint config605fbf62- test(front): render the auth, games and home view tests on the app's route tree1369dbd8- refactor(front): group the Room's services by concept and merge its announcement hooks9de3d0d7- fix(front): address the spec 408 review: home I/O check, route-tree lint, auth link8ec9c87d- refactor(front): add the widget suffix and mount vertical tests on the app's routerCompare with previous version
changed the description
aborted the automatic merge because the source branch was updated. Learn more.
added 1 commit
f9f53ad5- fix(front): refuse an unserved procedure in the fake API instead of letting it throughCompare with previous version
mentioned in merge request !536
mentioned in merge request !537