Skip to content

v0.6.0

Choose a tag to compare

@silversurfer562 silversurfer562 released this 16 Aug 07:21
9dccd91

The backlog-constructs release: the communication grammar grows from six constructs to eight — ranking and assumption_review — each spec-driven (D1 intake → D2 ratified forks → D3 execution → D4 live AC-4 receipt), shipped on all four surfaces with validated round-trips, and hardened by a five-lens adversarial review per construct BEFORE the cut, every finding fixed with a pinned regression. 611 tests.

Added

  • ranking construct (grammar member #7): order the options, all or only the top top_n; the answer is the ordered list itself; a suggested order renders visibly as a proposal (submit IS the confirmation), default rejected. Widget: ranked list + pool moved by buttons; flat surfaces expand to one pick per rank slot and fold back on collection; elicitation schema is a bounded unique array. ranking_slot_count exported.
  • assumption_review construct (grammar member #8): the agent lists its inferred assumptions; the user rules each accept / edit / reject, an edit carrying replacement text. suggested may pre-mark accept only; default and dispositions rejected. ASSUMPTION_RULINGS exported.
  • Reference form + example answers cover both; round-trip, CSS-family, needs-widget, markdown-conformance and ingestion guards extended.

Changed

  • Form theme budget 8 KB → 10 KB (10,064 B measured; the cap is not a ratchet).
  • Dotted answer namespace guard covers every expanding type.
  • form_response_summary renders an assumption edit as key: edit → <text>.
  • problems_to_markdown attributes by the FIRST quoted field id only (assumption-review five-lens review, 5 findings pinned).

Fixed

  • Seven ranking-ingestion findings from the 2026-08-16 five-lens review, all pinned in TestReviewFindings: option-aware ordinal stripping ("3.12" ingests exactly), ASCII-only slot-key parsing (decimal_key_number — no more raw ValueError on prio.²), the fold keeps zero/out-of-range slots so the validator names the length, typed-beats-quoted held for dotted slots, the widget gate blocks a partial OPTIONAL ranking, the round-trip simulator models the real submit script, docstrings corrected.
  • Docs state the construct count as six pre-0.6.0 (the plain batched form is the substrate, not a construct).

Full changelog: https://github.com/Smart-AI-Memory/attune-forms/blob/main/CHANGELOG.md