[object Object]

← back to CelebritySignatures

Add WEAR-READY-FOR-KEY finish note (paste key -> full-register screen -> /wear populates)

498612199e699954e487d1e2738498fa583e9ef7 · 2026-08-06 10:43:05 -0700 · Steve

Feature complete + safely gated (0 sellable). Blocked only on USPTO ODP API key,
which is ID.me-gated (human-only). Documents the one-paste finish once the key exists.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

Files touched

Diff

commit 498612199e699954e487d1e2738498fa583e9ef7
Author: Steve <steve@designerwallcoverings.com>
Date:   Thu Aug 6 10:43:05 2026 -0700

    Add WEAR-READY-FOR-KEY finish note (paste key -> full-register screen -> /wear populates)
    
    Feature complete + safely gated (0 sellable). Blocked only on USPTO ODP API key,
    which is ID.me-gated (human-only). Documents the one-paste finish once the key exists.
    
    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
---
 WEAR-READY-FOR-KEY.md | 36 ++++++++++++++++++++++++++++++++++++
 1 file changed, 36 insertions(+)

diff --git a/WEAR-READY-FOR-KEY.md b/WEAR-READY-FOR-KEY.md
new file mode 100644
index 0000000..2ff6194
--- /dev/null
+++ b/WEAR-READY-FOR-KEY.md
@@ -0,0 +1,36 @@
+# /wear — wired and ready for the USPTO ODP API key
+
+The `/wear` signature-apparel feature is **built, tested, committed, and safely gated**
+(store shows 0 sellable until a real trademark screen runs). The ONLY remaining input is
+the USPTO Open Data Portal **API key**, which is gated behind ID.me identity verification
+(see `WEAR-LEGAL-NOTE.md`). Every route to the trademark register — real-time API, bulk
+API, and even the web file download — goes through this same key (USPTO's June 18 2026
+"registration to curb AI scraping" policy).
+
+## When ID.me finally shows "verified" on data.uspto.gov → Manage API Key
+
+1. **Copy the API key** shown on the My ODP / Manage API Key page.
+2. **Paste it to Claude.** Per Steve's standing API-key rule it auto-routes via the
+   `secrets` skill to `USPTO_ODP_API_KEY` (master `.env` + this project's `.env`), last-4
+   confirmation only. (Manual equivalent: add `USPTO_ODP_API_KEY=<key>` to
+   `~/Projects/CelebritySignatures/.env`.)
+3. **Run the real screen** (one paste of commands):
+   ```sh
+   cd ~/Projects/CelebritySignatures
+   # pull the full annual register (product trtyrap ≈ 91 parts) with the key:
+   for f in $(seq -w 1 91); do \
+     node scripts/fetch-tm-register.mjs --odp "apc18840407-20251231-$f.zip"; done
+   node scripts/build-tm-index.mjs        # complete flips true (real register parsed)
+   node scripts/build-tm-clearance.mjs    # re-screens the catalog
+   ```
+   (Or just the daily product `trtdxfap` for a lighter, current-window screen.)
+4. **Restart the app** (pm2 restart celebrity-signatures) and open `/wear` — it flips from
+   empty to a populated, trademark-cleared store automatically. Nothing else to change.
+
+## What "done" looks like
+- `data/tm-clearance.json` → `indexComplete: true`
+- `GET /api/wear/signatures` → `count > 0`, only CLEAR + safe/medium-risk names
+- Names with a live Class-25 (apparel) wordmark are excluded (MARK_FOUND); fuzzy matches
+  are held (NEEDS_REVIEW). All still Steve-gated for live Stripe + live POD submit.
+
+## Status: BLOCKED on ID.me identity verification (USPTO-side, human-only). TK-10286.

← 9a722d3 Repoint TM register fetcher to USPTO Open Data Portal (trtdx  ·  back to CelebritySignatures  ·  chore: lint, refactor, v1.0.1 (session close) 6a34cf3 →