fix(settings): bound the install-wide contributor open-item cap - #3993
Conversation
|
Superagent didn't find any vulnerabilities or security issues in this PR. |
|
Caution 🟥🟥🟥🟥🟥🟥🟥🟥🟥🟥🟥🟥 🛑 Gittensory review result - fixes requiredReview updated: 2026-07-07 09:55:45 UTC
🛑 Suggested Action - Manual Review
Why this is blocked
CI checks failing
Review context
Contributor next steps
Signal definitions
🟩 Safe / merged · 🟦 Advisory · 🟨 Held for review · 🟥 Blocked / closed 💰 Earn for open-source contributions like this. Gittensor lets GitHub contributors earn for the work they already do — register to start earning →. Checked by Gittensory, a quiet PR intelligence layer for OSS maintainers.
|
❌ 53 Tests Failed:
View the top 3 failed test(s) by shortest run time
To view more test analytics, go to the Test Analytics Dashboard |
resolveGlobalContributorOpenItemCap (#2562) validated but never clamped its return value, so GLOBAL_CONTRIBUTOR_OPEN_ITEM_CAP could be set above the fixed 100-row live-verification sample budget and remain just as unenforceable as the per-repo caps were before that fix.
114416d to
0dd0a1c
Compare
Deploying with
|
| Status | Name | Latest Commit | Preview URL | Updated (UTC) |
|---|---|---|---|---|
| ✅ Deployment successful! View logs |
gittensory-ui | 940a82b | Commit Preview URL Branch Preview URL |
Jul 07 2026, 09:49 AM |
Summary
contributorOpenPrCap/contributorOpenIssueCap(normalizeOpenItemCapinsrc/db/repositories.ts), the.gittensory.yml-parsed equivalent, and the OpenAPI schema toMAX_CONTRIBUTOR_OPEN_ITEM_CAP = 100, since live enforcement only ever samples a fixed 100-row budget and a configured cap above that was silently unenforceable.src/settings/global-contributor-cap.ts'sresolveGlobalContributorOpenItemCap(feat(agent-actions): add an install-wide contributor open-item cap across repos #2562) — the install-wide, cross-repo sibling of those per-repo caps, read fromGLOBAL_CONTRIBUTOR_OPEN_ITEM_CAP— has the identical vulnerability: it validates (numeric, finite, integer, positive) but never clamps, so a self-hosted install setting it above 100 remains just as bypassable as the per-repo caps were before fix(settings): bound contributor open caps #3977.Math.min(parsed, MAX_CONTRIBUTOR_OPEN_ITEM_CAP)) and updates the doc comment, which incorrectly still claimed a "non-clamping" shape.Refs #2562.
Scope
src/db/repositories.tsor the other files fix(settings): bound contributor open caps #3977 already fixed.Validation
npx tsc --noEmit— clean.npx vitest run test/unit/global-contributor-cap.test.ts— 12/12 pass (2 new: clamps 500→100, preserves the 100 boundary unclamped).Safety
site//CNAME/lovablechanges.