Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
150 changes: 93 additions & 57 deletions .agents/harness.lock.json

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion .agents/skills/techcon-alert-export/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
name: techcon-alert-export
description: Используй для выгрузки последних алертов мониторинга TechCon (статус, время, детали) — диагностика инцидента, сводка за период, проверка «замолчал ли алерт».
harness: org@56a6fcf9f3cd846d7238a9233b40f00eed7f22b0
harness: org@2645047b3c77da9c18ed8019ff02fa4acb7c2d6b
---
# Выгрузка алертов мониторинга

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
name: techcon-architecture-boundaries-template
description: Настрой arch-lint для репозитория со слоистой структурой (domain/infra, core/adapters): детект слоёв, запрет обратных зависимостей и циклов. Применяй при онбординге нового репозитория или по прямой просьбе проверить архитектурные границы.
harness: org@56a6fcf9f3cd846d7238a9233b40f00eed7f22b0
harness: org@2645047b3c77da9c18ed8019ff02fa4acb7c2d6b
---
# Шаблон архитектурных границ

Expand Down
2 changes: 1 addition & 1 deletion .agents/skills/techcon-billing-protocol/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
name: techcon-billing-protocol
description: Используй для воспроизводимого снятия затрат Yandex Cloud любого репозитория TechCon — baseline-расчёт, прогноз бюджета, сверка свежести или сводка расходов.
harness: org@56a6fcf9f3cd846d7238a9233b40f00eed7f22b0
harness: org@2645047b3c77da9c18ed8019ff02fa4acb7c2d6b
---
# Протокол снятия затрат TechCon

Expand Down
2 changes: 1 addition & 1 deletion .agents/skills/techcon-business-document-system/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
name: techcon-business-document-system
description: Используй при создании, правке или синхронизации бизнес-документов (стратегии, отчёты для стейкхолдеров, презентации), чтобы не смешивать их с инженерной документацией репозитория и не терять источник правды.
harness: org@56a6fcf9f3cd846d7238a9233b40f00eed7f22b0
harness: org@2645047b3c77da9c18ed8019ff02fa4acb7c2d6b
---
# Business document system

Expand Down
2 changes: 1 addition & 1 deletion .agents/skills/techcon-claude-code-review-intake/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
name: techcon-claude-code-review-intake
description: Читает файл-результат ревью (frontmatter c полем verdict) после того как ревью помечено готовым, и продолжает работу по типу verdict — approved/changes-requested/needs-discussion/critique.
allowed-tools: Read, Edit, Grep, Glob
harness: org@56a6fcf9f3cd846d7238a9233b40f00eed7f22b0
harness: org@2645047b3c77da9c18ed8019ff02fa4acb7c2d6b
---
# Intake результата ревью

Expand Down
2 changes: 1 addition & 1 deletion .agents/skills/techcon-claude-code-review-request/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
name: techcon-claude-code-review-request
description: Запрос активного ревью у другого агента/ревьюера — создаёт brief с файлами, endpoint'ами, командами и требованиями к доступу. Применять перед архитектурными изменениями, миграциями или по прямому запросу критики.
allowed-tools: Read, Write, Grep, Glob
harness: org@56a6fcf9f3cd846d7238a9233b40f00eed7f22b0
harness: org@2645047b3c77da9c18ed8019ff02fa4acb7c2d6b
---
# Запрос активного ревью

Expand Down
2 changes: 1 addition & 1 deletion .agents/skills/techcon-claude-handoff-preparation/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
name: techcon-claude-handoff-preparation
description: Используй, когда задача лучше подходит для Claude: фронтенд, дизайн, HTML, презентации, дашборды, упаковка идей, бизнес- и продуктовое планирование.
harness: org@56a6fcf9f3cd846d7238a9233b40f00eed7f22b0
harness: org@2645047b3c77da9c18ed8019ff02fa4acb7c2d6b
---
# Подготовка пакета передачи в Claude

Expand Down
2 changes: 1 addition & 1 deletion .agents/skills/techcon-contract-auditor/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
name: techcon-contract-auditor
description: Найди рассинхроны контрактов между сервисами TechCon — polling-роуты, envelope ответа, коды ошибок, имена очередей/стримов, auth, /health. Применяй при аудите интеграции 2+ сервисов или подозрении на несовместимость. Выдаёт diff-таблицу с severity.
harness: org@56a6fcf9f3cd846d7238a9233b40f00eed7f22b0
harness: org@2645047b3c77da9c18ed8019ff02fa4acb7c2d6b
---
# Аудитор межсервисных контрактов

