docs: record sponsorship opt-in and grantmaker form

This commit is contained in:
SkateSpots 2026-10-29 21:09:50 +07:00
parent 7f29a822ab
commit 957033e678
2 changed files with 19 additions and 1 deletions

View file

@ -1179,7 +1179,12 @@ session with **no other memory of this project**. So:
strip and a neutral **For sponsors & collabs** card (followers/events/spots/ strip and a neutral **For sponsors & collabs** card (followers/events/spots/
zaps, prefilled collab DM, Rider Card link). The card only appears when the zaps, prefilled collab DM, Rider Card link). The card only appears when the
profile has actual skate activity. NIP-05 has a loading/verifying state. profile has actual skate activity. NIP-05 has a loading/verifying state.
`useFollowing` invalidates follower counts on follow/unfollow. `useFollowing` invalidates follower counts on follow/unfollow. Sponsorship
is an **explicit opt-in** (`sponsorships_open` + optional
`sponsorships_note` in kind-0), never inferred from activity; the neutral card
is shown only when the profile has skate activity or opted in. `/supporters`
has a Bitcoin-grantmaker inquiry form that composes a private DM to the owner
(no storage) and a humorous KYC disclosure.
- **Report → action + a publish floor (2026-09-28):** the one-tap "not a skate - **Report → action + a publish floor (2026-09-28):** the one-tap "not a skate
spot" report used to only land in the admin queue (invisible effect). It now spot" report used to only land in the admin queue (invisible effect). It now
**shows on the spot page to everyone** ("Reported as not a skate spot by N — **shows on the spot page to everyone** ("Reported as not a skate spot by N —
@ -2632,6 +2637,15 @@ Rules:
public stash images use the shared fallback. APK sha256 `31aced78…`, public stash images use the shared fallback. APK sha256 `31aced78…`,
versionCode 10732. Web forced live (manual `netlify deploy`; the versionCode 10732. Web forced live (manual `netlify deploy`; the
release-script deploy still hits the Netlify build failure). release-script deploy still hits the Netlify build failure).
- **1.7.33 (2026-10-29):** explicit profile **Open to sponsorships** opt-in
(`sponsorships_open` + `sponsorships_note` in kind-0; only shown when
opted in), plus a Bitcoin grantmaker inquiry form on `/supporters`.
The form opens a private DM to the owner and stores nothing; its funny
disclosure says KYC is for grantees, not for SkateSpots. Followers stat
now has a “relay-reported, not audited” info hint. APK sha256
`fd6ffb8b…`, versionCode 10733. Web forced live (manual
`netlify deploy`; the release-script deploy still hits the Netlify build
failure).
### Relay archive (dataset backup) ### Relay archive (dataset backup)
- **Transfer content between keys (`scripts/transfer-content.mjs`, 2026-10-04):** - **Transfer content between keys (`scripts/transfer-content.mjs`, 2026-10-04):**

4
NIP.md
View file

@ -14,6 +14,8 @@ other clients, and preserved on edit:
| `noffer` | string | CLINK Offer code (`noffer1…`) — self-custodial Bitcoin tip code. | | `noffer` | string | CLINK Offer code (`noffer1…`) — self-custodial Bitcoin tip code. |
| `bitcoin_silent_payment` | string | Bitcoin Silent Payment address (BIP-352, `sp1…`) — a reusable, private on-chain address. | | `bitcoin_silent_payment` | string | Bitcoin Silent Payment address (BIP-352, `sp1…`) — a reusable, private on-chain address. |
| `sponsors` | string | Freeform highlight of the skater's sponsors / supporters (brands, shops, people). | | `sponsors` | string | Freeform highlight of the skater's sponsors / supporters (brands, shops, people). |
| `sponsorships_open` | boolean | Explicit opt-in: the skater is open to sponsorship/collab conversations. Absence means **not** opted in; never infer this from activity. |
| `sponsorships_note` | string | Optional short note shown on the sponsor/collab card when `sponsorships_open` is true. |
| `cordn` | string | The **Cordn coordinator** others use to reach you — private, end-to-end encrypted messaging. Holds a coordinator **pointer**: either an `nprofile` (coordinator pubkey + relay hints), Cordn's canonical `https://cordn.net/chat/coordinators?c=<nprofile>` add-link, or an `http(s)` endpoint URL. This is the discovery field: clients SHOULD offer a one-tap **add** when it parses as a pointer, and otherwise open it as a plain link. See *Private Crew Chat (Cordn / MLS)*. | | `cordn` | string | The **Cordn coordinator** others use to reach you — private, end-to-end encrypted messaging. Holds a coordinator **pointer**: either an `nprofile` (coordinator pubkey + relay hints), Cordn's canonical `https://cordn.net/chat/coordinators?c=<nprofile>` add-link, or an `http(s)` endpoint URL. This is the discovery field: clients SHOULD offer a one-tap **add** when it parses as a pointer, and otherwise open it as a plain link. See *Private Crew Chat (Cordn / MLS)*. |
| `cashu_escrow` | string | Cashu escrow pubkey (33-byte compressed secp256k1 hex, `02…`) used as the P2PK lock target for marketplace escrow. Derived from the Cashu wallet keyring. See `ESCROW.md`. | | `cashu_escrow` | string | Cashu escrow pubkey (33-byte compressed secp256k1 hex, `02…`) used as the P2PK lock target for marketplace escrow. Derived from the Cashu wallet keyring. See `ESCROW.md`. |
| `cashu_mint` | string | Preferred Cashu mint URL for marketplace escrow (`https://…`). Buyers are nudged to lock funds at this mint, since a mint the seller already uses is one they can redeem from. Optional; see `ESCROW.md`. | | `cashu_mint` | string | Preferred Cashu mint URL for marketplace escrow (`https://…`). Buyers are nudged to lock funds at this mint, since a mint the seller already uses is one they can redeem from. Optional; see `ESCROW.md`. |
@ -29,6 +31,8 @@ Example:
"lud16": "sk8rboi@getalby.com", "lud16": "sk8rboi@getalby.com",
"bitcoin_silent_payment": "sp1qq...long...", "bitcoin_silent_payment": "sp1qq...long...",
"sponsors": "Independent Trucks, Local Skate Co.", "sponsors": "Independent Trucks, Local Skate Co.",
"sponsorships_open": true,
"sponsorships_note": "Open to deck, shoe, travel and event partners.",
"cordn": "https://cordn.net/u/abc123", "cordn": "https://cordn.net/u/abc123",
"noffer": "noffer1..." "noffer": "noffer1..."
} }