## Sprint 2 (admin) — Providers, Services, Packages dashboard
- Added providers admin CRUD with approve/reject/suspend transition guards, flag toggles, statistics, documents/gallery on show.
- Added read-only-ish services/packages oversight (list, show, toggle active, soft delete).
- Added `AppliesExactFilters`, `provider-actions.js`, lang ar/en.

# Project Changelog — <PROJECT>

> **The project's build history — one section per completed sprint (newest on top).**
> Written at each sprint's Definition of Done (DoD). It records what shipped, the key files, the
> decisions, and the DoD result — so anyone (human or agent) can see *what happened, sprint by sprint*
> without reading the code. Complements `CONTEXT.md` (orientation) and the root `README.md` (external face).

<!-- Entry template — prepend a new one at the top when a sprint passes DoD:

## Sprint 2 — Provider operational API
- Provider profile, change-phone/password, services, packages(+items), works, availability endpoints (ownership-scoped); `ServiceObserver` maintains `providers.price_from`. DB-unverified.

## Sprint <n> — <title>   ·   `<commit-hash>`   ·   <date>
- **Shipped:** <endpoints / CRUDs / features delivered>
- **Key files:** <controllers · services · models · migrations · resources · routes · lang>
- **Decisions / new patterns:** <what future sprints should mirror — also add to CONTEXT §C if reusable>
- **DoD:** migrate ✅ · pint ✅ · dump-autoload ✅ · schema:check ✅ · tests ✅ (<count>) · smoke ✅

-->

_No sprints completed yet._
