Skip to content

Fix project recommendations, org connection, star freshness, and UI coherence - #131

Merged
sarthakagrawal927 merged 3 commits into
mainfrom
fix/product-issues
Sep 25, 2026
Merged

sarthakagrawal927 merged 3 commits into
mainfrom
fix/product-issues

Conversation

@sarthakagrawal927

Copy link
Copy Markdown
Member

Closes #130

Summary

  • Recommendations: Vectorize semantic matches were discarded during reranking — rankProjectRecommendations only scored literal topic/tool/token overlap, so embedding-nearest repos with no shared vocabulary scored 0 and fell below the specific-match threshold. Normalized similarity (0–1) is now threaded from retrieval through hydration into the reranker as a weighted signal, with honest evidence copy.
  • Organization connection: GET /api/github/projects returns orgAccessUrl (the OAuth app's GitHub connection page), and the repo picker gains a persistent grant hint + Refresh action so users can grant additional organizations and reload without leaving the product.
  • Stale stars: new repos.fetched_at (migration 0006, already applied to remote D1). Repo detail reads refresh rows older than 12h; fetched_at is stamped on every upsert path and on any completed GitHub response so failures retry per TTL window, not per view. The weekly seed job now refreshes stored∩source rows (stars, repo_updated_at, star snapshots on change) from search metadata it already fetches — no extra GitHub calls.
  • UI coherence: shared src/lib/repo-display.ts (LANGUAGE_COLORS, formatCompactCount, timeAgo) adopted across repo-card, explore, lists, catalog-updates, tools, and recommendation cards — 12k renders the same everywhere; TopBar only marks Library active on /stars and /lists.

Test plan

  • pnpm typecheck, pnpm lint, pnpm test (317 pass), pnpm docs:check
  • Migration 0006 applied locally and to remote D1
  • Browser spot-check of the picker footer and a project recommendations page after deploy

Generated with Devin

- Thread Vectorize embedding similarity into the project reranker so
  semantic matches survive past retrieval instead of being dropped when
  they lack literal topic/tool overlap.
- Surface the GitHub OAuth-app org grant URL in the repo picker with a
  refresh action, so additional organizations can be connected after the
  initial consent.
- Track repos.fetched_at (migration 0006) and refresh stale rows on repo
  detail reads (12h TTL); the weekly seed job now refreshes stored rows
  still in the GitHub source set and records star snapshots on change.
- Consolidate star-count formatting, language colors, and relative-time
  helpers into src/lib/repo-display.ts; TopBar only marks Library active
  on /stars and /lists.

Refs #130

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
sarthakagrawal927 and others added 2 commits September 26, 2026 00:21
Refs #130

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Refs #130

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
@sarthakagrawal927
sarthakagrawal927 merged commit e148149 into main Sep 25, 2026
2 checks passed
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.

Fix project recommendations, org connection, star freshness, and UI coherence

1 participant