werkrevisor 0.8.0: repository config layer, clear context reasons, docs only as diff.
Config layers: built-in defaults < host < .werkrevisor.toml read from the PR base; the repository may only tighten cost and model limits, and .werkrevisor.toml is always a risky path.
One clear reason per cause instead of one line per file.
Documentation files go to the model only as diff and are judged against the writing style in AGENTS.md.
werkrevisor 0.8.0: repository config layer, clear context reasons, docs only as diff.
- Config layers: built-in defaults < host < `.werkrevisor.toml` read from the PR base; the repository may only tighten cost and model limits, and `.werkrevisor.toml` is always a risky path.
- One clear reason per cause instead of one line per file.
- Documentation files go to the model only as diff and are judged against the writing style in AGENTS.md.
- AGENTS.md with the shared writing style.
Details: the PR document under `docs/prs/`.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
- .werkrevisor.toml at the base commit is a config layer on top of the host config;
host-only keys are refused, limits can only be lowered, hard-YELLOW paths only added.
- .werkrevisor.toml is a built-in hard-YELLOW path; an invalid change of it is RED.
- Files left out of the full-file context give one reason per cause with at most 3 examples.
- Documentation goes to the model only as diff.
- The review instructions ask the model to judge docs against the writing style.
- config/werkrevisor.toml keeps only the host part; the rest moves to .werkrevisor.toml.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
YELLOW test changes are not purely additive: tests/test_classifier.py:173 removes a test or assertion, tests/test_classifier.py:181 removes a test or assertion, tests/test_classifier.py:306 removes a test or assertion, tests/test_fullfiles.py:49 removes a test or assertion, tests/test_fullfiles.py:57 removes a test or assertion and 2 more
YELLOW change kind 'mixed' (main code, tests, other files, docs); AI-approvable are only: docs only, tests only added, docs and tests, refactoring with unchanged tests
ORANGE PR too large for an AI-only approval: 1063 changed lines (docs not counted) exceed [size] max_changed_lines = 800; please review it yourself
YELLOW full-file context incomplete: docs/prs/2026-10-05-PR#5-repository-config-and-clear-context-reasons.md (all files together would exceed [review] max_full_files_chars = 120000)
YELLOW full-file context incomplete: tests/test_classifier.py (all files together would exceed [review] max_full_files_chars = 120000)
YELLOW full-file context incomplete: tests/test_config_budget_redact.py (all files together would exceed [review] max_full_files_chars = 120000)
YELLOW full-file context incomplete: tests/test_config_layers.py (all files together would exceed [review] max_full_files_chars = 120000)
YELLOW full-file context incomplete: tests/test_fullfiles.py (all files together would exceed [review] max_full_files_chars = 120000)
YELLOW full-file context incomplete: tests/test_rules.py (all files together would exceed [review] max_full_files_chars = 120000)
YELLOW full-file context incomplete: werkrevisor/classifier.py (all files together would exceed [review] max_full_files_chars = 120000)
YELLOW full-file context incomplete: werkrevisor/cli.py (all files together would exceed [review] max_full_files_chars = 120000)
YELLOW full-file context incomplete: werkrevisor/config.py (all files together would exceed [review] max_full_files_chars = 120000)
YELLOW full-file context incomplete: werkrevisor/fullfiles.py (all files together would exceed [review] max_full_files_chars = 120000)
YELLOW full-file context incomplete: werkrevisor/gitea.py (all files together would exceed [review] max_full_files_chars = 120000)
YELLOW full-file context incomplete: werkrevisor/report.py (all files together would exceed [review] max_full_files_chars = 120000)
YELLOW full-file context incomplete: werkrevisor/review.py (all files together would exceed [review] max_full_files_chars = 120000)
YELLOW full-file context incomplete: werkrevisor/rules.py (all files together would exceed [review] max_full_files_chars = 120000)
YELLOW full-file context incomplete: werkrevisor/verdict.py (all files together would exceed [review] max_full_files_chars = 120000)
YELLOW no AI review: the PR needs about 84641 input tokens, more than the limit of 80000 derived from [budget] max_usd_per_review = 0.40
Usage: model `openrouter/anthropic/claude-sonnet-5.5`, LLM skipped (too large), duration 0.8 s, no model call, cost 0 USD.
Reviewed head `d4779154e4a444754fc521d559aa7252e2a9b793` against base `3d174cc8a50310b2cd33d51b00f494e1777ec57c`, werkrevisor 0.7.0.
<!-- werkrevisor:d4779154e4a444754fc521d559aa7252e2a9b793 -->
<!-- werkrevisor-verdict:ORANGE -->
## 🟠 werkrevisor: ORANGE / FINDINGS
Change kind: `mixed`.
### Reasons
- **YELLOW** test changes are not purely additive: tests/test_classifier.py:173 removes a test or assertion, tests/test_classifier.py:181 removes a test or assertion, tests/test_classifier.py:306 removes a test or assertion, tests/test_fullfiles.py:49 removes a test or assertion, tests/test_fullfiles.py:57 removes a test or assertion and 2 more
- **YELLOW** change kind 'mixed' (main code, tests, other files, docs); AI-approvable are only: docs only, tests only added, docs and tests, refactoring with unchanged tests
- **YELLOW** risky paths changed: config/hsadmin-ng.toml (config/**), config/werkprobe.toml (config/**), config/werkrevisor.toml (config/**), werkrevisor/config.py (werkrevisor/config.py), werkrevisor/gitea.py (werkrevisor/gitea.py)
- **ORANGE** PR too large for an AI-only approval: 1063 changed lines (docs not counted) exceed [size] max_changed_lines = 800; please review it yourself
- **YELLOW** full-file context incomplete: docs/prs/2026-10-05-PR#5-repository-config-and-clear-context-reasons.md (all files together would exceed [review] max_full_files_chars = 120000)
- **YELLOW** full-file context incomplete: tests/test_classifier.py (all files together would exceed [review] max_full_files_chars = 120000)
- **YELLOW** full-file context incomplete: tests/test_config_budget_redact.py (all files together would exceed [review] max_full_files_chars = 120000)
- **YELLOW** full-file context incomplete: tests/test_config_layers.py (all files together would exceed [review] max_full_files_chars = 120000)
- **YELLOW** full-file context incomplete: tests/test_fullfiles.py (all files together would exceed [review] max_full_files_chars = 120000)
- **YELLOW** full-file context incomplete: tests/test_rules.py (all files together would exceed [review] max_full_files_chars = 120000)
- **YELLOW** full-file context incomplete: werkrevisor/classifier.py (all files together would exceed [review] max_full_files_chars = 120000)
- **YELLOW** full-file context incomplete: werkrevisor/cli.py (all files together would exceed [review] max_full_files_chars = 120000)
- **YELLOW** full-file context incomplete: werkrevisor/config.py (all files together would exceed [review] max_full_files_chars = 120000)
- **YELLOW** full-file context incomplete: werkrevisor/fullfiles.py (all files together would exceed [review] max_full_files_chars = 120000)
- **YELLOW** full-file context incomplete: werkrevisor/gitea.py (all files together would exceed [review] max_full_files_chars = 120000)
- **YELLOW** full-file context incomplete: werkrevisor/report.py (all files together would exceed [review] max_full_files_chars = 120000)
- **YELLOW** full-file context incomplete: werkrevisor/review.py (all files together would exceed [review] max_full_files_chars = 120000)
- **YELLOW** full-file context incomplete: werkrevisor/rules.py (all files together would exceed [review] max_full_files_chars = 120000)
- **YELLOW** full-file context incomplete: werkrevisor/verdict.py (all files together would exceed [review] max_full_files_chars = 120000)
- **YELLOW** no AI review: the PR needs about 84641 input tokens, more than the limit of 80000 derived from [budget] max_usd_per_review = 0.40
<sub>
Usage: model `openrouter/anthropic/claude-sonnet-5.5`, LLM skipped (too large), duration 0.8 s, no model call, cost 0 USD.<br>
Reviewed head `d4779154e4a444754fc521d559aa7252e2a9b793` against base `3d174cc8a50310b2cd33d51b00f494e1777ec57c`, werkrevisor 0.7.0.
</sub>
ai-reviewer
requested review from mi 2026-10-05 15:57:51 +02:00
mi
merged commit 667cbe94be into main2026-10-05 16:01:00 +02:00
mi
deleted branch claude-code/repo-config-and-clear-context-reasons2026-10-05 16:01:00 +02:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
werkrevisor 0.8.0: repository config layer, clear context reasons, docs only as diff.
.werkrevisor.tomlread from the PR base; the repository may only tighten cost and model limits, and.werkrevisor.tomlis always a risky path.Details: the PR document under
docs/prs/.🤖 Generated with Claude Code
🟠 werkrevisor: ORANGE / FINDINGS
Change kind:
mixed.Reasons
- YELLOW test changes are not purely additive: tests/test_classifier.py:173 removes a test or assertion, tests/test_classifier.py:181 removes a test or assertion, tests/test_classifier.py:306 removes a test or assertion, tests/test_fullfiles.py:49 removes a test or assertion, tests/test_fullfiles.py:57 removes a test or assertion and 2 more
- YELLOW change kind 'mixed' (main code, tests, other files, docs); AI-approvable are only: docs only, tests only added, docs and tests, refactoring with unchanged tests
- YELLOW risky paths changed: config/hsadmin-ng.toml (config/), config/werkprobe.toml (config/), config/werkrevisor.toml (config/**), werkrevisor/config.py (werkrevisor/config.py), werkrevisor/gitea.py (werkrevisor/gitea.py)
- ORANGE PR too large for an AI-only approval: 1063 changed lines (docs not counted) exceed [size] max_changed_lines = 800; please review it yourself
- YELLOW full-file context incomplete: docs/prs/2026-10-05-PR#5-repository-config-and-clear-context-reasons.md (all files together would exceed [review] max_full_files_chars = 120000)
- YELLOW full-file context incomplete: tests/test_classifier.py (all files together would exceed [review] max_full_files_chars = 120000)
- YELLOW full-file context incomplete: tests/test_config_budget_redact.py (all files together would exceed [review] max_full_files_chars = 120000)
- YELLOW full-file context incomplete: tests/test_config_layers.py (all files together would exceed [review] max_full_files_chars = 120000)
- YELLOW full-file context incomplete: tests/test_fullfiles.py (all files together would exceed [review] max_full_files_chars = 120000)
- YELLOW full-file context incomplete: tests/test_rules.py (all files together would exceed [review] max_full_files_chars = 120000)
- YELLOW full-file context incomplete: werkrevisor/classifier.py (all files together would exceed [review] max_full_files_chars = 120000)
- YELLOW full-file context incomplete: werkrevisor/cli.py (all files together would exceed [review] max_full_files_chars = 120000)
- YELLOW full-file context incomplete: werkrevisor/config.py (all files together would exceed [review] max_full_files_chars = 120000)
- YELLOW full-file context incomplete: werkrevisor/fullfiles.py (all files together would exceed [review] max_full_files_chars = 120000)
- YELLOW full-file context incomplete: werkrevisor/gitea.py (all files together would exceed [review] max_full_files_chars = 120000)
- YELLOW full-file context incomplete: werkrevisor/report.py (all files together would exceed [review] max_full_files_chars = 120000)
- YELLOW full-file context incomplete: werkrevisor/review.py (all files together would exceed [review] max_full_files_chars = 120000)
- YELLOW full-file context incomplete: werkrevisor/rules.py (all files together would exceed [review] max_full_files_chars = 120000)
- YELLOW full-file context incomplete: werkrevisor/verdict.py (all files together would exceed [review] max_full_files_chars = 120000)
- YELLOW no AI review: the PR needs about 84641 input tokens, more than the limit of 80000 derived from [budget] max_usd_per_review = 0.40
Usage: model `openrouter/anthropic/claude-sonnet-5.5`, LLM skipped (too large), duration 0.8 s, no model call, cost 0 USD.Reviewed head `d4779154e4a444754fc521d559aa7252e2a9b793` against base `3d174cc8a50310b2cd33d51b00f494e1777ec57c`, werkrevisor 0.7.0.