From 0de36f7100a74eaf16f2dd3c41d8f8b8b8782fed Mon Sep 17 00:00:00 2001 From: Transaction Science Date: Wed, 28 Oct 2026 13:21:37 -0400 Subject: [PATCH 1/3] wai/quickstart/install.sh: install 0.4.0 The release workflow's first job checks that the installer's default is the tagged version; the 0.4.0 bump missed it, so the wai-v0.4.0 run stopped there before building anything. Co-Authored-By: Claude Opus 5.5 --- wai/quickstart/install.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wai/quickstart/install.sh b/wai/quickstart/install.sh index 31851f50f..c4f95c253 100755 --- a/wai/quickstart/install.sh +++ b/wai/quickstart/install.sh @@ -8,7 +8,7 @@ # share/wai/web/ side by side. Then it says which line puts ~/.wai/bin on your PATH. Nothing # else is changed. WAI_VERSION picks a release (default: the one below). set -eu -VERSION="${WAI_VERSION:-0.3.0}" +VERSION="${WAI_VERSION:-0.4.0}" DEST="${WAI_HOME:-$HOME/.wai}" BASE="https://git.transaction.science/Transaction-Science/open-standards/releases/download/wai-v$VERSION" case "$(uname -s)" in -- 2.54.0 (Apple Git-157) From bff2d27459d6f3f59f8c8aeeccc1ff30ddc4a0c1 Mon Sep 17 00:00:00 2001 From: Transaction Science Date: Wed, 28 Oct 2026 13:33:19 -0400 Subject: [PATCH 2/3] wai-rs tests: the quickstart installer installs this crate's version The release job's first check refuses a tag whose installer installs another version, and it runs only on the tag, after the version bump has merged; the 0.4.0 bump missed the installer and the tag's run stopped there. cli_ops now holds the bump to it: a version bump changes wai/wai-rs, which runs this test (wai-catalogue.yml). Co-Authored-By: Claude Opus 5.5 --- wai/wai-rs/tests/cli_ops.rs | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/wai/wai-rs/tests/cli_ops.rs b/wai/wai-rs/tests/cli_ops.rs index 343be7e8e..f3e9db6c6 100644 --- a/wai/wai-rs/tests/cli_ops.rs +++ b/wai/wai-rs/tests/cli_ops.rs @@ -3,6 +3,8 @@ //! //! - `wai ops list`, `search`, `schema` and `export` read the catalogue, and the export is //! the committed `wai/catalogue/ops.json` (a drifted copy exits 1); +//! - the quickstart installer (`wai/quickstart/install.sh`) installs this crate's version, as +//! the release job requires of a tag `wai-v`; //! - every operation answers `--help` from its catalogue entry, and its mechanical form //! `wai ` runs it as its CLI spelling does; //! - the exit codes: 1 a check that failed, 2 usage, 3 permission, 4 confirmation required, @@ -75,6 +77,19 @@ fn ops_list_names_every_operation_and_export_is_the_committed_file() { assert!(text(&o).contains("regenerate"), "{}", text(&o)); } +/// The release job's first check (wai-release.yml) refuses a tag whose installer installs +/// another version, after the version bump has merged; this holds the bump to it. +#[test] +fn the_quickstart_installer_installs_this_version() { + let version = env!("CARGO_PKG_VERSION"); + let install = std::fs::read_to_string(wai_dir().join("quickstart/install.sh")).unwrap(); + let line = format!("VERSION=\"${{WAI_VERSION:-{version}}}\""); + assert!( + install.lines().any(|l| l == line), + "wai/quickstart/install.sh does not install {version}, this crate's version: it needs the line {line}" + ); +} + #[test] fn ops_search_and_schema_answer_offline() { let d = scratch("search"); -- 2.54.0 (Apple Git-157) From e95c3e8b8d1687f4b1fc61289ffe8ee87aba6a78 Mon Sep 17 00:00:00 2001 From: Transaction Science Date: Thu, 29 Oct 2026 01:14:08 -0400 Subject: [PATCH 3/3] Revert the installer-version test from this pull request It changes wai/wai-rs, which runs every WAI workflow; the installer line alone runs four. The release waits on this pull request, so the test follows in a pull request of its own (branch wai/installer-version-test). Co-Authored-By: Claude Opus 5.5 --- wai/wai-rs/tests/cli_ops.rs | 15 --------------- 1 file changed, 15 deletions(-) diff --git a/wai/wai-rs/tests/cli_ops.rs b/wai/wai-rs/tests/cli_ops.rs index f3e9db6c6..343be7e8e 100644 --- a/wai/wai-rs/tests/cli_ops.rs +++ b/wai/wai-rs/tests/cli_ops.rs @@ -3,8 +3,6 @@ //! //! - `wai ops list`, `search`, `schema` and `export` read the catalogue, and the export is //! the committed `wai/catalogue/ops.json` (a drifted copy exits 1); -//! - the quickstart installer (`wai/quickstart/install.sh`) installs this crate's version, as -//! the release job requires of a tag `wai-v`; //! - every operation answers `--help` from its catalogue entry, and its mechanical form //! `wai ` runs it as its CLI spelling does; //! - the exit codes: 1 a check that failed, 2 usage, 3 permission, 4 confirmation required, @@ -77,19 +75,6 @@ fn ops_list_names_every_operation_and_export_is_the_committed_file() { assert!(text(&o).contains("regenerate"), "{}", text(&o)); } -/// The release job's first check (wai-release.yml) refuses a tag whose installer installs -/// another version, after the version bump has merged; this holds the bump to it. -#[test] -fn the_quickstart_installer_installs_this_version() { - let version = env!("CARGO_PKG_VERSION"); - let install = std::fs::read_to_string(wai_dir().join("quickstart/install.sh")).unwrap(); - let line = format!("VERSION=\"${{WAI_VERSION:-{version}}}\""); - assert!( - install.lines().any(|l| l == line), - "wai/quickstart/install.sh does not install {version}, this crate's version: it needs the line {line}" - ); -} - #[test] fn ops_search_and_schema_answer_offline() { let d = scratch("search"); -- 2.54.0 (Apple Git-157)