Skip to content

feat(redesign): scaffold src/v1/ router boundary (Phase 1 - Foundation PR 2b)#470

Merged
vitorvasc merged 9 commits into
open-telemetry:mainfrom
vitorvasc:feat/84-pr2b-v1-scaffolding
May 14, 2026
Merged

feat(redesign): scaffold src/v1/ router boundary (Phase 1 - Foundation PR 2b)#470
vitorvasc merged 9 commits into
open-telemetry:mainfrom
vitorvasc:feat/84-pr2b-v1-scaffolding

Conversation

@vitorvasc
Copy link
Copy Markdown
Member

@vitorvasc vitorvasc commented May 13, 2026

Introduces a single V1_REDESIGN boundary read in App.tsx that swaps between two top-level sub-apps, each owning its own directory tree. Implements the 2026-05-12 routing pivot.

Contributes to #84 and #370.

What's in this PR

  • New directory ecosystem-explorer/src/v1/. Components created on previous PRs were moved into it as part of the same diff (history preserved via git mv)
  • src/App.test.tsx extended with a boundary-swap test that stubs import.meta.env.VITE_FEATURE_FLAG_V1_REDESIGN to flip between branches and asserts the right chrome renders.
  • src/v1/V1App.test.tsx covers the v1 sub-app in isolation (navbar mounts, primary nav landmark labelled, .v1-app wrapper present).
  • Planning artifacts in projects/84-ui-ux-design/ updated to reflect the locked decisions from this PR's planning session (PR 6 stays separate, routes mirrored, isEnabled() retained at the boundary even though both branches ship in both bundles, body bg via main.tsx carve-out).

Verification

  • bun run typecheck clean.
  • bun run lint clean.
  • bun run test passes (837 tests across 85 files).
  • bun run format clean (Prettier on planning docs).
  • Local sanity, two tabs:
    • bun run serve with no env: http://localhost:5173/ renders the legacy <Header /> and home page. All legacy routes navigable. No console errors. .td-navbar and .v1-app absent from the DOM.
    • VITE_FEATURE_FLAG_V1_REDESIGN=true bun run serve: same URL renders the opentelemetry.io-style dark navbar. Body bg paints #212529 (dark) / #fff (light) from the first frame. Theme-toggle dropdown switches Light / Dark / Auto and persists across reload. All canonical paths reachable. Legacy footer renders at the bottom as the placeholder.
  • Netlify preview parity: pushing to feat/84-pr2b-v1-scaffolding ships v1 reachable on the preview URL via the existing feat/84-* pattern in netlify.toml. Production / main stays legacy-only.

Co-authored with Claude Opus 4.7.

vitorvasc added 7 commits May 13, 2026 09:47
Signed-off-by: Vitor Vasconcellos <vvasconcellos1@gmail.com>
Signed-off-by: Vitor Vasconcellos <vvasconcellos1@gmail.com>
…p.tsx

Signed-off-by: Vitor Vasconcellos <vvasconcellos1@gmail.com>
Signed-off-by: Vitor Vasconcellos <vvasconcellos1@gmail.com>
Signed-off-by: Vitor Vasconcellos <vvasconcellos1@gmail.com>
- Add src/v1/index.ts barrel re-exporting V1App so App.tsx's
  `import { V1App } from "@/v1"` resolves
- Rewrite the internal imports inside nav-bar.tsx and theme-toggle.tsx
  from `@/components/...` to `@/v1/components/...` so the moved files
  resolve their siblings correctly
- Update the file-header comments in nav-bar.tsx and theme-toggle.tsx
  to point at the new `src/v1/styles/*.css` locations
- Add a single isEnabled("V1_REDESIGN") read in main.tsx that sets the
  .v1-app class on document.documentElement before React mounts, so
  body paints against v1 surface tokens from the first frame instead
  of flashing legacy navy during the React mount window
- Document the carve-out in v1-routing-pivot.md (added as an explicit
  pivot rule, PR 8 cleanup checklist extended from 4 to 5 items)
