Skip to content

Add CI/CD: consistency validator, link check, tag-based releases#5

Merged
bfish1996 merged 1 commit into
mainfrom
ci-cd
Jul 10, 2026
Merged

Add CI/CD: consistency validator, link check, tag-based releases#5
bfish1996 merged 1 commit into
mainfrom
ci-cd

Conversation

@bfish1996

Copy link
Copy Markdown
Owner

What

  • scripts/validate.py — enforces the contracts the docs already declare: parses ontology.yaml / plugin.json / evals.json / config template / all SKILL.md frontmatter; frontmatter name must match its directory; plugin.json must list exactly the skills/ dirs; every ontology entity, property, relation, and fixed enum value must be covered by registry-schema.md and mapped (canonical:) in each connectors/*-schema.md guide.
  • .github/workflows/ci.yml — runs the validator + lychee offline link check on PRs and main. A third advisory job (PR-only, never blocking) sends changed schema docs to Ollama Cloud to flag semantic drift the mechanical check can't see; it skips silently unless the OLLAMA_API_KEY secret is set.
  • .github/workflows/release.yml — on a v* tag: verifies the tag matches plugin.json version, re-runs the validator, and publishes a GitHub Release whose body is the matching CHANGELOG.md section (fails if missing) plus auto-generated notes.
  • CHANGELOG.md seeded with v0.1.0; README gets a CI badge and the release convention.

Verified

  • validate.py passes on clean main and fails with a named violation for each broken invariant (skill removed from manifest, unmapped property in a connector guide, mismatched frontmatter name, enum value missing from prose).
  • Changelog extraction and tag↔version logic tested locally, including the missing-section failure path.
  • All relative markdown links resolve (one template file with [<source>](<url>) placeholders is excluded from lychee).

🤖 Generated with Claude Code

CI (PRs + main): scripts/validate.py enforces the documented contracts —
SKILL.md frontmatter, plugin.json ↔ skill dirs, and ontology.yaml coverage
in registry-schema.md and every connector schema guide; lychee checks
relative links; an advisory Ollama job reviews semantic drift in changed
schema docs. Releases: pushing vX.Y.Z verifies the version against
plugin.json, re-validates, and publishes a Release from the CHANGELOG.md
section.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@bfish1996 bfish1996 merged commit 7b862b5 into main Jul 10, 2026
3 of 4 checks passed
@bfish1996 bfish1996 deleted the ci-cd branch July 10, 2026 09:29
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.

1 participant