Skip to content

ci: sonarjs gates -- cognitive complexity at 15, duplication rules at error (goal 0109 phase 2b) - #246

Merged
alicoding merged 1 commit into
mainfrom
sonarjs-gate
Aug 18, 2026
Merged

ci: sonarjs gates -- cognitive complexity at 15, duplication rules at error (goal 0109 phase 2b)#246
alicoding merged 1 commit into
mainfrom
sonarjs-gate

Conversation

@alicoding

Copy link
Copy Markdown
Owner

The TS counterpart of #239's Go gates, thresholds from a full measurement run over src/ (recorded in the goal file):

  • sonarjs/no-duplicated-branches + sonarjs/no-identical-functions — measured clean repo-wide, gate at error.
  • sonarjs/cognitive-complexity at 15 — 11 legacy sites over threshold (max 32), each grandfathered by a named eslint-disable with reason; new code gates at 15 immediately and the burn-down list is the greppable disables (goal 0109 burn-down). Same clean-as-you-code posture as the gocognit merge-base gate.
  • no-duplicate-string deliberately OFF (Sonar's own default; i18n keys/testids are the documented noise class).

This completes goal 0109's acceptance — research verdicts, measured thresholds, both languages' smell + duplication + diff-coverage gates wired lefthook+CI, testing.md standing rules.

🤖 Generated with Claude Code

https://claude.ai/code/session_01FW5GkkAG8du7tNdYLk2zSd

… error (goal 0109 phase 2b)

eslint-plugin-sonarjs@4.2.0, thresholds from a full measurement run
over src/: no-duplicated-branches and no-identical-functions land
clean repo-wide and gate at error; cognitive-complexity gates at 15
with the 11 legacy sites over threshold (max 32) grandfathered by
named disable-with-reason comments -- new code gates immediately, the
burn-down list IS the greppable disables ("goal 0109 burn-down").
no-duplicate-string stays OFF per Sonar's own default posture (i18n
keys/testids are the documented noise class). Completes goal 0109's
acceptance; the goal file carries the full record.

Claude-Session: https://claude.ai/code/session_01FW5GkkAG8du7tNdYLk2zSd

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@alicoding
alicoding enabled auto-merge (squash) August 18, 2026 19:48
@alicoding
alicoding merged commit eabb004 into main Aug 18, 2026
27 of 28 checks passed
@alicoding
alicoding deleted the sonarjs-gate branch August 18, 2026 19:55
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