Skip to content

Features/implement subcommands#7

Open
crossjam wants to merge 10 commits into
mainfrom
features/implement-subcommands
Open

Features/implement subcommands#7
crossjam wants to merge 10 commits into
mainfrom
features/implement-subcommands

Conversation

@crossjam

Copy link
Copy Markdown
Owner

Worked with Gemini CLI to implement the full suite of commands.

Needs manual confirmation. Saving improvements to testing for a future PR.

@crossjam

Copy link
Copy Markdown
Owner Author

I might just sick copilot on the review.

crossjam added 2 commits June 14, 2026 01:27
- Replace typer.echo(..., color=X) with typer.secho(..., fg=X) to
  fix color parameter type mismatch (bool|None vs string literal)
- Fix optional parameter type annotations: int→int|None, str→str|None
  for parameters with None defaults
- Add cast(MutableMapping, ...) for tomlkit nested dict access
  to resolve Item|Container union type inference issues

All 88 type diagnostics resolved. 34/34 tests passing.
@crossjam

Copy link
Copy Markdown
Owner Author

Type Checking Fixes

Resolved all 88 type diagnostics reported by ty across 10 source files.

Changes

  • typer.echo(..., color=X)typer.secho(..., fg=X) (86 occurrences) — Click's echo accepts a bool | None for the color parameter (enable/disable ANSI), not a color name. Switched to secho with fg for proper colored terminal output.

  • Optional type annotations fixed (3 occurrences) — Parameters with = None defaults but non-optional type annotations (int, str) in auth.py, subscriptions.py, and supporting.py were corrected to int | None / str | None.

  • Tomlkit nested dict access (4 occurrences in config.py) — Added cast(MutableMapping, ...) to resolve Item | Container union type inference when writing to nested TOML tables.

  • Stray package-lock.json removed — Empty Node.js artifact was untracked; deleted and added to .gitignore.

Validation

  • ruff lint — All checks passed
  • ty typecheck — All checks passed (was 88 failures)
  • pytest — 34/34 passed

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