convention-leaky-abstractions

Identify leaky abstraction risks in ORM, ToolContext, and module boundaries.

Updated Mar 19, 2026
One-click install
npx skills add https://github.com/sunLeee/optimization --skill convention-leaky-abstractions
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: convention-leaky-abstractions
Source: https://github.com/sunLeee/optimization/tree/main/.claude/skills/reference/philosophy/laws/leaky-abstractions
Command: npx skills add https://github.com/sunLeee/optimization --skill convention-leaky-abstractions

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Leaky abstractions let internal implementation details escape into higher-level interfaces, causing performance problems, brittle code, and surprising behavior. This skill teaches you to recognize such leaks and design defensively to contain them.

Core Features & Use Cases

  • Pattern awareness: detects common leaky abstraction patterns across ORM, ToolContext, and API boundaries.
  • Defensive design guidance: prescribes explicit boundaries, explicit data access, and documentation of abstraction limits.
  • Use case: during architecture reviews, refactors, or new module integrations, identify where hidden details leak and implement mitigations.

Quick Start

Review your project for hidden abstractions and implement explicit boundaries to prevent leakage.

Frequently Asked Questions about convention-leaky-abstractions

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
What is a leaky abstraction in software architecture?

A leaky abstraction occurs when internal implementation details escape into higher-level interfaces, causing performance problems, brittle code, and surprising behavior in software systems.

How do I identify leaky abstractions during an architecture review?

To identify leaky abstractions, detect common patterns across ORM, ToolContext, and API boundaries, articulate their impact, and document explicit module boundaries to prevent hidden details from leaking.

What is the best way to prevent ORM abstraction leaks in API design?

The best way to prevent ORM abstraction leaks is to adopt defensive design patterns, enforce explicit data access, and document abstraction limits during new module integrations or refactors.

How do I enforce module boundaries to stop implementation details from leaking?

Enforce module boundaries by applying defensive design patterns, prescribing explicit data access protocols, and documenting abstraction limits early to contain leaks before they cause system brittleness.

When should I not use defensive design patterns for abstraction leaks?

Defensive design patterns for abstraction leaks may be unnecessary for trivial, isolated modules where the cost of enforcing explicit boundaries outweighs the risk of internal details escaping into higher-level interfaces.