Admin UI for audit log, legal holds, retention and read-only spaces #79
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The v0.3.15–v0.3.17 public-sector features (#61 audit, #62 share policy, #63 retention/hold, #64 read-only spaces) all shipped API-only. An operator can't see or use any of them from the browser today, which makes them effectively invisible in a demo.
Four pieces:
GET /api/v1/admin/audit, with user and path-prefix filters. Time, user, action, path, and a badge whenresult != "ok".GET /api/v1/admin/holds, place via POST (path + optional note), lift via DELETE. Show who placed it and when.path = durationtextarea in the Settings panel mapping tosettings.retentionPeriods."readOnly": roto the list response ininternal/api/api.govia an optionalReadOnly(ctx, path) boolinterface assertion on the store (the scope driver already implements it). The UI then disables mkdir/upload and shows a "View only" chip. The server stays the enforcer — this only stops offering actions that would be refused anyway.Design decisions already made (so this doesn't get re-litigated):
Implementation note. A first attempt failed before running: the patch workflow embedded multi-line HTML at column 0 inside a
run: |block, which is invalid YAML — the same trap that brokerenewal-patch.ymlearlier. Either indent embedded blocks to the block indent and strip in Python (line[10:]), or better, commit the new dialog markup as its own file on the branch and have the script splice it in.