Files
claude-engineering-plugin/plugins/compound-engineering/skills/compound-docs/schema.yaml
Kieran Klaassen 6c5b3e40db [2.9.0] Rename plugin to compound-engineering
BREAKING: Plugin renamed from compounding-engineering to compound-engineering.
Users will need to reinstall with the new name:

  claude /plugin install compound-engineering

Changes:
- Renamed plugin directory and all references
- Updated documentation counts (24 agents, 19 commands)
- Added julik-frontend-races-reviewer to docs

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-02 17:32:16 -08:00

177 lines
6.7 KiB
YAML

# CORA Documentation Schema
# This schema MUST be validated before writing any documentation file
required_fields:
module:
type: string
description: "Module/area of CORA (e.g., 'Email Processing', 'Brief System', 'Authentication')"
examples:
- "Email Processing"
- "Brief System"
- "Assistant"
- "Authentication"
date:
type: string
pattern: '^\d{4}-\d{2}-\d{2}$'
description: "Date when this problem was solved (YYYY-MM-DD)"
problem_type:
type: enum
values:
- build_error # Rails, bundle, compilation errors
- test_failure # Test failures, flaky tests
- runtime_error # Exceptions, crashes during execution
- performance_issue # Slow queries, memory issues, N+1 queries
- database_issue # Migration, query, schema problems
- security_issue # Authentication, authorization, XSS, SQL injection
- ui_bug # Frontend, Stimulus, Turbo issues
- integration_issue # External service, API integration problems
- logic_error # Business logic bugs
- developer_experience # DX issues: workflow, tooling, seed data, dev setup
- workflow_issue # Development process, missing steps, unclear practices
- best_practice # Documenting patterns and practices to follow
- documentation_gap # Missing or inadequate documentation
description: "Primary category of the problem"
component:
type: enum
values:
- rails_model # ActiveRecord models
- rails_controller # ActionController
- rails_view # ERB templates, ViewComponent
- service_object # Custom service classes
- background_job # Sidekiq, Active Job
- database # PostgreSQL, migrations, schema
- frontend_stimulus # Stimulus JS controllers
- hotwire_turbo # Turbo Streams, Turbo Drive
- email_processing # Email handling, mailers
- brief_system # Brief generation, summarization
- assistant # AI assistant, prompts
- authentication # Devise, user auth
- payments # Stripe, billing
- development_workflow # Dev process, seed data, tooling
- testing_framework # Test setup, fixtures, VCR
- documentation # README, guides, inline docs
- tooling # Scripts, generators, CLI tools
description: "CORA component involved"
symptoms:
type: array[string]
min_items: 1
max_items: 5
description: "Observable symptoms (error messages, visual issues, crashes)"
examples:
- "N+1 query detected in brief generation"
- "Brief emails not appearing in summary"
- "Turbo Stream response returns 404"
root_cause:
type: enum
values:
- missing_association # Incorrect Rails associations
- missing_include # Missing eager loading (N+1)
- missing_index # Database performance issue
- wrong_api # Using deprecated/incorrect Rails API
- scope_issue # Incorrect query scope or filtering
- thread_violation # Real-time unsafe operation
- async_timing # Async/background job timing
- memory_leak # Memory leak or excessive allocation
- config_error # Configuration or environment issue
- logic_error # Algorithm/business logic bug
- test_isolation # Test isolation or fixture issue
- missing_validation # Missing model validation
- missing_permission # Authorization check missing
- missing_workflow_step # Skipped or undocumented workflow step
- inadequate_documentation # Missing or unclear documentation
- missing_tooling # Lacking helper scripts or automation
- incomplete_setup # Missing seed data, fixtures, or config
description: "Fundamental cause of the problem"
resolution_type:
type: enum
values:
- code_fix # Fixed by changing source code
- migration # Fixed by database migration
- config_change # Fixed by changing configuration
- test_fix # Fixed by correcting tests
- dependency_update # Fixed by updating gem/dependency
- environment_setup # Fixed by environment configuration
- workflow_improvement # Improved development workflow or process
- documentation_update # Added or updated documentation
- tooling_addition # Added helper script or automation
- seed_data_update # Updated db/seeds.rb or fixtures
description: "Type of fix applied"
severity:
type: enum
values:
- critical # Blocks production or development (build fails, data loss)
- high # Impairs core functionality (feature broken, security issue)
- medium # Affects specific feature (UI broken, performance impact)
- low # Minor issue or edge case
description: "Impact severity"
optional_fields:
rails_version:
type: string
pattern: '^\d+\.\d+\.\d+$'
description: "Rails version where this was encountered (e.g., '7.1.0')"
related_components:
type: array[string]
description: "Other components that interact with this issue"
tags:
type: array[string]
max_items: 8
description: "Searchable keywords (lowercase, hyphen-separated)"
examples:
- "n-plus-one"
- "eager-loading"
- "test-isolation"
- "turbo-stream"
validation_rules:
- "module must be a valid CORA module name"
- "date must be in YYYY-MM-DD format"
- "problem_type must match one of the enum values"
- "component must match one of the enum values"
- "symptoms must be specific and observable (not vague)"
- "root_cause must be the ACTUAL cause, not a symptom"
- "resolution_type must match one of the enum values"
- "severity must match one of the enum values"
- "tags should be lowercase, hyphen-separated"
# Example valid front matter:
# ---
# module: Email Processing
# date: 2025-11-12
# problem_type: performance_issue
# component: rails_model
# symptoms:
# - N+1 query when loading email threads
# - Brief generation taking >5 seconds
# root_cause: missing_include
# rails_version: 7.1.2
# resolution_type: code_fix
# severity: high
# tags: [n-plus-one, eager-loading, performance]
# ---
#
# Example DX issue front matter:
# ---
# module: Development Workflow
# date: 2025-11-13
# problem_type: developer_experience
# component: development_workflow
# symptoms:
# - No example data for new feature in development
# - Rails db:seed doesn't demonstrate new capabilities
# root_cause: incomplete_setup
# rails_version: 7.1.2
# resolution_type: seed_data_update
# severity: low
# tags: [seed-data, dx, workflow]
# ---