返回 Skill 列表
extension
分类: 开发与工程无需 API Key

adr-code-traceability

在代码中添加ADR引用以实现可追溯性。触发条件 - ADR的可追溯性,代码引用,在代码中记录决策。

person作者: jakexiaohubgithub

ADR Code Traceability

Add Architecture Decision Record references to code for decision traceability. Provides language-specific patterns and placement guidelines.

When to Use This Skill

  • Creating new files as part of an ADR implementation
  • Documenting non-obvious implementation choices
  • User mentions "ADR traceability", "code reference", "document decision"
  • Adding decision context to code during /itp:go Phase 1

Quick Reference

Reference Format

ADR: {adr-id}

Path Derivation: ADR: 2025-12-01-my-feature/docs/adr/2025-12-01-my-feature.md

Language Patterns (Summary)

| Language | New File Header | Inline Comment | | ---------- | ------------------------------------ | --------------------------- | | Python | """...\n\nADR: {adr-id}\n""" | # ADR: {adr-id} - reason | | TypeScript | /** ... \n * @see ADR: {adr-id} */ | // ADR: {adr-id} - reason | | Rust | //! ...\n//! ADR: {adr-id} | // ADR: {adr-id} - reason | | Go | // Package ... \n// ADR: {adr-id} | // ADR: {adr-id} - reason |

See Language Patterns for complete examples.


Placement Decision Tree

Is this a NEW file created by the ADR?
├── Yes → Add reference in file header
└── No → Is the change non-obvious?
    ├── Yes → Add inline comment with reason
    └── No → Skip ADR reference

See Placement Guidelines for detailed guidance.


Examples

New File (Python)

"""
Redis cache adapter for session management.

ADR: 2025-12-01-redis-session-cache
"""

class RedisSessionCache:
    ...

Inline Comment (TypeScript)

// ADR: 2025-12-01-rate-limiting - Using token bucket over sliding window
// for better burst handling in our use case
const rateLimiter = new TokenBucketLimiter({ rate: 100, burst: 20 });

Do NOT Add References For

  • Every line touched (only where traceability adds value)
  • Trivial changes (formatting, typo fixes)
  • Standard patterns (well-known idioms)
  • Test files (unless test approach is an ADR decision)

Reference Documentation