wc-signal-emitter
Installation
SKILL.md
wc-signal-emitter — validate + persist signals
Implements the persistence side of footballfantasy/context/frameworks/signal-framework.md. Agents communicate through structured signal files; this skill is the gate that keeps those files trustworthy, so downstream agents can read rather than recompute.
Workflow
- [ ] 1. Receive the signal (frontmatter + body) and its declared type
- [ ] 2. Validate frontmatter, type, numeric ranges, source citations
- [ ] 3. If valid → write to signals/YYYY-MM-DD-<type>[-<scope>].md and return the path
- [ ] 4. If invalid → do NOT persist; return the validation errors so the caller can fix and retry
Validation checklist
- Frontmatter present:
type,round,date,emitted_by,confidence(0–1),source_urls. - Type known: one of the registry in
signal-framework.md(scout,player-ev,clean-sheet,fixture,ownership,candidate,fitness,offspring,verify,chip-plan,transfer-plan,board). Reject unknown types. - Numeric ranges: any signal that declares a range is checked against it (probabilities ∈ [0,1]; ownership ∈ [0,100]; xEV ≥ 0; confidence ∈ [0,1]). Out-of-range → reject.
- Citations: every factual claim in the body traces to a
source_urlsentry or is explicitlymanager-provided. A signal asserting a predicted XI / injury / price / ownership with no URL → reject (or forceconfidence ≤ 0.35and a "needs confirmation" flag if the caller insists it's a best-effort estimate). - Confidence sanity: confidence matches the framework bands (unconfirmed load-bearing fact ⇒ ≤0.35).