Rewrite leftover frontend pages into src overlay.

Dashboard, project, report, progress, admin, feedback, and marketing
keep routes and layout. Billing/Clerk/analytics stay imported seams.
This commit is contained in:
2026-09-20 19:53:33 +02:00
parent 2613678442
commit a011351828
49 changed files with 12034 additions and 0 deletions
@@ -0,0 +1,47 @@
"""Leftover frontend pages resolve from periscope/src."""
from __future__ import annotations
from pathlib import Path
ROOT = Path(__file__).resolve().parents[1]
SRC = ROOT / "periscope" / "src" / "frontend" / "src"
def test_rewritten_pages_are_src():
rels = [
"app/(app)/layout.tsx",
"app/(app)/dashboard/page.tsx",
"app/(app)/project/[id]/page.tsx",
"app/(app)/project/[id]/report/page.tsx",
"app/(app)/project/[id]/progress/page.tsx",
"app/(app)/admin/page.tsx",
"app/(app)/feedback/page.tsx",
"app/(marketing)/page.tsx",
"app/(marketing)/contact/page.tsx",
"app/(marketing)/changelog/page.tsx",
"app/(marketing)/privacy/page.tsx",
"app/(marketing)/terms/page.tsx",
"app/(marketing)/file-guide/page.tsx",
"app/layout.tsx",
"components/layout/sidebar.tsx",
"hooks/use-pipeline-progress.ts",
"hooks/use-report.ts",
]
for rel in rels:
path = SRC / rel
assert path.is_file(), rel
head = path.read_text(encoding="utf-8")[:400]
assert "Native Periscope overlay" not in head
def test_landing_keeps_pricing_seam_import():
text = (SRC / "app/(marketing)/page.tsx").read_text(encoding="utf-8")
assert "PricingSection" in text
assert "PRICING_NAV_LINK" in text
def test_root_layout_keeps_auth_and_analytics_seams():
text = (SRC / "app/layout.tsx").read_text(encoding="utf-8")
assert "ClerkThemeProvider" in text
assert "RedditPixel" in text