Change History
After making medium-to-large changes, update .history/changes.json with a new entry.
Steps
- Read the current
.history/changes.json(create it if it doesn't exist) - Determine if the changes warrant a log entry
- If yes, append a new entry to the
entriesarray - Write the updated file back
Entry Schema
Each entry must have:
id: ISO timestamp + 6-char random hex suffix (e.g."2025-01-15T14:32:00Z-a1b2c3")timestamp: Current UTC time in ISO 8601type: One offeature,bugfix,refactor,config,docs,test,infrascope: One ofbackend,infra,configsummary: One-line description (max 120 chars)detail: Multi-sentence explanation including WHYfiles_changed: Array of file pathsbreaking: Booleandependencies_added: Array of"package@version"(optional)dependencies_removed: Array of"package@version"(optional)related_entries: Array of entry IDs (optional)tags: Freeform tags (optional)
When to Log
Always log: New files, Dockerfile changes, docker-compose changes, process.py changes, dependency changes, config changes, CI/CD pipeline changes, benchmark results.
Never log: Formatting-only, typo fixes, trivial edits.