jlightner
47014f5a3f
feat: Featured technique card with gradient border and enriched recent-…
...
- "frontend/src/api/public-client.ts"
- "frontend/src/pages/CreatorDetail.tsx"
- "frontend/src/App.css"
GSD-Task: S03/T02
2026-04-03 09:10:14 +00:00
jlightner
539274ce58
feat: Added summary, topic_tags, and key_moment_count fields to Creator…
...
- "backend/schemas.py"
- "backend/routers/creators.py"
GSD-Task: S03/T01
2026-04-03 09:07:34 +00:00
jlightner
0234a87429
feat: Added SocialIcons component with 9 platform SVG icons, rendered s…
...
- "frontend/src/components/SocialIcons.tsx"
- "frontend/src/pages/CreatorDetail.tsx"
- "frontend/src/App.css"
GSD-Task: S02/T02
2026-04-03 09:00:34 +00:00
jlightner
cafbd0afb1
feat: Added moment_count field to CreatorDetail schema, router query (K…
...
- "backend/schemas.py"
- "backend/routers/creators.py"
- "frontend/src/api/public-client.ts"
GSD-Task: S02/T01
2026-04-03 08:58:05 +00:00
jlightner
bef8d5939d
feat: Replaced compact creator header with full hero section: 96px avat…
...
- "frontend/src/pages/CreatorDetail.tsx"
- "frontend/src/App.css"
GSD-Task: S01/T02
2026-04-03 08:52:06 +00:00
jlightner
74a4f25402
feat: Synced CreatorDetailResponse with backend schema (7 new fields) a…
...
- "frontend/src/api/public-client.ts"
- "frontend/src/pages/CreatorDetail.tsx"
GSD-Task: S01/T01
2026-04-03 08:50:12 +00:00
jlightner
3c3ed8090c
add robots.txt — disallow all crawlers from indexing the site
2026-04-03 08:31:33 +00:00
jlightner
c6a1d32498
fix: route LLM calls through OpenWebUI tracked proxy for analytics
...
Changed LLM_API_URL and LLM_FALLBACK_URL from /api/v1 to /api so
requests hit OpenWebUI's /api/chat/completions (tracked) instead of
/api/v1/chat/completions (passthrough with no analytics).
2026-04-03 08:27:53 +00:00
jlightner
ff351b38d7
fix: run card collapse flicker — auto-expand only on first load, not on every re-render
...
The load callback had expandedRunId in its dependency array, so collapsing
(setting expandedRunId=null) triggered a reload which re-expanded it.
Replaced with a useRef flag that fires once.
2026-04-03 08:21:51 +00:00
jlightner
906b6491fe
fix: static 96k max_tokens for all pipeline stages — dynamic estimator was truncating thinking model output
...
The dynamic token estimator calculated max_tokens from input size × stage ratio,
which produced ~9k for stage 5 compose calls. Thinking models consume unpredictable
budget for internal reasoning, leaving 0 visible output tokens.
Changed: hard_limit 32768→96000, estimate_max_tokens now returns hard_limit directly.
2026-04-03 08:18:28 +00:00
jlightner
ed3c09ab18
fix: revert plugin pill + stats colors to cyan, lower title bar z-index so admin dropdown renders above it
2026-04-03 07:54:15 +00:00
jlightner
27e3b88371
fix: ToC border-left back to cyan accent (missed purple revert)
2026-04-03 07:46:15 +00:00
jlightner
97abc7c80c
style: back arrow inline with article title, title bumped to 1.5rem
2026-04-03 07:44:32 +00:00
jlightner
1d210faf68
style: related techniques cards use same recent-card styling as homepage Recently Added
2026-04-03 07:43:03 +00:00
jlightner
71183639ea
fix: revert purple accents, move stats/tags into grid main column, shrink sidebar to 16rem, right-align ToC, fix stray CSS brace
2026-04-03 07:39:28 +00:00
jlightner
ffd50a76df
fix: title bar background var(--color-bg) → var(--color-bg-page) — was transparent, content bled through
2026-04-03 07:26:54 +00:00
jlightner
e1a29f5650
fix: remove overflow-x:hidden from html,body — was creating scroll container that broke position:sticky on title bar
2026-04-03 07:25:44 +00:00
jlightner
f79d197dd4
fix: remove overflow-x:hidden from .app-main — was breaking position:sticky on title bar
2026-04-03 07:23:11 +00:00
jlightner
342a62ca6b
style: purple (#c084fc) accent touches — plugin pills, stat numbers, section labels, ToC border, back-link hover
2026-04-03 07:21:29 +00:00
jlightner
e5badbbf75
style: thinner gradient border on featured technique card (2px → 1px)
2026-04-03 07:18:35 +00:00
jlightner
b132c4ac7b
feat: restructure technique page — bibliography key moments, ToC-only sidebar, sticky title bar, solid featured border
...
- Move key moments below prose as bibliography-style sources with [N] indices
- Move signal chains and related techniques to main column below key moments
- Sidebar now dedicated to ToC only, sticky with scroll tracking
- Replace position:fixed reading header with sticky title bar within content area
- ToC smooth-scrolls on click with history.replaceState for hash updates
- Featured technique card: solid cyan-to-purple gradient border (border-image)
- Remove ReadingHeader component (replaced by title bar)
- Hide sidebar ToC on mobile (single-column reading)
- Related techniques grid defaults to 2-column in main content area
2026-04-03 07:16:03 +00:00
jlightner
6d910f504a
fix: move scroll-spy hooks above early returns to fix React hooks ordering crash
...
M016 added useState/useMemo/useEffect hooks after conditional early
returns (loading/notFound/error), violating React rules of hooks.
Moved all hooks above the early returns so they execute on every render.
2026-04-03 06:46:16 +00:00
jlightner
4f8f612d77
chore: auto-commit after complete-milestone
...
GSD-Unit: M016
2026-04-03 06:27:26 +00:00
jlightner
c3e5a8fe86
feat: add embed-status endpoint for per-video embedding/Qdrant detail
...
GET /admin/pipeline/embed-status/{video_id} returns technique pages
linked to the video, Qdrant vector count, and last stage 6 event —
provides data for the currently non-functional Embed tab in admin UI.
2026-04-03 06:24:58 +00:00
jlightner
7d4168c048
feat: Added .section-heading utility class to unify four heading styles…
...
- "frontend/src/App.css"
- "frontend/src/pages/Home.tsx"
GSD-Task: S06/T02
2026-04-03 06:22:11 +00:00
jlightner
e98f43193e
feat: Lifted scroll-spy state from TableOfContents to TechniquePage, cr…
...
- "frontend/src/components/ReadingHeader.tsx"
- "frontend/src/components/TableOfContents.tsx"
- "frontend/src/pages/TechniquePage.tsx"
- "frontend/src/App.css"
GSD-Task: S05/T01
2026-04-03 06:01:13 +00:00
jlightner
a16559e668
fix: add /app to sys.path for Celery forked workers importing services.avatar
2026-04-03 05:58:14 +00:00
jlightner
44e5905bd7
feat: auto-avatar integration with TheAudioDB
...
- Added avatar_url, avatar_source, avatar_fetched_at columns to Creator
model with Alembic migration 014
- New backend/services/avatar.py — TheAudioDB lookup with token-based
name similarity scoring and genre overlap bonus
- New Celery task fetch_creator_avatar for background avatar fetching
- Admin endpoints: POST /creators/{id}/fetch-avatar (single) and
POST /creators/fetch-all-avatars (batch for missing avatars)
- Wired avatar_url into CreatorRead, CreatorInfo, and CreatorBrowseItem
schemas so all API responses include avatar data
2026-04-03 05:55:42 +00:00
jlightner
89ef2751fa
feat: Added IntersectionObserver scroll-spy to ToC highlighting the act…
...
- "frontend/src/components/TableOfContents.tsx"
- "frontend/src/App.css"
GSD-Task: S04/T02
2026-04-03 05:54:14 +00:00
jlightner
0743d80b6a
feat: Moved Table of Contents from main prose column to sidebar top; re…
...
- "frontend/src/pages/TechniquePage.tsx"
- "frontend/src/components/TableOfContents.tsx"
- "frontend/src/App.css"
GSD-Task: S04/T01
2026-04-03 05:52:47 +00:00
jlightner
61546bf25b
perf: eliminate N+1 queries in stale-pages, add videos pagination, cache related techniques
...
- Rewrote stale-pages endpoint to use a single query with row_number
window function instead of per-page queries for latest version + creator
- Added optional offset/limit/status/creator_id params to videos endpoint
(backward compatible — defaults return all results)
- Added 1-hour Redis cache to _find_dynamic_related technique scoring
2026-04-03 05:50:53 +00:00
jlightner
46983ae43b
feat: Added inline SVG logo mark (cyan arc + dot from favicon) to heade…
...
- "frontend/src/App.tsx"
- "frontend/src/App.css"
GSD-Task: S03/T02
2026-04-03 05:47:05 +00:00
jlightner
094e832032
feat: Added favicon (SVG + 32px PNG), apple-touch-icon, OG social image…
...
- "frontend/public/favicon.svg"
- "frontend/public/favicon-32.png"
- "frontend/public/apple-touch-icon.png"
- "frontend/public/og-image.png"
- "frontend/index.html"
GSD-Task: S03/T01
2026-04-03 05:45:51 +00:00
jlightner
657d604e5b
fix: Added collapse arrow styling, stage chevrons, filter right-alignme…
...
- "frontend/src/App.css"
- "frontend/src/pages/AdminPipeline.tsx"
GSD-Task: S02/T01
2026-04-03 05:38:10 +00:00
jlightner
5b9612e03f
feat: Unified homepage layout: 42rem max-width on 5 sections, removed b…
...
- "frontend/src/App.css"
GSD-Task: S01/T01
2026-04-03 05:31:46 +00:00
jlightner
caedc9c224
fix: remove moments from recent cards, pin footer to bottom of card
2026-04-03 05:14:17 +00:00
jlightner
00cb865507
fix: admin dropdown hover gap bridge + recent card footer layout (creator left, moments, date right)
2026-04-03 05:07:06 +00:00
jlightner
c012afc0d3
chore: auto-commit after complete-milestone
...
GSD-Unit: M015
2026-04-03 04:44:59 +00:00
jlightner
4735463649
feat: Added hover-to-open with 150ms leave delay and matchMedia desktop…
...
- "frontend/src/components/AdminDropdown.tsx"
GSD-Task: S05/T01
2026-04-03 04:41:04 +00:00
jlightner
8b912e5a6f
feat: Added Trending Searches section to homepage with real-time popula…
...
- "frontend/src/api/public-client.ts"
- "frontend/src/pages/Home.tsx"
- "frontend/src/App.css"
GSD-Task: S04/T01
2026-04-03 04:37:36 +00:00
jlightner
3c5985f012
feat: Homepage displays a stats scorecard showing live article and crea…
...
- "frontend/src/api/public-client.ts"
- "frontend/src/pages/Home.tsx"
- "frontend/src/App.css"
GSD-Task: S03/T02
2026-04-03 04:29:21 +00:00
jlightner
1f783c4216
feat: Added GET /api/v1/stats endpoint returning live technique_count (…
...
- "backend/routers/stats.py"
- "backend/main.py"
GSD-Task: S03/T01
2026-04-03 04:25:58 +00:00
jlightner
9f0b0922b0
feat: add GET /api/v1/stats endpoint with technique and creator counts
2026-04-03 04:24:58 +00:00
jlightner
b35082602f
feat: Added "Last updated: Mon D" to creators browse rows and subtle da…
...
- "frontend/src/api/public-client.ts"
- "frontend/src/pages/CreatorsBrowse.tsx"
- "frontend/src/pages/Home.tsx"
- "frontend/src/App.css"
GSD-Task: S02/T02
2026-04-03 04:19:52 +00:00
jlightner
8d3f9fd74f
feat: render last-updated dates on creators page and homepage cards
2026-04-03 04:17:53 +00:00
jlightner
18c76dd8ec
feat: Added last_technique_at correlated subquery to creators API endpo…
...
- "backend/schemas.py"
- "backend/routers/creators.py"
GSD-Task: S02/T01
2026-04-03 04:16:47 +00:00
jlightner
8c81c472ea
fix: pass last_technique_at through row unpacking
2026-04-03 04:15:39 +00:00
jlightner
acd0567e3c
feat: add last_technique_at to creators API endpoint
2026-04-03 04:12:31 +00:00
jlightner
ea8a77be59
feat: Deployed search logging and popular searches endpoint to ub01, ra…
...
GSD-Task: S01/T02
2026-04-03 04:07:10 +00:00
jlightner
f64a0c1107
perf: Added SearchLog model, Alembic migration 013, Pydantic schemas, f…
...
- "backend/models.py"
- "backend/schemas.py"
- "backend/routers/search.py"
- "alembic/versions/013_add_search_log.py"
GSD-Task: S01/T01
2026-04-03 04:02:55 +00:00