mirror of
https://github.com/okieselbach/AutopilotMonitor.git
synced 2026-10-24 12:42:38 +00:00
af2f2c7abe
tools/quality runs jscpd (5.3.0, pinned with a lockfile like rules/scripts) over the C# and TypeScript sources, tests and generated files excluded, at 100 tokens. The 95 existing clones are frozen in jscpd-baseline.json. A clone that is not in the baseline fails, and so does a baseline entry whose clone is gone: jscpd only reports missing fingerprints, and a stale one would let the same copy come back unnoticed. jscpd scans an LF-normalized copy of the tracked and new files under src/, because with CRLF in a Windows checkout some JSX clones hash differently than on the Linux runner; local runs and CI now see the same 95 clones. At 70 tokens a sixth of all clones were identical using blocks, hence 100. Gate proven both ways with an untracked probe file: a third copy of an existing helper fails with its location, and a baseline entry without its clone fails. New CI job "Duplicate code"; Dependabot watches tools/quality with the usual 7-day cooldown. Locally: npm run dup (check), npm run dup:baseline (shrink). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>