docs(llm): LLM call-site map, control-path axis, roadmap & usage policy + anti-drift tests
ORCH-118 (inventory-first, docs+tests only): publish an evidence-based map of
every place the orchestrator's control flow consumes (or can consume) an LLM
judgment, mark the control-path axis (C control-path vs P artifact-producer),
define "avoidable LLM control path" as a checkable two-bit predicate, classify
each call-site, and order the deterministic-replacement roadmap. Pin the map to
code with offline structural anti-drift tests.
- docs/architecture/llm-call-sites.md — map + machine-readable inventory block
+ control-path axis + classification + keep-LLM justifications + deterministic
non-agent paths (FR-1/FR-2/FR-3/FR-8).
- docs/architecture/llm-determinization-roadmap.md — ordered candidates BY ROLE,
savings sourced from agent_runs, recommended first slice = deployer staging
(FR-4). No fabricated follow-up Plane-IDs (R3/NFR-6).
- docs/architecture/llm-usage-policy.md — normative principle, keep/replace
criteria via the axis, definition of "avoidable LLM control path" (FR-5/FR-8).
- tests/test_llm_call_site_inventory.py — TC-01/02/03/04/05/06/09/12/13/14.
- tests/test_llm_determinization_docs.py — TC-07/08/11.
- CHANGELOG.md + docs/overview/tech-quality-security.md — golden-source sync (AC-8).
Avoidable LLM control paths = {tester, deployer}; control-path-keep = {reviewer};
not-control-path (P) = {analyst, architect, developer}. Single LLM transport =
launcher._spawn (S0); no alternative transport (TC-12). Runtime untouched:
STAGE_TRANSITIONS / QG_CHECKS / check_* / machine-verdict keys / DB schema are
byte-for-byte; no replacement runners implemented (FR-7). Full suite: 2081 passed.
Refs: ORCH-118
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -40,6 +40,22 @@
|
||||
- Анти-регресс машинный: структурные тесты сканируют исполняемый код на боевые хост-литералы,
|
||||
а документацию — на секретоподобные значения; находка рвёт CI.
|
||||
|
||||
## Где уместен LLM: карта вызовов и нормативная политика
|
||||
|
||||
Платформа держит **доказательную карту** всех мест, где поток управления потребляет суждение
|
||||
LLM, и **нормативную политику** «LLM — только там, где нужно настоящее суждение». Карта разводит
|
||||
три факта: консультация ≠ транспорт/слот; **control-path** (вердикт LLM ветвит поток управления)
|
||||
≠ **artifact-producer** (детерминированный гейт судит артефакт независимо); и деривируемость
|
||||
вердикта из tool-сигналов. Путь называется **avoidable LLM control path**, когда он одновременно
|
||||
control-path и его вердикт деривируем из exit-кодов (тогда консультацию можно заменить
|
||||
детерминированным раннером). Поимённо: avoidable = `{tester, deployer}`; настоящее суждение
|
||||
сохраняется у `{analyst, architect, developer, reviewer}`. Карта — снимок, прибитый структурными
|
||||
анти-дрейф тестами; реализация замен — отдельные follow-up'ы по роли.
|
||||
|
||||
- Карта вызовов LLM: [`../architecture/llm-call-sites.md`](../architecture/llm-call-sites.md)
|
||||
- Нормативная политика: [`../architecture/llm-usage-policy.md`](../architecture/llm-usage-policy.md)
|
||||
- Порядок замен: [`../architecture/llm-determinization-roadmap.md`](../architecture/llm-determinization-roadmap.md)
|
||||
|
||||
## Self-hosting-страховки
|
||||
|
||||
Платформа дорабатывает сама себя тем же конвейером — прод-инстанс при этом обслуживает и
|
||||
|
||||
Reference in New Issue
Block a user