Skip to content

Status note (2026-09-25): Dated migration specification, not evidence that the migration ran. Revalidate current branch SHAs, assets and product contracts before implementation; root AGENTS.md and Treehouse policy still control execution.

Main → dev redesign migration audit ​

TL;DR: specification for porting the main-branch marketing redesign into dev (51 work packages, ready with caveats). Specification only — the migration itself is separate future work, not evidence it ran.

Audit started 2026-09-19; finalized 2026-09-20. This is a migration specification, not an implementation. Artifacts live in the context-only BloxClips workspace; no source or authoritative branch was migrated, merged, cherry-picked, pushed, or submitted as a PR.

Final adversarial review: READY WITH DOCUMENTED CAVEATS. Read 11 — execution decisions first. It fixes two-way CSS leakage (rename marketing cr-* as well as scope), product-specific portal reuse, the platform-icon target path, partial-phase dependencies and ambiguous creator defaults. Marketing and Content Rewards remain separate visual systems. No broad catch-all or global Geist correction is authorized. Counts remain unchanged.

Snapshot and coverage ​

Frontend common ancestor: 3e376417a90e400eda3b36ee3da340053182fab2, committed 2026-08-12 11:13:47 −07:00 (18:13:47 UTC), merge PR #7, “PV Tracker: faster review flow and layout fixes.” Audit compares fetched origin/main ad33ecb44f208d91e69aae215471e70941111483 and origin/dev 7c3f0079f7a4847ff698c508470757ca81e64b36. Local branches named main/dev are stale and were not used as the authority.

All 6 main commits and their diffs were inspected. The dev range contains 104 commits, enumerated in the history artifacts. There are 185 distinct touched path names, including one transient route; 184 net changed names, or 182 net name-status records after Git folds the two data moves into renames. Every touched name is classified in the file ledger.

The manifest has 51 semantic items: 8 PORT, 31 ADAPT, 4 ALREADY PRESENT, 8 SKIP. These count work packages, not files. One item can require several files, and one file can contain both a useful design change and an excluded architectural change.

Findings and recommendation ​

Main introduced a coherent public “Toybox” design: Rubik/Space Mono, blue/orange fields, paper cards, thick ink borders and hard shadows. The change includes two homepage audiences, services and case studies, a Calendly-first contact page, creator acquisition/lessons, careers, clipping education, legal/guide skins, local media, and extensive search metadata. The final two commits matter: /contact becomes booking, /book-call disappears, careers is added, and social previews change. The earlier handoff is not an accurate final-state specification.

Dev has moved application responsibilities to app/(marketing), surfaces/marketing, features, and shared components, with independent product/report/invoice surfaces. Reimplement the main presentation within that structure. Keep one marketing shell, add the new public routes there, and preserve feature-owned data and shared services. Do not add main's (site) group next to (marketing) or revive app-local dashboard implementations.

No required Bloxclips-backend or metric-scraper code migration was found. The contact form uses an identical existing Next route; dev's Roblox routes support the required response subset. Calendly replaces the public booking UI without requiring removal of the existing backend booking service. The new optional Discord application intake is a Next server action with new environment configuration; it is not a backend database/application system. It needs validation, abuse controls and honest delivery handling before enablement. Backend main/dev contact and booking files were compared and do not supply a missing redesign contract. See 06.

Highest risks:

  • Root replacement would drop dev's private-report telemetry filtering, toast viewport, and dynamic rendering policy.
  • Main's creator .cr-card CSS collides with dev's product .cr-card; route-group CSS imports do not make selectors private.
  • Main legal/financial copy contains retired payout providers; some existing dev legal copy also disagrees with current UI. Apply the legal visual shell to dev text and flag unresolved copy, not to main's financial implementation.
  • Creator application localStorage is not verification, group membership, or access control. The configured Discord invite is absent in source and defaults to an invalid placeholder.
  • Main says creators are paid for every view from posting. That cannot override dev's approved earning periods, paused/exhausted-budget exclusions, versioned rates, or canonical funding system.
  • A broad marketing catch-all can intercept dev's affiliate rewrite /r/:code. Preserve and test that path, auth, invoices and private reports.

Evidence and handoff ​

Start with 03 design specification, 04 architecture mapping, and 09 implementation plan. The manifest supplies exact evidence files, source commits, proposed targets, dependencies, phases and acceptance for every item. evidence/commits/ preserves all six patches; 01 enumerates both histories. The asset ledger and screenshots are independent supporting evidence.

Local rendered comparisons cover main/dev desktop/mobile public surfaces; external browser resources were blocked, so Calendly/YouTube/CDN fallbacks are explicitly not production-provider validation. No application submission, email, Discord message, booking, payout or other financial action was dispatched. Baseline tests/build/typecheck and limitations are recorded in 10 and evidence/validation-results.json.

The next agent must acquire a new frontend Treehouse lease from refreshed origin/dev, review changes since the pinned dev SHA, then execute phases A–G with the checkpoints in11. No backend worktree or scraper investigation is needed unless that new delta establishes a real dependency. Two owner sign-offs remain for publication/enablement: approved Discord destination/delivery settings; claims/asset-rights/legal publication approval. Defaults are explicit local education and unavailable private destination, not a blocked implementation or fabricated integration.

Both investigation leases were returned clean. evidence/primary-before.json and primary-after.json record unchanged primary checkout HEADs, main/dev branch refs and working-tree status for all three repositories. The Treehouse skill kept visual/build execution isolated; the verification skill required the final coverage and state checks. These workspace-level documents are the handoff; no repository commit or migration PR was created.