Спецификация BVC-атома

Базис, Вектор и Цель как машиночитаемый контракт работы.

Что такое BVC-атом

BVC (Базис–Вектор–Цель) — машиночитаемый контракт одной единицы работы в Work Graph. Это не тикет из чата и не заметка в PM: атом лежит в репозитории как .bvc, его читает get_work_contract, а закрытие задачи подтверждается evidence и гейтами.

Обязательные секции

СекцияНазначение
БазисЗачем работа существует: контекст, ограничения, связь с решением (AN)
ВекторЧто меняется: файлы, API, поведение, границы allowlist
ЦельКак узнать, что готово: наблюдаемый критерий, не «агент сказал done»

Дополнительно в атоме могут быть Метки (work.id, work.status, target_files), Проверки (команды и tier-гейты) и Свидетельства (structured evidence).

Жизненный цикл статусов

  1. backlog — задача описана, контракт черновик или готов к review.
  2. ready — агент может вызвать claim_work_item.
  3. claimed / doing — исполнение в рамках target_files и allowlist.
  4. verify — собраны доказательства, ждёт assert_task_ready_for_done.
  5. done / verified — гейт пройден, запись может попасть в память проекта.

Примеры

Минимальный атом — три секции и work.id:

#Задача_add_llms_txt<[
Базис:
  Агентам нужна стабильная точка входа в документацию WG.
Вектор:
  Добавить /llms.txt с ключевыми страницами и правилами взаимодействия.
Цель:
  Cursor и Claude Code находят docs без скрапинга HTML.

Метки:
  work.id: add-llms-txt
  work.status: backlog
]>

Реалистичный — с target_files и проверками: см. файл [bvc-spec.bvc.example](/docs/bvc-spec.bvc.example).

Антипример — атом без Цели: линтер backlog-schema и MCP вернут invalid_bvc_section; задачу нельзя считать контрактом.

Связанные MCP-инструменты

  • create_work_item — создать атом в intent/
  • get_work_contract — прочитать контракт перед правками

Машиночитаемый контекст для авторинга: /api/docs/bvc-authoring-context.