Skip to content

feat: robust GitHub issue tracking + user feedback UI - #225

Merged
samseaver merged 6 commits into
ModelSEED:stagingfrom
VibhavSetlur:staging
Aug 4, 2026
Merged

feat: robust GitHub issue tracking + user feedback UI#225
samseaver merged 6 commits into
ModelSEED:stagingfrom
VibhavSetlur:staging

Conversation

@VibhavSetlur

Copy link
Copy Markdown
Collaborator

Summary

This PR adds two complementary features:

1. GitHub Issue Tracking System (.github/)

  • 5 GitHub Issue Forms YAML templates: bug report, feature request, documentation, question, and template chooser config
  • Templates include ModelSEED-specific dropdowns (environment: staging/prod/localhost; area: FBA/Gapfill/Model viewer/Biochem/Media/Genomes/Auth/Other; auth status)
  • PULL_REQUEST_TEMPLATE.md with staging-aware CI checklist
  • CODEOWNERS assigning @VibhavSetlur as default reviewer

2. Website Feedback UI

  • FeedbackFAB: auth-gated floating action button mounted in root layout
  • FeedbackDialog: MUI Dialog with bug/feature/question form; two CTAs — "Open GitHub Issue" (prefills the new issue form via URL params) and "Submit Feedback" (POSTs to backend via proxy)
  • app/api/feedback/route.ts: Next.js proxy to ${MODELSEED_REST_URL}/feedback, mirroring the /comments pattern
  • FooterFeedbackButton: client wrapper added to Footer.tsx for future use
  • Vitest unit tests for buildGitHubIssueUrl()

Verification

  • npm run lint
  • npx tsc --noEmit
  • npm run test:run ✅ 125 tests (3 new)
  • npm run build

Notes

  • Footer.tsx edit is spec-correct but the component is currently orphaned (not rendered anywhere); the FAB is the live entry point
  • Backend /feedback/ payload is undocumented — proxy mirrors /comments convention defensively

@samseaver
samseaver merged commit 5410d0c into ModelSEED:staging Aug 4, 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.

2 participants