Skip to content

Feature: hotfix to dev - #367

Merged
aamoghS merged 9 commits into
devfrom
hotfix
Aug 28, 2026
Merged

Feature: hotfix to dev#367
aamoghS merged 9 commits into
devfrom
hotfix

Conversation

@github-actions

@github-actions github-actions Bot commented Aug 27, 2026

Copy link
Copy Markdown
Contributor

Automated PR tracking changes from hotfix into dev.


Note

Medium Risk
Changes affect hackathon resolution, judging queue rebuilds with force, and staff/volunteer scan routes—operational paths that can disturb live judging or break old bookmarked admin URLs if slug logic regresses.

Overview
This PR untangles club operations from hackathon weekend tooling and fixes several staff-facing gaps around editions, interest, and judging.

Hackathon URLs and lookup now use name slugs in admin links (adminHackathonPath) instead of percent-encoded titles. Routes and hackathon.getById accept slugs, raw names, and legacy encoded paths via shared decodeHackathonParam / API findByNameOrSlug.

Interest list is edition-scoped end-to-end: shared InterestForm on /hacklytics and announced edition pages, staff-only interestCount, and admin UI (cards, attendees tab, registration controls) shows interest for announced editions instead of empty registration counts.

Judging prep moves entirely to /admin/judging: /admin/setup redirects there and the create-hackathon wizard is removed. Prepare flow handles assign CONFLICT with a guarded Rebuild anyway (force: true) and ignores stale results when switching editions.

Check-in splits /scan (hackathon badges) and /scan/club (member passes), with shared ScanAccess. Portal sidebar is reorganized into Hackathon vs Portal sections via portal-nav.ts.

Smaller updates: public team roster 2026–2027, events page copy + Hacklytics link, docs, and /scan added to private cache prefixes in proxy.ts.

Reviewed by Cursor Bugbot for commit 2c36973. Bugbot is set up for automated code reviews on this repo. Configure here.

aamoghS and others added 3 commits August 25, 2026 21:52
Replace last year's officers with the Fall 2026 kickoff roster. Aamogh
Sawant is President with a personal-site link; Diya Kaimal is Vice
President and Co-Director of Hacklytics. Keep IDEaS and the club advisor.

Co-authored-by: Aamogh <aamoghS@users.noreply.github.com>
…nk-d793

Add Aamogh Sawant personal site link on the team page
Co-authored-by: Aamogh <aamoghS@users.noreply.github.com>
Comment thread sites/mainweb/app/(portal)/admin/setup/page.tsx
Club meetings were showing up as a mode of the hackathon check-in desk
and as Attendees under the Hackathon sidebar. Move club attendees and
pass scanning onto Portal, leave /scan as the edition badge desk, and
stop describing the public events page as if it listed Hacklytics.

Co-authored-by: Aamogh <aamoghS@users.noreply.github.com>
@github-actions

Copy link
Copy Markdown
Contributor Author

Dependency Review

✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.

Scanned Files

None

@github-actions

github-actions Bot commented Aug 27, 2026

Copy link
Copy Markdown
Contributor Author

Visit the preview URL for this PR (updated for commit 2c36973):

https://hacklytics2027--pr-367-if70vn9n.web.app

(expires Fri, 04 Sep 2026 22:08:24 GMT)

🔥 via Firebase Hosting GitHub Action 🌎

Sign: c48ba34db61581e25fe2978355160b5eefe0e83f

aamoghS and others added 2 commits August 27, 2026 19:14
The form already stored rows on Digital Bloom's id, but staff saw
0 registered and the edition page bounced to a singleton /hacklytics
funnel. Join against this hackathon id from Info, and show the
interest count on the admin card while the event is announced.

Co-authored-by: Aamogh <aamoghS@users.noreply.github.com>
Digital Bloom opens on Applications, which listed zero registrations
while 34 people were already on the interest list. While the event is
announced, that tab is the interest roster for this hackathon.

Co-authored-by: Aamogh <aamoghS@users.noreply.github.com>
Comment thread sites/mainweb/components/admin/hackathons/AttendeesTab.tsx
Comment thread sites/mainweb/components/admin/hackathons/RegistrationControls.tsx
aamoghS and others added 2 commits August 27, 2026 22:24
Prepare judging now offers Rebuild anyway after assign CONFLICT
(force: true), matching the old /admin/setup control. Applications
uses the parent edition status so the interest roster does not wait
on a UUID getById cache miss, and the announced count no longer
reads as nobody while the query is in flight.

Co-authored-by: Aamogh <aamoghS@users.noreply.github.com>
Co-authored-by: Aamogh <aamoghS@users.noreply.github.com>

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes using default effort and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit b3f005c. Configure here.

Comment thread sites/mainweb/app/(portal)/admin/judging/page.tsx
A CONFLICT from edition A that resolved after the selector moved to B
used to paint A's refusal on B, and Rebuild anyway sent force: true
for B. Prep results now apply only to the run and edition that started
them, and force rebuilds that refused id.

Co-authored-by: Aamogh <aamoghS@users.noreply.github.com>
@aamoghS
aamoghS merged commit bdd4ec6 into dev Aug 28, 2026
22 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant