diff --git a/AGENTS.md b/AGENTS.md index 83e63f4..c14862c 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -1179,7 +1179,12 @@ session with **no other memory of this project**. So: strip and a neutral **For sponsors & collabs** card (followers/events/spots/ 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. - `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 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 — @@ -2632,6 +2637,15 @@ Rules: public stash images use the shared fallback. APK sha256 `31aced78…`, versionCode 10732. Web forced live (manual `netlify deploy`; the 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) - **Transfer content between keys (`scripts/transfer-content.mjs`, 2026-10-04):** diff --git a/NIP.md b/NIP.md index d2c42bf..6297171 100644 --- a/NIP.md +++ b/NIP.md @@ -14,6 +14,8 @@ other clients, and preserved on edit: | `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. | | `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=` 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_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", "bitcoin_silent_payment": "sp1qq...long...", "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", "noffer": "noffer1..." }