From 33c405c06005f0c430f9ad260d53d90173c6853a Mon Sep 17 00:00:00 2001 From: Patrick Wozniak Date: Tue, 18 Aug 2026 17:20:51 +0200 Subject: [PATCH] docs(tests): document live account credentials --- CHANGELOG.md | 1 + CONTRIBUTING.md | 9 +++++++++ README.md | 20 ++++++++++++++++++++ 3 files changed, 30 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index b58dd8a..cf4942c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,7 @@ - Let `/login` use browser authentication, an explicit API-key prompt, or a directly pasted API key. - Add optional zero-data-retention headers through `COMMANDCODE_ZDR=1`. - Refresh GPT-5.6 Terra and Luna display prices after their temporary 50% promotion ended. +- Add isolated live E2E profiles for separate Go-plan and Provider-API credentials, including an explicit selected-transport assertion and packed-package validation. ## 0.5.1 - 2026-08-11 diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index da4d0a4..6adb7bb 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -42,6 +42,15 @@ npm run pi:authenticated Both commands accept additional pi arguments after `--`, for example `npm run pi:authenticated -- --model claude-sonnet-4-6`. +Run the transport-specific live tests with separate credentials: + +```sh +COMMANDCODE_E2E_GO_API_KEY_FILE=/path/to/go-key npm run test:e2e:live:go +COMMANDCODE_E2E_PROVIDER_API_KEY_FILE=/path/to/provider-key npm run test:e2e:live:provider +``` + +Use `npm run test:e2e:live:all` with both file variables to run them sequentially. Store the keys in a secret manager and export each one to a new mode-`0600` temporary file for the test; never add key files to the repository. The direct `COMMANDCODE_E2E_GO_API_KEY` and `COMMANDCODE_E2E_PROVIDER_API_KEY` variables are intended primarily for protected CI secrets. + Before opening a PR, run: ```sh diff --git a/README.md b/README.md index e1e4a3a..6c37492 100644 --- a/README.md +++ b/README.md @@ -190,6 +190,26 @@ npm run pi:authenticated Both commands accept additional pi arguments after `--`, for example `npm run pi:authenticated -- --model claude-sonnet-4-6`. +### Live transport tests + +Keep the Go-plan and Provider-API test keys in separate secret-manager entries. Pass them through protected files so the keys do not enter shell history: + +```sh +COMMANDCODE_E2E_GO_API_KEY_FILE=/path/to/go-key \ + npm run test:e2e:live:go + +COMMANDCODE_E2E_PROVIDER_API_KEY_FILE=/path/to/provider-key \ + npm run test:e2e:live:provider + +COMMANDCODE_E2E_GO_API_KEY_FILE=/path/to/go-key \ +COMMANDCODE_E2E_PROVIDER_API_KEY_FILE=/path/to/provider-key \ + npm run test:e2e:live:all +``` + +Each profile runs with an isolated Pi agent directory and asserts the selected transport through `/commandcode-status`: Go must select `generate`, while a Provider API account must select `provider`. The profile-specific `*_API_KEY` environment variables are also supported for CI secrets, but key files are preferred for local use. + +Override the default DeepSeek test model with `COMMANDCODE_E2E_GO_MODEL` or `COMMANDCODE_E2E_PROVIDER_MODEL`. A successful live Anthropic `/provider/v1/messages` test requires a Provider API account whose plan includes the selected Claude model. + See [CONTRIBUTING.md](CONTRIBUTING.md) for local setup and tests. See [RELEASE.md](RELEASE.md) for the release process. ## License