Перейти к основному содержимому

Сценарий 08: сбор свидетельств соответствия

Используйте этот сценарий для ответа на один ограниченный вопрос по именованным требованиям, области и ревизии.

Руководства

Используйте этот сценарий для ответа на один ограниченный вопрос по именованным требованиям, области и ревизии. Формулировка «продукт соответствует требованиям» не исполняема: у стандартов кодирования, мер безопасности, квалификационных метрик, лицензий, приватности и организационных документов разные владельцы и доказательства.

Начните с матрицы «утверждение — свидетельство»

Для каждого требования зафиксируйте:

  • точный пункт стандарта, политики или договора;
  • продукт, репозиторий, пути и ревизию в области;
  • производителя свидетельства и команду сбора;
  • ожидаемый результат и правило отказа;
  • ответственного проверяющего и срок актуальности;
  • известные исключения и оставшиеся ручные свидетельства.

Команды ниже создают operational evidence. compliance decision фиксирует ответственный владелец после сопоставления результата с требованиями и областью проверки.

Типизированный запрос на ревью

Сценарий 08 условен для структурного ревьюера и требует явного сигнала соответствия:

from src.digital_employees.runtime.scenarios import (
    RoleBoundScenarioInvocationRequest,
    invoke_role_bound_scenario_request,
)

request = RoleBoundScenarioInvocationRequest(
    query="Свяжи принятые требования к коду и безопасности со свидетельствами текущей ревизии.",
    employee_id="codegraph_reviewer",
    scenario_id="scenario_08",
    event_type="review_start",
    context={
        "project_key": "codegraph",
        "namespace": "default",
        "task_id": "<task-id>",
        "source_refs": ["<requirement-ref>", "<scope-ref>"],
        "file_paths": ["<bounded-path>"],
    },
)

result = invoke_role_bound_scenario_request(request)

При отсутствии project_key, namespace или task_id контракт закрывается с ошибкой role_bound_scenario_contract_missing.

Выбирайте команду по типу утверждения

Импортированные правила стандарта кодирования

python -m src.cli standards check PATH --fail-on error --output <violations.json>

Проверка применяет активные импортированные стандарты к файлу или каталогу и может сохранить находки в JSON. Вместе с этим результатом сохраните выбранный документ, категории, серьёзности и версии правил.

Текущая реализация standards report печатает Report generation not yet implemented (requires stored violations) и возвращает код 1. Пока постоянное формирование отчёта реализуется и проверяется, используйте артефакт standards check --output.

Аудит качества и связанных с безопасностью признаков

python -m src.cli audit --db PATH --format json --skip-llm-conclusion --skip-persistence

Аудит требует явно настроенный CPG и может обновить устаревший граф. Его находки разбирает ответственная линия безопасности или ревью. Область compliance оценивается по составу проверок и доступным свидетельствам.

Квалификационные результаты

python -m src.cli qualification report --results PATH --format json --language ru --output <qualification.json>

Команда формирует представление существующего артефакта результатов. Сохраните набор тестов, версии инструментов, данные, профиль, области и неизменяемые сырые результаты. Не переносите исторические значения FP/FN в постоянно актуальную документацию.

Не смешивайте линии свидетельств

Не смешивайте линии свидетельств
Утверждение Свидетельство Граница полномочий
Код следует импортированным правилам Находки standards check и основа правил Структурное ревью определяет решение по находкам.
Мера безопасности реализована Исходники, тесты и свидетельства аудита безопасности Заключение выносит AppSec.
Квалификационная цель достигнута Неизменяемые сырые результаты и квалификационный отчёт Решение принимает названный процесс квалификации или сертификации.
Лицензионное требование или приватность соблюдены Инвентаризация, политики, юридические и операционные артефакты Решение принимает ответственный владелец; статического вывода по коду недостаточно.
Продукт можно выпускать Все обязательные продуктовые и SDLC-свидетельства Одни свидетельства соответствия не разрешают выпуск.

Ошибки и актуальность

Закрывайте проверку отказом, если неизвестна редакция требования, отсутствуют область или ревизия, набор правил не соответствует заявленному стандарту, нет сырых квалификационных результатов либо обязательного ручного артефакта. Явно помечайте устаревшее свидетельство и не переиспользуйте прошлый отчёт молча.

Поддерживаемые источники контракта

  • CLI стандартов: src/cli/security_suite/standards_commands.py
  • CLI квалификации: src/cli/analysis_commands/qualification_commands.py
  • CLI аудита: src/cli/analysis_commands/audit_commands.py
  • Политика сценария ревьюера: src/digital_employees/runtime/scenarios/employee_scenario_invocation.py
  • Типизированная маршрутизация: src/digital_employees/runtime/scenarios/role_bound_scenario_invoker.py

Для проверки ревизии перейдите к ревью кода. Для конкретной оценки по ГОСТ используйте профильное руководство, а не считайте этот сценарий универсальным процессом сертификации.