From 137a426d0c8a9d23eedbe70d017753d28e01adb4 Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Tue, 13 Oct 2026 19:48:18 +0000 Subject: [PATCH] Prepare 0.3.9 for the hosted run-scope lookup hardening. Bump packaged identity to 0.3.9 so the AUG-335 HTML error and run-scope fixes can ship without replacing npm 0.3.8. Leave the inspected 0.3.8 receipt in place and mark this package pending protected publish. Co-authored-by: Jeff Skafi --- CHANGELOG.md | 19 ++++- CONTRIBUTING.md | 2 +- README.md | 72 +++++++++---------- agent-resources/augmentworks/SKILL.md | 14 ++-- agent-resources/codex/AGENTS.snippet.md | 14 ++-- agent-resources/cursor/augmentworks.mdc | 14 ++-- agent-resources/guidance.md | 14 ++-- .../starters/response-quality/OWN-TARGET.md | 2 +- assets/starters/workflow/OWN-TARGET.md | 2 +- contracts/discovery-manifest.json | 2 +- docs/agent-setup.md | 30 ++++---- docs/authentication.md | 8 +-- docs/configuration.md | 8 +-- docs/customer-suites.md | 8 +-- docs/discovery-handoff.md | 21 +++--- docs/distribution-runbook.md | 8 ++- docs/examples/README.md | 2 +- docs/examples/github-actions-hosted-gate.yml | 4 +- .../examples/github-actions-hosted-source.yml | 2 +- docs/examples/github-actions-hosted.yml | 12 ++-- docs/examples/github-actions-local.yml | 2 +- .../published-registry-evidence.json | 23 +++--- docs/feature-readiness/release-state.md | 15 ++-- docs/investigation.md | 2 +- docs/qa/README.md | 7 +- docs/stabilization-rollout.md | 2 +- docs/troubleshooting.md | 22 +++--- examples/basic-chat/README.md | 6 +- examples/faq-chatbot/README.md | 22 +++--- examples/refund-agent/README.md | 10 +-- examples/response-agent/README.md | 6 +- package-lock.json | 4 +- package.json | 2 +- schemas/v1/cli-release.json | 10 +-- scripts/check-discovery-manifest.mjs | 2 +- src/release.ts | 4 +- src/version.ts | 2 +- test/discovery/manifest.test.ts | 2 +- test/docs/agent-resources.test.ts | 3 +- test/first-dollar-registry-acceptance.test.ts | 19 ++--- test/release.test.ts | 11 +-- 41 files changed, 230 insertions(+), 204 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4d3ca30..e57088f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,7 +4,23 @@ All notable changes to this project are documented here. The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and releases follow [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## [Unreleased] +## [0.3.9] - 2026-10-13 + +Immutable patch. Customers can install the hosted run-scope lookup hardening +without replacing npm `0.3.8`. + +### Fixed + +- Hosted runs no longer crash when the server returns an HTML error page + ([AUG-335](https://linear.app/augmentworks/issue/AUG-335/qa-bugcli-harden-the-run-scope-lookup-and-stop-html-error-pages-from)). + Synthetic and saved-suite v2 bindings do not request an execution scope. + A looked-up scope uses the same usability checks as the pinned path, except + the revision and hash comparison when there is no suite reference. A 404 from + that lookup on a packet that requires a scope stays `INVALID_EXECUTION_SCOPE`. + Other lookup failures propagate. A non-JSON error body keeps `http_status` + instead of `INVALID_CLOUD_RESPONSE`; a non-JSON success body still fails as + `INVALID_CLOUD_RESPONSE`. This ships in `@augmentworks/cli@0.3.9` and does + not overwrite npm `0.3.8`. ### Added @@ -538,6 +554,7 @@ This repository does not overwrite or relabel 0.3.3. - Refund-agent mock target, public documentation, schema, tests, packed-package smoke test, CI, and npm trusted-publishing workflow. +[0.3.9]: https://www.npmjs.com/package/%40augmentworks%2Fcli/v/0.3.9 [0.3.8]: https://www.npmjs.com/package/%40augmentworks%2Fcli/v/0.3.8 [0.3.7]: https://www.npmjs.com/package/%40augmentworks%2Fcli/v/0.3.7 [0.3.6]: https://www.npmjs.com/package/%40augmentworks%2Fcli/v/0.3.6 diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 66a0244..22d3871 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -29,7 +29,7 @@ command journals, or generated credential-store files. generic HTTP YAML connector; do not add framework adapters the CLI does not provide. - **Documentation correction:** keep version pins accurate. Distinguish this - package `0.3.8` from immutable prior npm artifacts `0.3.7`, `0.3.6`, `0.3.5`, `0.3.4`, and `0.3.3`. + package `0.3.9` from immutable prior npm artifacts `0.3.8`, `0.3.7`, `0.3.6`, `0.3.5`, `0.3.4`, and `0.3.3`. Historical changelog entries are not current executable quickstarts. - **Reported setup failure:** file an issue with CLI version, Node.js version, OS, redacted config, and the safe error code. Never attach `.env`, diff --git a/README.md b/README.md index e91443b..013a857 100644 --- a/README.md +++ b/README.md @@ -24,9 +24,9 @@ target SDK, and no coding assistant is used in either runtime path. | Path | What it is | Needs | Status | | --- | --- | --- | --- | -| Packaged `demo` | Loopback-only synthetic refund target, isolated fixtures, and the real local runner/scorer. Shows a policy bug, then the same packet passing after the policy is enforced. | Node.js 20+ | In this `@augmentworks/cli@0.3.8` package | -| Local `test --local` | Customer-executed scoring of a data-only packet against *your* configured target. Requires no AugmentWorks account and contacts no AugmentWorks service. | Node.js 20+, a connector YAML, and a target you are authorized to call. The bundled starter is an isolated synthetic fixture. | In this `@augmentworks/cli@0.3.8` package | -| Hosted `test` | Outbound HTTPS relay assessment with a live dashboard. Browser approval does not start a run. Pending hosted judging is never a pass. | Invited workspace, login, and an authorized isolated synthetic or staging target while hosted real-data is release-disabled | In this `@augmentworks/cli@0.3.8` package, including quoted `--estimate` / `--max-credits` | +| Packaged `demo` | Loopback-only synthetic refund target, isolated fixtures, and the real local runner/scorer. Shows a policy bug, then the same packet passing after the policy is enforced. | Node.js 20+ | In this `@augmentworks/cli@0.3.9` package | +| Local `test --local` | Customer-executed scoring of a data-only packet against *your* configured target. Requires no AugmentWorks account and contacts no AugmentWorks service. | Node.js 20+, a connector YAML, and a target you are authorized to call. The bundled starter is an isolated synthetic fixture. | In this `@augmentworks/cli@0.3.9` package | +| Hosted `test` | Outbound HTTPS relay assessment with a live dashboard. Browser approval does not start a run. Pending hosted judging is never a pass. | Invited workspace, login, and an authorized isolated synthetic or staging target while hosted real-data is release-disabled | In this `@augmentworks/cli@0.3.9` package, including quoted `--estimate` / `--max-credits` | Product site: [https://augmentworks.ai](https://augmentworks.ai). Report schemas: `schema --kind local-packet` and `schema --kind local-result`. @@ -43,7 +43,7 @@ Pricing is the `/pricing` page on the product site. The public website's adopted production-compatible pin is still `@augmentworks/cli@0.3.7`, stated in `/llms.txt` on that site. Supported limits for that pin are the quickstart and `/docs/connectors/http`. There is no separate compatibility URL. -Executable examples in this README pin `@augmentworks/cli@0.3.8`, the current +Executable examples in this README pin `@augmentworks/cli@0.3.9`, the current published package. Do not run `@latest`. @@ -97,9 +97,9 @@ AW_FAQ_POLICY=current node --env-file=.env server.mjs Terminal B, still outside the CLI checkout: ```bash -npx --yes @augmentworks/cli@0.3.8 doctor -c augmentworks.yaml -npx --yes @augmentworks/cli@0.3.8 preview-mapping -c augmentworks.yaml --operation send --fixture ./fixtures/send-response.json -npx --yes @augmentworks/cli@0.3.8 test --local -c augmentworks.yaml --packet ./packet.json +npx --yes @augmentworks/cli@0.3.9 doctor -c augmentworks.yaml +npx --yes @augmentworks/cli@0.3.9 preview-mapping -c augmentworks.yaml --operation send --fixture ./fixtures/send-response.json +npx --yes @augmentworks/cli@0.3.9 test --local -c augmentworks.yaml --packet ./packet.json ``` Restart terminal A with `AW_FAQ_POLICY=stale` and repeat the `test --local` @@ -108,23 +108,23 @@ Ctrl+C and remove `faq-clean`. Do not run `logout`. After both local results, the next hosted action is separate: a person opens the agent setup page linked above and authorizes -`npx --yes @augmentworks/cli@0.3.8 login` only if they want a hosted run. +`npx --yes @augmentworks/cli@0.3.9 login` only if they want a hosted run. This example does not start hosted `test`. ## Versions | Identity | Current value | | --- | --- | -| This package (`package.json`) | `0.3.8` | -| Executable `npx` pin (matches this tarball) | `@augmentworks/cli@0.3.8` | +| This package (`package.json`) | `0.3.9` | +| Executable `npx` pin (matches this tarball) | `@augmentworks/cli@0.3.9` | | Hosted assessment protocol | `aw-relay/0.3` | -| Immutable prior npm artifacts | `@augmentworks/cli@0.3.7` (`gitHead` `876454878a31a897aec1d722fa838c9c0ecea2aa`, integrity `sha512-O9IRRBgpCwRwQzUtIOgpa0nxRQ5UU6x28S7+G6e+egwmRP8QwvHTJgJUzmmFhyq+MhtzW8CPRHnAXhxRHNBIBA==`, published 2026-09-27T21:06:12.276Z; saved-suite customer path, no AUG-272 consistency check), `@augmentworks/cli@0.3.6` (`gitHead` `a9b927a2413305003f817c20e9c5df277512f83e`, integrity `sha512-idDM/kYfDCzDu+iaSqzZjEchyui9I8r1krUFdZ8BmVtZIye2D5WbHFpbYaNzuwjPvV7gCk1XixLwu1kuROXfwA==`, published 2026-09-10T16:26:29.450Z; includes suite-selection `capabilities`), `@augmentworks/cli@0.3.5` (`gitHead` `11570f6cf883ec6e6743e010c35134bb485234dd`, integrity `sha512-WyS9d2lSPhX26ONyxISbN9ncsDoR3JBQjkr6DLaJPl6IrksBg8zxpxawABb4iLZ4ugqlu7TA9J623nqua9dlwQ==`, published 2026-09-09T02:56:49.964Z; omits suite-selection `capabilities`), `@augmentworks/cli@0.3.4` (`gitHead` `c3da8d92bdd3daa21e9e230ffc5d110b43adaa5f`, integrity `sha512-TLeAzDglZoGL6fWLxA9rIUwJd69NFqgmlONzU4uRmhDz4S31+dfSZpaj44ahb6lUjnmuoY6sDmfPStxFzInpVQ==`, published 2026-09-08T06:38:24.847Z), and `@augmentworks/cli@0.3.3` (`gitHead` `4a08ea0d352f2515e725cb9ca946807112422436`). Do not overwrite or relabel any of them. | +| Immutable prior npm artifacts | `@augmentworks/cli@0.3.8` (`gitHead` `f36d9086bad1ac109a7670e8acc9bf14a5d15047`, integrity `sha512-T+e1VWQ8plx0jJMdkOHxocpH8SjCr9BSeRLMsCnCHAO0Z3z9bhgIf0um9x6eyWJfwPz01YOL7CZvM6sLTiSLIA==`, published 2026-10-08T01:42:45.969Z; AUG-272 report consistency check, registry document omitted `gitHead`), `@augmentworks/cli@0.3.7` (`gitHead` `876454878a31a897aec1d722fa838c9c0ecea2aa`, integrity `sha512-O9IRRBgpCwRwQzUtIOgpa0nxRQ5UU6x28S7+G6e+egwmRP8QwvHTJgJUzmmFhyq+MhtzW8CPRHnAXhxRHNBIBA==`, published 2026-09-27T21:06:12.276Z; saved-suite customer path, no AUG-272 consistency check), `@augmentworks/cli@0.3.6` (`gitHead` `a9b927a2413305003f817c20e9c5df277512f83e`, integrity `sha512-idDM/kYfDCzDu+iaSqzZjEchyui9I8r1krUFdZ8BmVtZIye2D5WbHFpbYaNzuwjPvV7gCk1XixLwu1kuROXfwA==`, published 2026-09-10T16:26:29.450Z; includes suite-selection `capabilities`), `@augmentworks/cli@0.3.5` (`gitHead` `11570f6cf883ec6e6743e010c35134bb485234dd`, integrity `sha512-WyS9d2lSPhX26ONyxISbN9ncsDoR3JBQjkr6DLaJPl6IrksBg8zxpxawABb4iLZ4ugqlu7TA9J623nqua9dlwQ==`, published 2026-09-09T02:56:49.964Z; omits suite-selection `capabilities`), `@augmentworks/cli@0.3.4` (`gitHead` `c3da8d92bdd3daa21e9e230ffc5d110b43adaa5f`, integrity `sha512-TLeAzDglZoGL6fWLxA9rIUwJd69NFqgmlONzU4uRmhDz4S31+dfSZpaj44ahb6lUjnmuoY6sDmfPStxFzInpVQ==`, published 2026-09-08T06:38:24.847Z), and `@augmentworks/cli@0.3.3` (`gitHead` `4a08ea0d352f2515e725cb9ca946807112422436`). Do not overwrite or relabel any of them. | | Hosted packet | `support-refunds@0.1.0` | | Local starter packet | `support-refunds-starter@0.1.0` | -Executable `npx` examples pin **0.3.8**, the identity of this package. This published-line package includes packaged `demo`, hosted `--assessment` / `--profile`, `usage`, `billing`, `preview-mapping`, `probe`, `catalog list` / `show`, `selection compile` with connector capabilities, `suite validate` / `preview`, `test --suite`, `investigation inspect` / `fetch` / `export-regression`, `test --investigation`, `--estimate` / `--max-credits`, `run status` / `run wait` / `run report`, `compare` / `gate` / `baseline`, `AUGMENTWORKS_API_KEY` mode, empty-directory own-target starters, native customer-suite upload translation, saved-suite v2, v2 gate receipts, durable execution IDs, cross-shard quote uniqueness, and non-destructive generated `.env` guidance. `examples/` is still omitted from the npm tarball; starters ship under `assets/`. `published_package_verified` is published-line identity, not a live registry probe of this exact tarball. Independent inspection of `@augmentworks/cli@0.3.7` (`gitHead` `876454878a31a897aec1d722fa838c9c0ecea2aa`, published 2026-09-27T21:06:12.276Z, tarball SHA-256 `37b448b4db2c195b5c361daab10604d57476fa4d9e441916f7bfe2054f81b313`) is recorded in `docs/feature-readiness/published-registry-evidence.json`. The immutable 0.3.5 tarball omits suite-selection `capabilities` (AUG-82); independently inspected 0.3.6 includes that fix and does not include saved-suite `/2`. Website adoption of this exact 0.3.7 artifact is AUG-250. Do not overwrite or relabel npm 0.3.7, 0.3.6, 0.3.5, 0.3.4, or 0.3.3. `npx --yes` only skips the npm prompt; it is not a hosted spending ceiling. Do not run `npx @augmentworks/cli@latest`. +Executable `npx` examples pin **0.3.9**, the identity of this package. This published-line package includes packaged `demo`, hosted `--assessment` / `--profile`, `usage`, `billing`, `preview-mapping`, `probe`, `catalog list` / `show`, `selection compile` with connector capabilities, `suite validate` / `preview`, `test --suite`, `investigation inspect` / `fetch` / `export-regression`, `test --investigation`, `--estimate` / `--max-credits`, `run status` / `run wait` / `run report`, `compare` / `gate` / `baseline`, `AUGMENTWORKS_API_KEY` mode, empty-directory own-target starters, native customer-suite upload translation, saved-suite v2, v2 gate receipts, durable execution IDs, cross-shard quote uniqueness, and non-destructive generated `.env` guidance. `examples/` is still omitted from the npm tarball; starters ship under `assets/`. `published_package_verified` is published-line identity, not a live registry probe of this exact tarball. Independent inspection of `@augmentworks/cli@0.3.7` (`gitHead` `876454878a31a897aec1d722fa838c9c0ecea2aa`, published 2026-09-27T21:06:12.276Z, tarball SHA-256 `37b448b4db2c195b5c361daab10604d57476fa4d9e441916f7bfe2054f81b313`) is recorded in `docs/feature-readiness/published-registry-evidence.json`. The immutable 0.3.5 tarball omits suite-selection `capabilities` (AUG-82); independently inspected 0.3.6 includes that fix and does not include saved-suite `/2`. Website adoption of this exact 0.3.7 artifact is AUG-250. Do not overwrite or relabel npm 0.3.8, 0.3.7, 0.3.6, 0.3.5, 0.3.4, or 0.3.3. `npx --yes` only skips the npm prompt; it is not a hosted spending ceiling. Do not run `npx @augmentworks/cli@latest`. -## Packaged demo (this 0.3.8 package) +## Packaged demo (this 0.3.9 package) Prerequisites: Node.js 20 or newer. No API key, login, second terminal, Docker, database, or model. @@ -138,7 +138,7 @@ node dist/index.js demo Published npm: ```bash -npx --yes @augmentworks/cli@0.3.8 demo +npx --yes @augmentworks/cli@0.3.9 demo ``` Machine-readable summary (not an `AW-LOCAL-RESULT-1` report): @@ -178,7 +178,7 @@ authorized, isolated synthetic or staging target while hosted real-data is release-disabled. Hosted access is not a public self-serve signup; do not assume a trial entitlement. -This `@augmentworks/cli@0.3.8` package can log in, run `--assessment`, and +This `@augmentworks/cli@0.3.9` package can log in, run `--assessment`, and `init` writes `augmentworks.assessment.yaml`. From a clone after `npm ci && npm run build`: @@ -197,16 +197,16 @@ you pass `--force`. `--force` still never replaces an existing `.env`. `npm --yes` only skips the npm installer prompt; it is not CLI spending consent. ```bash -npx --yes @augmentworks/cli@0.3.8 login +npx --yes @augmentworks/cli@0.3.9 login -npx --yes @augmentworks/cli@0.3.8 init --agent -# This 0.3.8 package writes augmentworks.assessment.yaml and starter files. +npx --yes @augmentworks/cli@0.3.9 init --agent +# This 0.3.9 package writes augmentworks.assessment.yaml and starter files. # Edit .env for the authorized target. The packaged starter is an isolated synthetic fixture. -npx --yes @augmentworks/cli@0.3.8 doctor \ +npx --yes @augmentworks/cli@0.3.9 doctor \ -c augmentworks.yaml -npx --yes @augmentworks/cli@0.3.8 test \ +npx --yes @augmentworks/cli@0.3.9 test \ -c augmentworks.yaml \ --assessment ./augmentworks.assessment.yaml \ --profile quick \ @@ -228,7 +228,7 @@ original run; do not delete journals or blindly rerun the test command. For an SSH or otherwise headless environment, use device authorization: ```bash -npx --yes @augmentworks/cli@0.3.8 login --device +npx --yes @augmentworks/cli@0.3.9 login --device ``` Interactive login can replace the one stored credential for this API origin @@ -483,7 +483,7 @@ Actions recipe is `docs/examples/github-actions-hosted.yml` (scoped `--max-credits`, `run wait` on the original ID, then `gate`). A shorter gate-only snippet remains in `docs/examples/github-actions-hosted-gate.yml`. -Copy-pastable noninteractive CI (this 0.3.8 package after `npm ci && npm run build`; +Copy-pastable noninteractive CI (this 0.3.9 package after `npm ci && npm run build`; no browser; `npx --yes` is not a spending ceiling). Capture the run id, wait on that exact run if grading is pending, and recover an interrupted create before considering a new admission: @@ -542,7 +542,7 @@ No AugmentWorks account, login, credit, relay, or dashboard is required. Point the published CLI at a target you are authorized to call, or clone this repository for the fictional refund-agent example server. The bundled starter packet is synthetic. `examples/` is not in the npm tarball. The local CLI -itself is this `0.3.8` package. This path is not the packaged `demo` command. +itself is this `0.3.9` package. This path is not the packaged `demo` command. ```bash git clone https://github.com/augmentworks-org/augmentworks-cli.git @@ -558,10 +558,10 @@ node --env-file=.env server.mjs In another terminal, from the example directory, run the published local CLI: ```bash -npx --yes @augmentworks/cli@0.3.8 doctor \ +npx --yes @augmentworks/cli@0.3.9 doctor \ -c augmentworks.yaml -npx --yes @augmentworks/cli@0.3.8 test \ +npx --yes @augmentworks/cli@0.3.9 test \ --local \ -c augmentworks.yaml \ --packet support-refunds-starter@0.1.0 \ @@ -588,7 +588,7 @@ Windows because POSIX file modes cannot establish a safe Windows ACL. Do not put an AugmentWorks token on the command line. Long-lived project-token issuance is not part of the interactive connector-auth release, so do not substitute its one-hour interactive access token for an unattended CI -credential. This `0.3.8` package accepts `AUGMENTWORKS_API_KEY` for noninteractive +credential. This `0.3.9` package accepts `AUGMENTWORKS_API_KEY` for noninteractive workspace keys issued at https://augmentworks.ai/portal/settings/api-keys. That mode never loads a keychain, refreshes, or persists credentials. Differing nonempty `AUGMENTWORKS_API_KEY` and `AUGMENTWORKS_TOKEN` values fail closed @@ -758,8 +758,8 @@ before any target call. Print the packet and result schemas with: ```bash -npx --yes @augmentworks/cli@0.3.8 schema --kind local-packet -npx --yes @augmentworks/cli@0.3.8 schema --kind local-result +npx --yes @augmentworks/cli@0.3.9 schema --kind local-packet +npx --yes @augmentworks/cli@0.3.9 schema --kind local-result ``` ### Local reports and trust @@ -781,22 +781,22 @@ same final local result on stdout; the three files are still generated. ## Hosted assessment files -`--assessment` is in this `@augmentworks/cli@0.3.8` package. `init` writes +`--assessment` is in this `@augmentworks/cli@0.3.9` package. `init` writes `augmentworks.yaml`, `augmentworks.assessment.yaml`, and referenced starter files before you run an assessment. See `examples/response-agent/` for the FAQ fixture used as the packaged `response-quality` starter. ```bash -npx --yes @augmentworks/cli@0.3.8 doctor \ +npx --yes @augmentworks/cli@0.3.9 doctor \ --assessment ./augmentworks.assessment.yaml \ --profile quick -npx --yes @augmentworks/cli@0.3.8 test \ +npx --yes @augmentworks/cli@0.3.9 test \ --assessment ./augmentworks.assessment.yaml \ --profile quick \ --open -npx --yes @augmentworks/cli@0.3.8 test \ +npx --yes @augmentworks/cli@0.3.9 test \ --assessment ./augmentworks.assessment.yaml \ --profile full \ --open @@ -946,13 +946,13 @@ After the packaged demo, configure the generic HTTP connector. While hosted real-data is release-disabled, use an authorized, isolated synthetic or staging target: -1. `npx --yes @augmentworks/cli@0.3.8 init --agent` +1. `npx --yes @augmentworks/cli@0.3.9 init --agent` 2. `node dist/index.js init` or `node dist/index.js init --starter workflow` from a clone after `npm ci && npm run build`. Map only the hooks required by that pattern. 3. Put secret *names* in YAML and values only in local `.env`. -4. `npx --yes @augmentworks/cli@0.3.8 doctor -c augmentworks.yaml` +4. `npx --yes @augmentworks/cli@0.3.9 doctor -c augmentworks.yaml` 5. `node dist/index.js preview-mapping -c augmentworks.yaml --operation send --fixture ./fixtures/send-response.json` 6. `node dist/index.js probe -c augmentworks.yaml` then `node dist/index.js probe -c augmentworks.yaml --yes` -7. `npx --yes @augmentworks/cli@0.3.8 test --local -c augmentworks.yaml --packet support-refunds-starter@0.1.0` +7. `npx --yes @augmentworks/cli@0.3.9 test --local -c augmentworks.yaml --packet support-refunds-starter@0.1.0` Do not fabricate an OpenAI, LangServe, MCP, or framework adapter the CLI does not provide. Hosted access remains an invited workspace at @@ -972,7 +972,7 @@ define pricing or public signup. The website price page is `/pricing` on the pro or blindly rerun the test. There is no `--rerun` flag. - Pointing the CLI directly at a model provider tests the model endpoint, not the customer's policies, tools, database, or application behavior. -- This `@augmentworks/cli@0.3.8` package includes `--assessment`, `demo`, and +- This `@augmentworks/cli@0.3.9` package includes `--assessment`, `demo`, and `init` starter generation. Packaged `usage`, `billing`, `preview-mapping`, `probe`, `test --estimate`, `--max-credits`, `run status`/`run wait`/`run report`, `compare`/`gate`/`baseline`, `AUGMENTWORKS_API_KEY` mode, owned-suite commands, investigation inspect/fetch, and own-target starters are in this package. diff --git a/agent-resources/augmentworks/SKILL.md b/agent-resources/augmentworks/SKILL.md index ed7ce60..32353e6 100644 --- a/agent-resources/augmentworks/SKILL.md +++ b/agent-resources/augmentworks/SKILL.md @@ -19,13 +19,13 @@ AugmentWorks during unrelated coding. packet exits `0` for `AW_FAQ_POLICY=current` and `10` for `AW_FAQ_POLICY=stale`. It is not hosted LLM judging and it does not prove customer application state. The refund fail-then-pass demo remains - `npx --yes @augmentworks/cli@0.3.8 demo`, or `node dist/index.js demo` from + `npx --yes @augmentworks/cli@0.3.9 demo`, or `node dist/index.js demo` from a clone after `npm ci && npm run build`. Otherwise start with non-networked `doctor`. Preview mappings with `node dist/index.js preview-mapping` before an assessment. Explicitly probe a safe synthetic target with `node dist/index.js probe` (plan) then `node dist/index.js probe --yes`. Doctor and init never probe. This - `@augmentworks/cli@0.3.8` package includes `demo`, hosted `--assessment`, + `@augmentworks/cli@0.3.9` package includes `demo`, hosted `--assessment`, `usage`, `billing`, `preview-mapping`, `probe`, `test --estimate`, `--max-credits`, `run status`/`run wait`/`run report`, `AUGMENTWORKS_API_KEY` mode, and init starter generation. @@ -34,12 +34,12 @@ AugmentWorks during unrelated coding. ## Commands (version-pinned) -This 0.3.8 package: +This 0.3.9 package: -- `npx --yes @augmentworks/cli@0.3.8 init --agent` -- `npx --yes @augmentworks/cli@0.3.8 doctor -c augmentworks.yaml` -- `npx --yes @augmentworks/cli@0.3.8 test --local -c augmentworks.yaml --packet support-refunds-starter@0.1.0` -- `npx --yes @augmentworks/cli@0.3.8 schema --kind local-packet` +- `npx --yes @augmentworks/cli@0.3.9 init --agent` +- `npx --yes @augmentworks/cli@0.3.9 doctor -c augmentworks.yaml` +- `npx --yes @augmentworks/cli@0.3.9 test --local -c augmentworks.yaml --packet support-refunds-starter@0.1.0` +- `npx --yes @augmentworks/cli@0.3.9 schema --kind local-packet` From a clone after `npm ci && npm run build`: diff --git a/agent-resources/codex/AGENTS.snippet.md b/agent-resources/codex/AGENTS.snippet.md index d7ae43d..41e1851 100644 --- a/agent-resources/codex/AGENTS.snippet.md +++ b/agent-resources/codex/AGENTS.snippet.md @@ -19,13 +19,13 @@ AugmentWorks during unrelated coding. packet exits `0` for `AW_FAQ_POLICY=current` and `10` for `AW_FAQ_POLICY=stale`. It is not hosted LLM judging and it does not prove customer application state. The refund fail-then-pass demo remains - `npx --yes @augmentworks/cli@0.3.8 demo`, or `node dist/index.js demo` from + `npx --yes @augmentworks/cli@0.3.9 demo`, or `node dist/index.js demo` from a clone after `npm ci && npm run build`. Otherwise start with non-networked `doctor`. Preview mappings with `node dist/index.js preview-mapping` before an assessment. Explicitly probe a safe synthetic target with `node dist/index.js probe` (plan) then `node dist/index.js probe --yes`. Doctor and init never probe. This - `@augmentworks/cli@0.3.8` package includes `demo`, hosted `--assessment`, + `@augmentworks/cli@0.3.9` package includes `demo`, hosted `--assessment`, `usage`, `billing`, `preview-mapping`, `probe`, `test --estimate`, `--max-credits`, `run status`/`run wait`/`run report`, `AUGMENTWORKS_API_KEY` mode, and init starter generation. @@ -34,12 +34,12 @@ AugmentWorks during unrelated coding. ## Commands (version-pinned) -This 0.3.8 package: +This 0.3.9 package: -- `npx --yes @augmentworks/cli@0.3.8 init --agent` -- `npx --yes @augmentworks/cli@0.3.8 doctor -c augmentworks.yaml` -- `npx --yes @augmentworks/cli@0.3.8 test --local -c augmentworks.yaml --packet support-refunds-starter@0.1.0` -- `npx --yes @augmentworks/cli@0.3.8 schema --kind local-packet` +- `npx --yes @augmentworks/cli@0.3.9 init --agent` +- `npx --yes @augmentworks/cli@0.3.9 doctor -c augmentworks.yaml` +- `npx --yes @augmentworks/cli@0.3.9 test --local -c augmentworks.yaml --packet support-refunds-starter@0.1.0` +- `npx --yes @augmentworks/cli@0.3.9 schema --kind local-packet` From a clone after `npm ci && npm run build`: diff --git a/agent-resources/cursor/augmentworks.mdc b/agent-resources/cursor/augmentworks.mdc index 4d72058..eeaf5d9 100644 --- a/agent-resources/cursor/augmentworks.mdc +++ b/agent-resources/cursor/augmentworks.mdc @@ -19,13 +19,13 @@ AugmentWorks during unrelated coding. packet exits `0` for `AW_FAQ_POLICY=current` and `10` for `AW_FAQ_POLICY=stale`. It is not hosted LLM judging and it does not prove customer application state. The refund fail-then-pass demo remains - `npx --yes @augmentworks/cli@0.3.8 demo`, or `node dist/index.js demo` from + `npx --yes @augmentworks/cli@0.3.9 demo`, or `node dist/index.js demo` from a clone after `npm ci && npm run build`. Otherwise start with non-networked `doctor`. Preview mappings with `node dist/index.js preview-mapping` before an assessment. Explicitly probe a safe synthetic target with `node dist/index.js probe` (plan) then `node dist/index.js probe --yes`. Doctor and init never probe. This - `@augmentworks/cli@0.3.8` package includes `demo`, hosted `--assessment`, + `@augmentworks/cli@0.3.9` package includes `demo`, hosted `--assessment`, `usage`, `billing`, `preview-mapping`, `probe`, `test --estimate`, `--max-credits`, `run status`/`run wait`/`run report`, `AUGMENTWORKS_API_KEY` mode, and init starter generation. @@ -34,12 +34,12 @@ AugmentWorks during unrelated coding. ## Commands (version-pinned) -This 0.3.8 package: +This 0.3.9 package: -- `npx --yes @augmentworks/cli@0.3.8 init --agent` -- `npx --yes @augmentworks/cli@0.3.8 doctor -c augmentworks.yaml` -- `npx --yes @augmentworks/cli@0.3.8 test --local -c augmentworks.yaml --packet support-refunds-starter@0.1.0` -- `npx --yes @augmentworks/cli@0.3.8 schema --kind local-packet` +- `npx --yes @augmentworks/cli@0.3.9 init --agent` +- `npx --yes @augmentworks/cli@0.3.9 doctor -c augmentworks.yaml` +- `npx --yes @augmentworks/cli@0.3.9 test --local -c augmentworks.yaml --packet support-refunds-starter@0.1.0` +- `npx --yes @augmentworks/cli@0.3.9 schema --kind local-packet` From a clone after `npm ci && npm run build`: diff --git a/agent-resources/guidance.md b/agent-resources/guidance.md index 578cf26..17b8202 100644 --- a/agent-resources/guidance.md +++ b/agent-resources/guidance.md @@ -14,13 +14,13 @@ AugmentWorks during unrelated coding. packet exits `0` for `AW_FAQ_POLICY=current` and `10` for `AW_FAQ_POLICY=stale`. It is not hosted LLM judging and it does not prove customer application state. The refund fail-then-pass demo remains - `npx --yes @augmentworks/cli@0.3.8 demo`, or `node dist/index.js demo` from + `npx --yes @augmentworks/cli@0.3.9 demo`, or `node dist/index.js demo` from a clone after `npm ci && npm run build`. Otherwise start with non-networked `doctor`. Preview mappings with `node dist/index.js preview-mapping` before an assessment. Explicitly probe a safe synthetic target with `node dist/index.js probe` (plan) then `node dist/index.js probe --yes`. Doctor and init never probe. This - `@augmentworks/cli@0.3.8` package includes `demo`, hosted `--assessment`, + `@augmentworks/cli@0.3.9` package includes `demo`, hosted `--assessment`, `usage`, `billing`, `preview-mapping`, `probe`, `test --estimate`, `--max-credits`, `run status`/`run wait`/`run report`, `AUGMENTWORKS_API_KEY` mode, and init starter generation. @@ -29,12 +29,12 @@ AugmentWorks during unrelated coding. ## Commands (version-pinned) -This 0.3.8 package: +This 0.3.9 package: -- `npx --yes @augmentworks/cli@0.3.8 init --agent` -- `npx --yes @augmentworks/cli@0.3.8 doctor -c augmentworks.yaml` -- `npx --yes @augmentworks/cli@0.3.8 test --local -c augmentworks.yaml --packet support-refunds-starter@0.1.0` -- `npx --yes @augmentworks/cli@0.3.8 schema --kind local-packet` +- `npx --yes @augmentworks/cli@0.3.9 init --agent` +- `npx --yes @augmentworks/cli@0.3.9 doctor -c augmentworks.yaml` +- `npx --yes @augmentworks/cli@0.3.9 test --local -c augmentworks.yaml --packet support-refunds-starter@0.1.0` +- `npx --yes @augmentworks/cli@0.3.9 schema --kind local-packet` From a clone after `npm ci && npm run build`: diff --git a/assets/starters/response-quality/OWN-TARGET.md b/assets/starters/response-quality/OWN-TARGET.md index cb25d44..c8bcf80 100644 --- a/assets/starters/response-quality/OWN-TARGET.md +++ b/assets/starters/response-quality/OWN-TARGET.md @@ -10,7 +10,7 @@ Streaming, WebSocket, history-array multi-turn, and connector marketplaces are not supported. The only JSON HTTP patterns in this CLI are response-only chat and the stateful `workflow` starter. -This 0.3.8 package generates these files and includes `probe`. Do not pin +This 0.3.9 package generates these files and includes `probe`. Do not pin immutable npm `0.3.3`. Invoke the CLI as `{{AW_CLI}}` below. ## Files diff --git a/assets/starters/workflow/OWN-TARGET.md b/assets/starters/workflow/OWN-TARGET.md index 36398cf..65e3ff5 100644 --- a/assets/starters/workflow/OWN-TARGET.md +++ b/assets/starters/workflow/OWN-TARGET.md @@ -9,7 +9,7 @@ Response-only JSON chat is the other supported pattern (`--starter response-quality`). Streaming, WebSocket, history-array multi-turn, and connector marketplaces are not supported. -This 0.3.8 package generates these files and includes `probe`. Do not pin +This 0.3.9 package generates these files and includes `probe`. Do not pin immutable npm `0.3.3`. Invoke the CLI as `{{AW_CLI}}` below. ## Files diff --git a/contracts/discovery-manifest.json b/contracts/discovery-manifest.json index 2b552da..1251955 100644 --- a/contracts/discovery-manifest.json +++ b/contracts/discovery-manifest.json @@ -2,7 +2,7 @@ "schemaVersion": 1, "package": { "name": "@augmentworks/cli", - "version": "0.3.8", + "version": "0.3.9", "releaseStatus": "development" }, "runtime": { diff --git a/docs/agent-setup.md b/docs/agent-setup.md index 5eb628d..9f8d3c7 100644 --- a/docs/agent-setup.md +++ b/docs/agent-setup.md @@ -22,13 +22,13 @@ hosted LLM judging and it does not observe customer application state. That local pair is the validation step. The next hosted action is separate and human-controlled. Open the coding-agent page linked from this guide (`/docs/agent-setup` on the product site), then run -`npx --yes @augmentworks/cli@0.3.8 login` only after the user approves it. +`npx --yes @augmentworks/cli@0.3.9 login` only after the user approves it. Do not start hosted `test` from the FAQ example. Pricing is `/pricing` on the product site. The website's adopted production-compatible pin remains `@augmentworks/cli@0.3.7` (`/llms.txt` on that site, checked 2026-10-08). Supported connector limits for that pin are `/docs/quickstart` and `/docs/connectors/http`. There is no separate compatibility URL. Executable -commands in this repository pin `@augmentworks/cli@0.3.8`. Do not run `@latest`. +commands in this repository pin `@augmentworks/cli@0.3.9`. Do not run `@latest`. Hosted real-data quote and admission stay release-disabled. @@ -36,8 +36,8 @@ Hosted real-data quote and admission stay release-disabled. | Item | Value | | --- | --- | -| This package | `@augmentworks/cli@0.3.8` (published-line identity; executable npx pin matches this tarball) | -| Immutable prior npm | `@augmentworks/cli@0.3.7`, `@augmentworks/cli@0.3.6` (capabilities, no saved-suite `/2`), `@augmentworks/cli@0.3.5` (omits suite-selection capabilities), `@augmentworks/cli@0.3.4`, and `@augmentworks/cli@0.3.3` | +| This package | `@augmentworks/cli@0.3.9` (published-line identity; executable npx pin matches this tarball) | +| Immutable prior npm | `@augmentworks/cli@0.3.8` (AUG-272 consistency check; registry omitted gitHead), `@augmentworks/cli@0.3.7`, `@augmentworks/cli@0.3.6` (capabilities, no saved-suite `/2`), `@augmentworks/cli@0.3.5` (omits suite-selection capabilities), `@augmentworks/cli@0.3.4`, and `@augmentworks/cli@0.3.3` | | Node.js | 20 or newer | | Local packet | `support-refunds-starter@0.1.0` | | Hosted packet | `support-refunds@0.1.0` | @@ -73,14 +73,14 @@ Check existing tests, applicable instructions, actual target capabilities, and the desired test scope before changing code. If I asked for a first look and there is no application target yet, prefer the -packaged synthetic demo (`npx --yes @augmentworks/cli@0.3.8 demo` or +packaged synthetic demo (`npx --yes @augmentworks/cli@0.3.9 demo` or `node dist/index.js demo` after `npm ci && npm run build`) or non-networked doctor. -This `@augmentworks/cli@0.3.8` package includes demo, `--assessment`, and +This `@augmentworks/cli@0.3.9` package includes demo, `--assessment`, and `init` starter generation. -Use the pinned @augmentworks/cli@0.3.8 package for application integration: +Use the pinned @augmentworks/cli@0.3.9 package for application integration: -npx --yes @augmentworks/cli@0.3.8 init --agent +npx --yes @augmentworks/cli@0.3.9 init --agent Then configure the generic YAML HTTP connector. Do not require a Python adapter or AugmentWorks target SDK; implement only missing synthetic hooks in this @@ -100,7 +100,7 @@ diff. Use environment-variable names and .env.example placeholders. Run: -npx --yes @augmentworks/cli@0.3.8 doctor -c augmentworks.yaml +npx --yes @augmentworks/cli@0.3.9 doctor -c augmentworks.yaml Show me the resulting diff, and explain the telemetry allowlist, idempotency, cleanup, and server-side fixture TTLs. Preserve already granted user @@ -124,7 +124,7 @@ insert credentials. Otherwise start with `doctor --offline`. 3. Inspect application routes or an OpenAPI description inside that root. 4. Identify the application endpoint—not merely its model-provider endpoint. -5. Run `npx --yes @augmentworks/cli@0.3.8 init --agent` only when those files +5. Run `npx --yes @augmentworks/cli@0.3.9 init --agent` only when those files are missing. Preserve collision behavior: existing files are not overwritten without `--force`. `--agent` is an explicit opt-in that writes `augmentworks.agent.md` only. @@ -151,7 +151,7 @@ insert credentials. 12. If authoring a local packet, create strict JSON using `aw-packet/0.1`; do not add JavaScript, modules, shell instructions, remote URLs, or secret values. Validate its contract with - `npx --yes @augmentworks/cli@0.3.8 schema --kind local-packet`. + `npx --yes @augmentworks/cli@0.3.9 schema --kind local-packet`. 13. Show the diff, explain which target operations will run, and stop for human approval before `test` unless that same scoped assessment was already authorized. @@ -210,7 +210,7 @@ edit them independently. require an AugmentWorks account: ```bash - npx --yes @augmentworks/cli@0.3.8 test \ + npx --yes @augmentworks/cli@0.3.9 test \ --local \ -c augmentworks.yaml \ --packet support-refunds-starter@0.1.0 \ @@ -229,8 +229,8 @@ edit them independently. follows the workspace's remaining baseline/remediation allowance: ```bash - npx --yes @augmentworks/cli@0.3.8 login - npx --yes @augmentworks/cli@0.3.8 test \ + npx --yes @augmentworks/cli@0.3.9 login + npx --yes @augmentworks/cli@0.3.9 test \ -c augmentworks.yaml \ --packet support-refunds@0.1.0 \ --open @@ -251,5 +251,5 @@ run is executed by the same version-pinned, deterministic CLI. allowlisted observation keys. - `LOCAL_OUTPUT_EXISTS`: choose a fresh `--output-dir` leaf. - Exit `11`: hosted judging is pending; this is not a pass. -- Packaged demo not found: assets did not install. Reinstall `@augmentworks/cli@0.3.8` +- Packaged demo not found: assets did not install. Reinstall `@augmentworks/cli@0.3.9` or run `test --local` with your target. diff --git a/docs/authentication.md b/docs/authentication.md index 2a4c7fe..24a2aec 100644 --- a/docs/authentication.md +++ b/docs/authentication.md @@ -13,7 +13,7 @@ resolves only the target credentials named by the selected configuration. ## Interactive login ```bash -npx --yes @augmentworks/cli@0.3.8 login +npx --yes @augmentworks/cli@0.3.9 login ``` The default flow uses browser Authorization Code with PKCE and a temporary @@ -25,7 +25,7 @@ single-use and short-lived, and the callback listener closes after completion. For SSH and other headless environments: ```bash -npx --yes @augmentworks/cli@0.3.8 login --device +npx --yes @augmentworks/cli@0.3.9 login --device ``` The CLI displays a short user code and verification URL. Entering the code in a @@ -152,8 +152,8 @@ before removal; unknown identity remains fail-closed. Use: ```bash -npx --yes @augmentworks/cli@0.3.8 whoami -npx --yes @augmentworks/cli@0.3.8 logout +npx --yes @augmentworks/cli@0.3.9 whoami +npx --yes @augmentworks/cli@0.3.9 logout ``` This package also provides `usage` and `billing`, which use the same connector diff --git a/docs/configuration.md b/docs/configuration.md index 69ba2b0..4ce4018 100644 --- a/docs/configuration.md +++ b/docs/configuration.md @@ -277,7 +277,7 @@ test environment matches production. Use offline validation while editing: ```bash -npx --yes @augmentworks/cli@0.3.8 doctor \ +npx --yes @augmentworks/cli@0.3.9 doctor \ -c augmentworks.yaml ``` @@ -393,9 +393,9 @@ The canonical machine-readable definition is Print any bundled schema with: ```bash -npx --yes @augmentworks/cli@0.3.8 schema --kind config -npx --yes @augmentworks/cli@0.3.8 schema --kind local-packet -npx --yes @augmentworks/cli@0.3.8 schema --kind local-result +npx --yes @augmentworks/cli@0.3.9 schema --kind config +npx --yes @augmentworks/cli@0.3.9 schema --kind local-packet +npx --yes @augmentworks/cli@0.3.9 schema --kind local-result ``` Local assessment packets are separate strict JSON documents with diff --git a/docs/customer-suites.md b/docs/customer-suites.md index ca1ba83..1e9d2e4 100644 --- a/docs/customer-suites.md +++ b/docs/customer-suites.md @@ -30,12 +30,12 @@ document are fictional. This text is not legal approval. Do not set `synthetic_only: true` on a live or authorized document, grant `suite:write` to a machine key, or test a third party without authority. -The command exists in this `0.3.8` package. Native hosted +The command exists in this `0.3.9` package. Native hosted `aw-customer-suite/1` upload translation shipped in immutable npm `0.3.7` and is not in immutable registry `0.3.6`. From this clone after `npm ci` and -`npm run build`, use `node dist/index.js`. Pin `@augmentworks/cli@0.3.8` -after the protected `v0.3.8` publish. Do not assume registry `0.3.6` -contains the upload translation, and do not overwrite `0.3.7`. +`npm run build`, use `node dist/index.js`. Pin `@augmentworks/cli@0.3.9` +after the protected `v0.3.9` publish. Do not assume registry `0.3.6` +contains the upload translation, and do not overwrite `0.3.8` or `0.3.7`. ## Commands diff --git a/docs/discovery-handoff.md b/docs/discovery-handoff.md index cc08e18..7ae457f 100644 --- a/docs/discovery-handoff.md +++ b/docs/discovery-handoff.md @@ -10,13 +10,13 @@ constants. Packaged identity versus post-publication inspection is defined in | Field | Value | | --- | --- | -| Package | `@augmentworks/cli@0.3.8` | +| Package | `@augmentworks/cli@0.3.9` | | `releaseStatus` | `development` (this git checkout; not a live registry probe) | | `capabilities.localDemo` | `true` | | Demo invocation | `node dist/index.js demo` | | Provenance | `sourceCommit: null`, `verifiedAt: null` | -| Last independently inspected npm | `@augmentworks/cli@0.3.8` (tag `v0.3.8` commit `f36d9086bad1ac109a7670e8acc9bf14a5d15047`, published 2026-10-08T01:42:45.969Z, integrity `sha512-T+e1VWQ8plx0jJMdkOHxocpH8SjCr9BSeRLMsCnCHAO0Z3z9bhgIf0um9x6eyWJfwPz01YOL7CZvM6sLTiSLIA==`, tarball SHA-256 `2849ceb6c3c9b18d02a4cb2aa7f0ad470ec74cb7846a8eadf91d83147965f36e`, 74 files). The registry document omitted `gitHead`. `thisPackageIdentity` is `independently-inspected`. The published 0.3.8 tarball still embeds the prior `LAST_VERIFIED` 0.3.7 snapshot; this inspection commit is not inside that artifact. | -| Immutable prior npm | `@augmentworks/cli@0.3.7`, `@augmentworks/cli@0.3.6`, `@augmentworks/cli@0.3.5`, `@augmentworks/cli@0.3.4`, and `@augmentworks/cli@0.3.3` (gitHead `4a08ea0d352f2515e725cb9ca946807112422436`). Do not overwrite or relabel. | +| Last independently inspected npm | `@augmentworks/cli@0.3.8` (tag `v0.3.8` commit `f36d9086bad1ac109a7670e8acc9bf14a5d15047`, published 2026-10-08T01:42:45.969Z, integrity `sha512-T+e1VWQ8plx0jJMdkOHxocpH8SjCr9BSeRLMsCnCHAO0Z3z9bhgIf0um9x6eyWJfwPz01YOL7CZvM6sLTiSLIA==`, tarball SHA-256 `2849ceb6c3c9b18d02a4cb2aa7f0ad470ec74cb7846a8eadf91d83147965f36e`, 74 files). The registry document omitted `gitHead`. That artifact stays `lastIndependentlyInspected`. `thisPackageIdentity` for this 0.3.9 checkout is `pending-protected-publish`. The published 0.3.8 tarball still embeds the prior `LAST_VERIFIED` 0.3.7 snapshot; that inspection commit is not inside that artifact. | +| Immutable prior npm | `@augmentworks/cli@0.3.8`, `@augmentworks/cli@0.3.7`, `@augmentworks/cli@0.3.6`, `@augmentworks/cli@0.3.5`, `@augmentworks/cli@0.3.4`, and `@augmentworks/cli@0.3.3` (gitHead `4a08ea0d352f2515e725cb9ca946807112422436`). Do not overwrite or relabel. | The committed discovery manifest stays `development` for a source checkout. A locally packed tarball may carry this development-status manifest. That is QA, @@ -31,9 +31,9 @@ node scripts/verify-published-discovery.mjs --version 0.3.7 ``` `verify-published-discovery` emits metadata and does not replace executable -inspection. Independently inspected 0.3.8 registry evidence is -`lastIndependentlyInspected` and `thisPackageIdentity` -(`independently-inspected`) in +inspection. Independently inspected 0.3.8 registry evidence stays +`lastIndependentlyInspected`. `thisPackageIdentity` for this checkout is +`0.3.9` / `pending-protected-publish` in `docs/feature-readiness/published-registry-evidence.json`. Independently inspected 0.3.6 remains historical (capabilities, no saved-suite `/2`). Independently inspected 0.3.5 remains historical (it omits suite-selection @@ -57,10 +57,10 @@ node dist/index.js demo --json `0` only when the faulty run fails as expected, the corrected run passes, and cleanup succeeds. -This package's executable npx pin is `0.3.8`: +This package's executable npx pin is `0.3.9`: ```bash -npx --yes @augmentworks/cli@0.3.8 demo +npx --yes @augmentworks/cli@0.3.9 demo ``` ## Website adoption @@ -91,8 +91,9 @@ npm test ## Changed resources in this source revision -- `lastIndependentlyInspected` and `thisPackageIdentity` record independently inspected `@augmentworks/cli@0.3.8` -- Immutable 0.3.7, 0.3.6, 0.3.5, 0.3.4, and 0.3.3 records stay unchanged +- `lastIndependentlyInspected` remains independently inspected `@augmentworks/cli@0.3.8` +- `thisPackageIdentity` is `@augmentworks/cli@0.3.9` with status `pending-protected-publish` +- Immutable 0.3.8, 0.3.7, 0.3.6, 0.3.5, 0.3.4, and 0.3.3 records stay unchanged - Source discovery stays `development` ## Published 0.3.7 receipt diff --git a/docs/distribution-runbook.md b/docs/distribution-runbook.md index df24127..6b4fc28 100644 --- a/docs/distribution-runbook.md +++ b/docs/distribution-runbook.md @@ -33,9 +33,11 @@ GitHub tag `v0.3.8` (`f36d9086bad1ac109a7670e8acc9bf14a5d15047`) and independently inspected. The trusted workflow's OIDC publish returned 404 after the repository moved to `augmentworks-org`; the same tag bytes were published by the package owner and have no SLSA provenance attestation. Do not -republish 0.3.8. Do not overwrite or relabel `@augmentworks/cli@0.3.7`, -`0.3.6`, `0.3.5`, `0.3.4`, or `0.3.3`. The next release still needs a new tag -and `.github/workflows/release.yml`, after the npm trusted publisher allows +republish 0.3.8. `@augmentworks/cli@0.3.9` is the next immutable artifact: +publish it only from GitHub release `v0.3.9` through +`.github/workflows/release.yml`, then inspect that new tarball. Do not +overwrite or relabel `@augmentworks/cli@0.3.8`, `0.3.7`, `0.3.6`, `0.3.5`, +`0.3.4`, or `0.3.3`. The npm trusted publisher must allow `augmentworks-org/augmentworks-cli`. ## Website diff --git a/docs/examples/README.md b/docs/examples/README.md index 42cf0d2..58b76d5 100644 --- a/docs/examples/README.md +++ b/docs/examples/README.md @@ -25,7 +25,7 @@ directories retain raw provenance from the generation command. See `../walkthrough-draft.md`. Do not fabricate a recording. -## Hosted CI (this 0.3.8 package) +## Hosted CI (this 0.3.9 package) `github-actions-hosted.yml` is the maintained customer GitHub Actions recipe: scoped `AUGMENTWORKS_API_KEY`, expected `AUGMENTWORKS_WORKSPACE_ID`, isolated synthetic target, offline doctor and diff --git a/docs/examples/github-actions-hosted-gate.yml b/docs/examples/github-actions-hosted-gate.yml index 9a7c2fe..5b89ffb 100644 --- a/docs/examples/github-actions-hosted-gate.yml +++ b/docs/examples/github-actions-hosted-gate.yml @@ -1,7 +1,7 @@ -# Customer GitHub Actions example for this 0.3.8 package hosted CI with a +# Customer GitHub Actions example for this 0.3.9 package hosted CI with a # read-only semantic release gate. # -# Quoted `--max-credits`, `run wait`, and `gate` are in this 0.3.8 package. +# Quoted `--max-credits`, `run wait`, and `gate` are in this 0.3.9 package. # Do not overwrite npm 0.3.5, 0.3.4, or 0.3.3. # No browser. npm `--yes` is not a spending ceiling. Billing rejection is # exit 13; a new required semantic regression is exit 10 even when diff --git a/docs/examples/github-actions-hosted-source.yml b/docs/examples/github-actions-hosted-source.yml index 9eee30f..a6a2ae8 100644 --- a/docs/examples/github-actions-hosted-source.yml +++ b/docs/examples/github-actions-hosted-source.yml @@ -1,6 +1,6 @@ # Customer GitHub Actions example for a source-tree hosted assessment. # -# Quoted `--max-credits` and `run wait` are in this 0.3.8 package. This recipe +# Quoted `--max-credits` and `run wait` are in this 0.3.9 package. This recipe # builds `node dist/index.js` from a clone rather than installing npm. # No browser. npm `--yes` is not a spending ceiling. Billing rejection is # exit 13; chatbot assertion failure is exit 10; incomplete grading is 11. diff --git a/docs/examples/github-actions-hosted.yml b/docs/examples/github-actions-hosted.yml index 5c73f3d..8ab528e 100644 --- a/docs/examples/github-actions-hosted.yml +++ b/docs/examples/github-actions-hosted.yml @@ -5,12 +5,12 @@ # augmentworks.yaml, own-chatbot.suite.yaml, server.mjs, fixtures/, and # references/). Do not paste it into this CLI repository's development CI. # -# This 0.3.8 package: explicit AUGMENTWORKS_API_KEY mode, --headless, quoted +# This 0.3.9 package: explicit AUGMENTWORKS_API_KEY mode, --headless, quoted # --max-credits, run wait/report, gate, suite validate, and investigation # inspect/export. npm --yes is not a spending ceiling. Do not use # pull_request_target. Do not run logout from automation cleanup. # -# Installs @augmentworks/cli@0.3.8 (this package). Independent inspection of +# Installs @augmentworks/cli@0.3.9 (this package). Independent inspection of # published 0.3.5 is recorded in docs/feature-readiness/published-registry-evidence.json. # Do not pin @latest or overwrite npm 0.3.5, 0.3.4, or 0.3.3. # @@ -112,7 +112,7 @@ jobs: - name: Offline doctor, mapping preview, and suite validation run: | export CHATBOT_API_KEY="$(cat "$RUNNER_TEMP/chatbot-api-key")" - AW=(npx --yes @augmentworks/cli@0.3.8) + AW=(npx --yes @augmentworks/cli@0.3.9) "${AW[@]}" doctor --offline -c augmentworks.yaml "${AW[@]}" preview-mapping -c augmentworks.yaml --operation send --fixture ./fixtures/send-response.json --json > .augmentworks/ci/preview-mapping.json "${AW[@]}" suite validate own-chatbot.suite.yaml --json > .augmentworks/ci/suite-validate.json @@ -121,7 +121,7 @@ jobs: id: hosted run: | export CHATBOT_API_KEY="$(cat "$RUNNER_TEMP/chatbot-api-key")" - AW=(npx --yes @augmentworks/cli@0.3.8) + AW=(npx --yes @augmentworks/cli@0.3.9) set +e "${AW[@]}" whoami --json > .augmentworks/ci/whoami.json whoami_code=$? @@ -222,8 +222,8 @@ jobs: echo "- admit exit: \`$admit_code\`" echo "- wait exit: \`$wait_code\`" echo "- gate exit: \`$gate_code\`" - echo "- recover: \`npx --yes @augmentworks/cli@0.3.8 recover --json\` (does not start a run)" - echo "- wait: \`npx --yes @augmentworks/cli@0.3.8 run wait $run_id\`" + echo "- recover: \`npx --yes @augmentworks/cli@0.3.9 recover --json\` (does not start a run)" + echo "- wait: \`npx --yes @augmentworks/cli@0.3.9 run wait $run_id\`" if [ "$grading_ready" = "1" ]; then echo "- billing status omitted outcome after completed grading; release gate still ran" fi diff --git a/docs/examples/github-actions-local.yml b/docs/examples/github-actions-local.yml index 0591d32..c7ec1c5 100644 --- a/docs/examples/github-actions-local.yml +++ b/docs/examples/github-actions-local.yml @@ -32,7 +32,7 @@ jobs: CHATBOT_BASE_URL: http://127.0.0.1:8000 CHATBOT_API_KEY: ci-synthetic-placeholder run: | - npx --yes @augmentworks/cli@0.3.8 test \ + npx --yes @augmentworks/cli@0.3.9 test \ --local \ -c augmentworks.yaml \ --packet support-refunds-starter@0.1.0 \ diff --git a/docs/feature-readiness/published-registry-evidence.json b/docs/feature-readiness/published-registry-evidence.json index 368a2df..fa974eb 100644 --- a/docs/feature-readiness/published-registry-evidence.json +++ b/docs/feature-readiness/published-registry-evidence.json @@ -1,6 +1,6 @@ { "schemaVersion": "aw-cli-registry-evidence/1", - "semantics": "Post-publication independent inspection of npm tarballs. Packaged cli-release.json is this artifact's identity, not a live registry probe of this version. Do not overwrite or relabel existing npm versions. The published 0.3.8 tarball embeds the prior LAST_VERIFIED 0.3.7 snapshot; this file records the later inspection and is not inside that tarball.", + "semantics": "Post-publication independent inspection of npm tarballs. Packaged cli-release.json is this artifact's identity, not a live registry probe of this version. Do not overwrite or relabel existing npm versions. The published 0.3.8 tarball embeds the prior LAST_VERIFIED 0.3.7 snapshot; this file records the later inspection and is not inside that tarball. thisPackageIdentity for 0.3.9 stays pending-protected-publish until the trusted publish is inspected.", "lastIndependentlyInspected": { "packageName": "@augmentworks/cli", "version": "0.3.8", @@ -19,19 +19,16 @@ }, "thisPackageIdentity": { "packageName": "@augmentworks/cli", - "version": "0.3.8", + "version": "0.3.9", "publishedPackageVerifiedMeaning": "published-line identity, not inspection of this tarball", - "gitHead": "f36d9086bad1ac109a7670e8acc9bf14a5d15047", - "integrity": "sha512-T+e1VWQ8plx0jJMdkOHxocpH8SjCr9BSeRLMsCnCHAO0Z3z9bhgIf0um9x6eyWJfwPz01YOL7CZvM6sLTiSLIA==", - "verifiedAt": "2026-10-08T01:42:45.969Z", - "status": "independently-inspected", - "githubRelease": "v0.3.8", - "githubReleasePublishedAt": "2026-10-08T01:28:38Z", - "registryUrl": "https://registry.npmjs.org/@augmentworks/cli/0.3.8", - "shasum": "009bc1739654c704b75967214ef9604374bd9a92", - "tarballSha256": "2849ceb6c3c9b18d02a4cb2aa7f0ad470ec74cb7846a8eadf91d83147965f36e", - "fileCount": 74, - "notes": "Same immutable artifact as lastIndependentlyInspected. The inspection commit is later than the tag and is not inside the tarball. The registry document omitted gitHead. Do not overwrite 0.3.8, 0.3.7, 0.3.6, 0.3.5, 0.3.4, or 0.3.3." + "gitHead": null, + "integrity": null, + "verifiedAt": null, + "status": "pending-protected-publish", + "githubRelease": null, + "githubReleasePublishedAt": null, + "registryUrl": "https://registry.npmjs.org/@augmentworks/cli/0.3.9", + "notes": "Source 0.3.9 ships the AUG-335 hosted run-scope lookup hardening. Fill gitHead, integrity, and verifiedAt after the protected v0.3.9 GitHub release and npm trusted publish. Do not overwrite 0.3.8, 0.3.7, 0.3.6, 0.3.5, 0.3.4, or 0.3.3." }, "immutableArtifacts": [ { diff --git a/docs/feature-readiness/release-state.md b/docs/feature-readiness/release-state.md index a4febe6..c82f872 100644 --- a/docs/feature-readiness/release-state.md +++ b/docs/feature-readiness/release-state.md @@ -12,7 +12,7 @@ honestly live inside that same tarball. | Package identity | `package.json`, `src/version.ts`, `CLI_RELEASE` / `schemas/v1/cli-release.json` | This artifact's version, protocol, and whether it is a **published-line release** versus a candidate snapshot. | | Source discovery | `contracts/discovery-manifest.json` | This git checkout. Stays `releaseStatus: development` with `node dist/index.js` commands. Not a live registry status. | | Independently inspected tarball | `LAST_VERIFIED_*` and `docs/feature-readiness/published-registry-evidence.json` | A **prior** (or separately inspected) registry version, keyed by version, gitHead, integrity, and `verifiedAt`. | -| Website pin | Main repository discovery snapshot | Adopted only after independent review of **this** patch. This CLI does not self-adopt. Independently inspected 0.3.8 is the current registry pin. Website adoption of that pin is separate. Independently inspected 0.3.7 remains historical and omits the AUG-272 consistency check. Independently inspected 0.3.6 remains historical (capabilities, no saved-suite `/2`). Independently inspected 0.3.5 remains historical and omits suite-selection `capabilities`. Do not fetch `latest`. | +| Website pin | Main repository discovery snapshot | Adopted only after independent review of **this** patch. This CLI does not self-adopt. Independently inspected 0.3.8 remains the website pin until 0.3.9 is inspected. Website adoption of that pin is separate. Independently inspected 0.3.7 remains historical and omits the AUG-272 consistency check. Independently inspected 0.3.6 remains historical (capabilities, no saved-suite `/2`). Independently inspected 0.3.5 remains historical and omits suite-selection `capabilities`. Source 0.3.9 is not a registry probe until the protected `v0.3.9` release. Do not fetch `latest`. | ## `published_package_verified` (`aw-cli-release/0.1`) @@ -20,14 +20,15 @@ honestly live inside that same tarball. candidate. It is **not** proof that this exact tarball was downloaded from npm and inspected. -Independent inspection of `@augmentworks/cli@0.3.8` is -`lastIndependentlyInspected` and `thisPackageIdentity` -(`independently-inspected`). Packaged `LAST_VERIFIED_*` in this checkout names +Independent inspection of `@augmentworks/cli@0.3.8` remains +`lastIndependentlyInspected`. Packaged `LAST_VERIFIED_*` in this checkout names that artifact (tag `v0.3.8` commit `f36d9086bad1ac109a7670e8acc9bf14a5d15047`, published `2026-10-08T01:42:45.969Z`). The registry version document omitted -`gitHead`. The immutable 0.3.8 tarball still embeds the prior 0.3.7 -`LAST_VERIFIED_*` snapshot; this inspection commit is not inside that tarball. -Do not republish 0.3.8 to bake the receipt in. +`gitHead`. `thisPackageIdentity` for 0.3.9 stays +`pending-protected-publish` until the trusted npm workflow runs and a later +commit records the downloaded tarball. The immutable 0.3.8 tarball still embeds +the prior 0.3.7 `LAST_VERIFIED_*` snapshot. Do not republish 0.3.8 to bake a +newer receipt in. Do not overwrite or relabel existing npm versions, including 0.3.8, 0.3.7, and 0.3.6. diff --git a/docs/investigation.md b/docs/investigation.md index 0820743..ef9fea5 100644 --- a/docs/investigation.md +++ b/docs/investigation.md @@ -6,7 +6,7 @@ the target, spawn copied shell fragments, call an evaluator, or create a run. Reproducing the case is a **new** quoted hosted run. The original run and credits stay unchanged. -This command is in the `0.3.8` package. From a clone after `npm ci` and +This command is in the `0.3.9` package. From a clone after `npm ci` and `npm run build`, use `node dist/index.js`. Installed npx pins match this package version. Do not pin immutable npm `0.3.6`. Packed installs include the same samples under `assets/investigations/`. diff --git a/docs/qa/README.md b/docs/qa/README.md index 186c007..77922dc 100644 --- a/docs/qa/README.md +++ b/docs/qa/README.md @@ -22,7 +22,7 @@ coordinator) should link here. This file does not replace | **Hosted** (`login`, `test` without `--local`, `run report`, billing) | Relayed assessment against the live control plane | Local packet oracle or an unpublished source SHA | | **Browser** | Portal / session-door / consent UI owned by the main application | CLI stdout. This repo has no first-party web UI | -Package identity of a checkout is `package.json` (currently `0.3.8`). That +Package identity of a checkout is `package.json` (currently `0.3.9`). That version string alone is not registry proof. The last independently inspected npm tarball recorded in-tree is `@augmentworks/cli@0.3.8` in `docs/feature-readiness/published-registry-evidence.json` (tag `v0.3.8` @@ -197,8 +197,9 @@ is not a normal offline check). Independently inspect registry identity with `npm view` and compare `gitHead` / `dist.integrity` / tarball SHA-256 to `docs/feature-readiness/published-registry-evidence.json`. npm `0.3.8` -is independently inspected. That receipt is not a substitute for a local-runner -pass, and it is not inside the published tarball. +is independently inspected. Source `0.3.9` stays `pending-protected-publish` +until the `v0.3.9` tarball is inspected. That gap is not a local-runner +pass, and the 0.3.8 receipt is not inside the published tarball. Customer-facing `init` next steps on an npm install must not tell the user to run `node dist/index.js` from an empty project. diff --git a/docs/stabilization-rollout.md b/docs/stabilization-rollout.md index 16e355d..9605ed9 100644 --- a/docs/stabilization-rollout.md +++ b/docs/stabilization-rollout.md @@ -29,7 +29,7 @@ schemas. Recovery uses a separate endpoint and protocol version. workflow. Do not republish `0.2.0`. `0.2.1` is already on npm ([v0.2.1](https://github.com/jeffskafi/augmentworks-cli/releases/tag/v0.2.1)). 4. Update the website CLI pin and recovery copy to `0.3.1` after npm lists it. -5. `npx --yes @augmentworks/cli@0.3.8 recover --help` must list +5. `npx --yes @augmentworks/cli@0.3.9 recover --help` must list `--retire`, `--resume`, and `--cancel`, and must not list `--force-delete`. **Done:** verified on the published tarball. diff --git a/docs/troubleshooting.md b/docs/troubleshooting.md index 7635567..ecec242 100644 --- a/docs/troubleshooting.md +++ b/docs/troubleshooting.md @@ -3,7 +3,7 @@ Start with: ```bash -npx --yes @augmentworks/cli@0.3.8 doctor \ +npx --yes @augmentworks/cli@0.3.9 doctor \ -c augmentworks.yaml ``` @@ -43,7 +43,7 @@ Pass the config path explicitly. `.env` must be beside that file, not necessarily in the current directory. ```bash -npx --yes @augmentworks/cli@0.3.8 doctor \ +npx --yes @augmentworks/cli@0.3.9 doctor \ -c ./config/augmentworks.yaml ``` @@ -109,7 +109,7 @@ modules, symlinks, or executable instructions. Validate the expected data shape with: ```bash -npx --yes @augmentworks/cli@0.3.8 schema --kind local-packet +npx --yes @augmentworks/cli@0.3.9 schema --kind local-packet ``` An `aw-packet/0.1` packet must declare `synthetic_only: true`, remain within the @@ -120,7 +120,7 @@ packet with `evaluation_mode: hybrid` or `llm_rubric` criteria fail with ### `--assessment` requires an assessment file -This `@augmentworks/cli@0.3.8` package includes `--assessment`. `init` writes +This `@augmentworks/cli@0.3.9` package includes `--assessment`. `init` writes `augmentworks.assessment.yaml` and starter references. See `examples/response-agent/`. `--assessment` cannot be combined with `--local`. If hosted grading is pending after target work, the exit code is `11`, not `0`. @@ -278,8 +278,8 @@ There is no `--rerun` flag and no force-new option. Inspect the existing assessment without creating another run: ```bash -npx --yes @augmentworks/cli@0.3.8 recover -npx --yes @augmentworks/cli@0.3.8 recover --json +npx --yes @augmentworks/cli@0.3.9 recover +npx --yes @augmentworks/cli@0.3.9 recover --json ``` `--retire` retires a create only after the server proves it never became a run, @@ -304,9 +304,9 @@ lists recorded original run IDs for authorized observation only. Start a new execution only after you have reconciled those runs. Unused all-pending v1 progress may be marked migrated without charging. -This pinning ships in this `0.3.8` package. Independently inspected npm +This pinning ships in this `0.3.9` package. Independently inspected npm `@augmentworks/cli@0.3.6` still persists unbound `/2` documents. Immutable -`0.3.7` is not overwritten by this patch. +`0.3.8` and `0.3.7` are not overwritten by this patch. If the hosted service does not yet support reconciliation, `recover` keeps local state and reports that limitation. Re-running the same `test` command remains @@ -328,8 +328,8 @@ support before attempting another assessment. ### `usage` cannot read billing -`usage` is in this 0.3.8 package. Run `node dist/index.js usage` from a clone -or `npx --yes @augmentworks/cli@0.3.8 usage` after install. The command uses the existing connector +`usage` is in this 0.3.9 package. Run `node dist/index.js usage` from a clone +or `npx --yes @augmentworks/cli@0.3.9 usage` after install. The command uses the existing connector credential (`connector:identity`) and does not need target YAML. A server without `usage_v1` exits `13` with `USAGE_UNSUPPORTED`. That is not a @@ -420,7 +420,7 @@ credit status; the CLI does not meter credits locally. ### Packaged `demo` failed or was not found -`demo` is in this `0.3.8` package. From a clone, run `node dist/index.js demo`. The demo ignores project +`demo` is in this `0.3.9` package. From a clone, run `node dist/index.js demo`. The demo ignores project YAML and `CHATBOT_*` environment variables. Exit `0` means the fail-then-pass story succeeded; the summary is `AW-DEMO-SUMMARY-1`, not `AW-LOCAL-RESULT-1`. `--mode faulty` is expected to exit `10`. A customer release gate should use diff --git a/examples/basic-chat/README.md b/examples/basic-chat/README.md index 143f3d4..02924b6 100644 --- a/examples/basic-chat/README.md +++ b/examples/basic-chat/README.md @@ -5,7 +5,7 @@ and extracts `answer` as assistant content. It can assess conversational behavior, but it cannot establish whether a tool ran or state changed. Copy `.env.example` to `.env`, set values locally, and run `doctor` against the -YAML before starting an assessment. This 0.3.8 package can preview the sanitized +YAML before starting an assessment. This 0.3.9 package can preview the sanitized evidence payload without calling the target, then explicitly probe a running synthetic process. Doctor and init never probe. @@ -20,7 +20,7 @@ node dist/index.js probe -c augmentworks.yaml --yes ``` This directory is a **source-only fixture**. It is **not** copied into the -published npm tarball. `npx @augmentworks/cli@0.3.8` cannot start this +published npm tarball. `npx @augmentworks/cli@0.3.9` cannot start this server from a clean directory. The reproducible pass and stale-policy failure for this server are in [`examples/faq-chatbot/`](../faq-chatbot/README.md). Hosted real-data quote @@ -28,6 +28,6 @@ and admission stay release-disabled. A packaged copy of `server.mjs` ships inside `@augmentworks/cli` under `dist/assets/starters/response-quality/` and is written by -`node dist/index.js init --starter response-only` in this 0.3.8 package. +`node dist/index.js init --starter response-only` in this 0.3.9 package. Immutable npm `0.3.3` does not include `probe` or these starter files. diff --git a/examples/faq-chatbot/README.md b/examples/faq-chatbot/README.md index 87fb936..dac746a 100644 --- a/examples/faq-chatbot/README.md +++ b/examples/faq-chatbot/README.md @@ -17,8 +17,8 @@ Published `@augmentworks/cli@0.3.8` and `@augmentworks/cli@0.3.7` do not contain this directory or the `AW_FAQ_POLICY` switch. `init` from those registry tarballs writes an older server that always returns the 30-day sentence. A later npm release is required before a guide claims the published -package includes the stale-answer control. The commands below run the -published `@augmentworks/cli@0.3.8` binary against these git files. +package includes the stale-answer control. The commands below pin `@augmentworks/cli@0.3.9` and run it against these +git files. Hosted real-data quote and admission stay release-disabled. Do not point a hosted run at production records. This text is not legal approval. @@ -55,7 +55,7 @@ third mode. ## Prerequisites - Node.js 20 or newer (`package.json` `engines.node` is `>=20` on - `@augmentworks/cli@0.3.8`). + `@augmentworks/cli@0.3.9`). - A shell whose current directory is **not** a checkout of this CLI repository. Inside the checkout, `npx` can bind the local package and exit `127` with `augmentworks: not found`. @@ -113,9 +113,9 @@ Terminal B, from the same `faq-clean` directory (still outside the CLI checkout): ```bash -npx --yes @augmentworks/cli@0.3.8 doctor -c augmentworks.yaml -npx --yes @augmentworks/cli@0.3.8 preview-mapping -c augmentworks.yaml --operation send --fixture ./fixtures/send-response.json -npx --yes @augmentworks/cli@0.3.8 test --local -c augmentworks.yaml --packet ./packet.json +npx --yes @augmentworks/cli@0.3.9 doctor -c augmentworks.yaml +npx --yes @augmentworks/cli@0.3.9 preview-mapping -c augmentworks.yaml --operation send --fixture ./fixtures/send-response.json +npx --yes @augmentworks/cli@0.3.9 test --local -c augmentworks.yaml --packet ./packet.json echo "local-exit:$?" ``` @@ -164,7 +164,7 @@ AW_FAQ_POLICY=stale node --env-file=.env server.mjs Same packet, same published CLI: ```bash -npx --yes @augmentworks/cli@0.3.8 test --local -c augmentworks.yaml --packet ./packet.json +npx --yes @augmentworks/cli@0.3.9 test --local -c augmentworks.yaml --packet ./packet.json echo "local-exit:$?" ``` @@ -215,9 +215,9 @@ the directory that contains the selected `-c` file, not from the shell's current directory when those differ. ```bash -npx --yes @augmentworks/cli@0.3.8 doctor -c augmentworks.malformed.yaml -npx --yes @augmentworks/cli@0.3.8 preview-mapping -c augmentworks.incompatible.yaml --operation send --fixture ./fixtures/send-response.json -npx --yes @augmentworks/cli@0.3.8 probe -c augmentworks.incompatible.yaml --yes +npx --yes @augmentworks/cli@0.3.9 doctor -c augmentworks.malformed.yaml +npx --yes @augmentworks/cli@0.3.9 preview-mapping -c augmentworks.incompatible.yaml --operation send --fixture ./fixtures/send-response.json +npx --yes @augmentworks/cli@0.3.9 probe -c augmentworks.incompatible.yaml --yes ``` ## Next step @@ -225,7 +225,7 @@ npx --yes @augmentworks/cli@0.3.8 probe -c augmentworks.incompatible.yaml --yes Local validation is the pass command and the stale-policy command above. Hosted authorization is a separate human action. Open `/docs/agent-setup` on the product site, then run -`npx --yes @augmentworks/cli@0.3.8 login` only after a person approves it. +`npx --yes @augmentworks/cli@0.3.9 login` only after a person approves it. Pricing is `/pricing` on the product site. The website's adopted production-compatible pin is still `@augmentworks/cli@0.3.7`, recorded at diff --git a/examples/refund-agent/README.md b/examples/refund-agent/README.md index e7d5fd5..21d5070 100644 --- a/examples/refund-agent/README.md +++ b/examples/refund-agent/README.md @@ -11,7 +11,7 @@ demonstration, not a realistic support agent or a substitute for AugmentWorks' private hosted packet `support-refunds@0.1.0` and managed scoring. This directory is **not included in the npm tarball**. Clone the CLI repository -for the example server. This `@augmentworks/cli@0.3.8` package supports `--local`, +for the example server. This `@augmentworks/cli@0.3.9` package supports `--local`, hosted `--assessment`, packaged `demo`, `init --starter stateful`, `usage`, `billing`, `preview-mapping`, `probe`, and `--estimate` via npx. The refund-agent example directory is still not in the npm tarball. @@ -38,7 +38,7 @@ side-effect-free `GET /health` endpoint. In another terminal, from this directory, run the complete local assessment: ```bash -npx --yes @augmentworks/cli@0.3.8 doctor \ +npx --yes @augmentworks/cli@0.3.9 doctor \ -c augmentworks.yaml ``` @@ -62,7 +62,7 @@ node dist/index.js probe -c augmentworks.yaml --yes ``` ```bash -npx --yes @augmentworks/cli@0.3.8 test \ +npx --yes @augmentworks/cli@0.3.9 test \ --local \ -c augmentworks.yaml \ --packet support-refunds-starter@0.1.0 \ @@ -88,9 +88,9 @@ hosted `test` command resumes an active bound intent or follows the remaining baseline/remediation allowance. There is no `--rerun` flag. ```bash -npx --yes @augmentworks/cli@0.3.8 login +npx --yes @augmentworks/cli@0.3.9 login -npx --yes @augmentworks/cli@0.3.8 test \ +npx --yes @augmentworks/cli@0.3.9 test \ -c augmentworks.yaml \ --packet support-refunds@0.1.0 \ --open diff --git a/examples/response-agent/README.md b/examples/response-agent/README.md index 6f193b0..6b3cbb0 100644 --- a/examples/response-agent/README.md +++ b/examples/response-agent/README.md @@ -1,16 +1,16 @@ # Synthetic response-agent example -This directory is a **synthetic** FAQ assessment fixture for this 0.3.8 package. +This directory is a **synthetic** FAQ assessment fixture for this 0.3.9 package. It is not a production knowledge base, not a real customer policy, and not included in the npm tarball. Clone this repository for the example server. The account-free pass and forced-failure walkthrough for this same server is [`examples/faq-chatbot/`](../faq-chatbot/README.md). `AW_FAQ_POLICY=stale` returns the 14-day sentence on purpose. That switch is in this source tree. -Published `@augmentworks/cli@0.3.8` and `@augmentworks/cli@0.3.7` do not +Published `@augmentworks/cli@0.3.9` and `@augmentworks/cli@0.3.7` do not include it. Hosted real-data quote and admission stay release-disabled. -This `@augmentworks/cli@0.3.8` package includes `--assessment`. `init --starter +This `@augmentworks/cli@0.3.9` package includes `--assessment`. `init --starter response-only` writes a packaged copy of this fixture (including `server.mjs`) instead of copying this git-only example directory. diff --git a/package-lock.json b/package-lock.json index 0c5f5c3..643dfd1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@augmentworks/cli", - "version": "0.3.8", + "version": "0.3.9", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@augmentworks/cli", - "version": "0.3.8", + "version": "0.3.9", "license": "Apache-2.0", "bin": { "augmentworks": "dist/index.js" diff --git a/package.json b/package.json index da1036a..1c99205 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@augmentworks/cli", - "version": "0.3.8", + "version": "0.3.9", "description": "Deterministic local and hosted regression checks for support and FAQ chatbots", "type": "module", "bin": { diff --git a/schemas/v1/cli-release.json b/schemas/v1/cli-release.json index 9597354..4da9a58 100644 --- a/schemas/v1/cli-release.json +++ b/schemas/v1/cli-release.json @@ -1,11 +1,11 @@ { "schema_version": "aw-cli-release/0.1", "npm_package": "@augmentworks/cli", - "source_package_version": "0.3.8", - "published_package_version": "0.3.8", + "source_package_version": "0.3.9", + "published_package_version": "0.3.9", "published_package_verified": true, - "recommended_cli_version": "0.3.8", - "hosted_command_pin": "0.3.8", + "recommended_cli_version": "0.3.9", + "hosted_command_pin": "0.3.9", "local_distribution": "npm", "local_source_repository": "https://github.com/augmentworks-org/augmentworks-cli.git", "local_source_ref": "main", @@ -15,5 +15,5 @@ "protocol_version": "aw-relay/0.1", "target_protocol_version": "aw-target/0.1", "config_version": 1, - "notes": "Published-line 0.3.8 rejects internally contradictory hosted report exports before exit 0 (AUG-272) and refreshes the dev-only source-map-js lock so the release audit passes (AUG-273). It keeps the 0.3.7 saved-suite customer path: native aw-customer-suite/1 upload translation, saved-suite v2 binding, authoritative v2 whole-suite gate receipts, durable execution IDs, cross-shard quote/run uniqueness, and non-destructive generated .env guidance. Generated and documented npx commands pin this package version (0.3.8). published_package_verified is published-line identity (not a candidate), not a live registry probe of this exact tarball. Independent inspection of npm @augmentworks/cli@0.3.8 (tag v0.3.8 commit f36d9086bad1ac109a7670e8acc9bf14a5d15047, integrity sha512-T+e1VWQ8plx0jJMdkOHxocpH8SjCr9BSeRLMsCnCHAO0Z3z9bhgIf0um9x6eyWJfwPz01YOL7CZvM6sLTiSLIA==, shasum 009bc1739654c704b75967214ef9604374bd9a92, published 2026-10-08T01:42:45.969Z, tarball SHA-256 2849ceb6c3c9b18d02a4cb2aa7f0ad470ec74cb7846a8eadf91d83147965f36e) is recorded in docs/feature-readiness/published-registry-evidence.json. The registry version document omitted gitHead. The published 0.3.8 tarball still embeds the prior LAST_VERIFIED 0.3.7 snapshot; this inspection commit is not inside that immutable artifact. Do not overwrite or relabel immutable npm 0.3.8, 0.3.7 (gitHead 876454878a31a897aec1d722fa838c9c0ecea2aa), 0.3.6 (gitHead a9b927a2413305003f817c20e9c5df277512f83e), 0.3.5, 0.3.4, or 0.3.3. Website adoption remains a separate pin. Do not fetch latest. Vendors aw-billing/1 from main 650472d91442a6866a7b6ef18e6dacc23a2a9260 including subscriptions_v1. The CLI does not subscribe, cancel, or collect payment methods. Live subscription sales stay gated on the server. Catalog list/show and selection compile consume aw-coverage-catalog/1 and aw-suite-selection/1 without a local compiler or pricing engine. Saved-suite compiles request aw-suite-selection/2. Do not run @latest." + "notes": "Published-line 0.3.9 hardens hosted run-scope lookup: synthetic runs do not request an execution scope, looked-up scopes use the same usability checks as the pinned path, and non-JSON error pages keep their HTTP status instead of crashing as invalid JSON (AUG-335). It keeps the 0.3.8 report consistency check (AUG-272) and the dev-only source-map-js audit refresh (AUG-273), plus the saved-suite customer path: native aw-customer-suite/1 upload translation, saved-suite v2 binding, authoritative v2 whole-suite gate receipts, durable execution IDs, cross-shard quote/run uniqueness, and non-destructive generated .env guidance. Generated and documented npx commands pin this package version (0.3.9). published_package_verified is published-line identity (not a candidate), not a live registry probe of this exact tarball. Independent inspection of npm @augmentworks/cli@0.3.8 (tag v0.3.8 commit f36d9086bad1ac109a7670e8acc9bf14a5d15047, integrity sha512-T+e1VWQ8plx0jJMdkOHxocpH8SjCr9BSeRLMsCnCHAO0Z3z9bhgIf0um9x6eyWJfwPz01YOL7CZvM6sLTiSLIA==, shasum 009bc1739654c704b75967214ef9604374bd9a92, published 2026-10-08T01:42:45.969Z, tarball SHA-256 2849ceb6c3c9b18d02a4cb2aa7f0ad470ec74cb7846a8eadf91d83147965f36e) is recorded in docs/feature-readiness/published-registry-evidence.json. The registry version document omitted gitHead. The published 0.3.8 tarball still embeds the prior LAST_VERIFIED 0.3.7 snapshot; this 0.3.9 artifact does not overwrite it. Do not overwrite or relabel immutable npm 0.3.8, 0.3.7 (gitHead 876454878a31a897aec1d722fa838c9c0ecea2aa), 0.3.6 (gitHead a9b927a2413305003f817c20e9c5df277512f83e), 0.3.5, 0.3.4, or 0.3.3. Website adoption of the inspected 0.3.8 pin remains separate until a later inspection of this patch. Do not fetch latest. Vendors aw-billing/1 from main 650472d91442a6866a7b6ef18e6dacc23a2a9260 including subscriptions_v1. The CLI does not subscribe, cancel, or collect payment methods. Live subscription sales stay gated on the server. Catalog list/show and selection compile consume aw-coverage-catalog/1 and aw-suite-selection/1 without a local compiler or pricing engine. Saved-suite compiles request aw-suite-selection/2. Do not run @latest." } diff --git a/scripts/check-discovery-manifest.mjs b/scripts/check-discovery-manifest.mjs index dbcd113..40f988e 100644 --- a/scripts/check-discovery-manifest.mjs +++ b/scripts/check-discovery-manifest.mjs @@ -31,7 +31,7 @@ if (!LAST_VERIFIED_PUBLISHED_DISCOVERY.capabilities.localDemo) { } if (LAST_VERIFIED_PUBLISHED_DISCOVERY.package.version !== "0.3.8") { throw new Error( - "The last independently inspected published snapshot must remain 0.3.8. Do not relabel 0.3.8, 0.3.7, 0.3.6, 0.3.5, 0.3.4, or 0.3.3 provenance." + "The last independently inspected published snapshot must remain 0.3.8 until a later registry tarball is inspected. Do not relabel 0.3.8, 0.3.7, 0.3.6, 0.3.5, 0.3.4, or 0.3.3 provenance." ); } if (committed.package.releaseStatus === "published") { diff --git a/src/release.ts b/src/release.ts index 3b89905..f127847 100644 --- a/src/release.ts +++ b/src/release.ts @@ -45,6 +45,8 @@ export const REGISTRY_0_3_5_GIT_HEAD = "11570f6cf883ec6e6743e010c35134bb485234dd export const REGISTRY_0_3_6_GIT_HEAD = "a9b927a2413305003f817c20e9c5df277512f83e"; /** Immutable npm 0.3.7. Kept as a literal so later inspections do not relabel it. */ export const REGISTRY_0_3_7_GIT_HEAD = "876454878a31a897aec1d722fa838c9c0ecea2aa"; +/** Immutable npm 0.3.8. Kept as a literal so later inspections do not relabel it. */ +export const REGISTRY_0_3_8_GIT_HEAD = "f36d9086bad1ac109a7670e8acc9bf14a5d15047"; export const HOSTED_COMMAND_PIN: string = SOURCE_PACKAGE_VERSION; export const LOCAL_DISTRIBUTION: "npm" | "git" = SOURCE_PACKAGE_VERSION === PUBLISHED_PACKAGE_VERSION ? "npm" : "git"; @@ -92,7 +94,7 @@ export const CLI_RELEASE: CliReleaseFixture = { target_protocol_version: TARGET_PROTOCOL_VERSION, config_version: CONFIG_VERSION, notes: - "Published-line 0.3.8 rejects internally contradictory hosted report exports before exit 0 (AUG-272) and refreshes the dev-only source-map-js lock so the release audit passes (AUG-273). It keeps the 0.3.7 saved-suite customer path: native aw-customer-suite/1 upload translation, saved-suite v2 binding, authoritative v2 whole-suite gate receipts, durable execution IDs, cross-shard quote/run uniqueness, and non-destructive generated .env guidance. Generated and documented npx commands pin this package version (0.3.8). published_package_verified is published-line identity (not a candidate), not a live registry probe of this exact tarball. Independent inspection of npm @augmentworks/cli@0.3.8 (tag v0.3.8 commit f36d9086bad1ac109a7670e8acc9bf14a5d15047, integrity sha512-T+e1VWQ8plx0jJMdkOHxocpH8SjCr9BSeRLMsCnCHAO0Z3z9bhgIf0um9x6eyWJfwPz01YOL7CZvM6sLTiSLIA==, shasum 009bc1739654c704b75967214ef9604374bd9a92, published 2026-10-08T01:42:45.969Z, tarball SHA-256 2849ceb6c3c9b18d02a4cb2aa7f0ad470ec74cb7846a8eadf91d83147965f36e) is recorded in docs/feature-readiness/published-registry-evidence.json. The registry version document omitted gitHead. The published 0.3.8 tarball still embeds the prior LAST_VERIFIED 0.3.7 snapshot; this inspection commit is not inside that immutable artifact. Do not overwrite or relabel immutable npm 0.3.8, 0.3.7 (gitHead 876454878a31a897aec1d722fa838c9c0ecea2aa), 0.3.6 (gitHead a9b927a2413305003f817c20e9c5df277512f83e), 0.3.5, 0.3.4, or 0.3.3. Website adoption remains a separate pin. Do not fetch latest. Vendors aw-billing/1 from main 650472d91442a6866a7b6ef18e6dacc23a2a9260 including subscriptions_v1. The CLI does not subscribe, cancel, or collect payment methods. Live subscription sales stay gated on the server. Catalog list/show and selection compile consume aw-coverage-catalog/1 and aw-suite-selection/1 without a local compiler or pricing engine. Saved-suite compiles request aw-suite-selection/2. Do not run @latest." + "Published-line 0.3.9 hardens hosted run-scope lookup: synthetic runs do not request an execution scope, looked-up scopes use the same usability checks as the pinned path, and non-JSON error pages keep their HTTP status instead of crashing as invalid JSON (AUG-335). It keeps the 0.3.8 report consistency check (AUG-272) and the dev-only source-map-js audit refresh (AUG-273), plus the saved-suite customer path: native aw-customer-suite/1 upload translation, saved-suite v2 binding, authoritative v2 whole-suite gate receipts, durable execution IDs, cross-shard quote/run uniqueness, and non-destructive generated .env guidance. Generated and documented npx commands pin this package version (0.3.9). published_package_verified is published-line identity (not a candidate), not a live registry probe of this exact tarball. Independent inspection of npm @augmentworks/cli@0.3.8 (tag v0.3.8 commit f36d9086bad1ac109a7670e8acc9bf14a5d15047, integrity sha512-T+e1VWQ8plx0jJMdkOHxocpH8SjCr9BSeRLMsCnCHAO0Z3z9bhgIf0um9x6eyWJfwPz01YOL7CZvM6sLTiSLIA==, shasum 009bc1739654c704b75967214ef9604374bd9a92, published 2026-10-08T01:42:45.969Z, tarball SHA-256 2849ceb6c3c9b18d02a4cb2aa7f0ad470ec74cb7846a8eadf91d83147965f36e) is recorded in docs/feature-readiness/published-registry-evidence.json. The registry version document omitted gitHead. The published 0.3.8 tarball still embeds the prior LAST_VERIFIED 0.3.7 snapshot; this 0.3.9 artifact does not overwrite it. Do not overwrite or relabel immutable npm 0.3.8, 0.3.7 (gitHead 876454878a31a897aec1d722fa838c9c0ecea2aa), 0.3.6 (gitHead a9b927a2413305003f817c20e9c5df277512f83e), 0.3.5, 0.3.4, or 0.3.3. Website adoption of the inspected 0.3.8 pin remains separate until a later inspection of this patch. Do not fetch latest. Vendors aw-billing/1 from main 650472d91442a6866a7b6ef18e6dacc23a2a9260 including subscriptions_v1. The CLI does not subscribe, cancel, or collect payment methods. Live subscription sales stay gated on the server. Catalog list/show and selection compile consume aw-coverage-catalog/1 and aw-suite-selection/1 without a local compiler or pricing engine. Saved-suite compiles request aw-suite-selection/2. Do not run @latest." }; export function formatNpx(pin: string, argv: readonly string[]): string { diff --git a/src/version.ts b/src/version.ts index b509bbf..9270274 100644 --- a/src/version.ts +++ b/src/version.ts @@ -1,4 +1,4 @@ -export const CLI_VERSION = "0.3.8"; +export const CLI_VERSION = "0.3.9"; export const RELAY_PROTOCOL_VERSION = "aw-relay/0.1" as const; export const RELAY_PROTOCOL_VERSION_V2 = "aw-relay/0.2" as const; export const RELAY_PROTOCOL_VERSION_V3 = "aw-relay/0.3" as const; diff --git a/test/discovery/manifest.test.ts b/test/discovery/manifest.test.ts index a607bcb..030be7f 100644 --- a/test/discovery/manifest.test.ts +++ b/test/discovery/manifest.test.ts @@ -97,7 +97,7 @@ describe("discovery manifest", () => { it("keeps the source checkout development-status without claiming this tarball is already inspected", () => { const source = sourceDiscoveryManifest(); - expect(source.package.version).toBe("0.3.8"); + expect(source.package.version).toBe("0.3.9"); expect(source.package.releaseStatus).toBe("development"); expect(source.provenance.verifiedAt).toBeNull(); expect(source.provenance.sourceCommit).toBeNull(); diff --git a/test/docs/agent-resources.test.ts b/test/docs/agent-resources.test.ts index 7464a70..2675766 100644 --- a/test/docs/agent-resources.test.ts +++ b/test/docs/agent-resources.test.ts @@ -24,7 +24,8 @@ describe("agent resources", () => { expect(wrapper).not.toMatch(/npx(?:\s+(?:--yes|-y))?\s+@augmentworks\/cli@0\.3\.5\b/u); expect(wrapper).not.toMatch(/npx(?:\s+(?:--yes|-y))?\s+@augmentworks\/cli@0\.3\.6\b/u); expect(wrapper).not.toMatch(/npx(?:\s+(?:--yes|-y))?\s+@augmentworks\/cli@0\.3\.7\b/u); - expect(wrapper).toMatch(/npx(?:\s+(?:--yes|-y))?\s+@augmentworks\/cli@0\.3\.8\b/u); + expect(wrapper).not.toMatch(/npx(?:\s+(?:--yes|-y))?\s+@augmentworks\/cli@0\.3\.8\b/u); + expect(wrapper).toMatch(/npx(?:\s+(?:--yes|-y))?\s+@augmentworks\/cli@0\.3\.9\b/u); } expect(skill.startsWith("---\nname: augmentworks\n")).toBe(true); expect(cursor).toContain("alwaysApply: false"); diff --git a/test/first-dollar-registry-acceptance.test.ts b/test/first-dollar-registry-acceptance.test.ts index 291f113..ae2be7b 100644 --- a/test/first-dollar-registry-acceptance.test.ts +++ b/test/first-dollar-registry-acceptance.test.ts @@ -98,7 +98,7 @@ describe("first-dollar registry acceptance handoff", () => { expect(JSON.stringify(evidence)).not.toMatch(/npx --yes @augmentworks\/cli@0\.3\.2\b/u); }); - it("does not treat packaged identity as a live 0.3.8 registry probe", async () => { + it("does not treat packaged identity as a live 0.3.9 registry probe", async () => { const evidence = JSON.parse(await readFile(firstDollarUrl, "utf8")) as FirstDollarEvidence; const registryIdentity = evidence.checks.find( (check) => check.name === "registry-tarball-gitHead-integrity" @@ -126,7 +126,7 @@ describe("first-dollar registry acceptance handoff", () => { }); describe("published registry evidence record", () => { - it("records independently inspected 0.3.8 without relabeling 0.3.7", async () => { + it("keeps this package identity separate from last independently inspected 0.3.8", async () => { const record = JSON.parse(await readFile(registryEvidenceUrl, "utf8")) as PublishedRegistryEvidence & { immutableArtifacts: Array<{ version: string; gitHead: string }>; }; @@ -141,14 +141,15 @@ describe("published registry evidence record", () => { ); expect(record.lastIndependentlyInspected.verifiedAt).toBe("2026-10-08T01:42:45.969Z"); expect(record.thisPackageIdentity.version).toBe(SOURCE_PACKAGE_VERSION); - expect(record.thisPackageIdentity.version).toBe("0.3.8"); - expect(record.thisPackageIdentity.gitHead).toBe("f36d9086bad1ac109a7670e8acc9bf14a5d15047"); - expect(record.thisPackageIdentity.integrity).toBe( - "sha512-T+e1VWQ8plx0jJMdkOHxocpH8SjCr9BSeRLMsCnCHAO0Z3z9bhgIf0um9x6eyWJfwPz01YOL7CZvM6sLTiSLIA==" + expect(record.thisPackageIdentity.version).toBe("0.3.9"); + expect(record.thisPackageIdentity.gitHead).toBeNull(); + expect(record.thisPackageIdentity.integrity).toBeNull(); + expect(record.thisPackageIdentity.verifiedAt).toBeNull(); + expect(record.thisPackageIdentity.status).toBe("pending-protected-publish"); + expect(record.thisPackageIdentity.version).not.toBe(record.lastIndependentlyInspected.version); + expect(record.immutableArtifacts.find((artifact) => artifact.version === "0.3.8")?.gitHead).toBe( + "f36d9086bad1ac109a7670e8acc9bf14a5d15047" ); - expect(record.thisPackageIdentity.verifiedAt).toBe("2026-10-08T01:42:45.969Z"); - expect(record.thisPackageIdentity.status).toBe("independently-inspected"); - expect(record.thisPackageIdentity.version).toBe(record.lastIndependentlyInspected.version); expect(record.immutableArtifacts.find((artifact) => artifact.version === "0.3.7")?.gitHead).toBe( "876454878a31a897aec1d722fa838c9c0ecea2aa" ); diff --git a/test/release.test.ts b/test/release.test.ts index 360b08d..ce925ef 100644 --- a/test/release.test.ts +++ b/test/release.test.ts @@ -18,6 +18,7 @@ import { REGISTRY_0_3_3_GIT_HEAD, REGISTRY_0_3_6_GIT_HEAD, REGISTRY_0_3_7_GIT_HEAD, + REGISTRY_0_3_8_GIT_HEAD, SOURCE_PACKAGE_VERSION, allowedDocumentedNpxPins, CUSTOMER_CLI_PLACEHOLDER, @@ -43,8 +44,8 @@ describe("CLI release metadata", () => { }); it("pins hosted npx commands to this package version, not 0.3.2 or 0.3.3", () => { - expect(SOURCE_PACKAGE_VERSION).toBe("0.3.8"); - expect(PUBLISHED_PACKAGE_VERSION).toBe("0.3.8"); + expect(SOURCE_PACKAGE_VERSION).toBe("0.3.9"); + expect(PUBLISHED_PACKAGE_VERSION).toBe("0.3.9"); expect(HOSTED_COMMAND_PIN).toBe(SOURCE_PACKAGE_VERSION); expect(HOSTED_COMMAND_PIN).not.toBe("0.3.2"); expect(HOSTED_COMMAND_PIN).not.toBe("0.3.3"); @@ -52,7 +53,8 @@ describe("CLI release metadata", () => { expect(HOSTED_COMMAND_PIN).not.toBe("0.3.5"); expect(HOSTED_COMMAND_PIN).not.toBe("0.3.6"); expect(HOSTED_COMMAND_PIN).not.toBe("0.3.7"); - expect(allowedDocumentedNpxPins()).toEqual(["0.3.8"]); + expect(HOSTED_COMMAND_PIN).not.toBe("0.3.8"); + expect(allowedDocumentedNpxPins()).toEqual(["0.3.9"]); expect(HOSTED_COMMANDS.login).toBe(formatNpx(HOSTED_COMMAND_PIN, ["login"])); expect(HOSTED_COMMANDS.initAgent).toBe(formatNpx(HOSTED_COMMAND_PIN, ["init", "--agent"])); expect(HOSTED_COMMANDS.recover).toBe(formatNpx(HOSTED_COMMAND_PIN, ["recover"])); @@ -74,7 +76,8 @@ describe("CLI release metadata", () => { expect(REGISTRY_0_3_3_GIT_HEAD).toBe("4a08ea0d352f2515e725cb9ca946807112422436"); expect(REGISTRY_0_3_6_GIT_HEAD).toBe("a9b927a2413305003f817c20e9c5df277512f83e"); expect(REGISTRY_0_3_7_GIT_HEAD).toBe("876454878a31a897aec1d722fa838c9c0ecea2aa"); - expect(CLI_RELEASE.notes).toContain("Published-line 0.3.8"); + expect(REGISTRY_0_3_8_GIT_HEAD).toBe("f36d9086bad1ac109a7670e8acc9bf14a5d15047"); + expect(CLI_RELEASE.notes).toContain("Published-line 0.3.9"); expect(CLI_RELEASE.notes).not.toMatch(/Candidate 0\.3\.4/u); expect(CLI_RELEASE.notes).not.toMatch(/Last independently verified published tarball remains @augmentworks\/cli@0\.3\.2/u); expect(CLI_RELEASE.notes).toContain("published-registry-evidence.json");