# Task Completion Checklist

When you complete any coding task, ALWAYS run these commands in order:

## 1. Code Quality Checks (MANDATORY)
```bash
# Run linting to catch code issues
bun run lint

# If there are errors, fix them automatically
bun run lint:fix

# Format the code
bun run format
```

## 2. Testing (if applicable)
```bash
# Run tests if you modified existing functionality
bun test

# Run specific test file if you added/modified tests
bun test <path-to-test-file>
```

## 3. Build Verification (for significant changes)
```bash
# Build the affected libraries/apps
bun run build:libs  # if you changed libraries
bun run build       # for full build
```

## 4. Final Verification Steps
- Ensure no TypeScript errors in the IDE
- Check that imports are properly ordered (Prettier should handle this)
- Verify no console.log statements in production code
- Confirm all new code follows the established patterns

## 5. Git Commit Guidelines
- Stage changes: `git add .`
- Write descriptive commit messages
- Reference issue numbers if applicable
- Use conventional commit format when possible:
  - `feat:` for new features
  - `fix:` for bug fixes
  - `refactor:` for code refactoring
  - `docs:` for documentation
  - `test:` for tests
  - `chore:` for maintenance

## Important Notes
- NEVER skip the linting and formatting steps
- The project uses ESLint and Prettier - let them do their job
- If lint errors persist after auto-fix, they need manual attention
- Always test your changes, even if just running the service locally