Skip to content

[defer] No request-quota budget for scaling to thousands of samples #15

Description

@QRex-v0

[CLAUDE-OPUS-5]

Gap

"Scalability to thousands of samples" is a stated priority in PROJECT_REQUIREMENTS.md. No document budgets request quotas, and IMPLEMENTATION_PLAN.md §6 defers the whole topic to Phase 2 without numbers.

Evidence

The unauthenticated GitHub REST API allows 60 requests per hour per address. Task 6 alone costs roughly three calls per pull request across detail, reviews, and commits, so a single run of one task consumes about half the hourly budget. Three eval tasks target GitHub.

An authenticated token raises this to 5000 per hour, and a single GraphQL query retrieved all 30 contributor profiles that would otherwise have cost 30 REST calls. Both mitigations are available today and neither is specified.

Site-level throttling is a separate axis. Airbnb, X, and LinkedIn all rate-limit or challenge aggressive clients, and README.md:112 already concedes no anti-bot handling.

Scope

  1. Specify a per-domain request budget and a token bucket shared across concurrent workers.
  2. Specify credential-backed access where an API exists, and prefer batched queries over per-entity calls.
  3. Define behavior on quota exhaustion: blocked with a retry-after, never a partial silent result.
  4. Record per-run request counts and quota headroom in the run result, so the Phase 1 batch runner in §5 can report cost per sample.
  5. State the concurrency ceiling per domain that the Phase 2 worker pool must respect.

Acceptance

  • A per-domain budget table is committed and enforced in code.
  • Quota exhaustion is a distinct, diagnosable status.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    reconFound by live site reconnaissancespec-gapRequired deliverable not specified

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions