docs: mark C5b/H12/H13 fixed; note remaining (H1, H14, manual Pro, i18n)
This commit is contained in:
parent
a745bdbbcf
commit
0f0e3f9aa6
1 changed files with 14 additions and 10 deletions
24
AGENTS.md
24
AGENTS.md
|
|
@ -1853,11 +1853,15 @@ keeps `stateRef` in sync cross-tab; the backup flag is per-account
|
|||
**Deferred (documented, NOT fixed).**
|
||||
- `H1` — a spot "claim" CLONES rather than transferring (`claim-from` is written
|
||||
but **never read**); needs a designed handoff/resolution, not a patch.
|
||||
- `C5b` — a self-asserted `featured` tag still drives **ranking** (ProBadge
|
||||
verifies, ordering doesn't); needs a batch provider-receipt verification pass.
|
||||
- `H12` — `paymentVerified` preimage branch is replayable (not bound to the trade).
|
||||
- `H13` — offer threads trust the self-declared `role` tag for seller identity.
|
||||
- `H14` — an NWC timeout can fall through to a second rail with no
|
||||
- `C5b` — **FIXED**: `src/lib/featuredVerification.ts` verifies a provider-authored
|
||||
NIP-57 receipt (cached provider lookup) and the tour/event/Lab list hooks rank
|
||||
only receipt-backed `featured` items; falls back to the self-asserted tag when
|
||||
the provider is unreachable (availability over strictness).
|
||||
- `H12` — **FIXED**: a preimage/deposit proof counts at most once (dedupe), so a
|
||||
real payment can't be reused to inflate `paymentVerified`.
|
||||
- `H13` — **FIXED**: the offer seller is always the listing author (derived from
|
||||
the event pubkey), never a self-declared `role` tag.
|
||||
- `H14` — an NWC timeout can still fall through to a second rail with no
|
||||
`lookupInvoice`, risking a double payment.
|
||||
- Medium/Low **mostly fixed in a follow-up "tier 3" commit**: tour sponsor URL
|
||||
sanitized (XSS); stats persisted-cache reads null-guarded; Overpass no longer
|
||||
|
|
@ -1867,11 +1871,11 @@ keeps `stateRef` in sync cross-tab; the backup flag is per-account
|
|||
`querySkateContent`; offline `publishing` rows requeued; replaceable-event
|
||||
dedupe by author+kind; route cache key includes origin; MarketplacePage uses
|
||||
`<Link>`; EventCountdown reacts to language.
|
||||
- Still open (lower priority): self-asserted `featured` gating is the C5b item
|
||||
above; manual Pro "paid" isn't receipt-verified; crew "pending" false positives;
|
||||
background poll tokens aren't unregistered; offer `role` trust (H13); NWC
|
||||
double-pay (H14); a few i18n leftovers (error boundaries, DesktopNavManager,
|
||||
some StashPage literals) and gray-500/600 contrast.
|
||||
- Still open (lower priority): manual Pro "paid" isn't receipt-verified; the
|
||||
background poll tokens are cleaned up server-side (register replaces per
|
||||
pubkey) but `disable()` doesn't unregister; **H1** spot-claim transfer (design);
|
||||
**H14** NWC double-pay; a few i18n leftovers (some StashPage literals) and
|
||||
gray-500/600 contrast.
|
||||
|
||||
## Nostr Protocol Integration
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue