| name | marketplace-mega-pass |
| description | Use when implementing the Marketplace Listings mega pass, marketplace PRD, listing UI, search, ratings, comments, Interested, milestones, moderation, or Dayhawk/EntExchange marketplace workflows. |
Marketplace Mega Pass
Purpose: implement Marketplace Listings as one coherent, verified PR without losing the product boundary, test matrix, or UI review gates during context compaction.
Required Reading
docs/marketplace-listings-prd.md
docs/member-content-implementation-plan.md
docs/ui-visual-protocol.md
AGENTS.md
.opencode/skills/perkcord-ui-visuals/SKILL.md
.opencode/skills/perkcord-pr-merge-ready/SKILL.md before PR/review loop work
Product Boundary
- Build non-transactional listings, not a payment marketplace.
- Do not add seller payouts, split payments, escrow, wallet balances, transaction ledgers, PayPal multiparty, Stripe Connect destination charges, Authorize.Net split payments, shipping labels, refunds, chargebacks, tax collection, or dispute adjudication.
- Keep seller eligibility tied to entitlements/admin policy, not Discord roles.
- Keep viewer access configurable, including
discord_guild_member using live bot-backed server membership checks.
- Preserve history by default. Normal sellers must not hard-delete listings.
Implementation Shape
- Work from a fresh sibling worktree/branch, not protected
main.
- Implement the phases in the PRD as one PR, verifying each phase before flowing to the next.
- Keep contracts in
packages/contracts for marketplace HTTP/admin/member payloads.
- Keep transport parsing in
apps/web; keep product rules in Convex helpers/functions.
- Keep Discord membership verification behind a narrow bot/API/action boundary.
Test Matrix
- API and contract tests for every marketplace route and payload.
- Convex/backend tests for settings, access, seller eligibility, lifecycle, search filters, interests, comments, milestones, ratings, moderation, terms acceptance, membership checks, aggregates, saved searches, and audit events.
- Integration tests for seller create/publish, buyer browse/search/interested, comments, milestones, ratings, admin flags/reports, price drops, and server-member gate flows.
- Frontend component tests for listing cards, editor validation, search/filter controls, interested button, comments, milestone timeline, rating form, seller reputation, guidance panels, and moderation controls.
- Storybook stories and snapshots for core UI states.
- Playwright functional tests for public/member/seller/admin flows and direct URL authorization denials.
- Playwright visual screenshots for marketplace list, detail, seller dashboard/editor, admin settings, and admin moderation, including mobile list/detail.
- Security/ops tests for no token/private data logging, no hard deletes, server-side access enforcement, analytics sanitization, and moderation reauthorization.
UI Review Gates
- Use Storybook for isolated primitive states and Playwright for page/flow states.
- Capture screenshots for significant UI iterations, not only final snapshots.
- Review screenshots with a VLM before declaring them acceptable.
- Share screenshots and flow notes with the user for human UI inspection before treating UI as accepted.
- If the user rejects the visual direction, patch the UI and rerun the relevant Storybook/Playwright visual checks.
Counter-Analysis
Run subagent review passes when the relevant evidence exists:
- UI designer pass after first usable list/detail/editor UI exists.
- UX designer pass after first end-to-end seller and buyer flows exist.
- Marketplace safety/adversarial pass for purchase-protection, scam-prevention, deletion/history, moderation, reports, and private data leakage.
Feed reviewers screenshots, Storybook states, Playwright flow notes, and PRD sections. Classify findings as valid, invalid, unclear, or deferred before changing code.
Completion Gate
- Do not call the mega pass complete at PR creation.
- Finish local verification, visual review, user UI review, CI, automated reviews, and valid feedback handling.
- Keep evidence paths in the PR handoff: commands, screenshots/snapshot locations, Playwright reports, Storybook snapshots, and any intentionally skipped checks.