refactor(codex-playbook): согласована оптика тонкого мастера

- Зачем:
  - нужно сохранить контекст координатора и устранить расхождения с зеркальным playbook.
- Что:
  - закреплены делегирование, маршрутизация моделей и ограничение кругов ревью.
  - добавлены файловый договор ревью и согласованная эмпирика прогонов.
  - исправлены сборка слепых линий и компактные статусы находок.
- Проверка:
  - quick_validate.py, git diff --check и проверка локальных Markdown-ссылок.
This commit is contained in:
Dmitriy Dementiev committed 2026-07-13 13:07:52 +03:00
1 parent a4985b365d
commit 6cc1b26ce4
12 files changed
+470 -237

No files matched your search

@@ -1,14 +1,17 @@
# Narrow re-check
Re-check only your original findings and the changes immediately adjacent to
Read your original report and the resolution report supplied by the caller.
Re-check only your original findings and changes immediately adjacent to
their resolution. Do not perform a full review.
For every original finding report `CLOSED`, `NOT_CLOSED`, `REJECTION_VALID`,
or `REJECTION_INVALID`, with concise evidence. If this narrow work exposes a
new adjacent defect, report it in the normal findings format; the scope bound
limits exploration, not honest reporting.
For every original ID report `CLOSED`, `NOT_CLOSED`, `REJECTION_VALID`,
or `REJECTION_INVALID`, with concise evidence. Report a newly exposed
adjacent defect with a new stable ID; the narrow scope limits exploration, not
honest reporting.
Return the full re-check through the channel named by the caller. For a file
channel, write it to the supplied path and return only
`RECHECK: ALL_CLOSED | ISSUES_REMAIN`, counters, and `REPORT: <absolute path>`.
For a message channel, return the concise finding statuses once.
Write the detailed re-check to REPORT. Return only:
- `VERDICT: APPROVED | CHANGES_REQUESTED`;
- status counters;
- one line per original or new ID: `ID | status | one-phrase essence`;
- `REPORT: <absolute path>`.
@@ -4,7 +4,7 @@ Write the full result through the channel chosen by the caller:
- `STATUS: complete | questions | blocked`
- `EVIDENCE:` changed files, executed commands, and final counters
- `DECISIONS:` only questions for the orchestrator or user
- `DECISIONS:` only questions for the coordinator or partner
- `FINDINGS:` severity, location, essence, and verification method
- `NEXT:` one concrete action or `none`
@@ -1,21 +1,30 @@
## Mandate
- Review and test hypotheses; do not edit source files or persistent
environment state.
- Review independently and test hypotheses. Do not edit source files,
persistent environment state, or Git.
- Use the working permissions needed for checks, caches, temporary artifacts,
documentation and primary-source research. The caller verifies Git before
and after the review.
- Do not run `git add`, `git commit`, or commands that discard changes.
- Report only the findings index and verdict through the channel named by the
caller.
documentation, and primary-source research.
- Write the detailed report only to REPORT. This assigned exchange file is the
sole write exception to the observer mandate.
- Treat another agent's claims as untrusted until evidence supports them.
## Findings index
## Detailed report
For each finding:
Use stable IDs with FINDING PREFIX:
`SEVERITY(BLOCKER|MAJOR|MINOR|NIT) | file:line or task section | failure scenario | evidence | how to verify`
`PREFIX-N | BLOCKER|MAJOR|MINOR|NIT | file:line or task section | violated
criterion | failure scenario | evidence | minimal verification`
If there are no findings, list the reviewed scope and every executed check or
tested hypothesis with its outcome. A bare no-findings assertion is invalid.
If there are no findings, record the reviewed scope and every executed check
or tested hypothesis with its outcome. A bare approval is invalid.
Final line: `VERDICT: APPROVED | APPROVED_WITH_MINORS | CHANGES_REQUIRED`
## Final message
Return only:
- `VERDICT: APPROVED | CHANGES_REQUESTED`
- severity counters;
- one line per finding: `ID | severity | area | one-phrase essence`;
- `REPORT: <absolute path>`.
Do not repeat the detailed report or reasoning narrative in the final message.
@@ -1,15 +1,17 @@
# Triage blind-review findings
# Triage independent-review findings
The review indexes below are immutable input. Process every finding and change
nothing outside their scope. For each finding, either:
The review reports below are immutable input. Process every stable finding ID
and change nothing outside their scope. Assign exactly one disposition:
- fix it and name the contract or check that proves closure; or
- reject it with evidence from the contract and a check, never a bare claim.
- `FIXED`: change it and name the contract or check that proves closure;
- `REJECTED`: cite the contract and a check, never a bare claim;
- `OUT_OF_SCOPE`: explain the boundary decision needed;
- `NEEDS_DECISION`: state the unresolved product, architecture, or risk choice.
Do not commit or stage changes. Propose accepted rejections and residual risks
for the orchestrator to own and record as durable task decisions. The
orchestrator cannot silently accept risk; authority must come from the user or
already be explicit in the task.
Do not commit, stage, or rewrite the source reports. Write detailed resolutions
to REPORT. Return only:
Write a full resolution report to the path supplied by the caller. Return only
status, counters, executed checks, and that path in the final message.
- overall status and disposition counters;
- one line per finding: `ID | disposition | one-phrase essence`;
- questions for the coordinator and executed-check counters;
- `REPORT: <absolute path>`.