mirror of
https://github.com/NousResearch/hermes-agent.git
synced 2026-07-31 19:16:29 +00:00
fix(types): sweep invalid-parameter-default across core modules
Add `| None` to ~250 params across 30 files that were annotated as bare
`str`, `list`, `dict`, `int`, `Callable`, etc. but defaulted to None.
This is a big typechecking fix. each one cascades, making ty stop
narrowing those vars to None and clearing downstream
unresolved-attribute / not-subscriptable / invalid-argument-type errors.
Two type bugs surfaced and fixed during the sweep:
1. Lowercase `callable` (builtin function) used as type annotation in
28 callback params in agent_init.py + run_agent.py. `callable | None`
isn't valid. Fixed to `Callable` (typing).
2. String forward-ref with `| None` (`"IterationBudget" | None`) is
wrong because `|` can't OR a str with NoneType. Fixed to
`Optional["IterationBudget"]`.
Also:
- Configure ty to exclude tests/ via [tool.ty.src] in pyproject.toml
(tests are ~57% of diagnostics, lowest-value typing target)
ty diagnostics: 13,290 -> 4,648 (core only, tests excluded)
Tests: 496 passed, 0 failed
This commit is contained in:
parent
cfb9459cc8
commit
169bfe20e4
32 changed files with 494 additions and 313 deletions
36
cli.py
36
cli.py
|
|
@ -3708,15 +3708,15 @@ class HermesCLI(CLIAgentSetupMixin, CLICommandsMixin):
|
|||
|
||||
def __init__(
|
||||
self,
|
||||
model: str = None,
|
||||
toolsets: List[str] = None,
|
||||
provider: str = None,
|
||||
api_key: str = None,
|
||||
base_url: str = None,
|
||||
max_turns: int = None,
|
||||
model: str | None = None,
|
||||
toolsets: List[str] | None = None,
|
||||
provider: str | None = None,
|
||||
api_key: str | None = None,
|
||||
base_url: str | None = None,
|
||||
max_turns: int | None = None,
|
||||
verbose: Optional[bool] = None,
|
||||
compact: bool = False,
|
||||
resume: str = None,
|
||||
resume: str | None = None,
|
||||
checkpoints: bool = False,
|
||||
pass_session_id: bool = False,
|
||||
ignore_rules: bool = False,
|
||||
|
|
@ -15999,23 +15999,23 @@ def _run_kanban_goal_loop_q(cli: "HermesCLI", first_response: str) -> None:
|
|||
|
||||
|
||||
def main(
|
||||
query: str = None,
|
||||
q: str = None,
|
||||
image: str = None,
|
||||
toolsets: str = None,
|
||||
skills: str | list[str] | tuple[str, ...] = None,
|
||||
model: str = None,
|
||||
provider: str = None,
|
||||
api_key: str = None,
|
||||
base_url: str = None,
|
||||
max_turns: int = None,
|
||||
query: str | None = None,
|
||||
q: str | None = None,
|
||||
image: str | None = None,
|
||||
toolsets: str | None = None,
|
||||
skills: str | list[str] | tuple[str, ...] | None = None,
|
||||
model: str | None = None,
|
||||
provider: str | None = None,
|
||||
api_key: str | None = None,
|
||||
base_url: str | None = None,
|
||||
max_turns: int | None = None,
|
||||
verbose: Optional[bool] = None,
|
||||
quiet: bool = False,
|
||||
compact: bool = False,
|
||||
list_tools: bool = False,
|
||||
list_toolsets: bool = False,
|
||||
gateway: bool = False,
|
||||
resume: str = None,
|
||||
resume: str | None = None,
|
||||
worktree: bool = False,
|
||||
w: bool = False,
|
||||
checkpoints: bool = False,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue