framework/skills/spec-writing/task-breakdown/SKILL.md
Для декомпозиции спецификации в Task Breakdown JSON
npx skillsauth add steelmorgan/1c-agent-based-dev-framework task-breakdownInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
| Триггер | Режим | |---------|-------| | FREE/linear execution без Reviewer-agent | Linear — self-check | | Full-cycle процесс с ролями Architect/Reviewer | Subagent — cross-review + BLOCK-итерации | | Нужна декомпозиция спеки перед реализацией | Любой режим — использовать template + example | | Выполнение идёт одним агентом по шагам | Linear | | Reviewer вернул BLOCK | Subagent — запустить цикл исправления |
Если контекст оркестрации неизвестен — использовать Linear по умолчанию.
Декомпозиция оформляется как отдельный JSON-файл (рядом со спецификацией или в согласованной папке проекта).
Требования к формату:
references/task-breakdown.schema.json) — валидация обязательна (см. §2a);task_idtask_typetitledescriptiondepends_onspec_refsdeliverablesdone_criteria — массив из 1–3 проверяемых критериев готовности задачиВ самой спецификации должна быть:
{
"spec_id": "SPEC-NNN",
"tasks": [
{
"task_id": "T1",
"task_type": "analysis",
"title": "Краткое название задачи",
"description": "Что должно быть сделано",
"depends_on": [],
"spec_refs": ["Requirements.MUST-1"],
"deliverables": ["Список ожидаемых артефактов"],
"done_criteria": ["Проверяемый критерий готовности задачи"]
}
]
}
task_typeanalysis | design | implementation | test
Формат Task Breakdown зафиксирован строгой схемой references/task-breakdown.schema.json (draft-07, additionalProperties: false на уровне задачи). Валидация JSON по этой схеме обязательна: Architect выполняет её перед сдачей декомпозиции, оркестратор — при приёме.
python3 -c "import json,jsonschema; jsonschema.validate(json.load(open('task-breakdown.json')), json.load(open('references/task-breakdown.schema.json'))); print('OK')"
Если jsonschema недоступен — валидировать любым доступным способом (онлайн-валидатор draft-07 или ручная сверка со схемой). Невалидный JSON сдавать/принимать запрещено.
{
"spec_id": "SPEC-002",
"tasks": [
{
"task_id": "T1",
"task_type": "analysis",
"title": "Проверка соответствия MUST-требованиям",
"description": "Сопоставить MUST из спецификации с задачами реализации",
"depends_on": [],
"spec_refs": ["Requirements.MUST-1", "Requirements.MUST-2"],
"deliverables": ["Матрица покрытия MUST", "Список пробелов"],
"done_criteria": ["Каждый MUST сопоставлен минимум одной задаче реализации", "Пробелы покрытия перечислены явно или список пуст"]
},
{
"task_id": "T2",
"task_type": "implementation",
"title": "Реализация основной логики",
"description": "Выполнить реализацию в соответствии с Technical Design",
"depends_on": ["T1"],
"spec_refs": ["Technical Design.Modules", "Requirements.MUST-3"],
"deliverables": ["Изменения кода", "Локальные проверки"],
"done_criteria": ["Код соответствует модульной структуре Technical Design", "Локальные проверки синтаксиса пройдены без ошибок"]
},
{
"task_id": "T3",
"task_type": "test",
"title": "Проверка тест-плана",
"description": "Проверить, что MUST покрыты тестами из Test Plan",
"depends_on": ["T2"],
"spec_refs": ["Test Plan (TDD)"],
"deliverables": ["Результаты тестов", "Список отклонений"],
"done_criteria": ["Все MUST-требования имеют пройденный тест", "Отклонения зафиксированы или список пуст"]
}
]
}
depends_on образует валидную последовательность;spec_refs указывают на конкретные разделы/пункты.task_id.task_type соответствует реальному этапу работ.depends_on задаёт исполнимый линейный порядок без циклов.spec_refs присутствуют и привязаны к спецификации.done_criteria (1–3 проверяемых и конкретных критерия).references/task-breakdown.schema.json (§2a).| Ошибка | Последствие |
|--------|------------|
| Нет self-check перед исполнением | Выполнение по дефектному плану |
| Нефиксированные допущения | Скрытые расхождения с ожиданиями |
| Неполные spec_refs | Потеря трассируемости |
| Нарушение порядка depends_on | Повторная работа на поздних шагах |
{
"spec_id": "SPEC-002",
"tasks": [
{
"task_id": "T1",
"task_type": "analysis",
"title": "Проверка metadata-объектов",
"description": "Сверить состав объектов с разделом Technical Design",
"depends_on": [],
"spec_refs": ["Technical Design.Metadata Objects", "Requirements.MUST-1"],
"deliverables": ["Список проверенных объектов", "Перечень расхождений"],
"done_criteria": ["Состав объектов совпадает с разделом Technical Design", "Все расхождения зафиксированы или список пуст"]
},
{
"task_id": "T2",
"task_type": "implementation",
"title": "Реализация проведения документа",
"description": "Реализовать движения и проверки остатков",
"depends_on": ["T1"],
"spec_refs": ["Requirements.MUST-2", "Requirements.MUST-3"],
"deliverables": ["Код модуля объекта", "Тесты по MUST-требованиям"],
"done_criteria": ["Проведение формирует движения по всем регистрам из дизайна", "Проверка остатков покрыта проходящим тестом"]
}
]
}
task_id.task_type отражает фактический этап (analysis/design/implementation/test и т.п.).depends_on не содержит циклических зависимостей.spec_refs есть у каждой задачи и ссылаются на конкретные разделы/требования спеки.done_criteria (1–3 проверяемых и конкретных критерия).references/task-breakdown.schema.json (§2a).| Ошибка | Последствие |
|--------|------------|
| Пропущены spec_refs | Потеря трассируемости |
| Несогласованные depends_on | Невалидный порядок исполнения |
| Изменение формата между итерациями | Рост дефектов ревью |
| Игнорирование BLOCK-лимита | Бесконечные итерации → эскалация не происходит |
| Критерий | Linear | Subagent | |----------|--------|---------| | Наличие Reviewer-агента | Нет | Да | | Наличие роли Architect | Необязательно | Да | | Способ контроля качества | Self-check | Cross-review | | Итерации при ошибках | Нет (исправить самостоятельно) | До 3 BLOCK-возвратов, затем эскалация | | Типичный контекст | Простые задачи, one-shot выполнение | Сложные спеки, full-cycle pipeline | | Используется агентами | analyst, developer-code | architect |
development
1C server maintenance webhooks: container restart and external component cache cleanup
development
Interactive DAP debugging of a single BSL procedure
tools
Rules for using RLM tools for project search and navigation in 1C/BSL
development
Creates web applications and routes on Winow (a web server on OneScript and Autumn). Use when working with a web server on OneScript, routing, or Winow controllers.