generated from coulomb/repo-seed
feat(cli): add open-reuse validate and register portfolio integrations
Some checks failed
ci / validate-registry (push) Has been cancelled
Some checks failed
ci / validate-registry (push) Has been cancelled
Implement Integration Definition validator CLI with schema and index checks, pytest suite, and CI workflow. Register open-cmis-tck and issue-core-gitea in the integration index. Closes OPEN-WP-0003 and OPEN-WP-0004.
This commit is contained in:
@@ -4,7 +4,7 @@ type: workplan
|
||||
title: "Integration CLI validator"
|
||||
domain: infotech
|
||||
repo: open-reuse
|
||||
status: ready
|
||||
status: finished
|
||||
owner: codex
|
||||
topic_slug: infotech
|
||||
created: "2026-06-24"
|
||||
@@ -32,56 +32,47 @@ patterns from reuse-surface `reuse-surface validate`.
|
||||
|
||||
```task
|
||||
id: OPEN-WP-0003-T01
|
||||
status: todo
|
||||
status: done
|
||||
priority: high
|
||||
state_hub_task_id: "70b8cead-3c16-4e48-ab8f-ee6f7cedf25e"
|
||||
```
|
||||
|
||||
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
|
||||
Result 2026-06-24: Added `pyproject.toml`, `open_reuse/` package, and CLI entry
|
||||
point. Documented install commands in `AGENTS.md` and
|
||||
`.claude/rules/stack-and-commands.md`.
|
||||
|
||||
## Implement validate command
|
||||
|
||||
```task
|
||||
id: OPEN-WP-0003-T02
|
||||
status: todo
|
||||
status: done
|
||||
priority: high
|
||||
state_hub_task_id: "0f8c8e25-1c1f-4f94-8771-71bcc3402db2"
|
||||
```
|
||||
|
||||
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.
|
||||
Result 2026-06-24: Implemented schema validation, index consistency checks,
|
||||
`--repos-base` external definition resolution, and `--fail-on-warnings`.
|
||||
|
||||
## Add tests and CI
|
||||
|
||||
```task
|
||||
id: OPEN-WP-0003-T03
|
||||
status: todo
|
||||
status: done
|
||||
priority: medium
|
||||
state_hub_task_id: "e84e7b00-43ec-429e-afa0-42cb8eaa0074"
|
||||
```
|
||||
|
||||
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`.
|
||||
Result 2026-06-24: Added `tests/test_validate.py` (8 tests) and
|
||||
`.gitea/workflows/ci.yml`.
|
||||
|
||||
## Update registry documentation
|
||||
|
||||
```task
|
||||
id: OPEN-WP-0003-T04
|
||||
status: todo
|
||||
status: done
|
||||
priority: medium
|
||||
state_hub_task_id: "cfd38f45-0c0a-4790-b666-c211983b3ee9"
|
||||
```
|
||||
|
||||
Update `registry/README.md` to reference `open-reuse validate` as the primary
|
||||
validation path. Mark manual checklist as fallback until CI is green.
|
||||
Result 2026-06-24: Updated `registry/README.md` with CLI as primary validation
|
||||
path; manual checklist retained as fallback.
|
||||
Reference in New Issue
Block a user