До этого я упоминал "jscpd" для поиска дублей внутри кодовой базы
Тула прикольная, ищет базовые дубли кода
Но какую частую проблему совершает ИИ или люди?
У нас есть кучу подключённых библиотек, но мы всё равно часто дублируем функции и пишем их с нуля (Т.к иногда даже не знаем что такое уже есть)
Хочу сделать тулинг для поиска дублей в коде исходя из библиотек
Что если мы дублируем логику то получаем ошибку и заставляем использовать библиотечные функции
Пока у меня нет чёткого плана как я хочу это сделать, но есть идеи:
С помощью векторов искать схожесть по коду и проверять input и output параметры
Типо если сигнатура функции совпадает на 100% и векторный поиск показывает близкий вектор скорее всего это дубль (Но это ещё надо поресёрчить)
Так же поискать полностью 1 в 1 написанные дубли
В комментарии к этому посту буду кидать видео/статьи связанные с дублями кода
Post #13
615
ProverCoderAI Так же из коробки отображает дубли в коде user@arch ~/vibecode-linter (main)> npm run lint > @ton-ai-core/vibecode-linter@0.2.0 lint > npx tsx src/main.ts src/ 🔍 Linting directory: src/ 🔧 Running ESLint auto-fix on: src/ 🔧 Running Biome auto-fix on: src/ ✅ Biome auto-fix completed (3 passes) ✅ ESLint auto-fix completed 📊 Total: 0 errors (0 TypeScript, 0 ESLint, 0 Biome), 0 warnings. =========================== DUPLICATE #1 =========================== A: src/linters/typescript.ts:115-120 │ B: src/types/exec-helpers.ts:22-27 -------------------------------------------┆------------------------------------------ 115 │ const hasStdout = │ 22 │ const hasStdout = 116 │ typeof error === "object" && │ 23 │ typeof error === "object" && 117 │ error !== null && │ 24 │ error !== null && 118 │
- ❤ 5
- 😁 1
- 🦄 1