Skip to content

fix(ci): clear ruff backlog + accept quantization shorthand#2

Merged
zenprocess merged 1 commit into
mainfrom
ci-cleanup-spec009
Apr 8, 2026
Merged

fix(ci): clear ruff backlog + accept quantization shorthand#2
zenprocess merged 1 commit into
mainfrom
ci-cleanup-spec009

Conversation

@zenprocess

Copy link
Copy Markdown
Owner

Summary

CI has been red on `main` since this package was created. This PR clears it.

  • ruff: auto-fix 16× F401 unused-import + wrap one E501 line
  • schema: `QuantizationSection` accepts both structured form (`{method: fp8, bits: 8}`) and bare-string shorthand (`fp8`, `nvfp4`, etc.) via `field_validator`. Three registry YAMLs were using the shorthand and silently failing validation.
  • bit width inferred from a small known-method table; unknown shorthands default to 0 bits rather than failing the load.

Verified locally

  • `ruff check servingcard/ tests/` — clean
  • `pytest tests/` (excluding env-dep `test_backends.py`) — 47 passed
  • `python -m servingcard validate registry/**/*.yaml` — 6/6 VALID

Test plan

  • CI test job (3.10/3.11/3.12) green
  • CI validate-registry job green
  • Reviewer: confirm schema backwards-compat (the structured form still parses unchanged)

CI has been red since the package was created — this clears it.

- ruff: auto-fix 16 unused-import warnings (F401), wrap one long line (E501)
- schema: QuantizationSection accepts both structured form ({method:fp8, bits:8})
  and bare-string shorthand (fp8, nvfp4, etc.) via field_validator. Three
  registry YAMLs were using the shorthand and silently failed validation.
  Bit width inferred from a small known-method table; unknown shorthands
  default to 0 bits rather than failing the load.

Verified locally:
  - ruff check servingcard/ tests/  → clean
  - pytest tests/ (excluding test_backends.py which is env-dep)  → 47 passed
  - python -m servingcard validate registry/**/*.yaml  → 6/6 VALID
@codecov-commenter

Copy link
Copy Markdown

Welcome to Codecov 🎉

Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests.

ℹ️ You can also turn on project coverage checks and project coverage reporting on Pull Request comment

Thanks for integrating Codecov - We've got you covered ☂️

@zenprocess zenprocess merged commit 9867fc1 into main Apr 8, 2026
4 checks passed
@zenprocess zenprocess deleted the ci-cleanup-spec009 branch April 8, 2026 07:20
zenprocess pushed a commit that referenced this pull request Apr 8, 2026
Two related fixes after the audit on PR #2:

1. validate CLI accepts files, multiple paths, and directories (recursed
   for *.yaml/*.yml). exists=True/file_okay/dir_okay on the typer Argument
   so a typo or missing path fails before reaching the function body.
   Always loud about what was found ("N/M valid"); exits 2 if no .yaml
   files matched (distinct from validation failure exit 1) so the CI
   can't ever silently iterate a literal glob again.

2. .github/workflows/ci.yml validate-registry collapses to one
   invocation: 'python -m servingcard validate registry/'. No more
   bash-glob fragility.

3. Registry leak scrub: 4 YAMLs published absolute /home/<user>/models/
   paths in serving.engine_args.model. Replaced with \${MODEL_DIR}/...
   convention. All 6 registry cards still validate.

4. Tests: 4 new regression tests covering missing path, directory recurse,
   empty directory (exit 2), and multi-path. 16/16 passing.
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.

2 participants