Commit Graph

11 Commits

Author SHA1 Message Date
Bo 092b99dad9 feat(skills): add skill-eval.sh ms-backed quality gate (ag-yzoz #skill-eval) (#726)
## What

Adds `scripts/skill-eval.sh` — a thin gate that runs one skill's
`SKILL.md` through Jeff Emanuel's `ms` (meta_skill) `lint` + `validate`.
The wrapper decides the gate purely on whether a **blocking** `rule_id`
appears (ms's own severity/exit is not trusted):

- Blocking: `no-secrets`, `no-injection`, `safe-paths`,
`required-metadata`, `no-cycle`, `valid-version` → non-zero exit.
- Everything else → annotated only (`::warning::`), never fails.
- `ms` not on PATH (or `MS_BIN` missing) → **loud `::error::` hard-fail
(exit 3)**, never skip-and-pass — a silent skip would recreate the
no-evaluation gap this gate closes.

Planted `skills/_fixtures/{bad,good}-skill/SKILL.md` fixtures +
`tests/scripts/skill-eval.bats` (10 tests) exercise the
bad/good/ms-absent contracts.

## Fixture scoping

`skills/_fixtures/` is non-skill scaffolding (planted fixtures). The
skill-enumerating gates/generators are taught to skip `skills/_*` so the
fixtures never inflate the skill count (stays 82) or fail registry /
schema / wiring / runtime / count gates. Touched enumerators:
`generate-registry`, `validate-skill-schema`, `sync-skill-counts`,
`validate-skill-count`, `generate-skill-catalog`,
`generate-context-map`, `validate-manifests`, `check-wiring-closure`,
`validate-headless-runtime-skills`, `lib/sku_catalog.py`,
`check-alias-collisions`, `run-all`, `test-runtime-opencode-smoke`,
`release-smoke-test`, `smoke-test`, `validate-skill`.

Does **not** touch `validate.yml` — wiring skill-eval.sh into CI is a
separate bead.

Epic: ag-czzf

## Verification

- `bats tests/scripts/skill-eval.bats` → 10/10 pass (ms 0.1.2 on PATH)
- `shellcheck scripts/skill-eval.sh` → clean
- `check-registry-drift`, `validate-skill-schema`, `sync-skill-counts`,
`run-all`, opencode-smoke → all PASS with fixtures present, skill count
= 82 (fixtures excluded)

Closes-scenario: ag-yzoz#skill-eval
Bounded-context: BC2-Validation
Evidence: scripts/skill-eval.sh

---------

Co-authored-by: Cursor Agent <cursoragent@cursor.com>
2026-06-04 16:38:57 -04:00
Boden Fuller 98e581989c codex: retire stale artifact provenance metadata 2026-04-01 13:10:42 -04:00
Boden Fuller ea5d1148bb feat: harden codex hookless follow-up flows 2026-03-24 10:09:27 -04:00
Boden Fuller b5316baef7 fix: align codex skill bundle with runtime contract 2026-03-21 10:08:27 -04:00
Boshu2 7d5162591b fix: harden codex runtime skill parity 2026-03-18 16:19:51 -04:00
Boshu2 8e59cf1389 fix(skills-codex): audit + fix 60+ findings, strengthen CI gates
Skills content fixes:
- Add metadata.tier to all 54 skills-codex/ frontmatter
- Fix wrong-directory cross-refs in 11 skills (skills/ → ../)
- Remove Claude primitive leakage from 13 skills (TaskCreate,
  AskUserQuestion, read_file, Agent tool, claude-code-latest-features)
- Fix dead refs, link missing references, remove orphaned Claude files
- Fix malformed ..$X link syntax in brainstorm, codex-team, rpi, validation
- Minor skills/ fixes: release refs, using-agentops count, push sections

CI gate hardening (false-pass elimination):
- heal.sh: scan skills-codex/, add MISSING_TIER/MALFORMED_LINK/DUPLICATE_REF
- audit-codex-parity.py: +7 Claude primitive patterns, +WRONG_XREF_DIR
- validate-links.sh: add skills-codex/ to scan scope (726 → 1117 links)
- validate-codex-generated-artifacts.sh: frontmatter check, invoke audit
2026-03-15 13:51:49 -04:00
Boshu2 1420de852c fix(ci): deprecate sync-codex-native-skills.sh and remove parity drift checks
The sync script overwrites manual edits to skills-codex/. Since codex
skills are now manually maintained, this script is a footgun.

Changes:
- sync-codex-native-skills.sh: exits with error + deprecation message
- validate-codex-generated-artifacts.sh: removed parity drift enforcement
  (lines 138-186 that required source+codex to change together)
- install-codex.sh: skip sync call (skills-codex/ pre-built in bundle)
- install-codex-native-skills.sh: skip sync by default

Audit for drift manually: bash scripts/audit-codex-parity.sh
2026-03-14 18:51:16 -04:00
Boshu2 cc5fe93a6c fix(ci): replace rg with grep in codex artifact validator (rg not on CI runner) 2026-03-14 14:13:45 -04:00
Boshu2 62ce8b0d1c feat(skills): ag-wug epic + codex converter parity regen
- Add output_contract, effort tables, sparse checkout guidance to skills
- Update claude-code-latest-features.md across all skills
- Regenerate all 54 codex skills with improved converter rules
- Codex parity: 107 → 8 findings (92% reduction)
2026-03-14 02:27:59 -04:00
Boden Fuller 18c0db867c Hotfix Codex install docs and Athena metadata 2026-03-07 15:30:07 -05:00
Boden Fuller 9205270833 Harden local codex skill validation 2026-03-07 13:26:49 -05:00