HR cases that only the right people can ever see.
Handle employee relations cases and investigations with isolation built in, every access attributed, and decisions that can withstand a charge or a lawsuit.
HR case files are among the most sensitive records a company keeps. The CRC standard's isolation model fits them naturally: each case is reachable only by the people assigned to it.
The starting spec
This is what the App Configurator generates when you start from this example. Every row is editable before you publish, and every mechanism stays available inside the running app, so the app can keep changing after launch.
| Kind | Name | Definition | Notes | |
|---|---|---|---|---|
| 1 | Hub | case | category · reporter · subject · received_at · confidentiality_level | Isolated per case |
| 2 | Child | interview | case 1 → n · interviewee · interviewer · notes | Visible to assigned investigators only |
| 3 | Child | evidence | case 1 → n · type · source · collected_by | Chain of custody kept |
| 4 | Index | case_unique | (reporter, subject, received_at) unique | Blocks duplicate intake |
| 5 | States | case.lifecycle | Intake → Triage → Investigating → Findings → Action → Closed | See transition rules |
| 6 | SoD | investigator_rule | investigator ∉ reporting_line(subject) | Independence of investigation |
| 7 | Report | aging | Open cases by category, stage and age | Dashboard |
| 8 | Report | patterns | Repeat subjects and categories across periods | Restricted to HR leadership |
Early accessOpen this spec in the App Configurator, change what doesn't fit, and download the application file.
The lifecycle
Employee relations work lives or dies on independence and confidentiality. Both are rules the record enforces, and every read of a case file is attributed, not just every write.
| Transition | Who may make it | What must be true | Result |
|---|---|---|---|
| Intake → Triage | HR intake | Category and confidentiality level set | Allowed · attested |
| Triage → Investigating | HR lead | Independent investigator assigned | Allowed · independence checked |
| Investigating → Findings | Investigator | Interviews and evidence attached | Allowed · attested |
| Findings → Action | HR leadership, never the investigator | Findings approved; action defined | Allowed · separation of duties checked |
| Intake → Closed | No one | Transition not defined | Refused · refusal recorded |
What you get that the usual tools don't give you
Confidential by construction
Each case is its own isolated surface. Access is granted per case, so there is no shared pool for a curious user or an agent to wander through.
A record that holds up
When a charge or lawsuit arrives, the case history, every access and every decision are already attested.
Onboarding and offboarding tied to access
Joiner and leaver checklists connect to Chandra Passport, so access follows the employee lifecycle automatically.
Start from this spec.
Open it in the App Configurator, rename it in your terms, change what doesn't fit, and review the result before anything runs. Your license includes full access to its source. Or bring it to the development advisory and we'll shape it with you.