agentleFS
TheCollieryTheColliery/CoalMine/skills/telemetry-canary/SKILL.md

telemetry-canary

Skill15 starsChanged 6 days agoApache-2.0View on GitHub

Observability and structured logging canary — checks for structured logs (JSON), OpenTelemetry metrics/traces, proper error stack traces, flags empty catches or silent log swallowing, and flags sensitive data written to logs. Triggers on keywords: "/telemetry-canary", "telemetry-canary", "observability audit", "structured logging". Use when adding or changing logging, metrics, tracing, or error-handling code.

1 other project uses a version of this.

Adopted by

Most recently taken up by

  • Other versions1 project uses a version of this.

    Word for word · 1

    1. HetCreep/CoalMine★ 15100% same

    Edited · 0

    None found.

    Wrote their own version · 0

    None found.

    How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.

  • In this repository8 other files it gives its agents.

The file

Files
SKILL.md

Telemetry Canary (Observability & Logging Audit)

<!-- SHARED:LANGUAGE_HEADER -->

Audit code for proper telemetry instrumentation — ensure the app is not a black box in production, and that what it logs does not leak.

Auditing Categories

  1. Empty / Silent Catch — catch blocks that swallow exceptions without logging a stack trace or forwarding the error.
  2. Unstructured Logs — plain-string logging in server code (prefer JSON / structured key-value for cloud queries).
  3. No Correlation ID — operations crossing boundaries (HTTP/gRPC/threads) without propagating a trace/correlation ID.
  4. Missing Metrics — critical transactions (checkout, auth, errors) lacking counter/histogram instrumentation.
  5. No Stack Traces — errors logged without stack context (logger.error(e.message) instead of logger.error(e)).
  6. Sensitive data in logs — a log call in code a runtime loads whose argument is a request body, an Authorization/Cookie/Set-Cookie header (or the whole headers object), or a prompt or output value; logs that leave the machine keep it.

Per-stack grep patterns and right/wrong shapes per category: read references/checks.md before scanning.

Fix mode (choice-gated)

In Agent Context, after the report, present via ask_question:

  • Apply safe logs: insert error logging into empty catch blocks (standard logger template) + stack-trace mapping. Each fix: checkpoint (copy the touched file(s) aside, or use an isolated worktree — never git stash/git commit, which can hide or include unrelated staged/unstaged user work) → record a build+test BASELINE → apply → build + tests → auto-revert only if a NEW failure appeared versus the baseline.
  • Let me pick: user selects which telemetry gaps to resolve.
  • Report only: exit unchanged.

Grants & denials (CLASSIFY-BLOCK)

classstep it powersgranton denial
readscan logging/metrics/error paths for the categories aboveRead·Grep·Globrefuse that file, name it — never a clean bill
writeFix mode's safe-log apply, incl. checkpoint → baseline → build+tests → auto-revert only on a NEW failureEdit·Bash (checkpoint/build/revert need exec)report the fix as NOT applied AND the checkpoint/revert as NOT available, never claim done
<!-- SHARED:CLASSIFY_BLOCK -->

Output

| file:line | category | severity | finding | recommendation |

Severity: CRITICAL (swallowed error with state mutation; a confirmed secret value written to a log) · HIGH (missing stack trace in error logs; sensitive data logged where the Worker config ships logs off the machine) · MEDIUM (unstructured log in API boundary; sensitive data logged where logs are only seen live) · LOW (minor trace gaps)

<!-- SHARED:REPORTING_FOOTER --><!-- SHARED:ORCHESTRATION --><!-- SHARED:ESCALATION_FOOTER -->

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.