Expand Down
77 changes: 77 additions & 0 deletions .agents/skills/techcon-cross-reference-integrity/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
---
name: techcon-cross-reference-integrity
description: Используй после правки, которая меняет утверждение о системе (правило, файл, флаг, число, хост, имя, путь) — найди все места, где оно упомянуто, и добейся согласованности. Исправление, дошедшее до одного места из восьми, не завершено.
harness: org@2645047b3c77da9c18ed8019ff02fa4acb7c2d6b
---
# Согласованность ссылок — исправление, которое не разошлось по всем местам, не исправление

## Когда

Сразу после любой правки, меняющей утверждение, на которое могут ссылаться в другом месте:
переименован или перенесён файл, изменено правило, флаг, число, имя хоста, идентификатор,
путь. Также перед закрытием задачи, если в ней что-то отмечено устаревшим, отозванным или
перенесённым.

## Зачем

Самый частый класс поломок в документации и конфигурации — не ошибка в одном месте, а
верная правка, дошедшая до одного места из нескольких. Типичные случаи:

- правило помечено «отозвано» в шапке документа и осталось «готовым к копированию» в конце
того же файла;
- документ помечен устаревшим, но остаётся заявленным источником для десятка других;
- уборка перенесла тестовые данные в архив — тесты покраснели и молчали неизвестно сколько;
- файл убрали в архив, а код продолжал его воссоздавать при каждом запуске;
- документ убрали, а конфигурация проверки секретов продолжала на него ссылаться.

Во всех случаях правка была верной. Ошибкой было считать её законченной.

## Шаги

1. **Собрать поисковые термины.** Не только имя файла: идентификатор правила, имя хоста,
имя флага, имя функции, число, старый и новый путь, прежнее название.
2. **Искать во всех контурах.** Документация одного каталога — недостаточно: упоминания
живут в конфигурации CI, в скриптах, в тестах, в соседних репозиториях.

```bash
grep -rn "<термин>" docs/ *.md .github/workflows/ scripts/ tests/
grep -rn "<термин>" <каталог-с-репозиториями> --include='*.md' --include='*.py' --include='*.yml'
```
3. **Отнести каждое попадание ровно к одному классу.** Четвёртого нет.

| Класс | Что делать |
|---|---|
| согласовано | ничего |
| противоречит | починить сейчас: это часть текущей работы, а не отдельная задача |
| требует решения владельца | завести запись в трекере или реестре открытых проблем с доказательством |

4. **Прогнать машинную проверку ссылок**, если она есть в репозитории (проверка битых
ссылок, линтер документации, тест на пути). Условие закрытия: ноль новых нарушений.
Зафиксированный заранее долг не растёт; его рост — регрессия, а не «так было».

## Запреты

- «Замечено, разберёмся позже» без записи — запрещено. Именно так теряются случаи выше:
расхождение видели, но нигде не зафиксировали.
- Не считать поиск по одному контуру достаточным.
- Не заменять слово автоматически по всему тексту без разбора мест: автозамена однажды
превратила заголовок документа в путь к самому себе.
- Не дописывать пометку «(архив)» скриптом в конец строки: на перенесённом тексте маркер
окажется посреди предложения. Пометку ставят разбором места, путь заменяют автоматически.
- Не чинить ссылки внутри самого архива: архив вправе цитировать архив.

## Ловушки

- **Абсолютные пути важнее относительных.** Если в корпусе преобладает абсолютная форма,
правка только относительной чинит меньшинство: в реальном случае 13 ссылок из 52.
- **Голое имя переживает переезд файла, путь — нет.** Проверка, сопоставляющая по имени
файла, не заметит перемещения; ломаются только ссылки с путём. Ищите именно их.
- **Заголовок — не ссылка.** Убедитесь, что меняете ссылку, а не название.
- **Число, продублированное рядом со ссылкой на источник, протухает так же, как копия
текста.** Ищите и числа: количество скиллов, гейтов, репозиториев.

## Результат

Короткая запись в отчёте или журнале работы: сколько попаданий найдено, сколько починено,
сколько превращено в записи для владельца, что показала машинная проверка. Если поиск шёл
не во всех контурах, сказать какие пропущены и почему.
2 changes: 1 addition & 1 deletion .agents/skills/techcon-cross-service-tester/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
name: techcon-cross-service-tester
description: Пишет и валидирует кросс-сервисные E2E интеграционные тесты между сервисами TechCon-экосистемы (upload -> classify -> detect -> search -> render). Применяй, когда нужно найти конкретный сломанный контракт между двумя сервисами, а не просто зафиксировать что тест упал.
allowed-tools: Bash(pytest:*), Bash(httpx:*)
harness: org@56a6fcf9f3cd846d7238a9233b40f00eed7f22b0
harness: org@2645047b3c77da9c18ed8019ff02fa4acb7c2d6b
---
# Кросс-сервисный тестировщик TechCon

Expand Down
Loading
Loading