Skip to content

Commit 3abee9c

Browse files
committed
feat(web): the Creator Control Center §221
§221's priority order, top to bottom: creator earnings, claimable fees, launches, market status, graduation progress, activity, quick actions. NO ADMIN SURFACE §221 says it plainly — no token admin powers are exposed because none should exist. There is no pause, no mint, no blacklist, no fee change, no metadata edit. A creator has exactly two powers here: launch another market, and withdraw the fees they earned. Both are things any wallet can do on its own behalf. TWO FEE FIGURES, SIDE BY SIDE "Claimable now" is read from the vault; "Earned all time" comes from the projection. They differ the moment a creator claims once, and the page shows both rather than picking one. When the vault could not be read the claimable figure is an em dash with the reason, never a zero — a creator cannot tell a failed read from an empty balance, and one of those is a lie about their money. THE CLAIM IS AN INTENT The amount rendered and the bytes signed come from the same object. This page does not encode a selector and does not compute a figure to put next to one (§694). After a claim it re-reads the vault rather than subtracting locally; the chain is the authority on what is left (§138). One button per asset, because claimCreatorFees takes an asset and pays that balance. A single "claim all" would be one transaction per asset under one label, and a partial failure would have no honest way to report itself. Reached from the connected address in the nav and from the account page, which stops claiming that wallet support does not exist and says which of its own sections are still unbuilt.
1 parent f0e7d5a commit 3abee9c

5 files changed

Lines changed: 955 additions & 9 deletions

File tree

apps/web/src/app/account/page.tsx

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ const SECTIONS = [
5555
},
5656
{
5757
title: "My launches",
58-
body: "Markets you created, with their graduation progress and fee accrual.",
58+
body: "Markets you created, with their graduation progress and fee accrual. Live now on the creator page.",
5959
},
6060
{
6161
title: "Earnings",
@@ -89,14 +89,15 @@ export default function AccountPage(): JSX.Element {
8989
</section>
9090

9191
<div className={styles.connect} role="status">
92-
<p className={styles.connectTitle}>No wallet connected</p>
92+
<p className={styles.connectTitle}>Holdings are not wired yet</p>
9393
<p className={styles.connectBody}>
94-
Wallet connection is not enabled in this build. Once it is, this page reads your
95-
positions from the chain — SENT never custodies anything, so there is no account
96-
to create and nothing to sign up for.
94+
Positions and P&amp;L on this page still need a per-account holdings read, which is
95+
not built. Creator earnings and launches ARE live — they moved to the creator page
96+
rather than waiting for the rest of this one. SENT never custodies anything, so
97+
there is no account to create and nothing to sign up for.
9798
</p>
98-
<Link href="/explore" className={styles.connectCta}>
99-
Explore markets
99+
<Link href="/creator" className={styles.connectCta}>
100+
Open the creator page
100101
</Link>
101102
</div>
102103

0 commit comments

Comments
 (0)