feat(bounty): applications review tab (#631)#670
Conversation
|
@Benjtalkshow is attempting to deploy a commit to the Threadflow Team on Vercel. A member of the Team first needs to authorize it. |
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Fill the management dashboard's Applications tab (application entry types): list applications with proposal content (short/full, portfolio, estimated days, qualifications, video), applicant + status. Mode-aware actions on submitted applications — single-claim selects one, competition shortlists N (respecting shortlistSize), both can decline with a reason. Adds the organizer applications data layer (list + select/shortlist/decline).
69ae2b1 to
dced3cf
Compare
|
Thanks for this — the feature itself reviewed well. One correctness fix was needed (declining a checked application left its id in the shortlist selection, so Approve shortlist could submit a DECLINED application). I couldn't push to this branch (GitHub rejects maintainer edits on the fork despite the flag being enabled), so this continues as #672 — your commit as-is plus that one fix on top. Full review notes are in #672's description. |
Closes #631. Part of the Bounty Operate to Payout milestone (#638). Stacked on #669 (#633) → #668 (#632) → #667 (#630) — merge those first; until then the diff shows their commits too.
What
Fills the management dashboard's Applications tab (shown only for application entry types, from #630's mode-aware shell). The Decide surface for application-mode bounties:
SUBMITTEDapplications):POST …/applications/select).shortlistSize(POST …/shortlist).POST …/:appId/decline).Data layer
listBountyApplications(hand-typed toBountyApplicationResponseDto— the list endpoint has no@ApiOkResponse) + typedselect/shortlist/declineclients, and the matching hooks.Verification
tsc 0 errors, eslint clean. Endpoints verified live against the running v2 backend.
Notes