Skip to content

Latest commit

 

History

History
33 lines (23 loc) · 1.73 KB

File metadata and controls

33 lines (23 loc) · 1.73 KB

Claude Code Instructions for FlexRender

Read AGENTS.md for project overview, architecture, build commands, conventions, and resource limits.

Git Safety

  • NEVER use git reset --hard — Only use git reset --soft to preserve changes. Hard reset destroys work.

Agent Workflow

Follow the global workflow from ~/.claude/CLAUDE.md:

  1. brainstormer -- use FIRST for new template features, element types, content providers, layout algorithms
  2. plan-writer -- create TDD implementation plan after design is approved
  3. csharp-pro -- for ALL C# code changes in src/ and tests/
  4. master-code-reviewer -- MANDATORY after any code changes

Use Explore agent for codebase navigation before making changes.

Domain-Specific Review Checklist

When reviewing code changes, verify:

  • AOT safe -- no reflection, no dynamic, no Type.GetType(). Use GeneratedRegex for regex
  • Classes are sealed unless designed for inheritance
  • Null checks via ArgumentNullException.ThrowIfNull() -- not manual if (x == null)
  • Resource limits preserved -- never remove or weaken MaxFileSize, MaxNestingDepth, MaxRenderDepth
  • New element types follow the switch-based dispatch pattern (not base class properties)
  • New YAML properties registered in KnownProperties.cs for validation and typo suggestions
  • Tests using shared static state use [Collection(..., DisableParallelization = true)]
  • XML docs on all public API surface
  • Snapshot tests added/updated for visual changes (UPDATE_SNAPSHOTS=true)
  • Wiki pages updated -- if code changes affect public API, element properties, YAML syntax, builder methods, or CLI options, update the corresponding docs/wiki/ pages