UnitAutogen finds PHI, personal data and audit tables on its own. When it misses one, or picks one wrongly, you correct it in one file, unitautogen.toml. Every compliance module reads it.
unitautogen.toml in the folder you run from, picked up automatically--config path/to/file.tomlconfig.toml[phi] # HIPAA: protected health information
tables = ["clinic.patients", "clinic.visits"]
columns = ["clinic.staff.home_phone"]
not = ["public.countries", "clinic.users.email"]
[pii] # personal data (PII-in-error check)
columns = ["crm.contacts.mobile_no"]
[audit] # audit tables
tables = ["audit.change_log"]
not = ["clinic.event_types"]
[audit.map] # optional: where a table's changes must be logged
"clinic.patients" = "audit.patient_log"
"clinic.visits" = ["audit.change_log", "audit.visit_history"]
| Section | What it declares | Used by |
|---|---|---|
[phi] | Tables and columns that hold PHI | HIPAA report, PII audit |
[pii] | Tables and columns that hold personal data | PII audit |
[audit] | Audit tables | HIPAA audit controls and integrity |
[audit.map] | Which audit table each table must log to | HIPAA audit controls |
tables adds tables the tool missedcolumns adds columns the tool missednot removes a wrong guess[phi] also feeds the PII auditschema.tableschema.table.column'clinic."CustomerPII".email'[audit] tables makes a table an audit table, whatever its name[audit] not judges a log-like table as a data table[audit.map] is checked on every run. A change logged to a different audit table is a gap[phi] tables marks a data table as holding PHI, even when its name looks like a log[phi] not keeps the table in the HIPAA report, with its findings markedcolumns entries classify a leaked value as PHI or personal data, whatever the column's nameThe report always shows which tables and columns came from the config file, not from detection.