v0.38.0-UAT Update 1 — Critical/P0 QA Remediation - QA-016/package cross-check follow-up: Linux setup now consumes frozen migrations and performs drift check; backend runbook/README/binding matrix aligned. - QA tracker reconciliation: added explicit runtime regression checklist for all 22 historical FIXED items. - Package integrity hardened: deterministic PACKAGE-CONTENTS/SHA256 regeneration and full coverage verification added. - Added device-punch to daily-attendance roll-up and day reconciliation. - Added salary-structure-driven payroll components, mid-month joining proration and effective-dated salary segmentation. - Added one authoritative attendance day ledger to prevent missing-day under-deduction and leave/absence double deduction. - Added attendance-period finalization/reopen control, payroll gate and stale-payroll fingerprint protection after attendance re-finalization. - Added validated CSV migration engine with staged preview and confirm-import transaction. - Added final-working-day-driven exit salary calculation and final-settlement loan-ledger settlement. - Added explicit user-company membership/query scoping, report export scoping and tenant-aware Django Admin guards. - Added persistent effective-dated Company Policy configuration consumed by attendance/payroll. Effective/current policy rows are immutable in normal business UI; create a new version for policy changes. - Added P0 static evidence checker, QA tracker update and runtime verification checklist. - Runtime proof is still required on the Local Django/PostgreSQL UAT server; physical FO-M1 proof remains a separate device gate. v0.37.1-trial — Approved UI Theme Parity Patch - Restored the approved navy/blue/green visual direction in the real Django runtime. - Added sidebar icons, active menu highlighting, branded Shohoj Shop logo block and user avatar header. - Rebuilt the runtime Dashboard with colored KPI cards, department summary and today's attendance. - Kept all backend/database behavior unchanged; this patch is primarily UI parity plus dashboard read-only statistics. - No database migration is required when upgrading from v0.37.0-trial to v0.37.1-trial. v0.37.1-trial — Complete Local Trial Handover - Converted the browser-review build into a final-style local UAT package. - Added real backend HTML templates for runtime screens. - Added ZKTeco FO-M1 device configuration, mapping and CSV punch import backend flow. - Added role-specific Local UAT demo users and sample reporting-manager scope. - Added administration/audit/migration runtime screens. - Added PostgreSQL-first Windows Local/LAN setup flow. - Added Bengali Installation & Maintenance Guide, User Manual and Developer Orientation (DOCX + PDF). - Added trial start/release notes and tightened Local UAT handover instructions. v0.37.1-trial — Operational Menu Order Refinement - Reordered the left navigation to match a real office operating sequence. - Added clear menu groups: Overview & Daily Work, Employee Operations, Payroll & Benefits, Employee Exit, Administration, Implementation & Support. - Reordered the real backend navigation to follow the same operational flow. - No business logic or data model changes in this patch. v0.37.1-trial — Local UAT Smoke Test & Scenario Pack - Added Windows/Linux automated smoke-test runner. - Added migration drift, runtime and core test gates. - Added 35 practical UAT scenarios, bug log, payroll reconciliation and FO-M1 live-test templates. - Smoke result is saved for troubleshooting. - Next gate: practical installation on the Local UAT PC. HR & Payroll Review v0.37.1-trial Project: HRPAY-BMD-20260911-01 Production Backend Finalization — Checkpoint 10 - Local Runtime Installation Package prepared. - Windows setup/start/check entry points added for non-technical Local UAT. - Quick SQLite UAT and production-like PostgreSQL UAT modes prepared. - Local `.env.local` loader added without extra dependency. - Migration package directories added; first Local UAT setup generates the initial migration baseline and executes it. - First-run automation added for roles, Shohoj Shop master data, first Super Admin and runtime verification. - Four clearly marked UAT sample employees, salaries, leave balances and ZKTeco FO-M1 device mappings can be seeded. - Local Runtime status page and command-line readiness diagnostics added. - Final v1.0.0 will freeze and ship the verified migration files after Local UAT schema corrections are closed. Update 1 QA remediation checkpoint (2026-09-15) - Added explicit final-settlement Submit / Return / Reject / Correct & Resubmit lifecycle with maker-checker protection. - Added Unicode/Bangla-safe payslip font discovery and ReportLab shaping support (runtime font proof pending). - Added encrypted-at-rest PostgreSQL backup/verify/restore path using OpenSSL AES-256-CBC/PBKDF2. - Added centralized Django Admin create/update audit coverage and disabled hard delete through tenant admin mixin. - Added controlled employee employment actions and blocked direct terminal lifecycle status edits. - Added salary payment account UI (masked) and locked-payroll Bank Advice export. - Expanded business reports: Employee Master, Leave Balance, Salary Structure, Bonus/Deduction, Final Settlement and Audit export. - Added P1 static verifier and Local Runtime verification checklist. v0.39.4-dev Consolidated — 2026-09-16 - Merged reviewed developer pre-final corrections PF-001..PF-018 into consolidated master (no model/schema change in PF set). - QA-101: removed raw 403 UX for personal employee requests from admin accounts without employee profiles; added capability-aware request buttons and explanatory redirects. - QA-102: introduced responsive reusable 3/2/1-column data-entry form layout across form.as_p input screens. - Preserved consolidated QA-096..QA-098 workflow fixes while merging PF workflow changes. - Python compileall PASS and targeted merge assertions PASS. Review2 correction checkpoint (2026-09-16) - QA-103..QA-107 developer CRUD additions reviewed against the pre-final corrected baseline. - QA-108: made pending OT/Bonus/Deduction employee identity immutable after approval-task creation and refreshed open task context after edits. - QA-109: blocked pending/finalized-month OT from bypassing attendance-close immutability. - QA-110: blocked unresolved/late payroll inputs from crossing Reviewed/Approved/Locked/Pay gates; closed-period Bonus/Deduction must use controlled adjustment/arrear handling. - QA-111: added reviewer-visible OT/Bonus/Deduction source details and stronger before/after audit evidence; Attendance Device edit now logs non-secret configuration changes. - Review2 package hygiene: remove generated Python cache files before release packaging; runtime proof remains pending.