We have an open draft PR for hashing certain parts of our data. We want to include hashes for our internal SingleAuditChecklist and SingleAuditReportFile tables, and for our external dissemination_* tables.
The simplest approach, given the current audit flow, is to add/update the hash every time we update the table. For the external tables, this is only on dissemination. For the SingleAuditReportFile, it's only when that form is uploaded. For the SingleAuditChecklist, it's on every web form and excel file upload. That may get cumbersome to maintain.
Is there an easier way? So that we don't have to invoke the hash update in so many places. Perhaps a generated field on the model in Django. Perhaps something at the DB level. Perhaps even a service that sits on the app or DB (that may be more annoying, actually).
Acceptance criteria:
- If this way is already the best way, a short writeup as to why. Then, we'll proceed with the draft PR.
- If this way is not already the best way:
- A short writeup for the new method
- If it's simple enough to complete, just Do the Thing
- Followup tickets as necessary
We have an open draft PR for hashing certain parts of our data. We want to include hashes for our internal SingleAuditChecklist and SingleAuditReportFile tables, and for our external
dissemination_*tables.The simplest approach, given the current audit flow, is to add/update the hash every time we update the table. For the external tables, this is only on dissemination. For the SingleAuditReportFile, it's only when that form is uploaded. For the SingleAuditChecklist, it's on every web form and excel file upload. That may get cumbersome to maintain.
Is there an easier way? So that we don't have to invoke the hash update in so many places. Perhaps a generated field on the model in Django. Perhaps something at the DB level. Perhaps even a service that sits on the app or DB (that may be more annoying, actually).
Acceptance criteria: