The diff command added unnecessary complexity and duplicated functionality
already available through the show command. Users can now use:
- `openspec show <change>` for structured change viewing
- `openspec show <change> --json --deltas-only` for delta-only views
- Standard git diff or other tools for file comparisons
This change:
- Removes ~227 lines of code and the jest-diff dependency
- Simplifies the CLI interface
- Reduces maintenance burden
- Aligns with verb-first command structure
- Update openspec-conventions spec with delta-based approach
- Add Header-Based Requirement Identification for programmatic matching
- Define ADDED/MODIFIED/REMOVED/RENAMED sections format
- Document standard output symbols (+ ~ - →)
- Update openspec/README.md with delta conventions and examples
- Update init command template to use delta format
- Mark completed tasks in adopt-delta-based-changes/tasks.md
This implements the first part of the delta-based changes proposal,
updating all documentation and conventions to support the new format.
The update command now only updates existing AI tool configuration
files instead of forcing CLAUDE.md creation. This allows team members
to use different AI tools without conflicts.
- Modified update.ts to check for existing files before updating
- Added comprehensive tests for the new behavior
- Updated spec and documentation to reflect team-friendly approach
- Created project README documenting the behavior
- Add Specification Format section to openspec-conventions with:
- Requirement headers for consistent structure
- Scenario headers with bold WHEN/THEN/AND keywords
- Format flexibility for different content types
- Update all CLI command specs to use structured format:
- cli-init: Convert all behavioral sections
- cli-list: Apply structured format throughout
- cli-update: Restructure requirements and edge cases
- cli-diff: Update all behavior sections
- cli-archive: Convert complex behaviors to scenarios
- Update openspec-conventions spec itself to follow its own format
- Mark all tasks as completed