| 2026-04-02 | 1. License Plans (3.0h) | FEAT | Add Simulate License plan and rename existing plan to Mapping License | 0.50 |
| 2026-04-02 | FEAT | Add licensePlanCode as stable identifier for license plans | 0.50 |
| 2026-04-02 | FIX | Make licensePlanCode optional to avoid data loss on existing rows | 0.25 |
| 2026-04-03 | DB | Migration for licensePlanCode column on license_keys table | 0.50 |
| 2026-04-03 | CHORE | Remove manual migration and update payload types | 0.25 |
| 2026-04-03 | FEAT | Add SIMULATE_LICENSE_ENABLE flag to control Simulate License availability | 1.00 |
| 2026-05-07 | 2. Per-User Master-Data Version (3.5h) | ADMIN | Admin page to manage master-data version per user | 1.00 |
| 2026-05-07 | DB | Database migration for user master-data access | 0.50 |
| 2026-05-07 | FEAT | Add default master-data version | 0.25 |
| 2026-05-07 | API | Enforce per-user master-data version on all read endpoints | 0.75 |
| 2026-05-07 | DOCS | Master-data version access release notes + OpenSpec artefacts | 0.50 |
| 2026-05-07 | FEAT | Pricing mapping workflow + WPA pricing APIs | 0.25 |
| 2026-05-07 | CHORE | Remove pricing import tip banner from admin page | 0.25 |
| 2026-05-11 | 3. Healthcare Pricing as Master-Data (5.0h) | REFACTOR | Rebuild pricing as Healthcare Pricing master-data collection | 1.50 |
| 2026-05-11 | FEAT | Add View JSON / export button on Healthcare Pricing admin page | 0.25 |
| 2026-05-11 | FEAT | Seed per-coding-system healthcare-pricing schemas | 0.50 |
| 2026-05-12 | REFACTOR | Simplify healthcare-pricing shape and relax version filter | 0.50 |
| 2026-05-12 | REFACTOR | Rename priceCurrency/priceAmount → currency/amount | 0.25 |
| 2026-05-12 | FIX | PDF parser missed alphanumeric DBC codes (010905-style) | 0.50 |
| 2026-05-12 | FEAT | Import healthcare-pricing master data (5,530 records) | 0.75 |
| 2026-05-12 | FIX | Healthcare-pricing edit form — amount + linked-product display | 0.50 |
| 2026-05-12 | FIX | Loosen master-data version filter (no 403 on incomplete version map) | 0.25 |
| 2026-05-21 | 4. Master-Data Search & Filter (5.0h) | FEAT | Schema-driven master-data search via raw json_extract | 1.00 |
| 2026-05-21 | REFACTOR | Extract generic MasterDataTable, roll out search to all 18 collections | 1.50 |
| 2026-05-21 | FEAT | Search + version filter for Diseases/Libraries tree views | 0.50 |
| 2026-05-25 | FEAT | Extend search to nested fields, localization terms, and linked relations | 0.75 |
| 2026-05-25 | FEAT | Restrict master-data search to per-collection listed fields | 0.50 |
| 2026-05-25 | FEAT | Add dropdown filters: Parent Library, Parameters (determination/source/referenceTable), Conditions (filter.method) | 0.50 |
| 2026-05-25 | FIX | Scope enum dropdown filters to the selected coding system | 0.25 |
| 2026-05-28 | 5. Performance Investigation & Documentation (2.5h) | INVEST | Investigate root cause of master-data slowness on staging (profile queries, identify bottlenecks) | 0.75 |
| 2026-05-28 | INVEST | Swap Payload ORM → raw Drizzle queries to probe SQL behaviour directly | 0.50 |
| 2026-05-28 | INVEST | Test with Postgres (vs SQLite) to isolate whether DB engine is the perf bottleneck | 0.50 |
| 2026-05-29 | DOCS | Write master-data slowness explainer for client review | 0.75 |