GitAuto Logo
  1. Home
  2. Pricing
  3. Docs
  4. Dashboard
  5. Blog
  6. Contact
  1. Home
  2. How It Works
  3. Use Cases
  4. Pricing
  5. Docs
  6. Dashboard
  7. FAQ
  8. Blog
  9. Contact

Error Baselines

Before generating tests, GitAuto captures all pre-existing errors in the codebase by running the relevant compiler or linter (e.g., tsc --noEmit for TypeScript). After test generation, it compares the new error output against this baseline to separate errors introduced by the generated code from errors that already existed.

Why This Exists

Many real-world codebases carry pre-existing errors - suppressed warnings, incomplete type migrations, or intentionally loose checks in legacy modules. Without a baseline, the model tries to fix every error it sees, including ones that have nothing to do with the generated tests. This wastes agent iterations on unrelated issues and often makes things worse - the model might "fix" an error in production code that was intentionally left alone, or spend its entire iteration budget chasing pre-existing issues instead of refining the test it just wrote. Error baselines let GitAuto say: "ignore these 47 errors - they existed before you started. Focus only on the 3 new ones."

Why Models Can't Distinguish Old From New

When the model runs a verification command (e.g., tsc --noEmit), it gets back a flat list of errors with no indication of which ones are pre-existing. The model sees 50 errors and tries to fix all 50 - it has no way to know that 47 of them existed before it started. The verification output treats all errors equally, so the model does too. This wastes iterations on issues the model didn't cause and often makes things worse by "fixing" intentionally loose typing in legacy code that was left that way on purpose.

How It Works

GitAuto runs the relevant compiler or linter in check-only mode before the agent begins writing code. The error output is stored as the baseline. After the model generates or modifies files, GitAuto runs the same check again and diffs the two outputs. Only errors that appear in the second run but not the first are reported to the model as actionable issues. This filtering happens at the file and line level, so even if an existing file gains new errors from the generated code, only those new errors are surfaced.

Related Features

  • Type Checking - the verification step that uses the baseline for comparison
  • CI Log Cleaning - cleans noise from CI logs, a related denoising technique

Need Help?

Have questions or suggestions? We're here to help you get the most out of GitAuto.

Contact us with your questions or feedback!

Test Naming DetectionCI Log Cleaning

Getting Started

  • Installation
  • Setup

Triggers

  • Overview
  • Schedule Trigger
  • Test Failure Trigger
  • Review Comment Trigger
  • Dashboard Trigger

Coverage Dashboard

  • Overview
  • Python Testing
  • JavaScript Testing
  • Java Testing
  • Go Testing
  • PHP Testing
  • Ruby Testing
  • Flutter Testing
  • Multi-Language
  • Coverage Charts

Customization

  • Repository Rules
  • Output Language
  • GITAUTO.md

Integrations

  • CircleCI Integration
  • npm Integration

How It Works

Context Enrichment

  • Line Numbers
  • Full File Reads
  • Test File Preloading
  • Test Naming Detection
  • Error Baselines
  • CI Log Cleaning
  • Trigger-Specific Prompts
  • Coding Standards

Output Auto-Correction

  • Diff Hunk Repair
  • Diff Prefix Repair
  • Tool Name Correction
  • Tool Argument Correction
  • Import Sorting
  • Trailing Space Removal
  • Final Newline
  • Line Ending Preservation
  • Sanitize Tool Arguments
  • Lint Disable Headers

Quality Verification

  • Formatting
  • Linting
  • Type Checking
  • Test Execution
  • Coverage Enforcement
  • phpcs / phpstan Support
  • PHPUnit Support
  • pytest Support
  • Snapshot Auto-Update
  • Untestable Detection
  • Should-Skip Detection
  • Dead Code Removal
  • Quality Check Scoring
  • Quality Checklist

Safety Guardrails

  • File Edit Restrictions
  • Temperature Zero
  • PR/Branch Checks
  • Race Condition Prevention
  • Bot Loop Prevention
  • Webhook Deduplication
  • Duplicate Error Hashing
  • Infrastructure Failure Detection
  • Strict Tool Schemas
  • No-Change Detection

Token/Cost Management

  • Token Trimming
  • Outdated Diff Removal
  • Stale File Replacement
  • Skip CI Intermediate
  • CI Log Deduplication
  • Web Fetch Summarization
  • Context Forgetting
  • File Query Routing
  • On-Demand Diff

Resilience & Recovery

  • Model Fallback
  • Overload Retry
  • Forced Verification
  • Error Files Editable

Hallucination Prevention

  • Web Search
  • URL Fetching
  • Anti-Hallucination Prompts
  • GITAUTO.md Restrictions
  • Review Response Guardrails

Ready to improve your test coverage?

Go from 0% to 90% test coverage with GitAuto. Start for free, no credit card required.

Install FreeContact Sales

Product

  • Home
  • Why GitAuto
  • What GitAuto Does
  • How It Works
  • Use Cases
  • How to Get Started
  • Solution
  • Pricing
  • Pricing Details
  • ROI Calculator
  • ROI Methodology
  • FAQ
  • Blog
  • Contact

Dashboard

  • Dashboard
  • Coverage Trends
  • File Coverage
  • Credits
  • Open PRs
  • Usage
  • Triggers
  • Actions
  • References
  • Rules
  • CircleCI Integration
  • npm Integration

Documentation

  • Docs
  • Getting Started
  • Setup
  • Triggers
  • Coverage Setup
  • Customization
  • How It Works
  • Auto Merge
  • CircleCI
  • npm

Legal

  • Privacy Policy
  • Terms of Service

Connect

  • GitHub
  • LinkedIn
  • Twitter
  • YouTube
GitAuto Logo© 2026 GitAuto, Inc. All Rights Reserved