refactor(website): split graph benchmark components#303
Merged
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
This PR refactors the website benchmark and landing UI by splitting the previously monolithic graph benchmark component into lane-specific components (Common, Dedicated, Structural), standardizing website component naming to the TtscWebsite* convention, and moving exported website data types into website/src/structures.
Changes:
- Split the code-graph benchmark UI into Common/Dedicated/Structural sections with shared data + UI helpers.
- Rename landing/benchmark/playground/graph viewer components to
TtscWebsite*and update MDX pages accordingly. - Centralize benchmark + graph-viewer types under
website/src/structuresand adjust reducers/formatters to consume them.
Reviewed changes
Copilot reviewed 48 out of 48 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| website/src/structures/ITtscWebsiteGraphViewer.ts | Adds shared type definitions for the 3D graph viewer raw/reduced payloads. |
| website/src/structures/ITtscWebsiteBenchmarkGraph.ts | Adds shared type definitions for the code-graph benchmark report + reduction model. |
| website/src/structures/ITtscWebsiteBenchmark.ts | Adds shared type definitions for the compiler-performance benchmark report. |
| website/src/movies/landing/TtscWebsiteLandingSponsors.tsx | Renames sponsors section component and updates internal imports. |
| website/src/movies/landing/TtscWebsiteLandingSectionEyebrow.tsx | Renames the eyebrow component + props to the TtscWebsite* convention. |
| website/src/movies/landing/TtscWebsiteLandingRestOfToolchain.tsx | Renames toolchain section component and updates internal imports. |
| website/src/movies/landing/TtscWebsiteLandingPluginEcosystem.tsx | Renames plugin ecosystem section component and updates internal imports. |
| website/src/movies/landing/TtscWebsiteLandingMovie.tsx | New landing “movie” composition component using renamed sections. |
| website/src/movies/landing/TtscWebsiteLandingLintAsCompileError.tsx | Renames diagnostics section component and updates internal imports. |
| website/src/movies/landing/TtscWebsiteLandingInTheBrowser.tsx | Renames playground section component and updates internal imports. |
| website/src/movies/landing/TtscWebsiteLandingHero.tsx | Renames hero section component. |
| website/src/movies/landing/TtscWebsiteLandingFooter.tsx | Renames footer section component. |
| website/src/movies/landing/TtscWebsiteLandingFadeIn.tsx | New wrapper component replacing the old FadeIn module under the new naming. |
| website/src/movies/landing/TtscLandingMovie.tsx | Removes the old landing movie composition component. |
| website/src/movies/landing/FadeIn.tsx | Removes the old FadeIn wrapper component. |
| website/src/content/index.mdx | Updates homepage MDX to render TtscWebsiteLandingMovie. |
| website/src/content/docs/graph/viewer.mdx | Updates MDX import/usage to the renamed 3D graph viewer component. |
| website/src/content/docs/graph/index.mdx | Updates MDX import/usage to the new Common graph benchmark component. |
| website/src/content/docs/graph/design.mdx | Renames LocalSource usage to TtscWebsiteLocalSource. |
| website/src/content/docs/graph/compare.mdx | Updates MDX import/usage to the new Common graph benchmark component. |
| website/src/content/docs/benchmark/performance.mdx | Updates MDX import/usage to the renamed performance dashboard component. |
| website/src/content/docs/benchmark/index.mdx | Updates MDX import/usage to graph benchmark summary via the new Common component. |
| website/src/content/docs/benchmark/graph.mdx | Splits the page into Common/Dedicated/Structural sections with new components. |
| website/src/components/TtscWebsiteLocalSource.tsx | Converts LocalSource to a single default-export component and updates file-loader import. |
| website/src/components/playground/TtscWebsitePlaygroundShell.tsx | Renames the playground shell wrapper component. |
| website/src/components/internal/getTtscWebsiteLocalSourceFile.ts | Renames local-source file loader to a default export. |
| website/src/components/graph/TtscWebsiteGraphViewer3D.tsx | Renames graph viewer component and switches to shared structures + new reducer module name. |
| website/src/components/graph/TtscWebsiteGraphReduce.ts | Refactors reducer to consume shared structures and export a default helper object. |
| website/src/components/benchmark/types.ts | Removes legacy benchmark schema types from components folder (moved to structures). |
| website/src/components/benchmark/TtscWebsiteBenchmarkSpeedupBar.tsx | Updates speedup bar to consume shared benchmark structures + formatter module. |
| website/src/components/benchmark/TtscWebsiteBenchmarkProjectCard.tsx | Updates project card to use shared benchmark structures + renamed formatter/bar components. |
| website/src/components/benchmark/TtscWebsiteBenchmarkPerformanceSummary.tsx | Updates performance summary to consume shared benchmark structures + renamed formatter. |
| website/src/components/benchmark/TtscWebsiteBenchmarkHostPanel.tsx | Updates host panel to consume shared benchmark structures and follow naming convention. |
| website/src/components/benchmark/TtscWebsiteBenchmarkFormat.ts | Refactors format helpers into a default-export object and switches to shared structures. |
| website/src/components/benchmark/TtscWebsiteBenchmarkDashboard.tsx | Updates dashboard to use shared benchmark structures + renamed host panel + formatter object. |
| website/src/components/benchmark/GraphBenchmark.tsx | Removes the old monolithic graph benchmark component. |
| website/src/components/benchmark/graph/useTtscWebsiteBenchmarkGraphData.ts | Adds shared hook to load/cache the graph benchmark report and derive prompt modes. |
| website/src/components/benchmark/graph/TtscWebsiteBenchmarkGraphUi.tsx | Adds shared UI tokens and small presentational helpers for graph benchmark panels. |
| website/src/components/benchmark/graph/TtscWebsiteBenchmarkGraphTabs.tsx | Adds shared tabs component for model/project selection. |
| website/src/components/benchmark/graph/TtscWebsiteBenchmarkGraphStructural.tsx | Adds the Structural Coverage panel component. |
| website/src/components/benchmark/graph/TtscWebsiteBenchmarkGraphSearchParam.ts | Adds a small helper for reading/writing URL search params in the benchmark UI. |
| website/src/components/benchmark/graph/TtscWebsiteBenchmarkGraphReductionTools.ts | Adds helper to map a model group into the reduction tool series list. |
| website/src/components/benchmark/graph/TtscWebsiteBenchmarkGraphDedicated.tsx | Adds Dedicated lane graph benchmark component (project-specific prompts). |
| website/src/components/benchmark/graph/TtscWebsiteBenchmarkGraphData.ts | Extracts graph benchmark reshaping/labeling/reduction utilities from the old monolith. |
| website/src/components/benchmark/graph/TtscWebsiteBenchmarkGraphCommon.tsx | Adds Common lane graph benchmark component (shared onboarding prompt). |
| website/src/components/benchmark/graph/TtscWebsiteBenchmarkGraphChart.tsx | Adds shared token-reduction chart rendering component. |
| website/src/app/playground/page.tsx | Updates Next page to dynamically load the renamed playground shell component. |
| experimental/benchmark/graph/agent-ab.mjs | Records a fixed effort field and threads it through Claude invocation + report output. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Comment on lines
+3
to
+7
| interface TtscWebsiteLandingFadeInProps { | ||
| children: React.ReactNode; | ||
| delay?: number; | ||
| className?: string; | ||
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
GraphBenchmarkcomponent.TtscWebsite*convention and move exported website types intowebsite/src/structures, keeping one top-level export per component/structure file.Tests
pnpm formatgit diff --checkpnpm exec prettier --checkon changed website/benchmark fileswebsite/src/components,website/src/movies, andwebsite/src/structures(34files)pnpm --dir website run build:next(Next production compile succeeds, then type-check fails on pre-existing vendored benchmark UI import:public/benchmark/codebase-memory-mcp/graph-ui/@/components/ui/badge.tsxcannot resolveclass-variance-authority)/docs/benchmark/graph/,/docs/benchmark/performance/,/docs/graph/viewer/, and/