SKILL.md
Debug Logging Assistant
Quick start
- Read the target code and recent failures to understand where visibility is missing.
- Add debug logs only where they help explain flow, inputs, branching, or error context.
- Keep logs small and descriptive: what is happening, key identifiers, and outcomes.
- Do not change control flow or data; only add logs. Avoid logging every step.
- See
references/logging_rules.mdfor placement and messaging guidelines.
Workflow
- Inspect
- Identify high-signal spots: entry points, external calls, branching paths, retries, and error handling. - Note important identifiers (IDs, counts, feature flags) that disambiguate paths.
- Place logs
- Log before/after risky operations and around decisions that affect downstream behavior. - Prefer one concise log per logical block over multiple low-value messages. - Keep sensitive data out; include only safe identifiers or summaries.
- Write messages
- Use consistent prefixes and log levels (debug/trace) already used in the codebase. - Capture intent: action, inputs of interest, and outcomes (success/failure, counts). - Avoid narrating trivial steps or restating obvious code.
- Validate
- Ensure no functional changes: no refactors, no reordered logic, no added branching. - Confirm log volume is reasonable and won’t spam hot paths. - Re-run applicable tests if available; otherwise double-check for typos.
Reference
references/logging_rules.md: detailed rules for meaningful debug logging.