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.
		
		
		
		
		
			
		
			
				
					
					
						
							227 lines
						
					
					
						
							5.9 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							227 lines
						
					
					
						
							5.9 KiB
						
					
					
				| 
 | |
| --- | |
| 
 | |
| alwaysApply: false | |
| --- | |
| 
 | |
| # Software Development Ruleset | |
| 
 | |
| **Author**: Matthew Raymer | |
| **Date**: 2025-08-19 | |
| **Status**: 🎯 **ACTIVE** - Core development guidelines | |
| 
 | |
| ## Purpose | |
| 
 | |
| Specialized guidelines for software development tasks including code review, | |
| debugging, architecture decisions, and testing. | |
| 
 | |
| ## Core Principles | |
| 
 | |
| ### 1. Evidence-First Development | |
| 
 | |
| - **Code Citations Required**: Always cite specific file:line references when | |
| 
 | |
|   making claims | |
| 
 | |
| - **Execution Path Tracing**: Trace actual code execution before proposing | |
| 
 | |
|   architectural changes | |
| 
 | |
| - **Assumption Validation**: Flag assumptions as "assumed" vs "evidence-based" | |
| 
 | |
| ### 2. Code Review Standards | |
| 
 | |
| - **Trace Before Proposing**: Always trace execution paths before suggesting | |
| 
 | |
|   changes | |
| 
 | |
| - **Evidence Over Inference**: Prefer code citations over logical deductions | |
| 
 | |
| - **Scope Validation**: Confirm the actual scope of problems before proposing | |
| 
 | |
|   solutions | |
| 
 | |
| ### 3. Problem-Solution Validation | |
| 
 | |
| - **Problem Scope**: Does the solution address the actual problem? | |
| 
 | |
| - **Evidence Alignment**: Does the solution match the evidence? | |
| 
 | |
| - **Complexity Justification**: Is added complexity justified by real needs? | |
| 
 | |
| - **Alternative Analysis**: What simpler solutions were considered? | |
| 
 | |
| ### 4. Dependency Management & Environment Validation | |
| 
 | |
| - **Pre-build Validation**: | |
| 
 | |
|   Always validate critical dependencies before executing | |
|   build scripts | |
| 
 | |
| - **Environment Consistency**: Ensure team members have identical development | |
| 
 | |
|   environments | |
| 
 | |
| - **Dependency Verification**: Check that required packages are installed and | |
| 
 | |
|   accessible | |
| 
 | |
| - **Path Resolution**: Use `npx` for local dependencies to avoid PATH issues | |
| 
 | |
| ## Required Workflows | |
| 
 | |
| ### Before Proposing Changes | |
| 
 | |
| - [ ] **Code Path Tracing**: Map execution flow from entry to exit | |
| 
 | |
| - [ ] **Evidence Collection**: Gather specific code citations and logs | |
| 
 | |
| - [ ] **Assumption Surfacing**: Identify what's proven vs. inferred | |
| 
 | |
| - [ ] **Scope Validation**: Confirm the actual extent of the problem | |
| 
 | |
| - [ ] **Dependency Validation**: Verify all required dependencies are available | |
| 
 | |
|   and accessible | |
| 
 | |
| ### During Solution Design | |
| 
 | |
| - [ ] **Evidence Alignment**: Ensure solution addresses proven problems | |
| 
 | |
| - [ ] **Complexity Assessment**: Justify any added complexity | |
| 
 | |
| - [ ] **Alternative Evaluation**: Consider simpler approaches first | |
| 
 | |
| - [ ] **Impact Analysis**: Assess effects on existing systems | |
| 
 | |
| - [ ] **Environment Impact**: Assess how changes affect team member setups | |
| 
 | |
| ## Software-Specific Competence Hooks | |
| 
 | |
| ### Evidence Validation | |
| 
 | |
| - **"What code path proves this claim?"** | |
| 
 | |
| - **"How does data actually flow through the system?"** | |
| 
 | |
| - **"What am I assuming vs. what can I prove?"** | |
| 
 | |
| ### Code Tracing | |
| 
 | |
| - **"What's the execution path from user action to system response?"** | |
| 
 | |
| - **"Which components actually interact in this scenario?"** | |
| 
 | |
