From 69272f71a32be995c2069d9ba7397058be1d4ccf Mon Sep 17 00:00:00 2001 From: jason Date: Fri, 6 Mar 2026 23:21:24 -0600 Subject: [PATCH] docs: add roadmap section with completed features and proposed enhancements --- README.md | 60 +++++++++++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 54 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index ad78091..451eddd 100755 --- a/README.md +++ b/README.md @@ -158,10 +158,58 @@ Three tables + one view: --- -## Phases +## Roadmap -- [x] Phase 1 — Container scaffold, SQLite schema, base React form -- [x] Phase 2 — Employee history, prior violation highlighting, recidivist point auto-suggest -- [x] Phase 3 — Puppeteer PDF generation -- [x] Phase 4 — Dashboard, CPAS scores, tier warnings, at-risk badges -- [ ] Phase 5 — Recidivist point auto-suggest refinements / additional reporting +### ✅ Completed + +| Phase | Feature | Description | +|-------|---------|-------------| +| 1 | Container scaffold | Docker multi-stage build, Express server, SQLite schema | +| 1 | Base violation form | Employee fields, violation type, incident date, point submission | +| 2 | Employee intelligence | Live CPAS standing badge and 90-day count shown before submitting | +| 2 | Prior violation highlighting | Violation dropdown annotates types with 90-day recurrence counts | +| 2 | Recidivist auto-escalation | Points slider auto-maximizes on repeat same-type violations | +| 2 | Violation history | Per-employee history list with resolution status | +| 3 | PDF generation | Puppeteer/Chromium PDF per violation, downloadable immediately post-submit | +| 3 | Prior-points snapshot | `prior_active_points` captured at insert time for accurate historical PDFs | +| 4 | Company dashboard | Sortable employee table with live tier badges and at-risk flags | +| 4 | Stat cards | Summary counts: total, clean, active, at-risk, highest score | +| 4 | Tier crossing warning | Pre-submit alert when new points push employee to next tier | +| 4 | Employee profile modal | Full history, negate/restore, hard delete, per-record PDF download | +| 4 | Negate & restore | Soft-delete violations with resolution type + notes, fully reversible | + +--- + +### 🔲 Proposed + +#### Reporting & Analytics +- **Violation trends chart** — line/bar chart of violations per day/week/month, filterable by department or supervisor; useful for identifying systemic patterns vs. individual incidents +- **Department heat map** — grid view showing violation density and average CPAS score by department; helps supervisors identify team-level risk +- **Expiration timeline** — visual showing which active violations will roll off the 90-day window and when, so supervisors can anticipate tier drops +- **CSV / Excel export** — bulk export of violations or dashboard data for external reporting or payroll integration + +#### Employee Management +- **Employee edit / merge** — ability to update employee name, department, or supervisor without losing history; merge duplicate records created by name typos +- **Supervisor view** — scoped dashboard showing only the employees under a given supervisor, useful for multi-supervisor environments +- **Employee notes / flags** — free-text notes attached to an employee record (e.g. "on PIP", "union member") visible in the profile modal without affecting scoring + +#### Violation Workflow +- **Acknowledgment signature field** — a "received by employee" name/date field on the violation form that prints on the PDF, replacing the blank signature line +- **Draft / pending violations** — save a violation as draft before finalizing, useful when incidents need review before being officially logged +- **Violation amendment** — edit a submitted violation's details (not points) with an audit trail, rather than delete-and-resubmit +- **Bulk violation import** — CSV import for migrating historical records from paper logs or a prior system + +#### Notifications & Escalation +- **Tier escalation alerts** — email or in-app notification when an employee crosses into Tier 2+ so the relevant supervisor is automatically informed +- **Scheduled summary digest** — weekly email to supervisors listing their employees' current standings and any approaching tier thresholds +- **At-risk threshold configuration** — make the "at-risk" warning threshold (currently hardcoded at 2 pts) configurable per deployment + +#### Infrastructure & Ops +- **Multi-user auth** — simple login with role-based access (admin, supervisor, read-only); currently the app has no auth and is assumed to run on a trusted internal network +- **Audit log** — immutable log of all creates, negates, restores, and deletes with timestamp and acting user, stored separately from the violations table +- **Automated DB backup** — cron job or Docker health hook to snapshot `/data/cpas.db` to a mounted backup volume or remote location on a schedule +- **Dark/light theme toggle** — the UI is currently dark-only; a toggle would improve usability in bright environments + +--- + +*Proposed features are suggestions based on common HR documentation workflows. Priority and implementation order should be driven by actual operational needs.*