plesty check enforces three compliance levels. Each level is a strict superset of the previous one. All hub modules are expected to reach Quantum before publishing a release.
Tier overview
Pixel
Fast pre-commit check. Metadata and code quality only.
Gates 1–2
Nebula
All local static analysis. No network access required.
Gates 1–6
Quantum
Full verification including tests, coverage, security audit.
Gates 1–11 + d1 + CI gates 12–14
Gate table
| Gate | Name | Tier | Standard | What is checked |
|---|---|---|---|---|
| 1 | Metadata & Namespace | [SDK] |
pixel | pyproject.toml required fields; plesty-<module> naming; plesty/<module>/ directory; module_type if present |
| 2 | Code Hygiene | [SDK] |
pixel | ruff lint + format check; mypy strict type checking |
| 3 | API Interface Matching | [SDK] |
nebula | Classes importing plesty.lib.* must inherit from the imported base class |
| 4 | Data Layer Compliance | [SDK] |
nebula | All public methods have explicit return type annotations |
| 5 | Documentation Completeness | [SDK] |
nebula | docs/index.md exists; CHANGELOG.md exists and updated since last tag |
| 6 | Dependency Coexistence | [SDK] |
nebula | No exact pins (==x.y.z) in pyproject.toml |
| 7 | Automated Test Coverage | [SDK+CI] |
quantum | pytest --cov ≥ 80% coverage |
| 8 | Semantic Versioning | [SDK+CI] |
quantum | Advisory: reminder to tag when unreleased commits exist |
| 9 | Licensing Compliance | [SDK+CI] |
quantum | LICENSE and COPYING files present; license field in pyproject.toml |
| 10 | Vulnerability Audit | [SDK+CI] |
quantum | No known CVEs in dependencies via pip-audit / OSV database |
| 11 | Docs Build | [SDK] |
quantum | Sphinx build with zero errors/warnings (skipped when CI=true) |
| d1 | Device API Pipeline | [Device] |
quantum | 8 DevicePipeline mock-gate test functions present and passing |
| 12 | Docs Deploy | [CI] |
quantum | Sphinx build pushed to docs-build branch via CI_BOT_TOKEN |
| 13 | Secret Detection | [CI] |
quantum | GitLab SAST secret scanner |
| 14 | Build & Release | [CI] |
quantum | Wheel built; uploaded to PyPI on v* tag push |
Enforcement points
[SDK]— enforced locally byplesty check. The pre-push hook (installed byplesty init) runs these before everygit push.[SDK+CI]— enforced locally for pre-release verification and repeated by CI in a clean environment.[CI]— CI only; never run locally. Gate 12 requiresCI_BOT_TOKEN, Gate 14 requiresPYPI_TOKEN.[Device]— activated only whenmodule_type = "device"is set in[tool.plesty].
Typical runtime
| Standard | Typical local runtime |
|---|---|
| pixel | ~5 s |
| nebula | ~15 s |
| quantum | ~60–120 s (depends on test suite size) |