diff --git a/plugin/bin/agentlinux-install b/plugin/bin/agentlinux-install index bf60c89..59bc4c2 100755 --- a/plugin/bin/agentlinux-install +++ b/plugin/bin/agentlinux-install @@ -9,7 +9,7 @@ # §Pattern 1, §Pitfall 6, §Example 1; 02-CONTEXT.md "Installer UX & Logging". set -euo pipefail -readonly AGENTLINUX_VERSION="0.3.0" +readonly AGENTLINUX_VERSION="0.3.2" readonly LOG_FILE="${AGENTLINUX_LOG:-/var/log/agentlinux-install.log}" # Resolve script-relative directories. Split `declare`/`assign` per SC2155 so # a cmdsub failure surfaces as a non-zero return instead of being masked by diff --git a/plugin/catalog/catalog.json b/plugin/catalog/catalog.json index 8dd7f76..ff8d322 100644 --- a/plugin/catalog/catalog.json +++ b/plugin/catalog/catalog.json @@ -1,5 +1,5 @@ { - "version": "0.3.0", + "version": "0.3.2", "agents": [ { "id": "claude-code", diff --git a/plugin/cli/package.json b/plugin/cli/package.json index d34cb04..5a9c649 100644 --- a/plugin/cli/package.json +++ b/plugin/cli/package.json @@ -1,6 +1,6 @@ { "name": "@agentlinux/cli", - "version": "0.3.0", + "version": "0.3.2", "private": true, "description": "AgentLinux registry CLI — install, upgrade, remove catalog agents", "type": "module", diff --git a/plugin/cli/src/catalog/loader.ts b/plugin/cli/src/catalog/loader.ts index 4849b03..1174f6b 100644 --- a/plugin/cli/src/catalog/loader.ts +++ b/plugin/cli/src/catalog/loader.ts @@ -11,7 +11,7 @@ import type { Catalog } from "../types.js"; import { formatErrors, getValidator } from "./schema.js"; function defaultCatalogDir(): string { - const ver = process.env.AGENTLINUX_VERSION ?? "0.3.0"; + const ver = process.env.AGENTLINUX_VERSION ?? "0.3.2"; return `/opt/agentlinux/catalog/${ver}`; } diff --git a/plugin/cli/src/catalog/schema.ts b/plugin/cli/src/catalog/schema.ts index 3b44b22..346536f 100644 --- a/plugin/cli/src/catalog/schema.ts +++ b/plugin/cli/src/catalog/schema.ts @@ -61,7 +61,7 @@ async function resolveSchemaPath(): Promise { const candidates: string[] = []; if (envDir) candidates.push(join(envDir, "schema.json")); // Production default — matches loader.ts's defaultCatalogDir(). - const ver = process.env.AGENTLINUX_VERSION ?? "0.3.0"; + const ver = process.env.AGENTLINUX_VERSION ?? "0.3.2"; candidates.push(`/opt/agentlinux/catalog/${ver}/schema.json`); // Walk up 6 levels; covers dist/ dist-test/src/ src/ and a couple spare // for dev/test layouts. diff --git a/plugin/cli/src/index.ts b/plugin/cli/src/index.ts index 3642d9b..293bc49 100644 --- a/plugin/cli/src/index.ts +++ b/plugin/cli/src/index.ts @@ -26,7 +26,7 @@ const program = new Command(); program .name("agentlinux") .description("AgentLinux registry CLI — install, upgrade, remove catalog agents") - .version("0.3.0", "-V, --version"); + .version("0.3.2", "-V, --version"); // Commander's `.enablePositionalOptions()` is REQUIRED so the install // subcommand's `--version ` override (CLI-03) can shadow the diff --git a/tests/bats/10-installer.bats b/tests/bats/10-installer.bats index cc36afb..99139e4 100644 --- a/tests/bats/10-installer.bats +++ b/tests/bats/10-installer.bats @@ -66,7 +66,7 @@ INSTALLER=/opt/agentlinux-src/plugin/bin/agentlinux-install # - readlink target: a string, byte-stable by construction. # - first line of dist/index.js: the #!/usr/bin/env node shebang — stable # regardless of any internal tsc reordering of the generated body. - local version=${AGENTLINUX_VERSION:-0.3.0} + local version=${AGENTLINUX_VERSION:-0.3.2} find \ /etc/profile.d/agentlinux.sh \ /etc/agentlinux.env \ diff --git a/tests/bats/40-registry-cli.bats b/tests/bats/40-registry-cli.bats index 34ec885..67a17ea 100644 --- a/tests/bats/40-registry-cli.bats +++ b/tests/bats/40-registry-cli.bats @@ -71,10 +71,10 @@ setup() { done } -# CLI-01: --version prints 0.3.0 across invocation modes — proves the symlink +# CLI-01: --version prints 0.3.2 across invocation modes — proves the symlink # + Node shebang + dist/index.js + package.json "type":"module" chain all fire # regardless of which shell wrapper the caller uses. -@test "CLI-01: agentlinux --version prints 0.3.0 from every invocation mode" { +@test "CLI-01: agentlinux --version prints 0.3.2 from every invocation mode" { local mode for mode in "${INVOKE_MODES[@]}"; do invoke_mode "$mode" 'agentlinux --version' @@ -82,7 +82,7 @@ setup() { skip "CLI-01 (${mode}): systemd PID 1 not running" fi assert_exit_zero "CLI-01 (${mode})" - assert_path_has "CLI-01 (${mode})" "0.3.0" + assert_path_has "CLI-01 (${mode})" "0.3.2" done } @@ -244,7 +244,7 @@ setup() { @test "CLI-05: running agentlinux as agent user succeeds without sudo" { run sudo -u agent -H bash --login -c 'agentlinux --version' assert_exit_zero "CLI-05" - assert_path_has "CLI-05" "0.3.0" + assert_path_has "CLI-05" "0.3.2" } # ---------- CLI-06: upgrade detects divergence; report-only without bulk flag ---------- @@ -396,11 +396,11 @@ setup() { # the same AGENTLINUX_CATALOG_DIR env var — schema.ts §resolveSchemaPath). # Copy the production schema verbatim so the fixture catalog validates # against the SAME rules production does. - cp /opt/agentlinux/catalog/0.3.0/schema.json "$tmp/schema.json" + cp /opt/agentlinux/catalog/0.3.2/schema.json "$tmp/schema.json" cat >"$tmp/catalog.json" <<'JSON' { - "version": "0.3.0", + "version": "0.3.2", "agents": [ { "id": "fake-42", diff --git a/tests/bats/50-agents.bats b/tests/bats/50-agents.bats index b8e95cd..cd9e90c 100644 --- a/tests/bats/50-agents.bats +++ b/tests/bats/50-agents.bats @@ -13,7 +13,7 @@ # - failures emit __fail four-line TST-04 diagnostics # - setup_file installs all three agents ONCE for the whole file; teardown_file # removes them. Serial installs keep sentinel writes unambiguous. -# - version pins are read from /opt/agentlinux/catalog/0.3.0/catalog.json via +# - version pins are read from /opt/agentlinux/catalog/0.3.2/catalog.json via # jq — NEVER hardcoded in @test bodies (so a catalog version bump does not # require editing this file). # @@ -27,7 +27,7 @@ load 'helpers/invoke_modes' load 'helpers/assertions' LOG=/var/log/agentlinux-install.log -CATALOG=/opt/agentlinux/catalog/0.3.0/catalog.json +CATALOG=/opt/agentlinux/catalog/0.3.2/catalog.json setup_file() { # 40-registry-cli.bats's INST-04 --purge @tests run earlier in filename sort diff --git a/tests/bats/51-agt02-release-gate.bats b/tests/bats/51-agt02-release-gate.bats index d16f2d3..febf558 100644 --- a/tests/bats/51-agt02-release-gate.bats +++ b/tests/bats/51-agt02-release-gate.bats @@ -22,7 +22,7 @@ load 'helpers/invoke_modes' load 'helpers/assertions' -CATALOG=/opt/agentlinux/catalog/0.3.0/catalog.json +CATALOG=/opt/agentlinux/catalog/0.3.2/catalog.json setup_file() { # 40-registry-cli.bats's INST-04 @tests run --purge at the end of that file