Skip to content
cccskills
FreePublished on GitHub

compound-docs

Searchable Elixir/Phoenix/Ecto solution documentation system with; Use when consulting past solutions…

The English summary is being prepared. Showing the original description.

See how to install

Files included (3)

  • SKILL.md2.1 KB
  • references/resolution-template.md2.8 KB
  • references/schema.md2.8 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Compound Docs — Institutional Knowledge Base

Searchable, categorized solution documentation that makes each debugging session easier than the last.

Directory Structure

.claude/solutions/
├── ecto-issues/
├── liveview-issues/
├── oban-issues/
├── otp-issues/
├── security-issues/
├── testing-issues/
├── phoenix-issues/
├── deployment-issues/
├── performance-issues/
└── build-issues/

Iron Laws

  1. ALWAYS search solutions before investigating — Check .claude/solutions/ for existing fixes before debugging
  2. YAML frontmatter is MANDATORY — Every solution needs validated metadata per references/schema.md
  3. One problem per file — Never combine multiple solutions
  4. Include prevention — Every solution documents how to prevent recurrence

Solution File Format

---
module: "Accounts"
date: "2025-12-01"
problem_type: runtime_error
component: ecto_schema
symptoms:
  - "Ecto.Association.NotLoaded on user.posts"
root_cause: missing_preload
severity: medium
tags: [preload, association, n-plus-one]
---

# Association NotLoaded on User Posts

## Symptoms
Ecto.Association.NotLoaded raised when accessing user.posts
in UserListLive after filtering.

## Root Cause
Query in Accounts context missing preload for :posts.

## Solution
Added `Repo.preload(:posts)` to `list_users/1`.

## Prevention
Use n1-check skill before shipping list views.

Searching Solutions

Use Grep to search .claude/solutions/ by symptom (e.g., NotLoaded), by tag (e.g., tags:.*preload), or by component (e.g., component: ecto).

Integration

  • $elixir-phoenix:phx-compound creates solution docs here
  • $elixir-phoenix:phx-investigate searches here before debugging
  • $elixir-phoenix:phx-plan consults for known risks
  • learn-from-fix feeds into this system

References

  • references/schema.md — YAML frontmatter validation schema
  • references/resolution-template.md — Full solution template

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Analyze a legacy app in any language before rewriting it in Elixir: inventory, features as goals, why each mechanism exists, runtime topology, external contracts. Use to start or refresh a rewrite.

The English summary is being prepared. Showing the original description.

oliver-kriska/claude-elixir-phoenix567Updated Oct 17, 2026

Design the idiomatic Elixir architecture for a rewrite: set the compatibility bar (ADR-000), consult phx specialists on open questions, then build contexts, ledger and ADRs. Use after /rewrite:analyze.

The English summary is being prepared. Showing the original description.

oliver-kriska/claude-elixir-phoenix567Updated Oct 17, 2026

Ash Framework — resources, actions, policies, aggregates; Use when generating resources via mix ash.codegen, editing…

The English summary is being prepared. Showing the original description.

oliver-kriska/claude-elixir-phoenix567Updated Oct 17, 2026

Ash Framework — resources, actions, policies, aggregates, calculations, AshPhoenix.Form, LiveView, migrations. Use when generating resources via mix ash.codegen, editing changes, checks, types, validations, or domain code interfaces.

The English summary is being prepared. Showing the original description.

oliver-kriska/claude-elixir-phoenix567Updated Oct 17, 2026

Compatibility alias for the Elixir/Phoenix plugin's LiveView assigns audit. Invoke explicitly with /lv:assigns.

The English summary is being prepared. Showing the original description.

oliver-kriska/claude-elixir-phoenix567Updated Oct 17, 2026

Inspect LiveView socket assigns for memory bloat — missing temporary_assigns, unused assigns, unbounded lists needing streams, memory estimates. Use when LiveView memory grows or you need to add temporary_assigns.

The English summary is being prepared. Showing the original description.

oliver-kriska/claude-elixir-phoenix567Updated Oct 17, 2026

See all skills by oliver-kriska

Report a problem with this skill