Additional arguments, duplicated --help, other options, and operands are separate usage-error
scenarios.
Limitations
This fixture detects output, status, terminal dependence, and writes beneath its isolated working
directory. It does not trace system calls or prove the absence of reads and writes elsewhere.
# Command help
**Fixture:** `fixture-cli-help@2`
## Given
The built `termux-janitor` executable starts with standard input disconnected from a terminal and an
empty isolated working directory.
The executable receives exactly one argument, `--help`.
## When
The executable starts.
## Required invariants
- **`INV-HELP-SUCCESS`:** The process exits with the registered success status.
- **`INV-HELP-STDOUT`:**
Standard output equals the concise help generated from the canonical CLI registry.
- **`INV-HELP-OPTIONS`:**
The help names every registered option with its argument and summary.
## Forbidden effects
- **`NO-HELP-STDERR`:** Standard error remains empty.
- **`NO-HELP-FIXTURE-MUTATION`:**
The isolated working directory remains empty.
## Instrumentation
```zig tj-test
try fixture.given_program("termux-janitor");
try fixture.given_standard_input(.ignored);
try fixture.given_working_directory(.empty);
try fixture.given_arguments(&.{"--help"});
try fixture.when_run();
try fixture.then_inv_help_success();
try fixture.then_inv_help_stdout(.generated_cli_help);
try fixture.then_inv_help_options();
try fixture.forbid_no_help_stderr();
try fixture.forbid_no_help_fixture_mutation();
```
## Variations
Additional arguments, duplicated `--help`, other options, and operands are separate usage-error
scenarios.
## Limitations
This fixture detects output, status, terminal dependence, and writes beneath its isolated working
directory. It does not trace system calls or prove the absence of reads and writes elsewhere.