update the repo
This commit is contained in:
45
AGENT_SKILL/coding_convention/CHECKLIST.md
Normal file
45
AGENT_SKILL/coding_convention/CHECKLIST.md
Normal file
@@ -0,0 +1,45 @@
|
||||
# Checklist: coding_convention
|
||||
|
||||
Instructions: For each item below, mark whether the change complies with the rule.
|
||||
|
||||
## Python Conventions
|
||||
- [ ] File names use snake_case (e.g., `patient_service.py`)
|
||||
- [ ] Class names use PascalCase (e.g., `PatientService`)
|
||||
- [ ] Function and variable names use snake_case (e.g., `get_patient_by_id`)
|
||||
- [ ] Constants use UPPER_SNAKE_CASE (e.g., `MAX_PATIENTS_PER_PAGE`)
|
||||
- [ ] Line length does not exceed 100 characters
|
||||
- [ ] Every public function, class, and module has a docstring
|
||||
- [ ] Docstrings follow Google/NumPy style (Args, Returns, Side Effects)
|
||||
- [ ] No `print()` statements; logging is used instead
|
||||
- [ ] Exceptions are typed and not overly broad (avoid bare `except:`)
|
||||
- [ ] FastAPI routers use `APIRouter(prefix=...)`
|
||||
|
||||
## TypeScript/React Conventions
|
||||
- [ ] File names use snake_case (e.g., `patient_list.tsx`)
|
||||
- [ ] Component names use PascalCase (e.g., `PatientList`)
|
||||
- [ ] Hook names use `useSnakeCase` (e.g., `usePatientData`)
|
||||
- [ ] Follows Airbnb JavaScript/TypeScript style guide
|
||||
- [ ] No `console.log()` in production code (use proper logging)
|
||||
|
||||
## Error Handling
|
||||
- [ ] No `print()` or `console.log()` for error reporting
|
||||
- [ ] Errors are logged at appropriate level (debug/info/warn/error)
|
||||
- [ ] Custom exceptions are used where appropriate
|
||||
- [ ] Exceptions are not swallowed without handling
|
||||
|
||||
## RBAC
|
||||
- [ ] Only use role constants: `RO_RADIOLOGIST`, `RO_THERAPIST`
|
||||
- [ ] No hard-coded role strings in conditionals
|
||||
- [ ] Role checks are centralized where possible
|
||||
|
||||
## Configuration
|
||||
- [ ] No hard-coded endpoints, API keys, or configuration values
|
||||
- [ ] Configuration loaded via environment variables or secrets/
|
||||
- [ ] `secrets/` directory is properly gitignored
|
||||
- [ ] No secrets in code, logs, or comments
|
||||
|
||||
## Commit Messages
|
||||
- [ ] Commit message follows Conventional Commits format
|
||||
- [ ] Type is one of: feat, fix, docs, style, refactor, perf, test, build, ci, chore, revert
|
||||
- [ ] Scope is provided when applicable
|
||||
- [ ] Subject is imperative, lowercase, no trailing period
|
||||
Reference in New Issue
Block a user