Files
werkrevisor/config/werkrevisor.toml
claude-codeandClaude Opus 5.5 f9ad6763c8 werkrevisor 0.15.0: [hard_orange] paths give ORANGE
A changed file, or the old path of a renamed one, that matches [hard_orange] paths
gives ORANGE with one aggregated reason; such a file is not listed under the YELLOW tiers.
The section is required; the repository layer only adds paths.
hsadmin-ng and werkprobe move RBAC, authentication and secrets to [hard_orange].

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-05 20:51:39 +02:00

56 lines
2.2 KiB
TOML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# werkrevisor host config for reviewing werkrevisor itself on git.javagil.de.
# It holds only what the host decides: model, prices, budget, gate, engine and the classifier endpoint.
# The review rules of the repository are in .werkrevisor.toml at the repository root.
# The PR never changes this file; Werkator passes its path in WERKREVISOR_CONFIG.
[model]
# The trial chose Sonnet: gemini-3.8-flash missed an obvious resource leak that Sonnet found.
id = "openrouter/anthropic/claude-sonnet-5.5"
# Operator-maintained prices in USD per 1M tokens.
input_price_usd_per_mtok = 2.00
output_price_usd_per_mtok = 10.00
# Longer prompts degrade the review even within the context window of a frontier model.
# The budget derives a lower input limit: 2 attempts × (input × 2.00 + 4000 × 10.00) / 1M ≤ 0.40 USD gives 80000 tokens.
max_context_tokens = 150000
# Includes reasoning tokens.
max_output_tokens = 4000
reasoning_effort = "low"
timeout_seconds = 120
max_retries = 1
# Anthropic counts more tokens than o200k_base; calibrate with prompt_tokens / counted_raw_tokens of the usage records.
# On werkrevisor PR#10 the factor 1.15 gave 49841 tokens, Anthropic reported 65792: 1.15 × 65792 / 49841 ≈ 1.52.
token_count_factor = 1.55
[budget]
max_usd_per_review = 0.40
min_key_remaining_usd = 0.50
[hard_orange]
# .werkrevisor.toml adds the critical paths of werkrevisor.
paths = []
[mechanical]
# A changed file whose every changed line is an import, a whitespace change or a rename does not go to the model.
# The built-in rules apply; .werkrevisor.toml may adjust them.
enabled = true
[gate]
# Branch protection requires one approval from {bot, human_reviewers}; see the README.
yellow_gate = "approval"
human_reviewers = ["mi"]
assessment_context = "ai-review/assessment"
[engine]
# "llm": the LLM review alone; "classifier": Jev alone, no LLM; "combined": Jev, then the LLM with Jev's hints.
mode = "combined"
[classifier]
endpoint = "https://api.typesafe.ai/v1/systemone"
model = "jev-latest"
# Operator-maintained price in USD per 1M input tokens; Jev's output is free.
input_price_usd_per_mtok = 0.042
# Jev reads about 32000 tokens of state; a larger unit is not sent and makes the review YELLOW.
max_state_chars = 60000
max_units = 80
timeout_seconds = 20