Work with release prep

Use release prep when you need to pre-release quality gate — health checks, security audit, changelog, version bumps.

Prerequisites

Steps

  1. Understand the class hierarchy. Read the interfaces to see how release prep is structured before extending or modifying. The key classes are:

    • ReleasePreparationWorkflow in src/attune/workflows/release_prep.py — Pre-release quality gate workflow powered by Agent SDK subagents.
    • ReleaseAgent in src/attune/agents/release/base_agent.py — Base agent with CHEAP -> CAPABLE -> PREMIUM escalation.
    • TestCoverageAgent in src/attune/agents/release/coverage_agent.py — Runs pytest --cov and parses coverage report.
    • DocumentationAgent in src/attune/agents/release/documentation_agent.py — Checks docstring coverage, README currency, and CHANGELOG presence.
    • CodeQualityAgent in src/attune/agents/release/quality_agent.py — Runs ruff, checks type hints and complexity.
  2. Decide whether to extend or modify. If the class has subclasses, extend with a new one rather than changing the base. If it stands alone, modify directly.

  3. Make your change. Follow existing patterns — naming, error handling, and logging style.

  4. Run the related tests. Target with pytest -k "release-prep".

Key files

Common modifications

Classes you are most likely to extend: