Skip to content

x402-gateway 0.10.1 + throttle 0.3.2: meter page routes, welcome AI chat bots - #103

Merged
ralyodio merged 1 commit into
masterfrom
bothits-throttle-0.10
Oct 19, 2026
Merged

ralyodio merged 1 commit into
masterfrom
bothits-throttle-0.10

Conversation

@ralyodio

Copy link
Copy Markdown
Contributor

Anthony 2026-10-19 (bot hits decisions): "yes" to the gateway + throttle on
this site, same as the rest of the fleet.

  • gateway 0.7 -> 0.10.1: also charges headless browsers (Lightpanda...), SEO
    resellers (AhrefsBot...), stale desktop UA pools and copied Googlebot/
    Applebot strings from outside their published ranges; Googlebot/bingbot/
    Applebot/DuckDuckBot verified by address, AI chat/retrieval fetchers
    (ChatGPT-User, Claude-User, Perplexity, meta-externalfetcher,
    meta-webindexer, YouBot...) unmetered. Training crawlers still pay.
  • @profullstack/throttle 0.3.2 after the gate: 100 req/min per caller on page
    routes, over-limit is a 402 with the same offer. /api/ (webhooks, daemons,
    CLIs, polling) and Next link prefetches are never metered.

Tested: tsc clean on the change, existing middleware tests pass, throttle smoke
(105 page hits -> 5 refused as 402; /api, prefetch, Googlebot from 66.249/19,
Claude-User never refused).

🤖 Generated with Claude Code

…ess/SEO/stale UAs, welcome AI chat bots

Anthony 2026-10-19 (bot hits decisions): "yes" to the gateway + throttle on
this site, same as the rest of the fleet.

- gateway 0.7 -> 0.10.1: also charges headless browsers (Lightpanda...), SEO
  resellers (AhrefsBot...), stale desktop UA pools and copied Googlebot/
  Applebot strings from outside their published ranges; Googlebot/bingbot/
  Applebot/DuckDuckBot verified by address, AI chat/retrieval fetchers
  (ChatGPT-User, Claude-User, Perplexity, meta-externalfetcher,
  meta-webindexer, YouBot...) unmetered. Training crawlers still pay.
- @profullstack/throttle 0.3.2 after the gate: 100 req/min per caller on page
  routes, over-limit is a 402 with the same offer. /api/ (webhooks, daemons,
  CLIs, polling) and Next link prefetches are never metered.

Tested: tsc clean on the change, existing middleware tests pass, throttle smoke
(105 page hits -> 5 refused as 402; /api, prefetch, Googlebot from 66.249/19,
Claude-User never refused).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@socket-security

Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Added@​profullstack/​throttle@​0.3.27610010093100
Updated@​profullstack/​x402-gateway@​0.7.0 ⏵ 0.10.180 -3100100 +195 +1100

View full report

@github-actions

Copy link
Copy Markdown

ThreatCrush Security Scan

11 finding(s)

HIGH/CRITICAL: 2 | MEDIUM: 3 | LOW: 6

Severity Rule Location
HIGH sh-unquoted-expansion-destructive public/install.sh:67
HIGH sh-remote-script-execution public/install.sh:89
MEDIUM sh-remote-script-execution public/install.sh:133
MEDIUM js-open-redirect src/app/numbers/page.tsx:182
MEDIUM js-unescaped-html-sink src/components/pit-footer.tsx:17
LOW secret-generic-credential src/lib/providers/__tests__/twilio.test.ts:24
LOW secret-generic-credential src/lib/providers/__tests__/twilio.test.ts:46
LOW secret-generic-credential src/lib/providers/__tests__/twilio.test.ts:60
LOW secret-generic-credential src/lib/providers/__tests__/twilio.test.ts:78
LOW secret-generic-credential supabase/config.toml:287
LOW secret-generic-credential supabase/config.toml:319

Snippets are redacted; ThreatCrush never prints matched credential material.

@ralyodio
ralyodio merged commit 039eb06 into master Oct 19, 2026
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant