Skip to content
Tracing Knowledge Lineages logo

Tracing Knowledge Lineages

Understand how ideas evolved over time to find old solutions for new problems and avoid repeating past failures

SKILL.md

Full skill instructions

Tracing Knowledge Lineages

Overview

Ideas have history. Understanding why we arrived at current approaches - and what was tried before - prevents repeating failures and rediscovers abandoned solutions.

Core principle: Before judging current approaches or proposing "new" ones, trace their lineage.

When to Trace Lineages

Trace before:

  • Proposing to replace existing approach (understand why it exists first)
  • Dismissing "old" patterns (they might have been abandoned for wrong reasons)
  • Implementing "new" ideas (they might be revivals worth reconsidering)
  • Declaring something "best practice" (understand its evolution)

Red flags triggering lineage tracing:

  • "This seems overcomplicated" (was it simpler before? why did it grow?)
  • "Why don't we just..." (someone probably tried, what happened?)
  • "This is the modern way" (what did the old way teach us?)
  • "We should switch to X" (what drove us away from X originally?)

Tracing Techniques

Technique 1: Decision Archaeology

Search for when/​why current approach was chosen:

  1. Check decision records (common locations: docs/​decisions/, docs/​adr/, .decisions/, architecture decision records)
  2. Search conversations (skills/​collaboration/​remembering-conversations)
  3. Git archaeology (git log --all --full-history -- path/​to/​file)
  4. Ask the person who wrote it (if available)

Document:

## Lineage: [Current Approach]

**When adopted:** [Date/​commit]
**Why adopted:** [Original problem it solved]
**What it replaced:** [Previous approach]
**Why replaced:** [What was wrong with old approach]
**Context that drove change:** [External factors, new requirements]

Technique 2: Failed Attempt Analysis

When someone says "we tried X and it didn't work":

Don't assume: X is fundamentally flawed Instead trace:

  1. What was the context? (constraints that no longer apply)
  2. What specifically failed? (the whole approach or one aspect?)
  3. Why did it fail then? (technology limits, team constraints, time pressure)
  4. Has context changed? (new tools, different requirements, more experience)

Document:

## Failed Attempt: [Approach]

