diff --git a/apps/web/src/__tests__/app/faq.test.ts b/apps/web/src/__tests__/app/faq.test.ts index c2960f5..c6cdcf3 100644 --- a/apps/web/src/__tests__/app/faq.test.ts +++ b/apps/web/src/__tests__/app/faq.test.ts @@ -61,8 +61,9 @@ describe('FAQ facts', () => { // These are the exact values that were wrong before, verified against // mainnet `feeRate()` and `config()`. Re-verify with `cast call` before // changing either the copy or this test. - it('states the 5% fee and never the old 3%', () => { - expect(allCopy).toContain('5% ') + it('states the 7.5% fee and never an older rate', () => { + expect(allCopy).toContain('7.5% ') + expect(allCopy).not.toMatch(/(^|[^.\d])5% /) expect(allCopy).not.toContain('3%') }) diff --git a/apps/web/src/app/faq/content.ts b/apps/web/src/app/faq/content.ts index 000ff64..abf0d55 100644 --- a/apps/web/src/app/faq/content.ts +++ b/apps/web/src/app/faq/content.ts @@ -12,10 +12,12 @@ * answer (mondeto.app/faq#payout-timing). Don't rename ids casually — they get * pasted into support replies. * - * Numbers here (5% fee, ~30-day halving) were verified against mainnet - * `feeRate()` and `config()`. They're per-deployment constructor values, so - * re-check with `cast call` before editing — three different halving periods - * were in circulation across this repo before this was written. + * Numbers here (7.5% fee, ~30-day halving) must match mainnet `feeRate()` + * and `config()`. The halving period is a per-deployment constructor value; + * the fee is owner-settable (`setFeeRate`, capped at 20%) and stepped from + * 500 to 750 bps in the tx referenced by the PR that landed this line. Re-check + * both with `cast call` before editing — three different halving periods were + * in circulation across this repo before this was written. * * Lives beside the page rather than inside it so `__tests__/app/faq.test.ts` * can import it without pulling in React (a `page.tsx` may only export the @@ -114,12 +116,12 @@ export const FAQ_GROUPS: QaGroup[] = [ { id: 'who-pays-whom', q: 'Who pays whom when I buy a pixel?', - a: `If you buy a pixel from another player, they receive what you paid minus a 5% platform fee. If the pixel was unowned, the full amount goes to the contract's treasury.`, + a: `If you buy a pixel from another player, they receive what you paid minus a 7.5% platform fee. If the pixel was unowned, the full amount goes to the contract's treasury.`, }, { id: 'sniped', q: 'Can someone buy my pixel away from me?', - a: `Yes — and that's how you get paid. Anyone can buy any pixel at its current price; there is no listing and no approval needed. The moment someone buys yours, you are paid in the same transaction: what they paid, minus the 5% fee. How much that is depends on timing. The instant a pixel is bought, its price doubles for the next buyer, then decays from there — halving about every 30 days. So a quick resale pays you close to double what you paid, while a pixel nobody touches for a long time gets cheaper for the next buyer, and pays you less.`, + a: `Yes — and that's how you get paid. Anyone can buy any pixel at its current price; there is no listing and no approval needed. The moment someone buys yours, you are paid in the same transaction: what they paid, minus the 7.5% fee. How much that is depends on timing. The instant a pixel is bought, its price doubles for the next buyer, then decays from there — halving about every 30 days. So a quick resale pays you close to double what you paid, while a pixel nobody touches for a long time gets cheaper for the next buyer, and pays you less.`, }, { id: 'no-buyers', diff --git a/apps/web/src/app/terms/page.tsx b/apps/web/src/app/terms/page.tsx index eebee39..e4e330d 100644 --- a/apps/web/src/app/terms/page.tsx +++ b/apps/web/src/app/terms/page.tsx @@ -8,7 +8,7 @@ export const metadata: Metadata = { // Celo Mini Apps Terms and Conditions, provided by counsel. The Mondeto // game description (§5) and fee wording (§6) were aligned with the // deployed contract mechanics (price doubles on purchase, halves over -// each 30-day period to a minimum price; 5% fee deducted from the +// each 30-day period to a minimum price; 7.5% fee deducted from the // previous owner's proceeds; unowned-pixel proceeds go to the contract // treasury). Any further edits to this text need legal sign-off. @@ -58,7 +58,7 @@ const SECTIONS: Array<{ title: string; paragraphs: string[] }> = [ { title: '6. Fees & Prizes', paragraphs: [ - 'For Mondeto, Celo Core Co. may receive a service fee of up to five percent (5%) of the value of each purchase of an owned pixel, deducted from the amount paid to the previous owner. The full purchase price of a previously unowned pixel is paid to Celo Core Co.’s smart-contract treasury. For MiniQuiz, judging and prize amounts are determined in the sole discretion of and paid by Celo Core Co. via its admin process in USDT. Participating in some of the Services and transacting on the Celo Network may require the payment of network "gas" fees. Gas fees fluctuate, are payable by you to network validators, and are non-refundable. Applicable amounts and currency are presented to you before you confirm a transaction.', + 'For Mondeto, Celo Core Co. may receive a service fee of up to seven and a half percent (7.5%) of the value of each purchase of an owned pixel, deducted from the amount paid to the previous owner. The full purchase price of a previously unowned pixel is paid to Celo Core Co.’s smart-contract treasury. For MiniQuiz, judging and prize amounts are determined in the sole discretion of and paid by Celo Core Co. via its admin process in USDT. Participating in some of the Services and transacting on the Celo Network may require the payment of network "gas" fees. Gas fees fluctuate, are payable by you to network validators, and are non-refundable. Applicable amounts and currency are presented to you before you confirm a transaction.', ], }, {