Skip to content

feat(landing): redesign landing page and update pipeline#127

Merged
sungmanch merged 14 commits intomainfrom
feat/landing-redesign-and-pipeline-updates-20260225
Feb 26, 2026
Merged

feat(landing): redesign landing page and update pipeline#127
sungmanch merged 14 commits intomainfrom
feat/landing-redesign-and-pipeline-updates-20260225

Conversation

@sungmanch
Copy link
Copy Markdown
Collaborator

Summary

  • Landing page redesign: Remove 17 deprecated components (AnalysisShowcase, SectionNav, etc.) and add 6 new components (BrandLogo, HeroFlowchart, LandingHeader, PricingSection, ProductPreviewSection, TeamSection) with updated layout and styling
  • Analyzer pipeline updates: Refine all worker prompts and stage prompts, merge duplicate filter functions in content-writer, remove dead code, and update data schemas for coding-style, learning-behavior, session-outcome, and thinking-quality
  • Dashboard restructuring: Simplify BenchmarksContent wrapper patterns, extract className helpers, hoist static data to module level, and clean up redundant default exports across report components

Changes

  • refactor(landing): remove deprecated landing page components (17 files deleted)
  • feat(landing): add new landing page components (12 files added)
  • refactor(landing): update existing components and views for redesign (17 files modified)
  • refactor(analyzer): update pipeline prompts and data schemas (22 files modified)
  • refactor(dashboard): restructure app routes and report components (22 files modified)
  • chore: update tests, documentation, scripts, and package config (9 files modified)

Test Plan

  • TypeScript compilation passes (tsc --noEmit)
  • All 1157 tests pass
  • Manual verification of landing page layout
  • Manual verification of dashboard/report views

Generated with Claude Code using /ship-it

sungmanch and others added 6 commits February 25, 2026 22:54
Remove legacy components replaced by the new landing page design:
AnalysisShowcase, DownloadSection, EnterprisePreview, ProblemValidation,
SectionNav, SolutionSection, and showcase subcomponents.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add BrandLogo, HeroFlowchart, LandingHeader, PricingSection,
ProductPreviewSection, and TeamSection for the redesigned landing page.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Update HeroSection, LandingFooter, TrustPrivacy, and other existing
components for the new landing design. Simplify TerminalCommand copy
logic, extract stagger class helper in ProductPreviewSection, and
consolidate CSS rules. Update barrel exports and page views.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Update all worker prompts, stage prompts, and data models. Merge
duplicate filter functions in content-writer, remove dead code from
thinking-quality-data, replace repetitive property assignments with
loop in coding-style, and clean up orphaned JSDoc blocks.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Simplify BenchmarksContent wrapper pattern, extract className helper
in TabbedReportContainer, inline SourceContextSidebar ESC handler,
hoist static data to module level in SurveyBottomSheet and AnalyzeContent,
and remove redundant default exports from personal tab components.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Update deterministic scorer/mapper test assertions, revise landing page
messaging docs and PRD, update CLAUDE.md project instructions, bump
package version, and refresh test scripts and LinkedIn banner.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@vercel
Copy link
Copy Markdown

vercel bot commented Feb 26, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
no-more-ai-slop Ready Ready Preview, Comment Feb 26, 2026 5:15pm

@sungmanch
Copy link
Copy Markdown
Collaborator Author

Code Review

Found 2 issues (filtered from 17 candidates, threshold: score ≥ 80/100):


1. 🔴 Prompt–Schema Enum Mismatch → Zod Validation Failure (Score: 100/100)

session-outcome-prompts.ts instructs the LLM to use review_feedback as a goal category, but session-outcome-data.ts GoalCategoryEnum only accepts code_review. When the LLM follows the prompt and outputs "primaryGoal": "review_feedback", Zod validation will fail and crash the SessionOutcome worker.

This is the same class of bug documented in CLAUDE.md: "SessionOutcomeWorker prompt lacked MINIMUM 150 characters guide for recommendation, causing Zod validation failure"

Fix: Either rename code_reviewreview_feedback in GoalCategoryEnum, or revert the prompt change.


2. 🟡 Incomplete Rebrand in User-Facing Survey (Score: 100/100)

SurveyBottomSheet.tsx STEPS array has 4 questions — step 1 was updated to "BetterPrompt" but steps 0, 2, and 3 still say "NoMoreAISlop". Users see inconsistent branding within the same survey flow.

Fix: Update all 4 STEPS to use "BetterPrompt" consistently.


Generated with Claude Code using /ship-it

If useful, react with a thumbs-up. Otherwise, thumbs-down.

- Rename code_review → review_feedback in GoalCategoryEnum to match
  session-outcome prompt, preventing Zod validation failure
