clqms-be/.serena/memories/clqms01-be/task_completion_steps.md
root 30c4e47304 chore(repo): normalize EOL and harden contact patch flow
- handle contact PATCH failures by checking model save result and returning HTTP 400 with the model error message
- update ContactDetailModel nested updates to enforce active-detail checks and use model update() with explicit failure propagation
- extend contact patch assertions and align test-create variants expectations to status=success for POST responses
- refresh composer lock metadata/dependency constraints and include generated docs/data/test files updated during normalization
- impact: API contract unchanged except clearer 400 error responses on invalid contact detail updates
2026-04-17 05:38:11 +07:00

900 B

When a task is completed in CLQMS backend, follow these wrap-up steps:

  1. Run relevant tests (./vendor/bin/phpunit or targeted php spark test --filter ...).
  2. If migrations changed, run php spark migrate / php spark migrate:rollback locally and ensure schema updates succeed.
  3. After editing OpenAPI documentation (YAML files or controller mappings), regenerate public/api-docs.bundled.yaml via node public/bundle-api-docs.js and check it into Git.
  4. Confirm code adheres to PSR-12/CodeIgniter conventions (strict types, response format, transactions, guard clauses) before committing.
  5. Review git status/diff to ensure only intended files are staged; do not commit .env or other secret files.
  6. For shared logic changes, double-check lookup JSON cache use and response logging.

These steps keep the API consistent, documented, and tested before merging or deploying.