- Expand the foundation-audit CSS scoping section with the two
  application sites for .v1-app (html via main.tsx, V1App wrapper div)
- Extend the 2026-05-13 decision-log row in NEXT-STEPS.md with the
  body-bg rationale
@vitorvasc vitorvasc requested a review from Copilot May 13, 2026 13:42
@vitorvasc vitorvasc requested review from a team as code owners May 13, 2026 13:42
@netlify
Copy link
Copy Markdown

netlify Bot commented May 13, 2026

Deploy Preview for otel-ecosystem-explorer ready!

Name Link
🔨 Latest commit 99a4c18
🔍 Latest deploy log https://app.netlify.com/projects/otel-ecosystem-explorer/deploys/6a04897d6289850008da3380
😎 Deploy Preview https://deploy-preview-470--otel-ecosystem-explorer.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@otelbot
Copy link
Copy Markdown
Contributor

otelbot Bot commented May 13, 2026

PR Screenshots

Home

Light

Desktop Tablet Mobile
home desktop light home tablet light home mobile light

Dark

Desktop Tablet Mobile
home desktop dark home tablet dark home mobile dark
Instrumentation List

Light

Desktop Tablet Mobile
instrumentation-list desktop light instrumentation-list tablet light instrumentation-list mobile light

Dark

Desktop Tablet Mobile
instrumentation-list desktop dark instrumentation-list tablet dark instrumentation-list mobile dark
Detail — Details tab

Light

Desktop Tablet Mobile
detail-details desktop light detail-details tablet light detail-details mobile light

Dark

Desktop Tablet Mobile
detail-details desktop dark detail-details tablet dark detail-details mobile dark
Detail — Telemetry tab

Light

Desktop Tablet Mobile
detail-telemetry desktop light detail-telemetry tablet light detail-telemetry mobile light

Dark

Desktop Tablet Mobile
detail-telemetry desktop dark detail-telemetry tablet dark detail-telemetry mobile dark
Detail — Configuration tab

Light

Desktop Tablet Mobile
detail-configuration desktop light detail-configuration tablet light detail-configuration mobile light

Dark

Desktop Tablet Mobile
detail-configuration desktop dark detail-configuration tablet dark detail-configuration mobile dark
Collector List

Light

Desktop Tablet Mobile
collector-list desktop light collector-list tablet light collector-list mobile light

Dark

Desktop Tablet Mobile
collector-list desktop dark collector-list tablet dark collector-list mobile dark
Collector Detail

Light

Desktop Tablet Mobile
collector-detail desktop light collector-detail tablet light collector-detail mobile light

Dark

Desktop Tablet Mobile
collector-detail desktop dark collector-detail tablet dark collector-detail mobile dark

Captured from 99a4c18 on feat/84-pr2b-v1-scaffolding · workflow run· 2026-05-13 14:43 UTC

Signed-off-by: Vitor Vasconcellos <vvasconcellos1@gmail.com>
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

@vitorvasc vitorvasc requested a review from Copilot May 13, 2026 14:08
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 16 out of 24 changed files in this pull request and generated 3 comments.

Comment thread ecosystem-explorer/src/App.tsx
Comment thread projects/84-ui-ux-design/v1-routing-pivot.md
Comment thread projects/84-ui-ux-design/NEXT-STEPS.md
@vitorvasc vitorvasc changed the title scaffold src/v1/ router boundary (Phase 1 - Foundation PR 2b) feat(redesign): scaffold src/v1/ router boundary (Phase 1 - Foundation PR 2b) May 13, 2026
Signed-off-by: Vitor Vasconcellos <vvasconcellos1@gmail.com>
github-actions Bot pushed a commit that referenced this pull request May 13, 2026
@vitorvasc vitorvasc added this pull request to the merge queue May 14, 2026
Merged via the queue into open-telemetry:main with commit f3aba3a May 14, 2026
15 checks passed
@vitorvasc vitorvasc deleted the feat/84-pr2b-v1-scaffolding branch May 14, 2026 10:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants