Work with release prep
Use release prep when you need to pre-release quality gate — health checks, security audit, changelog, version bumps.
Prerequisites
- Access to the project source code
- Familiarity with the files under src/attune/workflows/release_prep.py
Steps
-
Understand the class hierarchy. Read the interfaces to see how release prep is structured before extending or modifying. The key classes are:
ReleasePreparationWorkflowinsrc/attune/workflows/release_prep.py— Pre-release quality gate workflow powered by Agent SDK subagents.ReleaseAgentinsrc/attune/agents/release/base_agent.py— Base agent with CHEAP -> CAPABLE -> PREMIUM escalation.TestCoverageAgentinsrc/attune/agents/release/coverage_agent.py— Runs pytest --cov and parses coverage report.DocumentationAgentinsrc/attune/agents/release/documentation_agent.py— Checks docstring coverage, README currency, and CHANGELOG presence.CodeQualityAgentinsrc/attune/agents/release/quality_agent.py— Runs ruff, checks type hints and complexity.
-
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.
-
Make your change. Follow existing patterns — naming, error handling, and logging style.
-
Run the related tests. Target with
pytest -k "release-prep".
Key files
src/attune/workflows/release_prep.pysrc/attune/agents/release/**
Common modifications
Classes you are most likely to extend:
ReleasePreparationWorkflowinsrc/attune/workflows/release_prep.pyReleaseAgentinsrc/attune/agents/release/base_agent.pyTestCoverageAgentinsrc/attune/agents/release/coverage_agent.pyDocumentationAgentinsrc/attune/agents/release/documentation_agent.pyCodeQualityAgentinsrc/attune/agents/release/quality_agent.pyTierinsrc/attune/agents/release/release_models.pyReleaseAgentResultinsrc/attune/agents/release/release_models.pyQualityGateinsrc/attune/agents/release/release_models.py