diff --git a/.commitmessage b/.commitmessage index f102431..55c0478 100644 --- a/.commitmessage +++ b/.commitmessage @@ -1,3 +1,3 @@ -feat: add auto deactivate option for slot plans +docs: document git and docker workflow -Add an autoDeactivate flag to pickup configuration entries, expose it as a dashboard checkbox beside the active state, and keep existing entries defaulting to automatic deactivation unless explicitly disabled. +Record the requirement to start from a clean worktree, preserve the running Docker state as production reference, commit and push every completed change, and deploy features and fixes live via Docker. diff --git a/AGENTS.md b/AGENTS.md index 15f8d9b..863fa9d 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -25,6 +25,13 @@ - `docker compose up -d --build` - `curl http://localhost:3005/api/health` and confirm the response contains `"status":"ok"` +## Git & Deployment Workflow +- Before making any code, config, Docker, or documentation change, verify `git status --short` is clean. If it is not clean, stop and reconcile the current worktree first; the running Docker service on port 3005 is the relevant production reference when deciding which state to preserve. +- If the running Docker service contains changes that are not committed, compare its `/app` contents against the worktree, commit the Docker-live state, and push it before starting a new feature or fix. +- After every completed feature or fix, update `.commitmessage`, stage it with `git add -f .commitmessage`, create a conventional commit, and push `main`. +- Features and fixes must go live in Docker after the commit: run `docker compose up -d --build` and verify `curl http://localhost:3005/api/health` returns a JSON response containing `"status":"ok"`. +- Keep `config/`, credentials, request logs, HAR captures, and other runtime state out of commits unless explicitly requested. + ## Coding Style & Naming Conventions - Use 2-space indentation and Standard/Prettier-compatible formatting; rely on the CRA ESLint config (`react-app`, `react-app/jest`) for feedback. - Favor functional React components with PascalCase filenames (`PickupConfigEditor.js`) and camelCase props/state keys.