Строгі типи для змін кодового агента
Форма даних і правильність поведінки потребують різних перевірок.

Що знаходить перевірка
Агент може переплутати назву властивості або передати аргумент неправильної форми. Строгі типи допомагають, якщо доступні точні оголошення. Any та помилкові декларації приховують частину проблем. Зовнішні дані потребують перевірки під час виконання. Правильно типізоване число все одно може бути неправильною сумою рахунку; тести логіки залишаються потрібними.

TypeScript
Додайте strict: true до наявного compilerOptions у tsconfig.json, не видаляючи решту налаштувань. Сімейство включає noImplicitAny та strictNullChecks, проте окремі опції можна перевизначити. Запускайте tsc --noEmit узгодженою версією компілятора в каталозі проєкту. Пряме зазначення файлів змінює використання конфігурації. Зелений результат стосується включеної програми, а не автоматично всього репозиторію.
Python
Описуйте справжні входи та результати функцій анотаціями. Якщо можливий None, явно врахуйте його. Mypy --strict запускайте на потрібному каталозі; набір перевірок залежить від версії, а імпорти можуть розширити область. Анотації не перевіряють вхідний JSON автоматично. Для даних зовнішнього сервісу потрібна окрема перевірка схеми й значень.
Цикл виправлення
Після зміни агент запускає команду й тести, читає помилки, усуває причину та повторює перевірку. Не дозволяйте видаляти тести або послаблювати конфігурацію заради зеленого статусу. Незрозуміле придушення через any, cast чи ignore потребує розгляду, а не мовчазного прийняття. У CI повинні бути видимі команда, версія і результат. Починайте поступове впровадження з визначеної області, зберігайте старі перевірки та перелічуйте непокриті файли. Для проби передайте число до параметра str і переконайтеся, що саме ваша команда знаходить помилку. Потім виправте виклик і повторіть тести. Зміни налаштувань перевірки переглядайте окремо.
Джерела
- https://wurk.fun/blog/turn-on-strict-type-checks-so-your-coding-agent-s-mistakes-fail-early
- https://www.typescriptlang.org/tsconfig/#strict
- https://www.typescriptlang.org/docs/handbook/compiler-options.html
- https://mypy.readthedocs.io/en/stable/command_line.html
- https://wurk.fun/blog/add-a-ci-check-so-your-coding-agent-can-t-merge-broken-code