Skip to content

FAC-WEB feat: faculty overall rating UI (pairs with FAC-145)#151

Merged
y4nder merged 1 commit into
developfrom
feat/fac-web-faculty-overall-rating-ui
Apr 23, 2026
Merged

FAC-WEB feat: faculty overall rating UI (pairs with FAC-145)#151
y4nder merged 1 commit into
developfrom
feat/fac-web-faculty-overall-rating-ui

Conversation

@y4nder

@y4nder y4nder commented Apr 23, 2026

Copy link
Copy Markdown
Member

Summary

  • Adds CompositeRatingSummaryStrip above the Insights/Scores/Feedback tabs, consuming the new GET /api/v1/analytics/faculty/:facultyId/overview endpoint (backend PR: FAC-145 feat: faculty composite overall rating (50/25/25) api.faculytics#381). Renders weighted rating + interpretation, amber coverage dot for non-FULL states, and an info popover with per-track breakdown (weight / effective weight / contribution) and coverage banner per state.
  • New useFacultyOverview hook (TanStack Query, 60s stale, enabled on facultyId+semesterId).
  • Moves the per-type rating strip (HeadlineMetricsStrip) out of the report header and into the Scores and Feedback tabs directly under the questionnaire-type sub-tabs, so the two ratings are no longer stacked and redundant at the top.
  • Renames user-facing "Composite rating""Overall rating" in the strip, breakdown popover, and Export PDF tooltip. Internal identifiers (COMPOSITE_TYPE_ORDER, CompositeCoverageStatus, component/file names) kept as-is.
  • Always-rendered report shell keeps the sticky title + overall rating strip visible while /report is loading or errored (dual-failure shows "Faculty details unavailable").
  • Deletes unused faculty-analysis-hero.tsx.

Test plan

  • bun run typecheck — clean
  • bun run lint — clean
  • Manual smoke against the dev stack:
    • FULL coverage → strip renders rating + interpretation, no amber dot
    • PARTIAL → amber dot, breakdown shows renormalised effective weights
    • PARTIAL_NO_FEEDBACK"Insufficient data" copy, per-track ratings still shown with banner
    • NO_DATA → strip collapses to empty-state copy; tabs hidden behind !hasAnalyticsData branch
    • Faculty self-view: feedback tab hidden; strip still renders
    • Semester / course filter changes propagate into overview query
    • Sticky header survives loading/error states of /report
    • Export PDF tooltip copy reads "overall rating"

Non-goals

  • PDF export of the overall rating (stays dashboard-only; tooltip on the Export button documents this).
  • Changes to the Insights tab — existing FacultyAnalysisSentimentStrip already serves that role.

Related

Surfaces the faculty-level Overall Rating (50/25/25 weighted composite) above
the report tabs via CompositeRatingSummaryStrip + info-popover breakdown.
Relocates the per-type rating strip out of the screen header and into the
Scores and Feedback tabs — directly under the questionnaire-type sub-tabs
where the type is actually selected — so the two ratings are no longer
stacked and redundant at the top.

User-facing "Composite rating" renamed to "Overall rating" for readability;
internal identifiers (COMPOSITE_TYPE_ORDER, CompositeCoverageStatus, file
names, etc.) kept as-is.

Always-rendered report shell keeps the sticky title and overall rating strip
visible even while /report is loading or errored. Deleted unused
faculty-analysis-hero.tsx (no consumers).
@vercel

vercel Bot commented Apr 23, 2026

Copy link
Copy Markdown

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

Project Deployment Actions Updated (UTC)
app-faculytics Ready Ready Preview, Comment Apr 23, 2026 11:25am

@y4nder y4nder linked an issue Apr 23, 2026 that may be closed by this pull request
@y4nder y4nder self-assigned this Apr 23, 2026
@y4nder y4nder merged commit a271525 into develop Apr 23, 2026
3 checks passed
y4nder added a commit that referenced this pull request Apr 23, 2026
…152)

Surfaces the faculty-level Overall Rating (50/25/25 weighted composite) above
the report tabs via CompositeRatingSummaryStrip + info-popover breakdown.
Relocates the per-type rating strip out of the screen header and into the
Scores and Feedback tabs — directly under the questionnaire-type sub-tabs
where the type is actually selected — so the two ratings are no longer
stacked and redundant at the top.

User-facing "Composite rating" renamed to "Overall rating" for readability;
internal identifiers (COMPOSITE_TYPE_ORDER, CompositeCoverageStatus, file
names, etc.) kept as-is.

Always-rendered report shell keeps the sticky title and overall rating strip
visible even while /report is loading or errored. Deleted unused
faculty-analysis-hero.tsx (no consumers).
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.

FAC-WEB feat: faculty overall rating UI (pairs with FAC-145)

1 participant