Local end-to-end runs trip the API's login throttle
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 70/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- node.js, playwright, typescript
- Domain
- authentication, backend, testing
Research direction
Start with testing/playwright.config.ts and the API's dev:test configuration described in the issue; trace how the test API receives its throttle settings. Compare raising or disabling the login limit for test runs with capping local workers. Done when local end-to-end runs avoid login throttling while production settings remain unaffected.
Written by the indexing model from the issue text.
Description
A local pnpm test:e2e run had 49 of 327 tests fail, every one on a login:
- The
api-client.tsfixtures got429 ThrottlerException: Too Many Requestsfrom
POST /v1/auth/login. - Logins through the UI were bounced back to
/auth/login.
The failures began partway through the run and hit every later spec that logs in, including static
pages such as About and Contact. Re-running the same 49 tests with --workers=2, they passed. CI is
unaffected because it runs one worker.
Cause
testing/playwright.config.tssetsworkers: process.env.CI ? 1 : undefinedwith
fullyParallel: true, so a local run uses half the machine's cores.- Each worker logs in for its own fixtures (
adminToken,roleAccount), and some specs log in
through the UI. - The API that Playwright starts (
apps/api'sdev:test) reads the normal.env, which has
THROTTLER_ENABLED=true.LOGIN_REQUEST_THROTTLER_LIMITfalls back to 50 logins per 60 seconds
per IP, and every worker shares one IP.
Possible fixes
- Raise or disable the login throttle for the
dev:testAPI only. This keeps local runs parallel and
changes nothing in production. - Or cap the number of local workers.
- Dominant language
- TypeScript
- Stars
- 119
- Forks
- 19
- Avg merge
- 4d 11h
- Merged PRs (30d)
- 35
Getting set up
- Ships a Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from DouglasNeuroInformatics/OpenDataCapture
-
Area: Infrastructure Chore Difficulty: Low Good First Issue Priority: Low
Difficulty 1/5 Under an hour Newbie friendliness 88/100
DouglasNeuroInformatics/OpenDataCapture#1836 ·
Maintainers usually reply within 1 day
-
Area: Playground Bug Difficulty: Low Good First Issue Priority: Medium
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
DouglasNeuroInformatics/OpenDataCapture#1833 ·
Maintainers usually reply within 1 day
-
Area: Instruments Bug Difficulty: Low Priority: Low
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
DouglasNeuroInformatics/OpenDataCapture#1824 · 1 comment ·
Maintainers usually reply within 1 day
-
Area: Shared Bug Difficulty: Low Priority: Low
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
DouglasNeuroInformatics/OpenDataCapture#1813 · 1 comment ·
Maintainers usually reply within 1 day
-
Area: Shared Bug Difficulty: Low Good First Issue Priority: Low
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
DouglasNeuroInformatics/OpenDataCapture#1812 · 1 comment ·
Maintainers usually reply within 1 day
All issues in DouglasNeuroInformatics/OpenDataCapture
Similar issues
-
Difficulty 1/5 1-3 hours Newbie friendliness 66/100
Maintainers usually reply within 1 day
-
area:plugins area:security area:skills bug has repro
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
anthropics/claude-code#105911 ·
Maintainers usually reply within 1 day
-
documentation good first issue help wanted
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
dev-five-git/devup-ui#879 ·
Maintainers usually reply within 11 days
-
openspec-apply-change skill: when blocked, may select a ready artifact unrelated to missingArtifactsOpen
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Fission-AI/OpenSpec#2165 ·
Maintainers usually reply within 1 day
-
🐞 bug 🧐 unconfirmed
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
Tencent/tdesign-vue-next#7032 · 1 comment ·
Maintainers usually reply within 1 day