| - **"Where does the data originate and where does it end up?"** | |
| 
 | |
| ### Architecture Decisions | |
| 
 | |
| - **"What evidence shows this change is necessary?"** | |
| 
 | |
| - **"What simpler solution could achieve the same goal?"** | |
| 
 | |
| - **"How does this change affect the existing system architecture?"** | |
| 
 | |
| ### Dependency & Environment Management | |
| 
 | |
| - **"What dependencies does this feature require and are they properly | |
| 
 | |
|   declared?"** | |
| 
 | |
| - **"How will this change affect team member development environments?"** | |
| 
 | |
| - **"What validation can we add to catch dependency issues early?"** | |
| 
 | |
| ## Integration with Other Rulesets | |
| 
 | |
| ### With base_context.mdc | |
| 
 | |
| - Inherits generic competence principles | |
| 
 | |
| - Adds software-specific evidence requirements | |
| 
 | |
| - Maintains collaboration and learning focus | |
| 
 | |
| ### With research_diagnostic.mdc | |
| 
 | |
| - Enhances investigation with code path tracing | |
| 
 | |
| - Adds evidence validation to diagnostic workflow | |
| 
 | |
| - Strengthens problem identification accuracy | |
| 
 | |
| ## Usage Guidelines | |
| 
 | |
| ### When to Use This Ruleset | |
| 
 | |
| - Code reviews and architectural decisions | |
| 
 | |
| - Bug investigation and debugging | |
| 
 | |
| - Performance optimization | |
| 
 | |
| - Feature implementation planning | |
| 
 | |
| - Testing strategy development | |
| 
 | |
| ### When to Combine with Others | |
| 
 | |
| - **base_context + software_development**: General development tasks | |
| 
 | |
| - **research_diagnostic + software_development**: Technical investigations | |
| 
 | |
| - **All three**: Complex architectural decisions or major refactoring | |
| 
 | |
| ## Self-Check (model, before responding) | |
| 
 | |
| - [ ] Code path traced and documented | |
| 
 | |
| - [ ] Evidence cited with specific file:line references | |
| 
 | |
| - [ ] Assumptions clearly flagged as proven vs. inferred | |
| 
 | |
| - [ ] Solution complexity justified by evidence | |
| 
 | |
| - [ ] Simpler alternatives considered and documented | |
| 
 | |
| - [ ] Impact on existing systems assessed | |
| 
 | |
| - [ ] Dependencies validated and accessible | |
| 
 | |
| - [ ] Environment impact assessed for team members | |
| 
 | |
| - [ ] Pre-build validation implemented where appropriate | |
| 
 | |
| --- | |
| 
 | |
| **See also**: `.cursor/rules/development/dependency_management.mdc` for | |
|   detailed dependency management practices. | |
| 
 | |
| **Status**: Active development guidelines | |
| **Priority**: High | |
| **Estimated Effort**: Ongoing reference | |
| **Dependencies**: base_context.mdc, research_diagnostic.mdc | |
| **Stakeholders**: Development team, Code review team | |
| 
 | |
| ## Model Implementation Checklist | |
| 
 | |
| ### Before Development Work | |
| 
 | |
| - [ ] **Code Path Tracing**: Map execution flow from entry to exit | |
| - [ ] **Evidence Collection**: Gather specific code citations and logs | |
| - [ ] **Assumption Surfacing**: Identify what's proven vs. inferred | |
| - [ ] **Scope Validation**: Confirm the actual extent of the problem | |
| 
 | |
| ### During Development | |
| 
 | |
| - [ ] **Evidence Alignment**: Ensure solution addresses proven problems | |
| - [ ] **Complexity Assessment**: Justify any added complexity | |
| - [ ] **Alternative Evaluation**: Consider simpler approaches first | |
| - [ ] **Impact Analysis**: Assess effects on existing systems | |
| 
 | |
| ### After Development | |
| 
 | |
| - [ ] **Code Path Validation**: Verify execution paths are correct | |
| - [ ] **Evidence Documentation**: Document all code citations and evidence | |
| - [ ] **Assumption Review**: Confirm all assumptions are documented | |
| - [ ] **Environment Impact**: Assess how changes affect team member setups
 | |
| 
 |