Skip to content

FlowProbe v0.1.0-rc.2

Pre-release
Pre-release

Choose a tag to compare

@ctorressoftware ctorressoftware released this 16 Sep 12:47
· 32 commits to main since this release

FlowProbe v0.1.0-rc.2

This release candidate focuses on native-runtime reliability, response validation improvements, and clearer execution output.

The main goal of v0.1.0-rc.2 is to address issues discovered after the first public release candidate while keeping the feature set frozen ahead of the first stable release.

Highlights

  • Fixed native configure azure execution on GraalVM Native Image.
  • Added placeholder resolution inside response expectation values.
  • Preserved typed placeholder values in response expectations.
  • Improved flow execution output with clearer per-step validation status.
  • Added response validation results to execution summaries.
  • Regenerated Native Image metadata from representative real FlowProbe executions.
  • Improved Native Image tracing filters to avoid irrelevant JDK and test-framework metadata.
  • Fixed a native linking issue caused by traced internal JLine JNI metadata.
  • Added broader example flows covering request bodies, typed exports, nested placeholders, fail-fast behavior, and controlled failures.

Response expectation placeholders

Exported values can now be reused directly inside response expectations:

expect:
  body:
    - path: "/id"
      operator: "equals"
      value: "${pokemonId}"

Exact placeholders preserve their original type.

For example, if pokemonId is exported as the number 1, FlowProbe compares it as a number rather than converting it to the string "1".

Improved execution output

Flow execution output now exposes validation status more clearly:

FlowProbe · controlled-failure
 
✓ 1. get-bulbasaur
  GET https://pokeapi.co/api/v2/pokemon/bulbasaur
  Validation  passed
 
✗ 2. fail-on-purpose
  GET https://pokeapi.co/api/v2/pokemon/pikachu
  Validation  failed
 
  Reproduce
    curl -X GET -H 'accept: application/json' 'https://pokeapi.co/api/v2/pokemon/pikachu'
 
Flow failed · 1/2 steps passed

Failed requests continue to include a reproducible cURL command.

Native Image reliability

Native Image reachability metadata was regenerated using representative application flows, including YAML parsing, exports, placeholders, request bodies, Azure DevOps configuration, macOS Keychain integration, and controlled failures.

This release fixes the v0.1.0-rc.1 issue where the native configure azure command could fail because the required reflection metadata for AzureDevOpsConfig was missing.

Tracing configuration was also refined to exclude irrelevant test-framework metadata and internal JDK JLine classes that could otherwise introduce invalid JNI reachability into the native build.

The resulting native executable was validated on both macOS Intel and Apple Silicon through the project's native verification workflow.

Examples

The example suite now includes broader scenarios for validating FlowProbe behavior:

  • basic.yaml
  • expectations.yaml
  • exports.yaml
  • normal-flow.yaml
  • request-body-flow.yaml
  • controlled-failure.yaml

These cover typed exports, multi-step placeholder reuse, nested request bodies, response expectations, fail-fast execution, and intentional validation failures.

Installation

Homebrew:

brew install ctorressoftware/tap/flowprobe

Verify the installed version:

flowprobe --version

Expected output:

flowprobe 0.1.0-rc.2

Supported native platforms

Pre-release native binaries are currently provided for:

  • macOS x64 / Intel
  • macOS arm64 / Apple Silicon

v0.1.0-rc.2 remains a release candidate. The core feature set is still frozen while FlowProbe continues through release validation ahead of v0.1.0.