Skip to content

v1.6.1: Cost Estimation Telemetry, Fork PR Security & Resilient Error Handling

Choose a tag to compare

@derailed-dash derailed-dash released this 17 Aug 17:54
· 13 commits to main since this release
5ae319e

🌟 What's New in v1.6.1

💰 Automated Cost Estimation & Pricing Telemetry

  • Dollar Cost Reporting: Automatically calculates and reports estimated review costs directly in the tokenomics summary table based on official published rates, cached input discounts, and time-boxed promotional pricing (#33 by @SaschaHeyer).
  • Decoupled Pricing Module: Clean pricing.py architecture supporting custom token rates via environment variables (GEMINI_RATE_INPUT, GEMINI_RATE_OUTPUT) or gemini-review.toml.
  • Accurate Input Billing: Properly bills prior PR comment history tokens at full input rates rather than silently dropping them.
  • Gemini 3.7 Flash Cache Read Pricing: Introduces support for Gemini 3.7 Flash cache read pricing multipliers (DEFAULT_CACHE_READ_MULTIPLIER = 0.1).

🛡️ Fork PR Workflow Security & Slash Command Routing

  • Skipping Fork PR Failures: Restricts automatic pull_request workflow triggers to internal repository branches, cleanly skipping fork PRs where repository secrets are inaccessible by GitHub design (#34).
  • Slash Command Execution (/gemini-review): Repository maintainers can securely trigger reviews on external fork PRs by commenting /gemini-review, ensuring safe execution with full access to GEMINI_API_KEY.
  • PR Template: Added .github/pull_request_template.md with contributor checklists and maintainer slash-command guidance.
  • Contribution Guide: Updated CONTRIBUTING.md with comprehensive workflow lifecycle guidance and linking to exemplar PRs.

⚡ Resilient Error Handling & Visible Failure Signals

  • No More Silent Drops: post_review now verifies if review comments were accepted by GitHub API. If posting fails completely, it raises a RuntimeError and sets the commit status to failure, alerting maintainers immediately in CI.

📜 Rolled-In Highlights from Previous Releases

v1.6.0: Dynamic Context Selection in Sparse Mode
  • AI-Powered Dynamic Context Selection: When repository size exceeds the sparse threshold (1.5 MB), Gemini dynamically evaluates candidate repository files and selects up to 8 of the most relevant modules (callers, dependencies, tests, utilities) to include in full context.
  • Core Safeguard Budget: Guaranteed inclusion of core config and documentation files (README.md, pyproject.toml, package.json, etc.).
v1.5.2: Default Model Upgrade to Gemini 3.7 Flash
  • Upgraded default model across reviews and issue triaging to gemini-3.7-flash.
v1.5.1: Code Suggestion Sanitisation & Auto-Indentation
  • Sanitised inline code suggestion formatting by stripping outer fences, line-number prefixes, and auto-aligning indentation to match target code nesting.
v1.5.0: Multi-Axis Code Quality Review Directives
  • Enhanced review prompt directives with senior engineering evaluation standards, constructive structural remedies, and refined dependency discipline.
v1.4.5: Line Range Accuracy & Discussion Tracking
  • Multi-line suggestion targeting, automatic PR comment history and conversation thread tracking, and suppression of redundant re-reviews on inline fixes.

Full Changelog: v1.6.0...v1.6.1