Fix #438: fork page UX + mobile rule #441

Merged
crueber merged 1 commit from fix/issue-438 into main 2026-09-13 13:27:58 +00:00
Owner

Five-part fork UX pass (SPA + AGENTS.md only; no backend, SDK, or API change; no new deps):

  1. Fork is a top-level route: /:owner/:name/fork hoisted out of the Repo shell in web/src/index.jsx — same URL (no dead link, no redirect), standalone page under the site header only. Safe: Fork.jsx already reads owner/name from params, never the Repo context.
  2. Copy cleanup: both hints removed; Starting branch -> Default branch (label + both aria-labels); parent-default option stays.
  3. Mobile collapse: both field rows grid-cols-1 base, sm:grid-cols-2; zero page overflow at 390px.
  4. AGENTS.md §2 normative mobile-viewport rule (~390px check required for browser-facing changes).
  5. Fork/Clone text-only matched pair: glyph dropped, shared pill class; count still reads summary.forks.

Law-12 decisions: docs/go/12_web_ui.md (Decisions + §2.3 route table).

Tests: new web/test/unit/fork-page-438.test.js (6 tests); full node --test 919 total / 917 pass / 2 fail — the 2 are pre-existing live-server smoke subtests, identical on pristine main (913/911/2); vite build + esbuild green. Browser proof at desktop + 390px open (shared-daemon loopback guard).

Five-part fork UX pass (SPA + AGENTS.md only; no backend, SDK, or API change; no new deps): 1. Fork is a top-level route: `/:owner/:name/fork` hoisted out of the Repo shell in web/src/index.jsx — same URL (no dead link, no redirect), standalone page under the site header only. Safe: Fork.jsx already reads owner/name from params, never the Repo context. 2. Copy cleanup: both hints removed; Starting branch -> Default branch (label + both aria-labels); parent-default option stays. 3. Mobile collapse: both field rows grid-cols-1 base, sm:grid-cols-2; zero page overflow at 390px. 4. AGENTS.md §2 normative mobile-viewport rule (~390px check required for browser-facing changes). 5. Fork/Clone text-only matched pair: glyph dropped, shared pill class; count still reads summary.forks. Law-12 decisions: docs/go/12_web_ui.md (Decisions + §2.3 route table). Tests: new web/test/unit/fork-page-438.test.js (6 tests); full node --test 919 total / 917 pass / 2 fail — the 2 are pre-existing live-server smoke subtests, identical on pristine main (913/911/2); vite build + esbuild green. Browser proof at desktop + 390px open (shared-daemon loopback guard).
12_web_ui.md §2.3 + Decisions; AGENTS.md §2 working rules.
Sign in to join this conversation.
No description provided.