Skip to content

[STAGING, PLEASE IGNORE] feat: move Outpost Ticket to a dedicated Outpost shop category#550

Draft
qcoral wants to merge 4 commits into
mainfrom
feat/move-outpost-ticket-to-outpost-category
Draft

[STAGING, PLEASE IGNORE] feat: move Outpost Ticket to a dedicated Outpost shop category#550
qcoral wants to merge 4 commits into
mainfrom
feat/move-outpost-ticket-to-outpost-category

Conversation

@qcoral

@qcoral qcoral commented Jun 15, 2026

Copy link
Copy Markdown
Member

What

Adds an Outpost shop category and moves the Outpost Ticket into it, instead of living under Hardware.

Changes

  • db/seeds.rb — new outpost shop category (slug: "outpost", "Outpost Shop", hub title "Outpost", position 5), alongside the existing grants/hardware/digital/merch/games categories.
  • db/seeds/outpost_ticket.rb — assigns the ticket to the outpost category instead of hardware. Uses shop_categories = [...] (replace, not append) so a re-seed moves the ticket out of any prior category rather than leaving it in both. The hq source assignment is unchanged.

Notes

  • This is a seed-only change (no schema migration). The = assignment is idempotent and self-correcting: on the next seed run, any already-seeded ticket in hardware is moved to outpost. No data migration needed.
  • No code coupled the ticket to the hardware category slug, so nothing else needed updating. (The separate experiences-category teaser card in category.html.erb is unrelated and left as-is.)
  • Per request, no tests are included in this PR. Verified manually by re-seeding: the Outpost Ticket ends up in ["outpost"] only, with hardware detached and the hq source intact.

🤖 Generated with Claude Code

Add an "outpost" shop category and assign the Outpost Ticket to it
instead of "hardware". The category is assigned (not appended) so
re-seeding moves the ticket out of its previous category.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@qcoral qcoral changed the title feat: move Outpost Ticket to a dedicated Outpost shop category [STAGING, PLEASE IGNORE] feat: move Outpost Ticket to a dedicated Outpost shop category Jun 15, 2026
…d-dollar

The Outpost Ticket discount is now a flat percentage of the ticket price
set by the approved funding tier (B 30% / A 50% / S & X 100%), accrued
cumulatively on approval, replacing the "2 Stardust per unrequested
dollar" logic. Overflow past the ticket price still becomes a flight
stipend.

- funding_request: tier discount_percent, TIER_DISCOUNT_PERCENT,
  tier_discount_stardust, and a tier_discount_summary for the modal;
  accrual now awards the flat tier amount.
- Update all user-facing copy that described the per-dollar mechanic:
  funding modal preview + JS, tiers guide, admin reviewer hint, shop
  order summary, and the Outpost Ticket seed description.
- Update existing discount tests to the flat per-tier amounts.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@maxwofford maxwofford marked this pull request as draft June 15, 2026 17:30
Keep tests out of the PR per request; the discount logic/copy change
remains.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@qcoral qcoral marked this pull request as ready for review June 15, 2026 17:48
@qcoral qcoral marked this pull request as draft June 15, 2026 17:49
The accrual is now a flat per-tier discount (S = 100% of the 300✦ base),
so all three tier-3 cases yield 300 regardless of approved amount. Also
retitled the "approve for less" test, which now verifies the discount is
unchanged by the approved amount rather than increased by it.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant