PromucFlow_constructor/.cursor/settings.json

144 lines
3.8 KiB
JSON
Raw Permalink Normal View History

refactor: restructure .cursor directory for improved organization and clarity (#40196) # refactor: restructure .cursor directory for improved organization and clarity ## Description This PR refactors the `.cursor` directory to enhance organization, clarity, and maintainability. ### Problem The existing `.cursor` directory lacked clear organization, making it difficult to find specific files, understand their purpose, and add new components consistently. ### Solution A comprehensive restructuring: #### New Directory Structure ``` .cursor/ ├── settings.json # Main configuration file ├── docs/ # Documentation │ ├── guides/ # In-depth guides │ ├── references/ # Quick references │ └── practices/ # Best practices ├── rules/ # Rule definitions │ ├── commit/ # Commit-related rules │ ├── quality/ # Code quality rules │ ├── testing/ # Testing rules │ └── verification/ # Verification rules └── hooks/ # Git hooks and scripts ``` #### Key Changes 1. **Logical Categorization**: Organized files into clear categories based on purpose 2. **Improved Documentation**: Added comprehensive README files for each directory 3. **Standardized Naming**: Implemented consistent kebab-case naming convention 4. **Reference Updates**: Updated all internal references to point to new file locations ### Benefits - **Easier Navigation**: Clear categorization makes finding files intuitive - **Improved Understanding**: Comprehensive documentation explains purpose and usage - **Simplified Maintenance**: Logical structure makes updates and additions easier - **Better Onboarding**: New team members can quickly understand the system This refactoring sets a solid foundation for all Cursor AI-related configurations and rules, making it easier for the team to leverage Cursor's capabilities.
2025-04-11 06:34:33 +00:00
{
"codebase": {
"structure": {
"frontend": "app/client",
"backend": "app/server",
"infrastructure": "deploy",
"workflows": ".github/workflows",
"scripts": "scripts"
},
"standards": {
"frontend": {
"testPatterns": ["*.test.ts", "*.test.tsx", "cypress/integration/**/*.spec.ts"],
"codeStyle": "airbnb",
"linters": ["eslint", "prettier"]
},
"backend": {
"testPatterns": ["**/*Test.java", "**/*Tests.java"],
"codeStyle": "google",
"linters": ["spotless"]
}
}
},
"development": {
"workflow": {
"bugFix": [
"Understand the bug report and reproduce locally",
"Identify root cause through code exploration",
"Write failing test(s) that demonstrate the bug",
"Implement fix that makes tests pass",
"Ensure all existing tests pass",
"Verify fix addresses original issue",
"Run pre-commit checks",
"Confirm GitHub workflows would pass"
],
"feature": [
"Understand requirements and acceptance criteria",
"Design implementation approach",
"Create test cases (unit, integration, e2e as appropriate)",
"Implement feature",
"Verify feature meets acceptance criteria",
"Ensure performance and efficiency",
"Ensure code follows project standards",
"Run pre-commit checks",
"Confirm GitHub workflows would pass"
]
},
"qualityChecks": {
"frontend": [
"Run unit tests: yarn run test:unit",
"Run type checking: yarn run check-types",
"Run linting: yarn run lint",
"Run cypress tests: npx cypress run",
"Check for cyclic dependencies: CI workflow"
],
"backend": [
"Run unit tests",
"Run integration tests",
"Run spotless check",
"Verify no resource leaks"
],
"general": [
"Verify no sensitive data is included",
"Ensure proper error handling",
"Check performance impact",
"Ensure backwards compatibility"
]
},
"gitWorkflow": {
"branchNaming": {
"bugFix": "fix/fix-name",
"feature": "feature/feature-name"
},
"commitConventions": "Descriptive commit messages with issue reference",
"semanticPR": {
"enabled": true,
"titleFormat": "type(scope): description",
"validTypes": [
"feat", "fix", "docs", "style", "refactor",
"perf", "test", "build", "ci", "chore", "revert"
],
"scopeRequired": false,
"titleValidation": true,
"commitsValidation": false
}
}
},
"incrementalLearning": {
"enabled": true,
"patterns": [
"**/*.java",
"**/*.ts",
"**/*.tsx",
"**/*.yml",
"**/*.yaml",
"**/*.md",
"**/*.json"
],
"storage": {
"codePatterns": true,
"testPatterns": true,
"buildPatterns": true,
"workflowPatterns": true
}
},
"testing": {
"frontend": {
"unit": {
"framework": "jest",
"command": "yarn run test:unit"
},
"integration": {
"framework": "cypress",
"command": "npx cypress run --spec <spec path> --browser chrome"
}
},
"backend": {
"unit": {
"framework": "junit",
"patterns": ["**/*Test.java"]
},
"integration": {
"framework": "junit",
"patterns": ["**/*IntegrationTest.java"]
}
}
},
"preCommit": {
"hooks": [
"Type checking",
"Linting",
"Unit tests",
"No sensitive data"
]
},
"cicd": {
"workflows": [
"client-build.yml",
"server-build.yml",
"ci-test-limited.yml",
"client-unit-tests.yml",
"server-integration-tests.yml"
]
}
}