Skip to content

fix: stop rendering phantom --empty-* flags in help - #202

Merged
SkyeAv merged 2 commits into
mainfrom
cli/help-noise
Sep 29, 2026
Merged

SkyeAv merged 2 commits into
mainfrom
cli/help-noise

Conversation

@SkyeAv

@SkyeAv SkyeAv commented Sep 29, 2026 •

Copy link
Copy Markdown
Owner

Cyclopts auto-generates an --empty-<name> reset flag for every list parameter and gives it its own help row; on agent, --empty-pmc-ids even rendered [required], reading as a mandatory flag an agent must pass. List parameters now opt out, and a sweep test keeps the help pages phantom-free.

Suppression

  • Opt-out: agent's pmc_ids and local, and quick-map's terms, prioritize, avoid, exclude_prefixes, and exclude_regex, set Parameter(negative="") in src/tablassert/cli.py, which stops cyclopts from generating the unused reset negation.
  • Sweep test: tests/test_cli_help_friendly.py::test_no_help_page_renders_a_phantom_empty_flag renders all eight commands' --help and fails on any --empty- row, so a future list parameter cannot reintroduce the noise.

Changelog

  • Link commit: the stack's tip also fills the CHANGELOG.md Unreleased entry's PR link (#201), which could not be written before the stack existed.

Testing

  • uv run --extra cli pytest tests/test_cli_help_friendly.py -q -> 8 passed
  • Full local gate on this stack tip: uv run pytest -q (dev + agent + optimize + distill + cli + qc + log extras) -> 1760 passed, 3 skipped; uv run pyright -> 0 errors; uv run ruff check . and uv run ruff format --check . -> clean
  • Note: running the full suite with the [aria2] extra installed trips a pre-existing tests/test_fullmap.py::test_build_fullmap_cli_function_smoke failure (the test monkeypatches only the Python downloader; auto-selection switches to aria2c). Unrelated to this stack: the diff touches none of the downloader-selection code.

@SkyeAv
SkyeAv added this pull request to stack #203 September 29, 2026 22:33
@coderabbitai

coderabbitai Bot commented Sep 29, 2026 •

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Advanced

Run ID: 3d4d2916-1918-4dd4-bde4-511be7fe3aa2


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@SkyeAv

SkyeAv commented Sep 29, 2026

Copy link
Copy Markdown
Owner Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Sep 29, 2026 •

Copy link
Copy Markdown
⚠️ Action not completed

Review rate limited.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@SkyeAv
SkyeAv force-pushed the cli/help-noise branch 2 times, most recently from 8ed9c39 to f396d85 Compare September 29, 2026 22:53
Base automatically changed from cli/babel-version-flag to main September 29, 2026 22:55
Cyclopts auto-generates an --empty-<name> reset flag for every list
parameter and gives it its own help row; agent's --empty-pmc-ids even
rendered [required], reading as a mandatory flag. quick-map's terms and
filter lists and agent's pmc_ids/local now set Parameter(negative="")
to opt out, and a sweep test asserts no command's --help contains an
--empty- row so a future list parameter cannot reintroduce the noise.
@SkyeAv
SkyeAv merged commit 90b6729 into main Sep 29, 2026
5 checks passed
SkyeAv added a commit that referenced this pull request Sep 29, 2026
Cut 19.4.0 and bump the package version in pyproject.toml,
CITATION.cff, and the uv.lock self-entry.

Minor: one new capability plus four help/UX fixes since 19.3.0.
Enum-ranged qualifier columns are now audited against their closed
Biolink vocabulary at build time, failing with
`qualifier-vocabulary-violation` (#198). The CLI help surface got a
sweep: `distill-weigh`'s `--policy` becomes a `Literal` with a full
docstring Args section (#199), `build-kg`/`validate`/`validate-kgx`
gain per-flag help matching docs/cli.md (#200), `build-fullmap`'s
shadowed `--version` flag is renamed to `--babel-version` (#201), and
phantom `--empty-*` list-reset flags no longer render in any help
(#202).

Changelog:
- Versioned the Unreleased section as 19.4.0, added the missing
  Fixed entries for #199, #200, and #202 with PR links.

Docs: none needed here; docs/cli.md and the flag docs shipped with
the feature PRs, and mkdocs builds strict.

Testing:
- make check -> All checks passed! (1663 passed, 52 skipped;
  rust: 127/11/17/1 ok)
- uv run --no-sync mkdocs build --strict -> pass
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant