Make audit events immutable

This commit is contained in:
ZacharyZhang-NY committed 2026-05-23 22:35:35 -04:00
1 parent 20c8ef6ef3
commit 689fe861f1
4 files changed
+41 -1

No files matched your search

@@ -0,0 +1,16 @@
export const auditEventImmutabilitySchema = `
create trigger if not exists trg_audit_events_no_update
before update on audit_events
begin
select raise(abort, 'Audit events are immutable.');
end;
create trigger if not exists trg_audit_events_no_delete
before delete on audit_events
begin
select raise(abort, 'Audit events are immutable.');
end;
insert into schema_migrations(version, name, applied_at)
values (33, 'audit_event_immutability', datetime('now'));
`;
@@ -31,6 +31,7 @@ import { fileHandoffRecordsSchema } from "./migrations/029-file-handoff-records"
import { approvalSourceRefsSchema } from "./migrations/030-approval-source-refs";
import { providerRequestWorkspaceSchema } from "./migrations/031-provider-request-workspace";
import { browserActionMetadataSchema } from "./migrations/032-browser-action-metadata";
import { auditEventImmutabilitySchema } from "./migrations/033-audit-event-immutability";
interface Migration {
version: number;
@@ -71,6 +72,7 @@ const MIGRATIONS: Migration[] = [
{ version: 30, name: "approval_source_refs", sql: approvalSourceRefsSchema },
{ version: 31, name: "provider_request_workspace", sql: providerRequestWorkspaceSchema },
{ version: 32, name: "browser_action_metadata", sql: browserActionMetadataSchema },
{ version: 33, name: "audit_event_immutability", sql: auditEventImmutabilitySchema },
];
const SCHEMA_VERSION = MIGRATIONS[MIGRATIONS.length - 1].version;