radar-ledger-update — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited radar-ledger-update (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
TRENDS.md is the single source of truth and later sessions parse it. The structure is a contract.
# Trend ledger — AI Radar, then Last updated: YYYY-MM-DD, then thestage legend.
## Active trends, ## observation_queue,## source_rotation, ## strategy_notes, ## study_shelf, ## calibration.
## source_rotation and ## calibration are POINTER stubs only: their realappend-only content lives in logs/source_rotation.md and logs/calibration.md respectively. Keep the two stub headers (the section order is the contract) but NEVER inline log lines back into TRENDS.md — appends go to the logs/ files.
### [id: slug-NNN] Title with fields alias, optionalpinned: true, stage, confidence, first_observed, last_evidence, evidence: (list), notes:.
- YYYY-MM-DD — URL — one line of context.alias before creating a newtrend. New trends take the next free NNN and start at seed or emerging.
EXISTING trend's axis, append it as EVIDENCE there — a single primary suffices for an existing trend; the ≥3-source bar is only for CREATING a trend; (b) if the queue now holds ≥3 independent groups on one untracked sub-theme, promote that cluster to a seed trend; (c) else it stays a queue item. Leaving an on-axis primary in the queue (hoarding evidence) or a named primary in report prose only is a routing failure.
last_evidence equalto the newest evidence date.
evidence, justified in notes. Demotions are always allowed. 21+ days without evidence → dormant; at 45+ days the weekly pass moves the entry to ARCHIVE.md as a one-line post-mortem.
pinned: true): NEVER auto-archived, no matter how longwithout evidence — they are the curator's standing-watch axes. They still follow the normal stage rules, INCLUDING going dormant when quiet (the ledger stays truthful about activity); they simply never leave the board. Only the curator adds/removes a pin (or the agent proposes it via amendment).
observation_queue items are dated and marked "unverified" unless opened. Itis a WORKING SET (signals pending verification), not a knowledge store — keep it bounded to a soft cap of ~25 live items by a CAP-DRIVEN burndown that runs every session, including quiet/no-evidence passes: while the queue is OVER the cap, resolve the oldest items toward the cap that run regardless of what the scan found; at/under the cap it stops on its own (resolve only the 1–2 oldest if stale). This is owed every run, never deferred to the weekly — a no-evidence pass is not a no-op for the queue. Items leave ONLY by resolution: promoted to a trend (the signal is captured there) or dropped with a one-line reason in the day's/week's report (write-once, permanent). NEVER silently delete — because every removal is either a promotion or a recorded drop, shrinking the queue loses no knowledge. Re-date an item only if it is genuinely still worth watching.
logs/source_rotation.md (the coveragelog; not the TRENDS.md stub). Append dated corrections to the strategy_notes section of TRENDS.md; never delete curator entries.
study_shelf: newest first, format date — [name](url) — one line of why;single-artifact items allowed (the trend bar does not apply), opened primary sources only.
calibration (now logs/calibration.md) is append-only and written by weeklyruns only (see the radar-self-eval skill); daily runs never touch it.
Last updated line. Keep everything in English.grep -n '^## ' TRENDS.md
# expected, in order: Active trends, observation_queue, source_rotation, strategy_notes, study_shelf, calibration
grep -c '^### \[id: ' TRENDS.md # trend count matches expectations
grep -nE '^ - [0-9]{4}-[0-9]{2}-[0-9]{2} — ' TRENDS.md | head -3 # evidence format
grep -n '^Last updated:' TRENDS.md # date is today
# the two externalized logs must exist and only grow (append-only):
test -f logs/source_rotation.md && tail -1 logs/source_rotation.md | head -c 80
test -f logs/calibration.md && tail -1 logs/calibration.md | head -c 80
# TRENDS.md must NOT have regrown a log body (the stubs stay one-line pointers):
awk '/^## source_rotation/{n=0} /^## strategy_notes/{print "rotation stub lines:", n} {n++}' TRENDS.mdIf a check fails, fix the file before committing. Commit and push per the conventions in AGENTS.md.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.