# Project Context

This is a Laravel 12 backend project for the Dial Cleaning / Appletree cleaning operations app.

This project has an SRS document at:

- `docs/SRS.md`
- `docs/scheduling_attendance_clarity.md`

Before implementing any feature, changing business logic, creating database tables, APIs, admin panels, or mobile-app-related functionality, first read `docs/SRS.md` and follow it as the main requirement reference.

For the Scheduling and Attendance modules specifically, first read `docs/scheduling_attendance_clarity.md` and use it as the primary requirement reference for those modules. Use `docs/SRS.md` as the general requirement reference for everything else.

If the SRS and existing code conflict, do not blindly overwrite the existing code. First explain the conflict and ask for confirmation.

When I ask to implement a module, check the relevant section in `docs/SRS.md` before coding. For Scheduling and Attendance work, check `docs/scheduling_attendance_clarity.md` first.

## Tech Stack

- Laravel 12
- PHP 8.2+
- MySQL
- Laravel Passport for API authentication
- Filament admin panel
- Shared Hostinger production server
- Local development using Herd on macOS

## Important Rules

- Do not change existing database columns without asking.
- Prefer migrations over direct SQL changes.
- APIs are consumed by Flutter mobile apps.
- Keep API responses JSON-based.
- Avoid breaking existing mobile app endpoints.
- Do not remove existing authentication guards unless explicitly asked.
- Before changing auth, check guards, providers, middleware, and Passport config.

## Work Log

Maintain a development log in `docs/CODEX_LOG.md`.

After completing a major feature, bug fix, migration, API change, or deployment-related task, summarize:
- what was changed
- files touched

Keep `docs/CODEX_LOG.md` concise. Do not add sections for commands run, pending issues, or next recommended step unless I explicitly ask for them later.

## Common Commands

```bash
php artisan migrate
php artisan optimize:clear
php artisan route:list
php artisan config:clear
composer install
