AD phy-pipeline-contract-enforcer
Контролер контрактов конвейера данных. Определите ожидаемую схему на границе каждого этапа конвейера — имена полей, типы, возможность null, диапазоны значений, бизнес-инварианты — и проверьте фактические образцы данных на соответствие этим контрактам. Обнаруживает расхождение схем между этапами конвейера до того, как оно достигнет продакшена. Поддерживает модели dbt, Spark DataFrames, Pandas DataFrames, темы Kafka, полезные нагрузки REST API и необработанные файлы CSV/JSON. Может автоматически создать контракт из образца, проверить образец на соответствие существующему контракту, обнаружить, когда контракт был нарушен изменениями вышестоящих компонентов, и создать план миграции для исправления нарушений. Нулевой внешний API — чистый локальный анализ файлов и CLI. Активируется по "pipeline contract", "schema drift", "validate pipeline output", "data contract", "pipeline schema mismatch", "contract enforcement", "/pipeline-contract".
машинный переводПоказать оригиналСкрыть оригинал«Data pipeline contract enforcer. Define the expected schema at each pi…»
Data pipeline contract enforcer. Define the expected schema at each pipeline stage boundary — field names, types, nullability, value ranges, business invariants — and validate actual data samples against those contracts. Catches schema drift between pipeline stages before it reaches production. Supports dbt models, Spark DataFrames, Pandas DataFrames, Kafka topics, REST API payloads, and raw CSV/JSON files. Can auto-generate a contract from a sample, validate a sample against an existing contract, detect when a contract has been broken by upstream changes, and produce a migration plan to fix violations. Zero external API — pure local file and CLI analysis. Triggers on "pipeline contract", "schema drift", "validate pipeline output", "data contract", "pipeline schema mismatch", "contract enforcement", "/pipeline-contract".
Контролер контрактов конвейера данных.
Как процесс D 48/100 · Процесс не доведён — слабые места: результат и критерий готовности, входы и предусловия, ошибки и развилки
Как улучшить
- Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 0
✓ Критических и высоких находок нет
Просканировано файлов: 2. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
- заметка
edit-residueв тексте есть пометки об устаревшем (строки 411, 422, 471): проверьте, не остались ли старые правила рядом с новыми — полная проверка читает текст на противоречия
Процессный рейтинг: все десять параметров 48/100
- 0Результат и критерий готовности. Не сказано, что считать результатом
- 0Входы и предусловия. Не сказано, что нужно иметь на входе
- 0Ошибки и развилки. Линейный процесс без обработки сбоев
- 0Отчётность по ходу. Скилл ничего не сообщает по ходу работы
- 30Повторный запуск. Изменяющих операций: 6, без проверки текущего состояния
- 60Инструменты и файлы. Используются инструменты (web, python), но во frontmatter они не объявлены
- 70Когда включается. Сказано, когда применять, но не сказано, когда не стоит
- 70Стоимость исполнения. Тело инструкции 4429 токенов
- 100Шаги. Шагов: 12
- 100Согласованность. Имя и обязательные поля на месте
- low Разделов верхнего уровня: 12. Похоже на несколько доменов в одном скилле
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
- +3Длина description 832: рекомендуется 120–800 символов
- +3Формат ответа не описан: модель каждый раз решает сама
- +2Инструкции на одном языке
- +5В description 7 примера фраз-триггеров в кавычках
- +4Структура: 17 заголовков
- +3Пошаговые инструкции: 12 пунктов
- +4Есть примеры (15 блоков кода)
- +1Лицензия указана
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 87.