Skip to content

Remove math product surfaces#60

Merged
scaleborg merged 10 commits intomainfrom
cleanup/remove-math-surfaces
Mar 18, 2026
Merged

Remove math product surfaces#60
scaleborg merged 10 commits intomainfrom
cleanup/remove-math-surfaces

Conversation

@scaleborg
Copy link
Owner

Summary

Delete the entire math feature family from Samaritan. 34 files changed, -8,590 lines.

Routes removed

  • /math (canonical landing)
  • /math/refresh (canonical, with search param validation)
  • /math/bridge (canonical, with search param validation)
  • /math-refresh (legacy redirect to /math/refresh)
  • /math-bridge (legacy redirect to /math/bridge)

Sidebar items removed

  • Learning > Math SubNavItem
  • 21 math-specific ViewId entries (math_landing, math_refresh_*, math_bridge_*)
  • 2 ExpandableNavKey entries (math_refresh, math_bridge)
  • All associated active_view pathname matching logic

Reference sections removed

  • "math-refresh" from ReferenceView SECTION_MAP (lazy import + entry)
  • "math-refresh" from ReferenceSection type union + VALID_REFERENCE_SECTIONS validator

Non-route cleanup

  • math_refresh workflow entry + WorkflowId type member removed from workflowInventory
  • math_refresh accent + icon removed from DomainsSection (landing page)
  • "Math & Sciences" pillar removed from CompletionView
  • "Math Refresh" entry removed from MightyGodModeView command palette
  • "Maths Zero to One" mission point removed from WhyAdrienSection (landing)
  • "math section" text reference updated in CareerFoundationsView
  • MathRenderer.tsx moved from components/math-exercise/ to components/ (still used by culture-generale + ConceptDetailView)
  • 3 import paths updated for MathRenderer consumers
  • Unused Calculator icon import removed from DomainsSection

Behavior note: /math vs /math/refresh

/math renders a blank shell (no route match, no error component) because the parent app layout renders but there is no child route. /math/refresh and /math/bridge show "Not Found" text because TanStack Router's notFound handling fires for unmatched nested paths. Both are correct - neither route resolves to content.

Verification

  • npx tsc --noEmit: 0 errors
  • pnpm lint: 0 errors (11 pre-existing warnings, none math-related)
  • Playwright: all 5 math routes return no content/Not Found, sidebar has no Math entry, /learn/tracks, /learn, /chinese, /culture-generale all load correctly

🤖 Generated with Claude Code

…tion

Navigation IA cleanup: math route consolidation and sidebar
discoverability improvements across multiple sections.

Math routing:
- Add /math hub page (MathLandingView) linking to Refresh and Bridge
- Add canonical routes /math/refresh and /math/bridge
- Legacy /math-refresh and /math-bridge redirect with params preserved
- Reference deep links untouched

Sidebar wiring (Learning + Career):
- Add Cognitive Toolkit and Behavioral Design to Learning section
- Add Career Foundations to Career section
- Extend Learning and Career header active states

Sidebar wiring (Projects + Business):
- Add OSS Projects and HF Projects to Projects section
- Add Brand Studio and Execution Playbook to Business section
- Extend parent header active states

Section rename:
- "Side Projects" → "Business" (label + aria only)

Docs deep-dives:
- Add 6 deep-dive sub-items under Docs > How It Works
- Extend Docs header active state for deep-dive routes
- Add mcp_ecosystem ViewId for /how-mcp-works
- /how-gpu-works intentionally left in Reference
Separate Core (Ingest/Library/Chat) from Learning/Career/Projects/Organizer
with a thin divider. Separate Mission Control from Reference/Personal/Business
with a divider after Workspaces. Add Business section label for clarity.
Enhance MathLandingView to show inline navigation for Zero to One
(6 topics) and Prepa ML (8 topics) as clickable pills that link
directly to /math/refresh?track=...&tab=... No sidebar changes.
Math Bridge card kept at bottom.
…ar collapse

Backend:
- Migration 0084: track_resources table, track_type on tracks, color on modules
- Extend curriculum models, loader, store, and API for resource tracks
- Resource tracks skip concept validation, support curated link collections
- New endpoints: GET track resources, GET module resources
- Seed job supports --type filter and skips _ prefixed files

Data:
- 11 resource track YAML files extracted from hardcoded frontend views
- 569 resources across 79 modules seeded into database
- Tracks: AI Engineering, Frontend Eng, GPU for AI, Embodied AI,
  Bio-Augmentation, Databases, Applied Systems, Interview Prep,
  Freelance Strategy, Cognitive Toolkit, Behavioral Design
- Displaced prep resources saved in _prep-displaced.yaml for merging

Frontend:
- Generic TrackDetailView handles both concept and resource tracks
- Resource tracks render with tabbed modules and ResourceCards
- CurriculumTracksView shows both track types with correct metadata
- Sidebar collapsed: removed entire Reference section (~1,300 lines)
- Removed Lenses, Levels, Cognitive Toolkit, Behavioral Design from nav
- Added Dev Reference nav item linking to existing dev-ref page
- Added inline tab navigators to DevRefView and DomainOntologyView
- Frontend types extended with TrackResource, track_type, color fields
Delete the entire math feature family: /math, /math/refresh, /math/bridge
and legacy redirects /math-refresh, /math-bridge.

Removes 22 math-only files (views, routes, components, hooks, data),
cleans sidebar nav, route tree, ViewId entries, workflow inventory,
command palette, reference sections, and landing page references.

MathRenderer.tsx preserved (moved to components/) - still used by
culture-generale and ConceptDetailView.
…ion fallback

Curriculum YAML cleanup from product audit:
- Track 1: remove remedial concepts (number, fraction), merge redundant
  concepts (sample-mean, deviation-from-mean, squared-error, l1-reg),
  add one-hot-encoding and normalization-scaling to Module 9
- Track 2: swap Retrieval before Ranking (pipeline order), remove
  feature-store (canonical home is Track 4), add embedding prerequisite
- Track 3: remove etl-vs-elt (redundant with Track 4), merge
  alerting-thresholds and model-rollback into neighbors
- Track 5: rename batch-vs-real-time-serving to match Track 3 naming

Create 5 missing canonical concepts with minimal dossiers:
embedding, bias-variance-tradeoff, one-hot-encoding,
normalization-scaling, regularization

Fix concept explanation fallback to be dossier-first:
- Fetch dossier before attempting retrieval
- Dossier-only concepts produce real explanations (no dead-end)
- LLM fallback when neither dossier nor sources exist
- Three explicit provenance modes in API and UI:
  dossier+retrieval, dossier_only, llm_fallback
Test fixture was using old schema (sort_order column, no track_type/
category/color). Updated to match current production tables. Also
updated stale YAML assertions for ml-foundations (9 modules, not 3).
…e_concepts

Fixes ruff F401 (unused `field` import) and E741 (ambiguous `l` variable).
@scaleborg scaleborg force-pushed the cleanup/remove-math-surfaces branch from fea3ee4 to 5856986 Compare March 17, 2026 23:05
@scaleborg scaleborg merged commit f95c299 into main Mar 18, 2026
4 of 6 checks passed
@scaleborg scaleborg deleted the cleanup/remove-math-surfaces branch March 18, 2026 09:41
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