- Update remaining NoMoreAISlop → BetterPrompt in survey STEPS

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
sungmanch and others added 6 commits February 26, 2026 09:00
Introduce Zod schemas and TypeScript types for the Quick Fix pipeline's
bottleneck detection output. Includes tier gating policy (top-1 free,
rest blurred) and barrel exports from models/index.ts.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add BottleneckDetectorWorker that condenses 5 insight worker perspectives
into a single LLM call identifying top 3 time-wasting patterns. Includes
PTCF-formatted prompts with concrete suggested-prompt quality rules.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add lightweight QuickFixOrchestrator (Phase1 + BottleneckDetector, 1 LLM call)
and extend ContentGateway with filterQuickFixResult for tier-based bottleneck
gating following the diagnosis-free/prescription-paid pattern.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add standalone CJS Quick Fix analyzer for the Electron main process
(direct Gemini API calls, avoiding ESM/CJS boundary issues). Register
quick-fix IPC handlers for project listing and analysis with progress
streaming. Extend preload bridge with Quick Fix API surface.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add QuickFixPage with project selection grid, progress indicator,
bottleneck result cards with copy-pasteable prompts and tier-gated
locking UI. Set Quick Fix as default post-login route and add
'Solve Issue' nav item to sidebar.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add ICP market analysis documents, business item analysis,
vibe coding research notes, and hero section redesign plan
for the BetterPrompt rebrand initiative.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@sungmanch
Copy link
Copy Markdown
Collaborator Author

Code Review — Quick Fix Pipeline (6 new commits)

Found 4 issues (score >= 80/100):


1. Wrong Gemini model in desktop analyzer (Score: 95)

Desktop quick-fix-analyzer.ts calls gemini-2.0-flash but CLAUDE.md specifies gemini-3-flash-preview for all pipeline stages. This causes output quality divergence between desktop and server-side analysis paths.

https://github.com/sungmanch/no-more-AI-slop/blob/2bb5b9c7888175c05d9fafeb4a16c3c770f33a6d/packages/desktop/src/main/quick-fix-analyzer.ts#L204


2. Path decoding breaks hyphenated project names (Score: 90)

dirName.replace(/-/g, '/') converts ALL hyphens to slashes. A project at /home/user/my-project (encoded as -home-user-my-project) becomes /home/user/my/project. The codebase has decodeProjectPath in src/lib/parser/jsonl-reader.ts — the desktop module should reuse it or replicate its logic correctly.

https://github.com/sungmanch/no-more-AI-slop/blob/2bb5b9c7888175c05d9fafeb4a16c3c770f33a6d/packages/desktop/src/main/ipc-handlers.ts#L218-L221


3. BrowserWindow destroyed during async analysis → main process crash (Score: 85)

mainWindow is captured at line 262, but analyzeQuickFix runs for ~30 seconds. If the window is closed mid-analysis, mainWindow.webContents.send() in the onProgress callback throws Object has been destroyed. This exception escapes the outer try/catch (it fires inside the callback) and can crash the main process as an unhandled rejection.

https://github.com/sungmanch/no-more-AI-slop/blob/2bb5b9c7888175c05d9fafeb4a16c3c770f33a6d/packages/desktop/src/main/ipc-handlers.ts#L262-L299


4. Empty catch block violates No Fallback Policy (Score: 80)

Session file parsing loop has a completely empty catch {} block. If 4 of 5 files fail to parse, the user gets "1 session analyzed" without knowing data was lost. At minimum, add console.warn() to match the pattern used by all other IPC handlers in this file.

https://github.com/sungmanch/no-more-AI-slop/blob/2bb5b9c7888175c05d9fafeb4a16c3c770f33a6d/packages/desktop/src/main/ipc-handlers.ts#L282-L284


Notable (below threshold): apiKey = '' on QuickFixPage.tsx:111 (marked TODO — feature non-functional until settings UI exists), overallHealthScore || 50 fallback in desktop analyzer (No Fallback Policy), type drift across 3 independent QuickFixResult definitions.

Generated with Claude Code

If useful, react with a thumbs-up. Otherwise, thumbs-down.

- Use gemini-3-flash-preview model (was gemini-2.0-flash) to match
  server-side pipeline configuration
- Guard onProgress callback against destroyed BrowserWindow during
  async analysis to prevent main process crash
- Add console.warn logging for unparseable session files instead of
  silently swallowing errors

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@sungmanch sungmanch merged commit d3ff191 into main Feb 26, 2026
1 of 2 checks passed
@sungmanch sungmanch deleted the feat/landing-redesign-and-pipeline-updates-20260225 branch February 26, 2026 17:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant