Skip to content

Show bounty submission requirements on detail page#890

Merged
ramimbo merged 1 commit into
ramimbo:mainfrom
xiefuzheng713-alt:codex/bounty-detail-requirements-845
Jun 5, 2026
Merged

Show bounty submission requirements on detail page#890
ramimbo merged 1 commit into
ramimbo:mainfrom
xiefuzheng713-alt:codex/bounty-detail-requirements-845

Conversation

@xiefuzheng713-alt
Copy link
Copy Markdown
Contributor

@xiefuzheng713-alt xiefuzheng713-alt commented Jun 4, 2026

Refs #845

Summary

  • Surface the existing structured submission_requirements on bounty detail pages.
  • Show the exact claim command, accepted reference formats, and expected artifact before the existing contributor checklist.
  • Reuse submission_requirements.attempt_endpoint for the active-attempt action link.

Duplicate check

Validation

  • uv run --python 3.12 --extra dev python -m pytest tests/test_bounty_pages.py tests/test_public_routes.py -q -> 24 passed, 1 existing Starlette/httpx warning.
  • uv run --python 3.12 --extra dev ruff check . -> passed.
  • uv run --python 3.12 --extra dev ruff format --check . -> 111 files already formatted.
  • uv run --python 3.12 --extra dev mypy app -> success across 42 source files.
  • uv run --python 3.12 --extra dev python scripts/docs_smoke.py -> docs smoke ok.
  • git diff --check origin/main...HEAD -> clean.
  • git merge-tree --write-tree origin/main HEAD -> clean tree 02eae5dd9df3521c623ee28326dd9627463da75b.

Scope

Bounty detail template and page regression coverage only. No bounty creation, proposal execution, payout execution, ledger mutation, wallet behavior, admin-token APIs, exchange, bridge, off-ramp, cash-out, MRWK price behavior, private data, or secrets changed.

Summary by CodeRabbit

  • New Features

    • Bounty detail pages now show a dedicated "Submission requirements" section with claim command instructions, accepted reference formats, and expected artifact guidance.
  • Improvements

    • Action links for checking attempts use configurable endpoints, ensuring the correct attempt checks are used for each bounty.

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Jun 4, 2026

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 26478622-c01c-4af8-9768-7b61766f9c99

📥 Commits

Reviewing files that changed from the base of the PR and between c4de227 and 1fe12ea.

📒 Files selected for processing (2)
  • app/templates/bounty_detail.html
  • tests/test_bounty_pages.py

📝 Walkthrough

Walkthrough

The bounty detail template now displays a "Submission requirements" section sourced from bounty.submission_requirements (claim command, reference formats, expected artifact) and uses requirements.attempt_endpoint for the "Check active attempts" link. Tests verify both the general and issue-scoped renderings.

Changes

Bounty Detail Submission Requirements

Layer / File(s) Summary
Submission requirements rendering and endpoint routing
app/templates/bounty_detail.html, tests/test_bounty_pages.py
Template inserts a "Submission requirements" card that unpacks bounty.submission_requirements into requirements and renders claim_command, comma-separated reference_formats, and expected_artifact. The "Check active attempts" link now uses requirements.attempt_endpoint. Existing test assertions expanded and a new test added to validate issue-specific requirement values.

Possibly related issues

Possibly related PRs

  • ramimbo/mergework#836: Modifies the same template and tests around the "Check active attempts" link and attempt-related UI.
  • ramimbo/mergework#347: Introduces the structured submission_requirements object with claim and attempt endpoint fields that this PR renders.
  • ramimbo/mergework#704: Adds the submission_requirements payload structure including the attempt endpoint consumed here.
🚥 Pre-merge checks | ✅ 6
✅ Passed checks (6 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately names the primary changed surface and summarizes the main change: displaying bounty submission requirements on the detail page.
Description check ✅ Passed The description includes summary, evidence of duplicate checks, validation results across all required checks (pytest, ruff format, ruff check, mypy, docs_smoke), and scope limitations. All template sections are present and substantive.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Mergework Public Artifact Hygiene ✅ Passed No investment, price, cash-out, fabricated payout claims, or private security details found. MRWK referenced only as reward amounts; template includes protective language about payment non-guarantee.
Bounty Pr Focus ✅ Passed Template and tests show submission_requirements display (claim command, reference formats, expected artifact) with attempt_endpoint reuse; scope focused on template and tests, no unrelated changes.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.


Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1


ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: fa995ce8-2b63-4208-a11b-6a7c83af0aab

📥 Commits

Reviewing files that changed from the base of the PR and between d4d0e48 and c4de227.

📒 Files selected for processing (2)
  • app/templates/bounty_detail.html
  • tests/test_bounty_pages.py

Comment thread tests/test_bounty_pages.py
@xiefuzheng713-alt xiefuzheng713-alt force-pushed the codex/bounty-detail-requirements-845 branch from c4de227 to 1fe12ea Compare June 4, 2026 18:17
Copy link
Copy Markdown
Contributor

@mauricemohr88-debug mauricemohr88-debug left a comment

Choose a reason for hiding this comment

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

Reviewed current head 1fe12ea38352bfdc41501e5579698a919f9c9960.

Approved. I inspected app/templates/bounty_detail.html and tests/test_bounty_pages.py and verified this is a focused bounty-detail UX/test update:

  • the new Submission requirements block renders the existing structured bounty.submission_requirements data rather than inventing new lifecycle logic;
  • claim command, reference formats, and expected artifact are displayed before the existing contributor checklist;
  • the active-attempts action now reuses requirements.attempt_endpoint, matching the serialized requirement metadata for the bounty;
  • tests cover both the generic PR/evidence requirement shape and issue-specific requirement text such as /claim #649, Linked bounty: #649, and the proposed-work artifact wording;
  • no bounty creation, proposal execution, payout execution, ledger mutation, wallet behavior, admin-token API, bridge, exchange, cash-out, MRWK price, private-data, credential, or secret-handling behavior is changed.

Validation on this exact head:

  • uv run --python 3.12 --extra dev python -m pytest tests/test_bounty_pages.py tests/test_public_routes.py -q -> 25 passed, 1 existing Starlette/httpx warning.
  • uv run --python 3.12 --extra dev ruff check tests/test_bounty_pages.py tests/test_public_routes.py -> passed.
  • uv run --python 3.12 --extra dev ruff format --check tests/test_bounty_pages.py tests/test_public_routes.py -> 2 files already formatted.
  • uv run --python 3.12 --extra dev mypy app/public_routes.py app/serializers.py -> success.
  • uv run --python 3.12 --extra dev python scripts/docs_smoke.py -> docs smoke ok.
  • git diff --check origin/main...HEAD -> clean.
  • git merge-tree --write-tree origin/main HEAD -> clean tree ad34aab4f34743ef60a02ffa0cbfe9beae3903fd.

GitHub state checked before approval: mergeStateStatus=CLEAN; hosted Quality, readiness, docs, and image checks and CodeRabbit statuses are successful on this head. I found no prior human review and no existing #838 claim for PR #890 / this head before posting this review.

@ramimbo ramimbo merged commit 8c09676 into ramimbo:main Jun 5, 2026
2 checks passed
@ramimbo ramimbo added mrwk:accepted Maintainer accepted for payout mrwk:paid Ledger payment recorded labels Jun 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

mrwk:accepted Maintainer accepted for payout mrwk:paid Ledger payment recorded

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants