Skip to content

treaty rc14: html on why only, exit codes declared exactly - #11

Merged
romamo merged 1 commit into
mainfrom
treaty-rc14
Oct 2, 2026
Merged

romamo merged 1 commit into
mainfrom
treaty-rc14

Conversation

@romamo

@romamo romamo commented Oct 2, 2026

Copy link
Copy Markdown
Collaborator

treaty 1.0.0rc14. Stacked on #10 (base treaty-rc13) → #9 → #8 → #7 → #6.

Changes

  • html is why's format only (treaty #209): renderers={"html": FormatRenderer(render_why_document, media_type="text/html")} on why; the app-wide fallback that rendered other commands' data as a JSON page is gone, and they refuse --format html
  • Exit codes declared exactly (treaty #211): the new declared-exits rule flagged codes reachable only through shared helpers. Fleet now resolves a project only, and InventoryFleet (used by inventory show, audit, observe) also reads a team's Ansible inventory, so only those three can raise INVENTORY_UNREADABLE. Decision records and proposal receipts map their own failures (_record_invalid, _proposal_failed)

#210 (idempotent=True) is in rc14 too; Cloudfall no longer needs it since observe is safe.

Checks

  • uv run pytest: 457 passed (FORCE_COLOR unset); ruff, mypy clean
  • treaty audit --strict cloudfall.app:app: no warnings (56 of 60 rules pass, the rest advice)
  • config validate --format html exits 2 listing its formats; why --format html renders the page

🤖 Generated with Claude Code

…ctly

rc14 lands treaty #209 and #211. --format html is a FormatRenderer on why
alone, so other commands refuse it instead of rendering a page of JSON.
The new declared-exits audit rule flagged codes a command could raise
only through a shared helper: the project lookup no longer reads an
Ansible inventory except on the commands that take --inventory
(InventoryFleet), and decision records and proposal receipts each map
their own failures, so every command declares exactly what it raises.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@romamo
romamo changed the base branch from treaty-rc13 to main October 2, 2026 07:57
@romamo
romamo merged commit 09f76c8 into main Oct 2, 2026
1 check passed
@romamo
romamo deleted the treaty-rc14 branch October 2, 2026 07:58
@shipmill-romamo shipmill-romamo Bot added this to the 0.6.0 milestone Oct 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant