Skip to content

FE: Winner selection + Payout (select-winners signing flow) #633

Closed

Description

@0xdevcollins

Context

Part of the Bounty Operate to Payout milestone (v1 boundless, Payout). The organizer picks winner(s) per prize tier and triggers the single select_winners op that pushes the reward(s) on-chain. On settle the bounty becomes COMPLETED automatically.

Blueprint to mirror

  • Hackathon rewards page: PublishWinnersWizard / AnnouncementStep / PreviewStep; hooks/use-hackathon-publish.ts + features/hackathons/api/use-escrow.ts (useEscrowOpRunner, organizer scope); FundingConfirmationModal / FundingProgressModal.

Tasks

  • Winner selection: assign winning submissions to prize positions (1 for single-claim; 1-3 for competition / multiple winners), validate against the bounty's prize tiers + on-chain winner distribution.
  • Payout: build the select-winners body (winners: applicantAddress + position), drive useEscrowOpRunner (organizer scope; MANAGED signs server-side, EXTERNAL signs via wallet kit) -> progress modal -> poll to COMPLETED.
  • On completion: bounty shows COMPLETED, winners + tx hash surfaced.

Acceptance criteria

  • Organizer selects winners and pays out in one signed op; bounty transitions to COMPLETED; payout tx shown. Works for single-winner and multi-winner competitions.

Depends on

  • Submissions review; bounty data layer (organizer escrow client select-winners already exists).

Activity

  1. linear commented on Jun 24, 2026

    @linear
  2. Ojas2095 commented on Jun 24, 2026

    @Ojas2095

    /claim

    I'd like to take this on! Reviewing the repository right now and will submit a PR shortly.

  3. coderabbitai commented on Jun 24, 2026

    @coderabbitai
    🔗 Related PRs

    #438 - Winners tab refactor [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]
    #582 - fix(rewards): match track winners by submissionId, not participantId [merged]


    📝 Issue Planner

    Check the box below or use the @coderabbitai plan command to generate an implementation plan and prompts that you can use with your favorite coding assistant.

    • Create Plan

    🧪 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:

    issue_enrichment:
      auto_enrich:
        enabled: false

    💬 Have feedback or questions? Drop into our discord!

  4. github-actions commented on Jul 5, 2026

    @github-actions

    Closed by #669 (merged into feat/t-replace).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions