Skip to content

v0.8.3

Choose a tag to compare

@github-actions github-actions released this 01 Sep 01:36
· 58 commits to main since this release

Noodle Assert and Results tabs with ten passing assertions

Noodle 0.8.3 brings response assertions, captures, and collection execution into the TUI. Requests now have dedicated Assert and Capture authoring, manual sends show Results and can persist captures, and the collection Runner provides a transient workspace for selecting and inspecting ordered runs. The release also sharpens tag filtering, response-expression completion, and several response and overlay interactions.

Read the full release article.

✨ Features

  • Split request authoring into focused Assert and Capture tabs, keep tags in Settings, and complete response expressions from the current response or latest retained timeline response.
  • Add per-row Assert and Capture checkboxes. Disabled declarations remain in YAML but produce no evaluation, result, summary, timeline outcome, RunScope mutation, or persisted value.
  • Evaluate enabled captures and assertions on every manual send with a fresh RunScope. Results remains the final response tab and shows a theme-colored success, failure, or unevaluated symbol when outcomes exist.
  • Add a transient collection Runner with request and folder selection, local environment and tag filters, fail-fast execution, progress, resizable panes, and expandable ordered results.
  • Require uniform capture objects with value, optional enabled, and optional persist. Manual sends and CLI request run can persist captures to plaintext or secret environment values, while collection runs and the TUI Runner remain transient.
  • Support repeated --tag filters with AND matching and repeated --exclude-tag filters with OR matching. Request search and tag editors now surface effective tags and suggestions.

🐞 Fixes

  • Apply folder overrides to collection-run requests and keep Runner selection, folder toggles, and result rows aligned with active tag filters.
  • Match header response expressions case-insensitively, prevent stale responses from appearing after request changes, and preserve plain-string and structured result formatting.
  • Keep environment refresh failures non-fatal, give overlays priority over underlying panes, and add bounded scrolling to long Select and new-request folder menus.
  • Fully redact secret-persisted captures and reject CR, LF, and NUL values in the shared plaintext environment writer.

🔧 Refactors

  • Share assertion metadata, capture validation, effective-tag inheritance, request selection, response-expression resolution, and capture-before-assertion execution between the TUI and automation commands.
  • Reuse the same expandable Results rows across manual sends, timeline details, and the collection Runner while keeping capture results and RunScope values out of timeline history.

📚 Documentation

  • Document Assert, Capture, Results, the collection Runner, uniform capture objects, persistence, and repeated tag filters across the README, AGENTS.md, in-app tips, and documentation site.
  • Update noodle-dev with manual response execution, capture persistence, repeated tag-filter semantics, and Runner architecture.
  • Update noodle-use with object-only captures, per-row enablement, individual-run persistence, collection-run isolation, repeated tag filters, and redaction guidance.
  • Refresh opentui from its canonical documentation structure with current package, component, testing, extension, integration, and deployment routes.