**When attempted:** [Timeframe]
**Why attempted:** [Original motivation]
**What failed:** [Specific failure mode]
**Why it failed:** [Root cause, not symptoms]
**Context at time:** [Constraints that existed then]
**Context now:** [What's different today]
**Worth reconsidering?:** [Yes/​No + reasoning]

Technique 3: Revival Detection

When evaluating "new" approaches:

  1. Search for historical precedents (was this tried before under different name?)
  2. Identify what's genuinely new (vs. what's rebranded)
  3. Understand why it died (if it's a revival)
  4. Check if resurrection conditions exist (has context changed enough?)

Common revival patterns:

  • Microservices ← Service-Oriented Architecture ← Distributed Objects
  • GraphQL ← SOAP ← RPC
  • Serverless ← CGI scripts ← Cloud functions
  • NoSQL ← Flat files ← Document stores

Ask: "What did we learn from the previous incarnation?"

Technique 4: Paradigm Shift Mapping

When major architectural changes occurred:

Map the transition:

## Paradigm Shift: From [Old] to [New]

**Pre-shift thinking:** [How we thought about problem]
**Catalyst:** [What triggered the shift]
**Post-shift thinking:** [How we think now]
**What was gained:** [New capabilities]
**What was lost:** [Old capabilities sacrificed]
**Lessons preserved:** [What we kept from old paradigm]
**Lessons forgotten:** [What we might need to relearn]

Search Strategies

Where to look for lineage:

  1. Decision records (common locations: docs/​decisions/, docs/​adr/, .adr/, or search for "ADR", "decision record")
  2. Conversation history (search with skills/​collaboration/​remembering-conversations)
  3. Git history (git log --grep="keyword", git blame)
  4. Issue/​PR discussions (GitHub/​GitLab issue history)
  5. Documentation evolution (git log -- docs/)
  6. Team knowledge (ask: "Has anyone tried this before?")

Search patterns:

# Find when approach was introduced
git log --all --grep="introduce.*caching"

# Find what file replaced
git log --diff-filter=D --summary | grep pattern

# Find discussion of abandoned approach
git log --all --grep="remove.*websocket"

Red Flags - You're Ignoring History

  • "Let's just rewrite this" (without understanding why it's complex)
  • "The old way was obviously wrong" (without understanding context)
  • "Nobody uses X anymore" (without checking why it died)
  • Dismissing approaches because they're "old" (age ≠ quality)
  • Adopting approaches because they're "new" (newness ≠ quality)

All of these mean: STOP. Trace the lineage first.

When to Override History

You CAN ignore lineage when:

  1. Context fundamentally changed

    • Technology that didn't exist is now available
    • Constraints that forced decisions no longer apply
    • Team has different capabilities now
  2. We learned critical lessons

    • Industry-wide understanding evolved
    • Past attempt taught us what to avoid
    • Better patterns emerged and were proven
  3. Original reasoning was flawed

    • Based on assumptions later proven wrong
    • Cargo-culting without understanding
    • Fashion-driven, not needs-driven

But document WHY you're overriding: Future you needs to know this was deliberate, not ignorant.

Documentation Format

When proposing changes, include lineage:

## Proposal: Switch from [Old] to [New]

### Current Approach Lineage
- **Adopted:** [When/​why]
- **Replaced:** [What it replaced]
- **Worked because:** [Its strengths]
- **Struggling because:** [Current problems]

### Previous Attempts at [New]
- **Attempted:** [When, if ever]
- **Failed because:** [Why it didn't work then]
- **Context change:** [What's different now]

### Decision
[Proceed/​Defer/​Abandon] because [reasoning with historical context]

Examples

Good Lineage Tracing

"We used XML before JSON. XML died because verbosity hurt developer experience. But XML namespaces solved a real problem. If we hit namespace conflicts in JSON, we should study how XML solved it, not reinvent."

Bad Lineage Ignorance

"REST is old, let's use GraphQL." (Ignores: Why did REST win over SOAP? What problems does it solve well? Are those problems gone?)

Revival with Context

"We tried client-side routing in 2010, abandoned it due to poor browser support. Now that support is universal and we have better tools, worth reconsidering with lessons learned."

Remember

  • Current approaches exist for reasons (trace those reasons)
  • Past failures might work now (context changes)
  • "New" approaches might be revivals (check for precedents)
  • Evolution teaches (study the transitions)
  • Ignorance of history = doomed to repeat it

More skills from boisenoise

database-cloud-optimization-cost-optimize logo
boisenoise/skills-collections

database-cloud-optimization-cost-optimize

You are a cloud cost optimization expert specializing in reducing infrastructure expenses while maintaining performance and reliability. Analyze cloud spending, identify savings opportunities, and implement cost-effective architectures across AWS, Azure, and GCP.

10 0
View
postmark-automation logo
boisenoise/skills-collections

postmark-automation

Automate Postmark email delivery tasks via Rube MCP (Composio): send templated emails, manage templates, monitor delivery stats and bounces. Always search tools first for current schemas.

10 0
View
game-development logo
boisenoise/skills-collections

game-development

Game development orchestrator. Routes to platform-specific skills based on project needs.

10 0
View
test-fixing logo
boisenoise/skills-collections

test-fixing

Systematically identify and fix all failing tests using smart grouping strategies. Use when explicitly asks to fix tests (\"fix these tests\", \"make tests pass\"), reports test failures (\"tests are failing\", \"test suite is broken\"), or completes implementation and wants tests passing.

10 0
View
notebooklm logo
boisenoise/skills-collections

notebooklm

Interact with Google NotebookLM to query documentation with Gemini's source-grounded answers. Each question opens a fresh browser session, retrieves the answer exclusively from your uploaded documents, and closes.

10 0
View
agent-evaluation logo
boisenoise/skills-collections

agent-evaluation

Testing and benchmarking LLM agents including behavioral testing,

10 0
View
clickup-automation logo
boisenoise/skills-collections

clickup-automation

Automate ClickUp project management including tasks, spaces, folders, lists, comments, and team operations via Rube MCP (Composio). Always search tools first for current schemas.

10 0
View
wordpress-penetration-testing logo
boisenoise/skills-collections

wordpress-penetration-testing

Assess WordPress installations for common vulnerabilities and WordPress 7.0 attack surfaces.

10 0
View
ln-761-secret-scanner logo
boisenoise/skills-collections

ln-761-secret-scanner

Scans codebase for hardcoded secrets with severity classification and remediation guidance. Use when auditing a project for leaked credentials.

10 0
View
azure-monitor-ingestion-java logo
boisenoise/skills-collections

azure-monitor-ingestion-java

Azure Monitor Ingestion SDK for Java. Send custom logs to Azure Monitor via Data Collection Rules (DCR) and Data Collection Endpoints (DCE).

10 0
View
ln-513-agent-reviewer logo
boisenoise/skills-collections

ln-513-agent-reviewer

Runs parallel external agent reviews (Codex + Gemini) on code changes. Process-as-arrive, critical verification with debate. Returns filtered suggestions.

10 0
View
drip-jobs-automation logo
boisenoise/skills-collections

drip-jobs-automation

Automate Drip Jobs tasks via Rube MCP (Composio). Always search tools first for current schemas.

10 0
View

Popular AI tools

Kaiber logo
Video

Kaiber

Generate, edit, and beat-sync AI video with leading models in one workspace.

Paid
View
Vimcal logo
Productivity

Vimcal

The world's fastest calendar for remote work

Free
View

Transform Your Design with AI Designer by ImgCreator.ai

Freemium
View
Akool AI logo
Content & writing

Akool AI

Revolutionizing Video Production with AI-Powered Creativity

Paid
View

Extend an image past the frame and let AI fill the new aspect ratio.

Freemium
View
StarByFace logo
Security

StarByFace

Discover your celebrity doppelgänger with StarByFace!

Free
View
C

ChainClarity explains 700+ crypto whitepapers in plain English, with layered summaries, comparisons, research tools, alerts, and a $4.99 Pro plan.

Freemium
View
Opus Clip logo
Coding & apps

Opus Clip

Opus.ai: Revolutionize Your Web Experience

Free
View