# correctness-and-error-handling

Скилл находит и устраняет сбои в React-коде Cognite Flows: монтирует Error Boundary, обрабатывает промисы и закрывает пустые состояния интерфейса.

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 1900 установок · ★ 6
- Автор: cognitedata
- Лицензия: Apache-2.0 · policy=mirror · начало файла — в конце страницы
- Исходник: https://github.com/cognitedata/builder-skills/tree/HEAD/skills/correctness-and-error-handling/SKILL.md
- Обновлён: 2026-10-20
- HTML: https://affpapa.org/nevibecode/skills/correctness-and-error-handling

## Что делает

Скилл разработан для приложений Cognite Flows на базе React и TypeScript. Вместо простой генерации отчёта агент сразу вносит правки в кодовую базу. Он проверяет критические пути на наличие комментариев `TODO`, `FIXME` и `HACK`, после чего устраняет недоработки или заменяет их безопасными фолбэками с понятными сообщениями для пользователя.

Процесс разбит на чёткие шаги. Сначала агент ищет корневой `ErrorBoundary` в `App.tsx` и при необходимости ставит пакет `react-error-boundary` через `pnpm`. Затем он оборачивает голые асинхронные вызовы и цепочки `.then()` в конструкции `try/catch`. Для компонентов на TanStack Query скилл находит места рендеринга данных и дописывает три обязательных состояния: загрузку, ошибку и пустой список.

Без установленного `pnpm` автоматическое добавление зависимостей завершится сбоем. Скилл опирается на инструменты `Read`, `Glob`, `Grep`, `Shell` и `Write`. Если целевой проект не использует React или API Cognite Data Fusion (CDF), большая часть проверок пройдёт вхолостую.

## Установка

### Claude Code (родная платформа)

1. **Через Skills CLI (Vercel)**
```bash
npx skills add cognitedata/builder-skills --skill correctness-and-error-handling -a claude-code
```

2. **Вручную: положить файлы**
- Файл: `~/.claude/skills/correctness-and-error-handling/SKILL.md` — Папка скилла целиком; для одного проекта — .claude/skills/correctness-and-error-handling/

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add cognitedata/builder-skills --skill correctness-and-error-handling -a codex
```

2. **Вручную: положить файлы**
- Файл: `.agents/skills/correctness-and-error-handling/SKILL.md` — Для всех проектов — ~/.agents/skills/

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add cognitedata/builder-skills --skill correctness-and-error-handling -a cursor
```

2. **Вручную: положить файлы**
- Файл: `.cursor/skills/correctness-and-error-handling/SKILL.md` — Cursor читает и .agents/skills/, и .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install cognitedata/builder-skills correctness-and-error-handling
```

2. **Вручную: положить файлы**
- Файл: `.github/skills/correctness-and-error-handling/SKILL.md`

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add cognitedata/builder-skills --skill correctness-and-error-handling -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/cognitedata/builder-skills --path skills/correctness-and-error-handling
```

### Windsurf (Devin Desktop)

**Вручную: положить файлы**
- Файл: `.devin/skills/correctness-and-error-handling/SKILL.md` — Старый путь .windsurf/skills/ тоже читается

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add cognitedata/builder-skills --skill correctness-and-error-handling -a opencode
```

### Claude.ai

**Claude.ai**
- Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/cognitedata/builder-skills/tree/HEAD/skills/correctness-and-error-handling/SKILL.md

## Когда брать
- обернуть интерфейс в React Error Boundary
- перехватить необработанные ошибки промисов через try/catch
- добавить экраны загрузки и пустых данных в компоненты
- убрать маркеры TODO и FIXME в критических путях

## Примеры запросов агенту
- Найди и исправь ошибки обработки данных в src/App.tsx.
- Проверь всё приложение на необработанные async-ошибки и добавь пустые состояния в списки.
- Устрани маркеры TODO и настрой безопасные фолбэки в src/services/api.ts.

## Похожие
- [error-handling](https://affpapa.org/nevibecode/skills/error-handling.md) — скилл · 4800 установок
- [Error Handling taste](https://affpapa.org/nevibecode/prompts/error-handling-taste.md) — промпт · ★ 174676
- [golang-error-handling](https://affpapa.org/nevibecode/skills/golang-error-handling.md) — скилл · 43400 установок
- [error-handling-patterns](https://affpapa.org/nevibecode/skills/error-handling-patterns.md) — скилл · 22957 установок
- [m06-error-handling](https://affpapa.org/nevibecode/skills/m06-error-handling.md) — скилл · 3500 установок
- [go-error-handling](https://affpapa.org/nevibecode/skills/go-error-handling.md) — скилл · 1300 установок

Из того же набора: [cognitedata/builder-skills](https://affpapa.org/nevibecode/by/cognitedata/builder-skills.md) — 24 карточки

_Часть страницы не вошла по размеру — она есть в HTML-версии._

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
