feat(telemetry-sweep): F-013 — per-skill references via PR #6 mechanism - #16
Merged
Merged
Conversation
F-013 RED bar. Iterates core/skills/*/SKILL.md, parses YAML frontmatter, and asserts each skill's references: array contains rules/telemetry.md (Path A — the PR #6 mechanism). Fails today because no skill declares the reference yet; will pass after the sweep lands. Self-tests against four fixtures (has, has-multi, missing, no-key) so the matcher itself is defended. Spec: specs/telemetry-skill-reference-sweep.md AC-020..022 Plan: docs/plans/telemetry-skill-reference-sweep-plan.md § Phase 1 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…ll 27 skills Closes Swarm F's M3-deferred per-skill telemetry reference sweep. Every core/skills/*/SKILL.md now declares `rules/telemetry.md` in its `references:` frontmatter array via the PR #6 mechanism (Path A). - 17 skills get a fresh `references: ["rules/telemetry.md"]` entry (agents-md, away, back, brand, changelog, implementer, init, learnings, milestone, optimize, plan, promote, reviewer, roadmap, spec, test-writer, version) - 10 skills append `rules/telemetry.md` to existing references lists (cycle, verify, deploy, docs, retro, tdd-cycle, infographic, dashboard, brand-update, ux) — preserves existing entries and order The contract documented in core/rules/telemetry.md is now discoverable from any individual SKILL.md. Coverage gated by tests/telemetry-sweep/test-skill-reference-coverage.sh. No body changes. No behavior changes. No schema additions. plugins/add/ regenerated via scripts/compile.py; codex output unchanged (`references:` is stripped during codex frontmatter projection — same behavior as `allowed-tools`). Spec: specs/telemetry-skill-reference-sweep.md — AC-001a, AC-003a, AC-010, AC-011, AC-014, AC-015, AC-023, AC-024 satisfied. PR #6 (merged 2026-04-26 at 3522a8f) unblocked Path A. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Flips § 7 audit from 27× pending → 27× swept with per-skill notes (fresh entry vs. appended). Records the 10 skills that already had `references:` pre-sweep (cycle, verify, deploy, docs, retro, tdd-cycle, infographic, dashboard, brand-update, ux) vs. the 17 that got fresh entries. Bumps spec status Draft → Shipped (Path A), revises target release v0.9.2 → v0.9.3, and adds a v1.0.0 revision-history entry crediting PR #6 as the unblocker. CHANGELOG [Unreleased] gets a `### Changed` entry summarizing the sweep for the next v0.9.x release notes. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
MountainUnicorn
force-pushed
the
feat/telemetry-skill-reference-sweep
branch
from
April 27, 2026 02:07
9e3daed to
aaa0161
Compare
MountainUnicorn
added a commit
that referenced
this pull request
Apr 27, 2026
Three plugin-family-review follow-ups bundled: - F-017 (#15) — jq declared as a documented runtime dependency. Strategy A: honest qualifier in README/CONTRIBUTING/PRD/marketplace.json, new docs/runtime-dependencies.md with per-OS install matrix, CI guard preventing the bare claim from regressing. - F-013 (#16) — telemetry per-skill reference sweep. Closes Swarm F's M3-deferred sweep via Path A (PR #6's references: frontmatter mechanism, now live). All 27 SKILL.md files now declare rules/telemetry.md; coverage test gates against future drift. - F-014 (#17) — executable secrets scanner. Closes the v0.9.0 declarative-gate gap. New core/lib/scan-secrets.sh + JSON pattern catalog + .secretsignore + override-trailer + advisory PreToolUse hook. Hard-block deferred to v0.10 pending F-012 hook-feedback semantics. Plus: cross-OS portability fixes in scan-secrets.sh caught by the new guardrails CI matrix (set -e + `[ ] && X` short-circuits firing on Linux bash 5+ but not macOS bash 3.2; ${#ARRAY[@]:-0} malformed default operator). Documented in commit messages on the feature branch. 122 tests across 12 fixture suites — all green at v0.9.3. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Closes Swarm F's M3-deferred per-skill telemetry reference sweep (F-013) using Path A — the
references:frontmatter mechanism that PR #6 unblocked when it merged at3522a8fon 2026-04-26.Every
core/skills/*/SKILL.mdnow declaresrules/telemetry.mdin itsreferences:array. The contract documented incore/rules/telemetry.mdis now discoverable from any individual SKILL.md, and a coverage test gates against future skills shipping without the reference.references: ["rules/telemetry.md"]entry (agents-md, away, back, brand, changelog, implementer, init, learnings, milestone, optimize, plan, promote, reviewer, roadmap, spec, test-writer, version)rules/telemetry.mdappended to existing references lists (cycle, verify, deploy, docs, retro, tdd-cycle, infographic, dashboard, brand-update, ux) — preserving existing entries and orderNo body changes. No behavior changes. No schema additions.
plugins/add/regenerated viascripts/compile.py.dist/codex/skill output is unchanged because Codex projection strips bothallowed-toolsandreferences:— same behavior the codex adapter already had.Path A confirmed (PR #6 mechanism)
Path B (body-prose
@referenceline) was the documented fallback. We're past that gate — Path A is live.AC Checklist
core/skills/*/SKILL.mddeclaresrules/telemetry.mdinreferences:(Path A)scripts/validate-frontmatter.pyaccepts the key (PR perf: Refactor rules and knowledge for on-demand loading and context window reduction #6 schema)references:is a list; existing entries preserved; ordering preservedtests/telemetry-sweep/test-skill-reference-coverage.shpython3 scripts/compile.py --checkcleanpython3 scripts/validate-frontmatter.pycleanTest plan
bash tests/telemetry-sweep/test-skill-reference-coverage.sh— 31 pass, 0 fail (4 fixture self-tests + 27 skill assertions)python3 scripts/validate-frontmatter.py— all frontmatter validpython3 scripts/compile.py --check— compile output matches committed artifactsbash tests/hooks/test-filter-learnings.sh— 4 passedbash tests/test-deletion-guardrail/test-test-deletion-guardrail.sh— 16 passedbash tests/codex-install/test-install-paths.sh— 7 passedbash tests/cache-discipline/test-cache-discipline.sh— 7 passedbash tests/secrets-handling/test-secrets-handling.sh— 12 passedbash tests/agents-md-sync/test-agents-md-sync.sh— 8 passedbash tests/telemetry-jsonl/test-telemetry-jsonl.sh— 12 passedbash tests/security/test-prompt-injection-defense.sh— 11 passedbash tests/rule-parity/test-rule-parity.sh— 5 passedCommits
test(telemetry-sweep): coverage fixture for per-skill references— RED bar with self-testing fixturesfeat(skills): F-013 — declare references: rules/telemetry.md across all 27 skills— GREEN sweep + regeneratedplugins/add/docs(spec): telemetry-skill-reference-sweep audit checklist filled— § 7 audit + CHANGELOG[Unreleased]Closes F-013 from plugin-family-release-hardening review.
🤖 Generated with Claude Code