Flagsmith / Flagsmith/flagsmith
Scale-Up revival left outdated plan checks and plan descriptions behind
- Dominant language
- Python
- Stars
- 6.6k
- Forks
- 567
- Avg merge
- 1d 13h
- Merged PRs (30d)
- 121
Description
Scale-Up left the self-serve payment options in September 2024 (https://github.com/Flagsmith/flagsmith/pull/4583) and returned as v4 in April 2026 (https://github.com/Flagsmith/flagsmith/pull/7216). The v4 Chargebee plan ids are [mixed-case](https://github.com/Flagsmith/flagsmith/blob/46ae7a06bc52dca1582faf623d3b97fb7f8b6f6c/frontend/env/project_prod.js#L33-L36) (`Scale-Up-v4-USD-Monthly` / `Scale-Up-v4-USD-Yearly`) while all earlier plan ids were lowercase, and some plan checks and in-app plan descriptions still assume the old ids or the reduced plan lineup.
## Acceptance criteria
- [ ] Plan id checks match case-insensitively — Chargebee plan ids cannot be renamed, and v4 introduced mixed-case ids:
- [`get_scaleup_plan_version`](https://github.com/Flagsmith/flagsmith/blob/46ae7a06bc52dca1582faf623d3b97fb7f8b6f6c/api/organisations/models.py#L314-L317) resolves the version from the v4 plan ids.
- [Plan-gated project fields](https://github.com/Flagsmith/flagsmith/blob/46ae7a06bc52dca1582faf623d3b97fb7f8b6f6c/api/projects/serializers.py#L74-L76) treat Scale-Up v4 as Scale-Up.
- [Stale flags tagging](https://github.com/Flagsmith/flagsmith-private/blob/139aa16579c6b1169f1205dc3bb7a04d2333f5c3/src/workflows_logic/stale_flags/tasks.py#L20-L26) includes Scale-Up v4 organisations.
- [ ] The plan descriptions on the in-app billing page agree with the pricing page on which plan includes governance features — today the [Enterprise panel](https://github.com/Flagsmith/flagsmith/blob/46ae7a06bc52dca1582faf623d3b97fb7f8b6f6c/frontend/web/components/modals/payment/pricingFeatures.tsx#L91) lists roles, permissions, change requests, and audit logs that Scale-Up already includes.
Contributor guide
Research direction
Start with get_scaleup_plan_version in api/organisations/models.py, the plan-gated fields in api/projects/serializers.py, stale_flags/tasks.py in the linked private repository, and pricingFeatures.tsx. Compare each check with the linked v4 Chargebee IDs and pricing page; done means mixed-case IDs resolve consistently, stale-flag tagging includes v4 organisations, and billing descriptions assign governance features to the correct plan.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python, react, typescript
- Domain
- backend, frontend, payments
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Clearly specified
- Newbie friendliness
- 55/100