# 01 — Foundation

**Domain:** Foundation · **Phase:** 1  
**Canonical detail:** `docs/projects/PMS_PHASE1_TASK_CARDS.md`

## Features
- Domain ERD + কে কোন table-এর owner
- Phase 1-এর সব table-এর column এক doc-এ (`PMS-SCHEMA-1`)
- API envelope / conventions

## Workstreams
Documentation · Schema · API Contract

### PMS-0.1 — Domain ERD & Table Ownership Lock

**Task ID:** PMS-0.1
**Domain:** 01. Foundation
**Feature:** Domain ERD & Ownership Lock
**Workstream:** Documentation
**Task Title:** Domain ERD & Table Ownership Lock
**Description:** কোন table আছে, কার; Act-As / PM মানে কী; Phase 1 vs Commissioning। Column detail পরের task (`PMS-SCHEMA-1`)।
**Owner:** Ashraful (lead); others review
**Lane:** Shared
**Priority:** P0
**Estimate:** 4.00h
**Dependency:** —
**Dependency Type:** N/A
**Specification Reference:** Business SRS §3–§34; 00-master-wbs.md
**Business Rule Reference:** Permanent≠contract membership; Act-As; PM=Member of Project
**API Contract Reference:** Feeds PMS-API-0
**Acceptance Criteria**
- Given ERD published When reviewed Then every Phase-1 table has exactly one lane owner
- Given Act-As rule When documented Then no separate ActAs master is proposed
- Given Phase boundary When documented Then full commission engine is out of Phase 1
**Definition of Done:** ERD + ownership matrix merged; team ack
**Git Ownership / File Ownership:** docs/projects/*, docs/project-management/wbs/*
**Git Conflict Risk:** LOW
**Parallelization Notes:** First shared gate; then PMS-SCHEMA-1

_Detail card:_ `docs/projects/PMS_PHASE1_TASK_CARDS.md` → `PMS-0.1`

---

### PMS-SCHEMA-1 — Full Phase 1 Database Schema (all tables)

**Task ID:** PMS-SCHEMA-1
**Domain:** 01. Foundation
**Feature:** Database Schema
**Workstream:** Schema
**Task Title:** Full Phase 1 Database Schema — All Tables
**Description:** একটা doc-এ সব Phase 1 table-এর column/type/FK/index ঠিক করা। Migration আলাদা BE card-এ; কিন্তু column এই doc ছাড়া নিজে থেকে বানানো যাবে না।
**Owner:** Ashraful (lead); Munna + Sharif review
**Lane:** Shared
**Priority:** P0
**Estimate:** 6.00h
**Dependency:** PMS-0.1
**Dependency Type:** HARD
**Specification Reference:** [phase1-database-schema.md](./phase1-database-schema.md); Business SRS
**Business Rule Reference:** Same as PMS-0.1; plus clients decision; employee_id target
**API Contract Reference:** Informs field names in PMS-API-*
**Acceptance Criteria**
- সব Phase-1 table-এ column + owner লেখা আছে, team review করেছে
- Client: existing map নাকি নতুন `clients` — সিদ্ধান্ত লেখা আছে
- Migration SCHEMA doc মিলিয়ে আসে (না মিললে আগে doc আপডেট)
**Definition of Done:** schema doc team-OK; Index Depends ঠিক
**Git Ownership / File Ownership:** `docs/project-management/wbs/phase1-database-schema.md`, task cards Index
**Git Conflict Risk:** LOW (docs); HIGH if skipped and people invent columns
**Parallelization Notes:** Migration এর আগে দরকার; Bablu FE wait করে না

_Detail card:_ `docs/projects/PMS_PHASE1_TASK_CARDS.md` → `PMS-SCHEMA-1`

---

### PMS-API-0 — PMS API Envelope & Error Contract Conventions

**Task ID:** PMS-API-0
**Domain:** 01. Foundation / 11. API
**Feature:** API Envelope Lock
**Workstream:** API Contract
**Task Title:** PMS API Envelope & Error Contract Conventions
**Description:** NEW STRUCTURAL TASK. Freeze success/error envelope, pagination, permission prefix project.*, IDOR expectations.
**Owner:** Ashraful
**Lane:** A
**Priority:** P0
**Estimate:** 2.00h
**Dependency:** PMS-0.1
**Dependency Type:** HARD
**Specification Reference:** ERPFlow coding-standard API responses
**Business Rule Reference:** N/A
**API Contract Reference:** Self (root)
**Acceptance Criteria**
- Given consumer When reading contract Then 401/403/404/422/409 meanings are explicit
- Given permission keys When listed Then they align with PMS-0.2
**Definition of Done:** Published in 11-api.md
**Git Ownership / File Ownership:** docs/project-management/wbs/11-api.md
**Git Conflict Risk:** LOW
**Parallelization Notes:** Unlocks all domain PMS-API-* in parallel

_Detail card:_ `docs/projects/PMS_PHASE1_TASK_CARDS.md` → `PMS-API-0`

---
