FitMop/GEMINI.md

1.6 KiB

Gemini Global Configuration (GEMINI.md)

This document provides a set of global instructions and principles for the Gemini CLI to follow during our interactions.

Reference:

  • Project Architecture: ALWAYS refer to this document for the technical layout and data flows of the system.

Environment Management

  • Startup Rule: ALWAYS start the application using make run. NEVER try to start individual services manually or use the old fitmop.sh.
  • Shutdown: Use Ctrl+C to stop the services.

Code Quality & Standards

1. Linting, Formatting & Testing

ALWAYS run the full pipeline before completing a task:

  • Command: make check
  • Action: Fix ALL errors, warnings, and coverage failures before verifying the task.
  • Strictness: DO NOT run individual linters (e.g., ruff, npm run lint) in isolation. ALWAYS use make check to ensure the entire state is valid.

2. Testing

ALWAYS run the full test suite to ensure no regressions:

  • Backend: uv run pytest (in /backend)
  • Frontend: npm run test (in /frontend)
  • Action: Every new feature or major refactor MUST include or update relevant tests.

3. Error Handling & Logging

  • No Print Statements: Use logging in Python and console.error (with prefix) in Vue.
  • Fail Fast: Let exceptions bubble up to the global handler in backend/src/main.py.
  • Validation: Use Pydantic models for all API requests and responses.

4. Documentation

  • Refer to CONTRIBUTING.md for detailed guidelines.
  • Keep task.md and implementation_plan.md updated throughout the task.