Packed CLI capxul-cli-4.20.0-beta.5.tgz (sha256 bd286f11ace164f1d65c25c38a68eccd4fdb77878f0491e6957469ed49935070),
installed outside the repository and run in a real PTY (asciinema 3.0.0, input recording off, egress denied by preload, isolated CLI home, CI unset).

confirm-default-no-prompt.png
confirm-default-no-refusal.png
confirm-supplied-prompt.png
confirm-supplied-refusal.png
answered-prompt.png
answered-session.png
acceptance-summary.png# CLI business commands — Organization writes: terminal evidence
Validated code head `21c92eefa3da0abe15c61656662ad285f96a9287`
(`feat/d9-org-create-retry`); this receipt commit adds only this receipt and its
frames. Base of the change: `c92edf21e36d0d19481c34aa8631adbd8058f4c5`.
The packed CLI was installed outside the repository and run in a real PTY through
the local terminal viewer (`asciinema 3.0.0`, `session --stream-local`,
`--window-size 100x40`, `--capture-env SHELL`, input recording off). Every command
ran with an isolated `CAPXUL_CLI_HOME`, `CI` unset, `CAPXUL_TELEMETRY_DISABLED=true`
and a preload that denies `fetch` and `net.connect`, so no command in this receipt
performed network egress. The only keystrokes sent to the PTY were `ENTER` and `y`.
Installed artifact built from that head: `capxul-cli-4.20.0-beta.5.tgz`
sha256 `bd286f11ace164f1d65c25c38a68eccd4fdb77878f0491e6957469ed49935070`,
`@capxul/cli/dist/main.mjs`, `capxul v4.20.0-beta.5`.
## Checkpoints
| # | Command | Exit | Observed in the terminal |
| --- | --------------------------------------------------------------------------------------- | ---- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 1 | `capxul --version` | 0 | `capxul v4.20.0-beta.5` |
| 2 | `capxul org --help` | 0 | group help lists `create` and `retry` |
| 3 | `capxul org create --help` | 0 | `--email --name --handle --country --bio --size --confirm --timeout-seconds` |
| 4 | `capxul org retry --help` | 0 | `--org, --org-id --email --confirm --timeout-seconds` |
| 5 | `capxul org retry --json` | 2 | `CLI_USAGE: Provide --org.` |
| 6 | `capxul org retry --org org_a --json` | 2 | `CLI_USAGE: Provide --confirm to write.` |
| 7 | `capxul org retry --org org_a --timeout-seconds 0 --confirm --json` | 2 | `CLI_USAGE: Provide --timeout-seconds as an integer from 1 to 3600.` |
| 8 | `capxul org retry --org org_a --email not-an-email --confirm --json` | 2 | `CLI_USAGE: Provide a valid email.` |
| 9 | `capxul org create --name 'New Org' --handle new_org --country GH --confirm --json` | 3 | `NOT_AUTHENTICATED: Authentication is required.` |
| 10 | `capxul org retry --org org_a` (terminal) | 2 | preview; `? Resume this Organization's setup? › (y/N)`; `ENTER` → `✔ … no` → `CLI_USAGE: The write was not confirmed.` |
| 11 | `capxul org create --name 'New Org' --handle new_org --country GH --confirm` (terminal) | 2 | preview and prompt rendered although `--confirm` was supplied; `ENTER` → `✔ Create this Organization? … no` → `CLI_USAGE: The write was not confirmed.` |
| 12 | `capxul org retry --org org_a --email demo@example.com` (terminal) | 3 | preview; `(y/N)`; `y` → `✔ … yes`; continues past the gate → `NOT_AUTHENTICATED: Authentication is required.` |
Rows 5 to 9 are the bounded local refusals: each one refused before a client, a
browser, or any network use.
Verbatim output for the refusal rows:
```text
$ capxul org retry --json
{"version":1,"command":"org.retry","outcome":"refused","error":{"code":"CLI_USAGE","message":"Provide --org."}}
exit=2
$ capxul org retry --org org_a --json
{"version":1,"command":"org.retry","outcome":"refused","error":{"code":"CLI_USAGE","message":"Provide --confirm to write."}}
exit=2
$ capxul org retry --org org_a --timeout-seconds 0 --confirm --json
{"version":1,"command":"org.retry","outcome":"refused","error":{"code":"CLI_USAGE","message":"Provide --timeout-seconds as an integer from 1 to 3600."}}
exit=2
$ capxul org retry --org org_a --email not-an-email --confirm --json
{"version":1,"command":"org.retry","outcome":"refused","error":{"code":"CLI_USAGE","message":"Provide a valid email."}}
exit=2
$ capxul org create --name 'New Org' --handle new_org --country GH --confirm --json
{"version":1,"command":"org.create","outcome":"refused","error":{"code":"NOT_AUTHENTICATED","message":"Authentication is required."}}
exit=3
```
## Frames
Captured from the artifact named above while each row was on screen:
- `confirm-default-no-prompt.png`, `confirm-default-no-refusal.png` — row 10
- `confirm-supplied-prompt.png`, `confirm-supplied-refusal.png` — row 11
- `answered-prompt.png`, `answered-session.png` — row 12
- `acceptance-summary.png` — the acceptance-row summary printed at the end of the run
The remaining rows are text evidence in the table above: the capture path used for
the frames (a CDP screenshot of the live viewer) began failing with
`CDP request timed out: Page.captureScreenshot` partway through, and the command
output it would have shown is recorded verbatim instead. No frame in this
directory was captured from an earlier artifact.
## Not proven by this receipt
The committed Organization ID, the pending result, the verified result and a
fresh-process resume need a signed-in staging session, a real browser wallet and
backend reads. This run authorized no live write, so those rows stay open.