AB golang-google-wire
Внедрение зависимостей на этапе компиляции в Golang с использованием google/wire — wire.NewSet, wire.Build, wire.Bind (интерфейс→конкретный), wire.Struct, wire.Value, wire.InterfaceValue, wire.FieldsOf, функции очистки, файлы инжектора //go:build wireinject и сгенерированный wire_gen.go. Применяйте при использовании или внедрении google/wire, когда кодовая база импортирует `github.com/google/wire`, или при сборке графа приложения на этапе компиляции через `wire.Build`. Для внедрения зависимостей во время выполнения с рефлексией см. навык `samber/cc-skills-golang@golang-uber-dig`.
машинный переводПоказать оригиналСкрыть оригинал«Compile-time dependency injection in Golang using google/wire — wire.N…»
Compile-time dependency injection in Golang using google/wire — wire.NewSet, wire.Build, wire.Bind (interface→concrete), wire.Struct, wire.Value, wire.InterfaceValue, wire.FieldsOf, cleanup functions, //go:build wireinject injector files, and generated wire_gen.go. Apply when using or adopting google/wire, when the codebase imports `github.com/google/wire`, or when wiring an application graph at compile time via `wire.Build`. For runtime DI with reflection, see `samber/cc-skills-golang@golang-uber-dig` skill.
Внедрение зависимостей на этапе компиляции в Golang с использованием google/wire — wire.NewSet, wire.Build, wire.Bind (интерфейс→конкретный), wire.Struct…
Как процесс B 74/100 · Почти готов — слабые места: результат и критерий готовности, повторный запуск, отчётность по ходу
Как улучшить
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 0
✓ Критических и высоких находок нет
Просканировано файлов: 5. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
- заметка
frontmatter-keyнеизвестное поле фронтматтера "paths"
Процессный рейтинг: все десять параметров 74/100
- 0Результат и критерий готовности. Не сказано, что считать результатом
- 0Отчётность по ходу. Скилл ничего не сообщает по ходу работы
- 30Повторный запуск. Изменяющих операций: 6, без проверки текущего состояния
- 70Когда включается. Сказано, когда применять, но не сказано, когда не стоит
- 70Входы и предусловия. Входные данные и предусловия перечислены
- 100Инструменты и файлы. Инструменты объявлены во frontmatter
- 100Шаги. Шагов: 16
- 100Ошибки и развилки. Развилок: 2, есть раздел про ошибки
- 100Согласованность. Имя и обязательные поля на месте
- 100Стоимость исполнения. Тело инструкции 2454 токенов
- low Разделов верхнего уровня: 14. Похоже на несколько доменов в одном скилле
- medium Тестов 10, и все положительные: нет ни одного случая «должен отказать» или «должен переспросить»
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +5В description нет примеров фраз, по которым скилл должен срабатывать
- +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
- +3Формат ответа не описан: модель каждый раз решает сама
- +2Инструкции на одном языке
- +3Длина description 514 символов: достаточно сигнала, не съедает бюджет
- +4Структура: 15 заголовков
- +3Пошаговые инструкции: 16 пунктов
- +4Есть примеры (10 блоков кода)
- +4Справочные файлы упоминаются в инструкциях (3 из 3)
- +1Лицензия указана
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 88.