panurus

Panurus

Performance Tip: Use Ctrl+F to jump to sections using anchor links (e.g., #building-and-running)

🚀 Quick Reference Commands

Testing

Development & CI Preparation

Maintenance

🔧 Development Workflow

1. Setup (One-time)

make install-tools
make download-fabric
export FAB_BINS=$PWD/../fabric/bin
make docker-images
make testing-docker-images

2. Daily Development

# Code quality
make lint-auto-fix
make checks

# Testing
make unit-tests          # Standard
make unit-tests-race     # With race detection
make integration-tests-fabtoken-fabric-t1  # Integration tests

3. Debugging

# Performance profiling
go test -cpuprofile=cpu.out ./...
go test -memprofile=mem.out ./...

# Focused testing
make integration-tests-dlog-fabric TEST_FILTER="T1"

🐛 Troubleshooting Quick Reference

🏗️ Architecture Overview

Core Patterns

🧪 Testing Strategy

Unit Tests

Integration Tests

Fuzz Testing

Mocking Best Practices

📝 Development Conventions

Coding Standards

Git Workflow

Issue & PR Metadata (Workflow Rule)

Full guidance: docs/development/general.md. Summary:

Plan Documentation (Workflow Rule)

Before implementing any task:

  1. Create plan.md in project root with:
    • Clear goal description
    • Numbered implementation steps
    • “Implementation Progress” section with [ ] Pending checkboxes
  2. Update immediately when completing steps: [x] Done + brief change notes
  3. Log blockers/decisions under ## Notes & Decisions
  4. Mark plan as ✅ COMPLETE when finished

Documentation Updates (Workflow Rule)

Before marking a task complete, update or create the relevant documentation under docs/:

Automation Runbooks (Workflow Rule)

Reusable, agent-agnostic step-by-step procedures live under docs/development/ and are readable by any agent that reads this file — not just Claude Code. When Claude Code also needs a /slash-command trigger for one, add a symlink at .claude/skills/<name>/SKILL.md pointing back at the doc, so there is one source of truth.

🔍 Debugging & Advanced Testing

See Debugging Integration Tests (Claude Code: /debug-integration-tests).