Skip to content

Release Notes

Reference

Release-notes' public surface is the ReleasePreparationWorkflow class, re-exported from attune.workflows. WorkflowResult comes from attune.workflows as well.

ReleasePreparationWorkflowattune.workflows.release_prep

Symbol Purpose
ReleasePreparationWorkflow() Construct the workflow. Takes no special constructor arguments.
ReleasePreparationWorkflow.execute(**kwargs) Async. Draft release notes + advisory. Honors path (str, required) and depth ("quick" / "standard" / "deep", default "standard"). Returns a WorkflowResult.
ReleasePreparationWorkflow.name The registered slug, "release-notes".
ReleasePreparationWorkflow.stages ["agent-prep"]; the stage runs at the CAPABLE model tier.

Depth → turns and budget

Depth Max turns Budget cap Use when
quick 10 $2 A fast pass for an early read.
standard 20 $10 The default — balanced coverage and cost.
deep 40 $25 The fullest treatment before a major release.

The four subagents

Subagent Role
health-checker Runs tests, checks dependency/lock status, verifies CI.
security-scanner Flags vulnerabilities, secrets, eval/exec, path traversal.
changelog-generator Drafts a Keep a Changelog section from git log.
release-assessor Judges overall readiness and gives a go/no-go.

WorkflowResult fields read after a run

Field Type Meaning
success bool Whether the run completed.
final_output Any The synthesized report — a serialized report when findings parse, else the raw markdown.
summary str \| None Readiness score + go/no-go overview.
suggestions list[NextAction] Prioritized next steps, including blockers.
cost_report CostReport Cost / usage for the run.
provider str The provider that served the run ("anthropic").
metadata dict Echoes path, depth, and max_turns; carries SDK error fields on failure.
error str \| None Failure reason. (error_type and transient exist on WorkflowResult but this workflow's failure path leaves them unset.)

Entry points

Surface Invocation
MCP tool release_notes(path=<p>) — changelog draft + go/no-go advisory (reached via the /release skill).
CLI attune workflow run release-notes --path <p> [--depth quick\|standard\|deep] [--json].
Python await ReleasePreparationWorkflow().execute(path=<p>, depth=<d>).