Skip to content

Add a root CLI test suite and public test/build CI gate #64

Description

@benagentai93-dot

Baseline

  • Release: v1.3.1
  • Git commit: 5a306f8956cb1eeae69f9709de0e4d61b44e11e7

Reproduction

After restoring the published root pyproject.toml:

git clone https://github.com/google/agents-cli.git
cd agents-cli
git checkout 5a306f8956cb1eeae69f9709de0e4d61b44e11e7
# restore the v1.3.1 sdist pyproject.toml
test -d tests
uv run pytest

Actual behavior

The repository has no root tests/ directory and no CLI test/build workflow. Because the published pytest configuration points at tests, pytest falls back to recursive discovery when that directory is absent and tries to collect tests embedded in Jinja scaffold templates. The baseline run produced 8 template collection errors.

The only public workflow at this baseline builds documentation; it does not lint, type-check, test, build, or smoke-test the CLI package.

Expected behavior

A normal root pytest invocation should collect real CLI tests without descending into scaffold templates, and CI should verify the supported Python versions and the installable wheel.

Minimal fix

  • Add a real root tests/ directory with focused package/CLI smoke tests.
  • Add one public CI workflow for Python 3.11 and 3.13 that runs lint, type checking, tests, build, and an installed-wheel --version smoke test.
  • Do not add a lockfile solely for this gate.

Validated implementation: benagentai93-dot@55fb5f1

Test evidence

On both Python 3.11 and 3.13:

  • ruff check src tests: passed
  • ty check src: passed
  • 2 root pytest smoke tests: passed
  • uv build: passed
  • built wheel installation plus agents-cli --version: passed

The recursive Jinja template collection errors no longer occur.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions