Эта страница нужна разработчикам и операторам, которые проверяют локальную CPG или разбирают расхождение архитектурного аудита. После проверки вы увидите, созданы ли таблицы архитектурных прогонов, и сможете отличить отсутствие данных от ошибки схемы.
GoCPG остаётся единственным владельцем записи в проектную DuckDB. Прикладной код
должен читать CPG через gRPC. Команда gocpg query предназначена для
локальной диагностики и интеграционных проверок; она не заменяет API-контракт.
Этот справочник описывает таблицы архитектурных результатов. Узлы и рёбра основного графа здесь не перечислены; для прикладного доступа используйте контракты gRPC.
Таблицы архитектурных результатов
| Таблица | Что хранит |
|---|---|
cpg_architecture_components |
Компоненты и их стабильные UID для одного прогона. |
cpg_architecture_memberships |
Классификацию файлов и символов с источником селектора. |
cpg_architecture_edges |
Прямые и транзитивные зависимости между компонентами. |
cpg_architecture_runs |
Идентичность завершённого прогона: commit, модель, правила, полнота и режим. |
cpg_architecture_result_heads |
Указатель на последний завершённый канонический прогон проекта. |
cpg_architecture_findings |
Находки, привязанные к run ID и устойчивому fingerprint. |
Пустая cpg_architecture_findings означает, что в выбранном прогоне
нет находок. Отсутствующая таблица означает другое: база создана старой или
неполной схемой. Такую базу нельзя считать подтверждением чистой архитектуры.
Проверка локальной базы
Откройте PowerShell в каталоге исходной рабочей копии CodeGraph. Нужен бинарник
GoCPG с поддержкой DuckDB и уже построенная CPG. Замените <path-to-cpg.duckdb>
путём к своей базе. Команда читает схему и не меняет исходники:
.\gocpg\gocpg.exe query --db "<path-to-cpg.duckdb>" --sql "SELECT table_name FROM information_schema.tables WHERE table_name IN ('cpg_architecture_runs', 'cpg_architecture_result_heads', 'cpg_architecture_findings') ORDER BY table_name"
Успешная проверка выводит три имени таблиц. Если команда сообщает, что файл не
найден, сначала создайте CPG штатным gocpg parse или managed update.
Если выведено меньше трёх строк, обновите GoCPG и пересоздайте либо мигрируйте
базу через поддерживаемый runtime-процесс.
Проверка реализации
Выполняйте следующую команду из каталога gocpg в исходной рабочей копии;
нужен Go и зависимости сборки DuckDB, описанные в подготовке окружения.
Репозиторный тест создаёт временное хранилище, сохраняет канонический результат и проверяет детерминированный экспорт. Это проверка реализации, а не инструкция по работе с пользовательской базой:
go test ./pkg/architecture -run '^TestCanonicalResultsPersistAndExportDeterministicEvidence$' -count=1
Команда должна завершиться строкой ok gocpg/pkg/architecture.
Ошибка сборки или отсутствие зависимости указывает на проблему окружения,
а не на качество анализируемого кода.
Для чтения и экспорта рабочего результата используйте справочник интерфейсов и результатов.