OtterWise Changelog

# 2026-02-05

Improvements

  • Organization Reporting → Pull Requests now includes Cycle Time Percentiles (p50, p75, p90) with repo and author breakdowns. This helps you spot slow review paths and outliers at a glance.

# 2026-02-04

Improvements

  • Repository Analytics now includes a Complexity vs Coverage quadrant chart that highlights “hard to test” files (low coverage + high complexity/CRAP per line). You can click points to jump directly to the file, and use the table to prioritize the top candidates for testing improvements.

# 2026-02-03

Improvements

  • Organization Reporting → Pull Requests now includes a new "Time to merge" chart. It shows the average number of days from PR creation to merge, grouped by month, so you can spot review-cycle trends over time.

# 2026-01-31

Improvements

  • A new report is being rolled out: Churn-Weighed Coverage Risk.

    This new report will highlight your most frequently changing files along with their coverage, and complexity metrics if your coverage format supports it.

    Frequently changing files with high complexity and low coverage are high risk to introduce bugs or other side effects, and great candidates for adding tests.

    We will do a slow rollout to gather feedback, fix bugs and improve performance, aiming for general availability in mid-february.

    More information will be added in our upcoming blog posts which will dive deeper.

# 2026-01-30

Improvements

  • We recognise that the 2-hour expiration window for code viewer tokens was not ideal for all use cases.

    So starting today, users can now opt to change this to any of the following: 2 hours, 8 hours, 24 hours, 3 days, 7 days, 14 days, 30 days.

    This should give much greater flexibility to teams that frequently use the code viewer.

    You can modify your token expiration in your profile page (link also provided when authorizing the code viewer).

    A note on security: the code viewer is completely safe to use. Revocation, expiration and auth-separation is built because we believe in "minimum permission by default". We have seen competitors get hacked and source code potentially exposed, so this feels like a necessary step to limit risk.

# 2026-01-29

Improvements

  • The Contributors tab in Organization Reporting is shows per-contributor coverage metrics from merged pull requests, including: number of merged PRs, total coverage change, average patch coverage, lines added with coverage, and uncovered lines removed. Organization admins can optionally enable access for all members using the "Public User Reporting" setting.

# 2026-01-07

Bugfixes

  • To avoid situations where GitHub Branch Protection rules for Patch coverage got stuck in pending, we now push status checks for Patch Coverage regardless of patch lines being present or not, this means you will see 100% patch coverage in those situations.

# 2025-12-21

Improvements

  • Implemented API search functionality for the repository list using ?query=[search query], allowing for searching repositories by name wildcard.

# 2025-11-05

Improvements

  • New CI Platform Support
    • GitLab CI - Full integration with pipeline tracking, merge request handling, and automatic branch detection.
    • Azure Pipelines - Complete support including build tracking, PR detection, and automatic branch name normalization.
  • SHA-256 Support - Now accepts both SHA-1 (40 char) and SHA-256 (64 char) commit hashes for Git's new hash algorithm.

  • Improved support for TravisCI, CircleCI, AppVeyor, Jenkins, GitHub Actions with more relevant data and better detection.

  • GitHub Action Workflow - Now supports pinning the bash-uploader to a specific commit SHA using input bash-uploader-sha: [SHA]

Bugfixes

  • Cross-Platform Compatibility - Fixed sed command failures on macOS/BSD systems by removing GNU-specific flags.

  • First commit detection using git show instead of failing

  • Better detached HEAD state handling with multiple fallback strategies

  • Added pre-flight checks for required tools (git, jq, curl, awk) with clear error messages.

  • Added claude to ignored bots, to avoid giving credit to bots/LLMs for coverage changes.

# 2025-11-03

Improvements

  • You can now see Complexity per file when viewing the repository file list. This is a great way to identify complex files that might need refactoring or simplification to improve code quality.

  • Soon we will be adding sorting and new graphs to better visualize complexity per file and over time.

# 2025-10-31

