Files
open-reuse/workplans/OPEN-WP-0003-integration-cli-validator.md
tegwick a7c0c910fe docs(workplans): add OPEN-WP-0003 and OPEN-WP-0004
OPEN-WP-0003: CLI validator for Integration Definition schema and index checks.
OPEN-WP-0004: Portfolio survey and registration of additional integrations.
2026-06-24 18:16:42 +02:00

2.3 KiB

id, type, title, domain, repo, status, owner, topic_slug, created, updated
id type title domain repo status owner topic_slug created updated
OPEN-WP-0003 workplan Integration CLI validator infotech open-reuse ready codex infotech 2026-06-24 2026-06-24

Integration CLI validator

Replace the manual validation checklist in registry/README.md with an automated open-reuse validate command. Follows OPEN-WP-0002 schema v0.1 and patterns from reuse-surface reuse-surface validate.

Design decisions

  • Runtime: Python package (open_reuse/) with uv/pyproject.toml, matching reuse-surface CLI conventions.
  • Scope: Validate Integration Definition YAML against schemas/integration.schema.yaml and check index consistency in registry/indexes/integrations.yaml.
  • Out of scope: Upstream monitoring, validation harness execution, or federation publish — those belong to later workplans.

Bootstrap Python package

id: OPEN-WP-0003-T01
status: todo
priority: high

Add pyproject.toml, open_reuse/ package skeleton, and entry point open-reuse with a validate subcommand stub. Include jsonschema and pyyaml as dependencies. Document install and run commands in AGENTS.md and .claude/rules/stack-and-commands.md.

Implement validate command

id: OPEN-WP-0003-T02
status: todo
priority: high

Implement open-reuse validate with:

  • Schema validation of one or more *.integration.yaml files (default: scan registry/integrations/ if present).
  • Index checks: every indexes/integrations.yaml row has required fields; id and reuse_mode are consistent when the definition file is reachable.
  • --fail-on-warnings for promotion-gate checks (missing maintainers on active status, missing index row for local definitions).
  • Exit code 0 on success, non-zero on errors.

Add tests and CI

id: OPEN-WP-0003-T03
status: todo
priority: medium

Add tests/test_validate.py covering schema pass/fail, index consistency, and the markitect-quarkdown reference fixture. Add .gitea/workflows/ci.yml running pytest on push/PR to main.

Update registry documentation

id: OPEN-WP-0003-T04
status: todo
priority: medium

Update registry/README.md to reference open-reuse validate as the primary validation path. Mark manual checklist as fallback until CI is green.