Skip to content

feat: add repo-validation lint checks and tests (closes #13) - #18

Merged
rob-archastro merged 1 commit into
mainfrom
feat/ci-lint-checks
Apr 13, 2026
Merged

feat: add repo-validation lint checks and tests (closes #13)#18
rob-archastro merged 1 commit into
mainfrom
feat/ci-lint-checks

Conversation

@rob-archastro

Copy link
Copy Markdown
Contributor

What changed

Ports the 5 repo-validation lint checks and 105 unit tests from archagents, adapted for the archastro-cli layout. Wired into the existing check-plugin-content.yml workflow. Also SHA-pins the installer smoke test workflow.

Checks

  1. Manifest consistency — version/name agreement across all 3 plugin manifests
  2. Compat key refs — every plugins.<name>.minimumCliVersion reference resolves
  3. Slash command refs — every /<plugin>:<command> reference resolves to a real command file
  4. Hardcoded versions — flags literal N.N.N in skill/command prose (excludes frontmatter and fenced code)
  5. Version bump on content change — content changes require a manifest version bump

Files

  • scripts/check_plugin_repo.py (612 lines) — all 5 checks + runner
  • scripts/test_check_plugin_repo.py (1449 lines) — 105 unit tests
  • .github/workflows/check-plugin-content.yml — 3 new steps (tests, checks, fetch-depth: 0)
  • .github/workflows/installer-smoke-test.yml — SHA-pinned actions/checkout

Risk

Low. Adds CI checks that show red on violations. No existing behavior changed. Advisory until branch protection is enabled.

Testing

  • 105 unit tests pass locally
  • All 5 checks clean against real repo
  • Generator drift check still passes (13 files in sync)

🤖 Generated with Claude Code

Ports check_plugin_repo.py from archagents with path constants adapted
for the archastro-cli layout. All 5 checks are included:

1. Manifest consistency — version/name agreement across the 3 manifests
2. Compat key refs — plugins.<name>.minimumCliVersion references resolve
3. Slash command refs — /<plugin>:<command> references resolve
4. Hardcoded versions — flag literal N.N.N in skill/command prose
5. Version bump on content change — content changes require a manifest
   version bump so plugin caches refresh

105 unit tests ported from archagents (path fixtures adjusted for
archastro layout). Wired into check-plugin-content.yml as two new
steps before the existing drift check. fetch-depth: 0 added for the
version-bump check. SHA-pinned installer-smoke-test.yml while here.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@rob-archastro
rob-archastro merged commit f76db09 into main Apr 13, 2026
4 checks passed
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