Repository navigation
Epic: Bounty Configure wizard (organizer host-a-bounty flow) #603
Description
Context
Boundless Bounty pillar, Configure phase wizard (organizer "host a bounty") in the legacy v1 app boundless. The app is REST-only (openapi-fetch + axios; no GraphQL). This flow mirrors the existing hackathon Configure wizard and reuses the escrow runner, prize math, and wallet/treasury layers. AI assist is deferred.
Depends on the backend draft endpoints for the draft DTOs: boundlessfi/boundless-nestjs milestone Bounty Configure (Host a Bounty) (#310-#317, key dependency boundlessfi/boundless-nestjs#313). The bounty escrow paths/DTOs are already in lib/api/generated/schema.d.ts, so the escrow client is unblocked.
Wizard (5 steps)
Scope -> Mode -> Submission Model -> Reward -> Review & Publish. The ModeTab (two-axis picker) and SubmissionModelTab (mode-conditional fields) are net-new with no hackathon analog; the rest mirror the hackathon tabs.
Plain taxonomy (see boundless-nestjs#317)
claimType (Single claim / Competition) x entryType (Open / Application (light) / Application (full)). A Competition pays a single winner or multiple winners (1-3 prize positions).
Mode -> field matrix (drives ModeTab + SubmissionModelTab)
| Field | Open + single claim | Open + competition | App (light) + single claim | App (light) + competition | App (full) + single claim | App (full) + competition |
|---|---|---|---|---|---|---|
| entryType | OPEN | OPEN | APPLICATION_LIGHT | APPLICATION_LIGHT | APPLICATION_FULL | APPLICATION_FULL |
| claimType | SINGLE_CLAIM | COMPETITION | SINGLE_CLAIM | COMPETITION | SINGLE_CLAIM | COMPETITION |
| submissionVisibility | ORGANIZER_ONLY | HIDDEN (forced) | ORGANIZER_ONLY | HIDDEN (forced) | ORGANIZER_ONLY | HIDDEN (forced) |
| reputationMinimum | required | hidden | hidden | hidden | hidden | hidden |
| applicationWindowCloseAt | hidden | hidden | required | required | required | required |
| maxApplicants | hidden | required (>=2) | optional | optional | optional | optional |
| shortlistSize | hidden | hidden | optional | required (>=2) | optional | required (>=2) |
| submissionDeadline | required | required | required | required | required | required |
| Prize tiers (winners) | 1 | 1-3 | 1 | 1-3 | 1 | 1-3 |
Blueprint to mirror
features/hackathons/*app/(landing)/organizations/[id]/hackathons/*components/organization/hackathons/new/*hooks/use-hackathon-{steps,draft,publish}.ts- Reused as-is:
lib/utils/hackathon-escrow.ts,lib/config/tokens.ts,lib/wallet/wallet-kit.ts,components/providers/wallet-provider.tsx,features/treasury/, theuseEscrowOpRunnerprimitive.
Tasks
- FE: features/bounties data layer (types, keys, draft + escrow clients/hooks) #596 FE: features/bounties data layer (types, keys, draft + escrow clients/hooks)
- FE: Bounty routes + organization bounty list page #597 FE: Bounty routes + organization bounty list page
- FE: Bounty wizard shell + step/draft machinery #598 FE: Bounty wizard shell + step/draft machinery
- FE: ModeTab (two-axis picker) + SubmissionModelTab (mode-conditional fields) #599 FE: ModeTab (two-axis picker) + SubmissionModelTab (mode-conditional fields)
- FE: Scope + Reward + Review tabs and Zod schemas #600 FE: Scope + Reward + Review tabs and Zod schemas
- FE: use-bounty-publish (escrow publish via shared runner) #601 FE: use-bounty-publish (escrow publish via shared runner)
- FE: Sidebar nav entry + codegen + end-to-end verification #602 FE: Sidebar nav entry + codegen + end-to-end verification
Verification (testnet)
Create a draft in each of the six combinations, save + resume, publish MANAGED (draft -> draft_awaiting_funding -> open), confirm one winner for single claim and the multi-position split for a competition, and confirm the negative gate checks block (competition shortlistSize < 2, open + single claim missing reputationMinimum, application entry type missing applicationWindowCloseAt).
Out of scope
Bounty Operate / Decide / Payout, AI "Draft with AI", category / tags, builder-facing discovery and apply.
Activity
linear commentedon Jun 15, 2026
BOU-259
coderabbitai commentedon Jun 15, 2026
🔗 Related PRs
#379 - Feat/abstract wallet [merged]
#503 - Feat/improved rewards tab [merged]
#505 - Feat/improved rewards tab [merged]
#576 - fix(rewards): show track winners on the organizer rewards page [merged]
#586 - fix(submissions): unbreak submission detail page + publish hackathon recap [merged]
📝 Issue Planner
Check the box below or use the
@coderabbitai plancommand to generate an implementation plan and prompts that you can use with your favorite coding assistant.🧪 Issue enrichment is currently in open beta.
You can configure auto-planning by selecting labels in the issue_enrichment configuration.
To disable automatic issue enrichment, add the following to your
.coderabbit.yaml:💬 Have feedback or questions? Drop into our discord!
rayj6 commentedon Jun 15, 2026
Hi! I would like to work on these bounties. I am from Scarlet Technology (scarlet-technology.com), a professional software development company with strong Next.js, TypeScript, and frontend experience. I can deliver the full Bounty Configure wizard flow.
Please let me know how to get started with the bounty process for this repo. Looking forward to contributing!
Idrhas commentedon Jun 15, 2026
Hi, I'd like to work on this issue, I have experience with the relevant technologies and ecosystem and have previously contributed to similar issues. I’m comfortable working with the codebase and familiar with standard practices.
manasehstephen131-ops commentedon Jun 15, 2026
I am a motivated developer with experience working on code issues, debugging, and contributing to projects. I work with JavaScript and Next.js, among other tools, and I’m comfortable understanding existing codebases and implementing solutions efficiently.
I am proactive, quick to learn, and committed to delivering quality work while continuously improving my skills.
dorisadams commentedon Jun 15, 2026
i would love to work on this issue, please me,
Senorespecial commentedon Jun 15, 2026
i would love to work on this issue, please me,
Arome8240 commentedon Jun 15, 2026
Can I work on this?
akintewe commentedon Jun 16, 2026
I've been creating intricate forms and e-commerce systems for more than four years as a full-stack developer. I have designed inventory management systems for agricultural enterprises and have experience with image processing and large-scale state management. I have also worked on this project in the past.
My ETA is one hour, and I would love to work on this problem.