Release Notes v2.1.0
Released: 2026-05-20
This release introduces a critic verification pass that validates generated artifacts against repository evidence, structured review findings with GitHub inline publishing, and a suite of new analysis tools. The focus is on accuracy, cost efficiency through Anthropic prompt caching, and deeper codebase exploration.
✨ Highlights
Critic Verification Pass
New verify capability reviews generated artifacts (commits, PRs, changelogs, reviews) for unsupported claims, incorrect citations, and scope overstatement. When issues are found, Iris regenerates with guidance. Material errors like critical severity issues trigger automatic revision; style or wording differences are ignored.
Structured Review Findings with GitHub Inline Comments
Reviews now return typed Finding objects with severity, confidence, category, file location, and evidence references. Findings gate at 70% confidence (configurable via DEFAULT_MIN_FINDING_CONFIDENCE). Publishing to GitHub places inline comments directly on PR diff lines with permalinks in the review body.
Repository Map for Codebase Orientation
New repo_map tool builds a compact, ranked view of source files with definitions and imports. Scoring prioritizes mentioned files (+1000), recently changed files (+250), and shallow paths. Token budget clamps to 50-8000 tokens; max files caps at 200.
Anthropic Prompt Caching
Automatic caching now applies to both main agent and subagents. Cached input tokens bill at ~90% discount, cutting costs for multi-turn tool loops where the same context/system prompt is re-sent.
Configurable Subagent Turn Budget
Parallel subagents now accept a max_turns argument (1-100) to cap tool loops. Precedence: per-invocation argument, then tool instance config, then default of 20. Failures now return descriptive error messages instead of empty strings.
🔧 New Tools
repo_map: Ranked codebase overview with definitions/imports extracted from 14 file types. Respects.gitignore, excludes files >400KB. Parameters:token_budget(default 2000),max_files(default 60),mentioned_filesfor explicit prioritization.static_analysis: Runs installed linters (clippy, ruff, biome/oxlint, golangci-lint/go vet) without package installation. Auto-detects project type from config files. Parameters:analyzer,timeout_secs(1-600),max_output_chars(512-40000).git_show: Inspects historical commit metadata, stats, and patch. Parameters:commit(required),files(optional filter),max_output_chars(1000-50000).git_blame: Line-level history with author, date, and summary. Also fetches recent commits touching the file. Parameters:file,start_line,end_line,recent_commits(1-10).
🤖 Agent Framework
- Added
verify.tomlcapability with severity levels: critical, high, medium, low Critiquestruct returnsrequires_revision,issues[],revision_prompt, andconfidence- Critic executes only for supported output types:
GeneratedMessage,Review,MarkdownPullRequest,MarkdownChangelog,MarkdownReleaseNotes - Graceful degradation: critic failures skip verification and return original artifact
🔎 Review Improvements
Reviewstruct now includesmetadata(risk level, strategy, specialist passes),findings[], andstatsFindingfields:id,severity,confidence,file,start_line,end_line,category,title,body,suggested_fix,evidence[]- Flexible confidence parsing handles integer, float, and percentage string formats
ReviewMetadatasurfaces the agentic review strategy for transparencyvisible_findings()filters to 70%+ confidence by default
🐙 GitHub Integration
publish_structured_review()posts inline comments on PR diff lines- Validates comment candidates against reviewable lines before submission
- Review body includes GitHub permalinks section linking to each finding location
- Multi-line findings use
start_line/end_lineranges in GitHub API
⚡ Performance & Cost
- Anthropic
with_automatic_caching()applied via sharedanthropic_agent_builder() CompletionProfiledifferentiates OpenAI reasoning effort:MainAgent(medium),Subagent(low),StatusMessage(none). This applies only to OpenAI models with reasoning effort support.- Parallel subagent errors now populate
SubagentResult.errorwith details instead of silent failures ParallelAnalyzeResultincludessuccessfulandfailedcounts for visibility
⬆️ Dependencies
- Bumped
rig-coreto 0.37 (crate renamed torigin imports) - Edition updated to Rust 2024
📝 Documentation
- Refreshed docs covering GitHub publishing,
--amendflag, XDG config paths, Homebrew installation - Added
ROADMAP.mdreplacing the companion design document - Updated
SKILL.mdwith branch usage patterns - Expanded architecture docs for new tools, critic pass, and studio refactor
Upgrade Notes
- The
rig-corecrate is now imported asrig. Update any direct Rig dependencies if extending Git-Iris. - Critic verification is enabled by default. Disable with
critic_enabled: falsein config if you prefer no revision passes. - Review findings below 70% confidence are hidden by default. Adjust
DEFAULT_MIN_FINDING_CONFIDENCEif needed. - Subagent turn budget defaults to 20. For broad searches, increase via
max_turnsargument; for cost control, decrease it.