Development tools and utilities for this project.
- Installing Python, Node.js, and dependencies
- Installing pre-commit hooks
- Platform-specific configuration (Chrome/Chromium for ARM64)
- Required packages and dependencies
- What the pre-commit hook validates
- YAML schema validation, Prettier formatting, Ruff linting
- Component edge validation and graph generation
- Control-to-risk reference validation
- Framework reference validation
- Issue template generation and validation
- Mermaid SVG generation and markdown table generation
- Step-by-step commit flow
- When each validation runs
- Graph and table generation triggers
- Running validations with --force flag
- Validating unstaged files during development
- Manually generating component, control, and risk graphs
- Graph generation options and flags
- Debugging graph output
- Manually generating markdown tables from YAML
- Table formats (full, summary, cross-reference)
- Output files and debugging
- Automated PR validation
- Graph and table validation in CI/CD
- Handling validation failures
- Differences between pre-commit hooks and GitHub Actions
- Customizing graph appearance via
mermaid-styles.yaml - Foundation design tokens and color schemes
- Graph layout and spacing configuration
- Common customization examples
- Using the content-reviewer sub-agent for YAML quality checks
- LLM-neutral agent definitions in
agents/ - Modes: diff (PR review), full (quality check), issue (proposal evaluation)
- Installation issues
- Common validation errors (edge, control-risk, prettier, ruff)
- SVG and table generation errors
- Chrome/Chromium issues (especially ARM64)
- Debugging commands and manual testing
Key Files:
../.pre-commit-config.yaml- Declarative hook configuration (schemas, lint/format, validators, generators)hooks/precommit/- Wrapper scripts invoked by the framework (graphs, tables, SVGs, issue templates, prettier-yaml); each stages its output viagit addhooks/validate_riskmap.py- Component edge validation and graph generationhooks/validate_control_risk_references.py- Control-risk cross-reference validationhooks/validate_framework_references.py- Framework reference validationhooks/precommit/validate_workflow_uses_pinning.py- GitHub Actionsuses:pinning validation for ADR-024hooks/validate_issue_templates.py- Issue template schema validationgenerate_issue_templates.py- Issue template generator from sourceshooks/yaml_to_markdown.py- Markdown table generation from YAMLtools/install-deps.sh- Idempotent dependency installer; Step 8 invokespre-commit installfor the framework hooktools/verify-deps.sh- Verifies all required tools are installed and correct versionstools/validate-all.sh- Dev helper: runs every validator with--forcefor non-staged verification (no regeneration)agents/content-reviewer.md- Content review agent definition (LLM-neutral structured prompt)
Related Documentation:
- Risk Map Developer Guide - Main contribution guide
- Repository CONTRIBUTING.md - Branching strategy and PR workflow
Schemas:
../risk-map/schemas/- JSON schemas for all YAML files