# Understanding the Quick-Veto Criteria in the AI Berkshire Investment Framework

> Discover the quick-veto criteria in the AI Berkshire investment framework. Learn how these eight red-line rules immediately discard unsuitable investment candidates to safeguard your portfolio.

- Repository: [Xbt Lin/ai-berkshire](https://github.com/xbtlin/ai-berkshire)
- Tags: deep-dive
- Published: 2026-07-25

---

**The AI Berkshire framework applies eight red-line quick-veto criteria that immediately discard investment candidates if any single condition—ranging from management integrity issues to unsustainable debt levels—is triggered, regardless of valuation attractiveness.**

The AI Berkshire investment framework implements a defensive "Quick-Kill Checklist" that serves as an early-stage gatekeeper for AI-driven equity research. This mechanism ensures that the analysis pipeline terminates immediately when fundamental governance, legal, or financial health concerns arise, preventing computational resources from being wasted on structurally compromised companies. Understanding these quick-veto criteria is essential for anyone deploying or customizing the xbtlin/ai-berkshire pipeline.

## The Eight Red-Line Quick-Veto Criteria

The framework defines eight non-negotiable red lines in [`README_EN.md`](https://github.com/xbtlin/ai-berkshire/blob/main/README_EN.md) under the *Structured Anti-Bias Mechanisms* table. If **any one** of these conditions is met, the investment idea receives an automatic veto before deeper valuation or qualitative analysis begins.

### 1. Management Integrity Issues

Immediate rejection occurs when ethical concerns or trust issues exist regarding leadership. These integrity problems cannot be outweighed by potential financial upside.

### 2. Regulatory or Legal Violations

Active legal risk dominates any return potential, making these investments automatically disqualifying regardless of market opportunity.

### 3. Accounting or Financial Reporting Scandals

Unreliable financial data destroys the valuation foundation, rendering traditional metrics meaningless and triggering immediate dismissal.

### 4. Significant Insider Sell-Off

Large-scale insider selling signals a lack of confidence from those with the most intimate knowledge of company operations.

### 5. Unsustainable Debt Levels

Excess leverage creates default risk that outweighs growth prospects, typically flagged when debt-to-equity ratios exceed safe thresholds.

### 6. Negative Cash-Flow Outlook

Inability to generate sufficient cash to fund operations or growth eliminates the potential for sustainable long-term returns.

### 7. Fundamental Industry Deterioration

Structural headwinds or secular decline make the business model untenable regardless of company-specific management quality.

### 8. Unclear or Non-Viable Business Model

Lack of a defensible moat, unclear revenue path, or ambiguous competitive positioning eliminates identifiable upside potential.

## How the Quick-Veto Logic Works

The framework operates on strict boolean logic: **any single red line triggers rejection**. This "one strike" policy ensures that the AI never proceeds with ideas that fail basic health checks, effectively eliminating confirmation bias that might otherwise rationalize away fundamental flaws.

## Programmatic Implementation

The veto logic is implemented in [`tools/quick_kill.py`](https://github.com/xbtlin/ai-berkshire/blob/main/tools/quick_kill.py) through the `quick_veto()` function. This utility evaluates a company dictionary against all eight red-line conditions and returns `True` if violation occurs:

```python

# tools/quick_kill.py

def quick_veto(company: dict) -> bool:
    """Return True if the company hits any quick‑kill red line."""
    red_lines = [
        company.get("management_integrity") == "low",
        company.get("regulatory_issues", False) is True,
        company.get("accounting_scandal", False) is True,
        company.get("insider_selloff_pct", 0) > 30,
        company.get("debt_to_equity", 0) > 3.0,
        company.get("free_cash_flow", 0) < 0,
        company.get("industry_outlook") == "negative",
        company.get("business_model_clarity") == "unclear",
    ]
    return any(red_lines)

# Example usage

if __name__ == "__main__":
    candidate = {
        "name": "ABC Corp",
        "management_integrity": "low",          # triggers veto

        "regulatory_issues": False,
        "accounting_scandal": False,
        "insider_selloff_pct": 5,
        "debt_to_equity": 1.2,
        "free_cash_flow": 10_000_000,
        "industry_outlook": "stable",
        "business_model_clarity": "clear",
    }

    if quick_veto(candidate):
        print("❌ Quick‑Veto triggered – discard the idea.")
    else:
        print("✅ No quick‑kill red lines – proceed to deeper analysis.")

```

## Configuration Files and Workflow Integration

The quick-veto criteria are defined and exposed across several critical files in the repository:

- **[`README_EN.md`](https://github.com/xbtlin/ai-berkshire/blob/main/README_EN.md)**: Contains the canonical "Quick-Kill Checklist" table describing each red-line condition and its veto rationale.
- **[`skills/investment-checklist.md`](https://github.com/xbtlin/ai-berkshire/blob/main/skills/investment-checklist.md)**: Implements the checklist logic as a core skill for the AI-driven workflow.
- **[`codex-prompts/investment-checklist.md`](https://github.com/xbtlin/ai-berkshire/blob/main/codex-prompts/investment-checklist.md)**: Exposes the quick-veto step to Codex-compatible agents through generated prompt wrappers.

## Summary

- The AI Berkshire framework uses **eight red-line criteria** as an early-stage veto filter to prevent analysis of compromised companies.
- **Any single condition** triggers automatic rejection, regardless of valuation metrics or other positive attributes.
- Key disqualifiers include **management integrity issues**, **accounting scandals**, **regulatory violations**, and **unsustainable debt levels**.
- The logic is implemented in [`tools/quick_kill.py`](https://github.com/xbtlin/ai-berkshire/blob/main/tools/quick_kill.py) via the `quick_veto()` function, which checks for any `True` value in the red-line array.
- Configuration and rationale reside in [`README_EN.md`](https://github.com/xbtlin/ai-berkshire/blob/main/README_EN.md) and [`skills/investment-checklist.md`](https://github.com/xbtlin/ai-berkshire/blob/main/skills/investment-checklist.md).

## Frequently Asked Questions

### What happens if a company triggers only one quick-veto criterion?

The investment idea is discarded immediately. The framework operates on a strict "one strike" policy where any single red line—even in isolation—results in automatic veto before deeper analysis occurs.

### Can the quick-veto criteria be customized or disabled?

While the standard criteria are defined in [`skills/investment-checklist.md`](https://github.com/xbtlin/ai-berkshire/blob/main/skills/investment-checklist.md), users can modify the `quick_veto()` function in [`tools/quick_kill.py`](https://github.com/xbtlin/ai-berkshire/blob/main/tools/quick_kill.py) to adjust quantitative thresholds or add additional red lines for sector-specific screening.

### How does the quick-veto filter integrate with the AI research workflow?

The filter runs as the first checkpoint immediately after initial company screening. According to [`codex-prompts/investment-checklist.md`](https://github.com/xbtlin/ai-berkshire/blob/main/codex-prompts/investment-checklist.md), the AI agent applies this checklist to ensure no computational resources are allocated to fundamentally flawed candidates that fail basic governance or financial health checks.

### Where are the specific quick-veto thresholds defined?

Quantitative thresholds—such as the 30% insider selloff limit or 3.0 debt-to-equity ratio—are implemented in the example [`tools/quick_kill.py`](https://github.com/xbtlin/ai-berkshire/blob/main/tools/quick_kill.py) file, while qualitative criteria descriptions and their business logic are documented in [`README_EN.md`](https://github.com/xbtlin/ai-berkshire/blob/main/README_EN.md) under the *Structured Anti-Bias Mechanisms* section.