Improvements

  • We have added support for parsing code coverage files outputted by Go using the command: go test -coverprofile=coverage.out.

    The most recent version of the bash uploader will also automatically look for coverage.out file in the root unless a specific filename is set.

    This means you can upload coverage files from the standard Go testing library without installing gocover-cobertura or similar tools anymore.

    See our Blog post on Go and our Go documentation page.

# 2025-10-28

Improvements

  • Today we are adding graphs for CRAP per line and Complexity when viewing the repository, for all plans. Simply click the metrics when available and it will show you a history of coverage, complexity or 'CRAP per line' respectively.

    Each metric shows the difference introduced, such as increased coverage, decreased complexity and so on.

    As with coverage, the complexity and 'CRAP per line' also links to the related commit / Pull Request and will take you there simply by clicking on the point in the graph when hovered.

    This will give your team a much better understanding of what is going on with your projects code quality.

    We are also working on adding historical type coverage reporting into this graph, as well as other reporting features being added to all plans.

Bugfixes

  • Fixed: Ingress pipelines has been improved to better handle spikes and invalid data

# 2025-10-27

Bugfixes

  • Fixed: Chrome browser extension now works with latest GitHub UI changes

# 2025-10-04

Improvements

  • We now have an official GitHub Actions uploader, which can be found at GitHub Marketplace

  • Improved: The Bash Uploader now has automatic fallback to our old upload endpoint for increased reliability.

# 2025-10-01

Improvements

  • Today we had significant downtime (57 minutes) for the first time in years, something we consider unacceptable. To prevent this from happening again, we have made several changes to our infrastructure and processes:

    Instead of a simple load-balanced setup for our Ingress API, we have moved to a queue-based system handled by Cloudflare Workers, with fallback to AWS Lambda, and with final failover back to the original endpoint. This makes the system more resilient to spikes in traffic and failures in individual components.

    This means that the Ingress API is no longer a single point of failure, and can handle much higher loads.

    You should also see improved latency when uploading coverage data, due to the edge-based nature of Cloudflare Workers.

    This process requires no changes on your end, and your existing upload scripts will continue to work as before. We will continue to monitor this new setup closely.

    We have also added a link to our Uptime Statuspage in the footer of our website, so you can always check the current status of our services.

    In short, this means our database, website, API, dashboard and other components can crash or be taken down for maintenance, without affecting your ability to upload coverage data.

# 2025-08-13

Bugfixes

  • Fixed: Line annotations would sometimes fail to be created when Git diffs with deletions were processed, this was due to non-sequential line numbers in the diff. This has been fixed and line annotations should now be created correctly going forward as well as historically.

# 2025-08-02

Bugfixes

  • Fixed: API Token creation was mistakenly hidden behind a feature flag for ~50% of users, which meant that some users could not create API Tokens. This has been fixed and all users can now create API Tokens. This was reported by users using our Browser Extensions, which requires API Tokens to work.

# 2025-08-02

Bugfixes

  • Fixed: API Token creation was mistakenly hidden behind a feature flag for ~50% of users, which meant that some users could not create API Tokens. This has been fixed and all users can now create API Tokens. This was reported by users using our Browser Extensions, which requires API Tokens to work.

# 2025-07-28

Improvements

  • Pull Requests: Added "Outdated Base" badge on Pull Requests where the base branch has had more recent coverage uploaded in the Pull Requests overview inside OtterWise. This is to help identify Pull Requests that might need a rebase or merge to get the latest coverage data from the base branch.

  • Pull Requests: Added new filter option "Open with Outdated Base" to the Pull Requests overview inside OtterWise, to quickly find Pull Requests that have an outdated base branch.

# 2025-04-04

Improvements

  • Coverage graph now goes to latest commit date rather than today, filling out the graph better for repositories with infrequent commits.

Ship better code faster with confidence_

PR comments, status checks, line annotations, and trends without code access. Free for public repos; per-repo pricing for private repos.