# Parallel Execution Plan

---

## Waves

### Wave 0 — Foundation / Contracts

| Who | Tasks |
| --- | --- |
| Ashraful | PMS-0.1 → **PMS-SCHEMA-1** → PMS-API-0 → start PMS-API-2.1 |
| Sharif | review ERD + **SCHEMA-1** masters/`clients`; draft PMS-API-1.1 + PMS-API-1.2 |
| Munna | review ERD + **SCHEMA-1** team/assignment tables |
| Bablu | PMS-0.2 → PMS-0.1-FE |

**Exit:** ownership locked; **all table columns locked (SCHEMA-1)**; API envelope published; nav shell up.

---

### Wave 1 — Independent Masters + Core Scaffolds

| Who | Tasks |
| --- | --- |
| Sharif | 1.1-BE ∥ 1.2-BE → 1.3-BE; 1.5-BE |
| Ashraful | 2.1-BE (type FK nullable); publish API-2.1 |
| Munna | scaffold 3.1; publish API-3.1 when 1.2 contract ready |
| Bablu | 1.1-FE, 1.2-FE from API locks; start 2.1-FE from API-2.1 |

**Exit:** `pms_services` + `project_types` merged; Project API live or close; FE masters usable.

---

### Wave 2 — Project / Service / Team / Contract

| Who | Tasks |
| --- | --- |
| Ashraful | 2.2-BE → API-2.3 → 2.3-BE |
| Munna | 3.1-BE → 3.2-BE (no contract wait) |
| Sharif | 1.4-BE (off spine); help seeder prep |
| Bablu | 2.2-FE; 3.1-FE; start 2.3-FE from API-2.3 |

**Exit:** Contracts exist; permanent teams/members exist.

---

### Wave 3 — Assignment / Share / Integration shells

| Who | Tasks |
| --- | --- |
| Ashraful | 2.4 ∥ 2.5 ∥ 2.6 → 5.1 → 5.2 |
| Munna | API-3.3 → 3.3-BE → 3.4 ∥ 3.5 |
| Sharif | 4.1 seeder when data ready |
| Bablu | 2.5-FE; 3.3-FE; optional 1.4-FE |

**Exit:** Act-As works; pools stored; earning shell + hook present.

---

### Wave 4 — Frontend Integration (hardening)

Bablu swaps mocks → live BE for all core screens; polish permission gating; fix cascade UX.

Ashraful/Munna/Sharif support contract bugs only (no new scope).

---

### Wave 5 — Reports

| Who | Tasks |
| --- | --- |
| Munna | 5.3-BE, 5.4-BE |
| Sharif | 5.5-BE, 5.6-BE |
| Bablu | 5.3–5.6-FE |

---

### Wave 6 — QA / E2E / Hardening

| Who | Tasks |
| --- | --- |
| All | PMS-QA-1 |
| Sharif | finalize seeder |
| — | PMS-COMM-EPIC remains Phase 2 |

---

## Critical path

```text
PMS-0.1
  → PMS-1.2-BE                    (Sharif — unlock service FK)
  → PMS-2.1-BE                    (Ashraful)
  → PMS-2.2-BE
  → PMS-2.3-BE
  → ┬→ PMS-2.5-BE → PMS-5.1-BE
    └→ PMS-3.3-BE (needs also Munna 3.2) → reports/QA
  → PMS-QA-1
```

**Ship-date driver:** Ashraful spine `2.1→2.2→2.3` plus Munna `3.3` after `2.3`.  
Sharif `1.2` is the main **cross-lane hard gate** early.

Not everything on critical path: commission rule shell, attachments, divisions FE, most reports.

---

## Developer utilization

| Person | Total est. (cards+API) | Hard-blocked early? | Parallelizable from Day-1 | Waiting risk |
| --- | --- | --- | --- | --- |
| Ashraful | ~62h | After 0.1 only | Spine scaffolds | Medium (serial spine) |
| Munna | ~42.5h | Until Sharif 1.2 | Scaffold + API drafts | Medium mid (2.3) |
| Sharif | ~40h | After 0.1 | Masters fully | Low |
| Bablu | ~71h | Nav only | All FE via API contracts | Low if API-first; else High |

### Workload imbalance

**Bablu ~71h vs others ~40–62h.** Safe mitigations without violating table ownership:
1. Defer `1.3-FE`, `1.4-FE` after core commercial UI.
2. Enforce API-contract-first so Bablu never idles.
3. Optional later: split report FE only if still behind (still Lane D).

Do **not** reassign `contracts` / `contract_members` across lanes.

---

## Parallelism diagram (target)

```text
        PMS-0.1 / API-0
       /      |      \
  Sharif   Ashraful   Bablu
  masters   Project    nav+FE
     |         |         |
     v         v         v
   1.2-BE →  2.2-BE →  2.3-BE ──→ Share/Earning
     |                   |
     v                   v
  Munna teams      Munna Act-As (3.3)
     \\                 //
      \\               //
         PMS-QA-1
```
