You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1.9 KiB
1.9 KiB
DO NOT TOUCH
- docs/TODO - Manual file only. Never read, write, restore, or commit
- docs/session_logs/ - Manual logs only. Never read or write
Orbital Mechanics Simulation - Project Memory
Architecture
- C-style C++ (structs/functions, NO classes/templates)
- Raylib (git submodule) for 3D - chose over SFML (no 3D support)
- See docs/technical_reference.md for data structures reference
- See docs/rendering.md for rendering system reference
Coding Rules
- Use .cpp extensions (for future C++ features if needed)
- Small, focused functions
- Follow existing patterns in src/
- Minimal comments - code should be self-documenting
- No decorative comment blocks (===, ---, etc.)
- Only comment non-obvious logic
- No trailing whitespace in any files (including markdown)
- Pre-commit hook automatically strips it
- For markdown line breaks, use
tag instead of two trailing spaces
File Reading Policy
- Ask before reading files unless immediately necessary for current task
- Exception: Can read without asking if:
- Single small file (<100 lines) clearly needed
- File explicitly mentioned by user
- When reading multiple files or large files (>200 lines), always verify first
Git Workflow
- Small commits with logical separation
- Concise commit messages
Session Summaries
- When user requests session summary, create in docs/session_summaries/
- Format: YYYY-MM-DD-descriptive-name.md
- Keep concise: changes made, commits, results (net line count)
- Document any remaining issues not resolved in the current session
- If applicable, add a short list of next steps for the next session
- Always ask the user if we want to update the technical_reference after generating a summary
Common Commands
- Build: make
- Test: make test
- Test (with extra debug info): ./orbit_test -s '[config_name]'
- needed to display 'INFO' statements for successful tests with Catch2 framework
- See README.md for full build instructions