Commit Graph

  • ff004e2e48 fix(cli): correct audit query channel/kind/status enum names + drop dead --instance flag (#23 M8) Joseph Doherty 2026-05-20 22:13:26 -04:00
  • 36d58e8988 docs(cli): document scadalink audit group + audit-config rename (#23 M8) Joseph Doherty 2026-05-20 22:03:32 -04:00
  • ba8ddcc032 refactor(cli): rename audit-log to audit-config with deprecation alias (#23 M8) Joseph Doherty 2026-05-20 22:02:19 -04:00
  • d40ee85e14 feat(cli): table output formatter for audit events (#23 M8) Joseph Doherty 2026-05-20 22:00:57 -04:00
  • 4b3a692170 feat(cli): scadalink audit verify-chain subcommand v1 no-op (#23 M8) Joseph Doherty 2026-05-20 21:57:16 -04:00
  • 91682cd862 feat(cli): scadalink audit export subcommand (#23 M8) Joseph Doherty 2026-05-20 21:56:20 -04:00
  • 2fa46ed400 feat(cli): scadalink audit query subcommand (#23 M8) Joseph Doherty 2026-05-20 21:55:38 -04:00
  • 3263b39477 feat(cli): scaffold scadalink audit command group (#23 M8) Joseph Doherty 2026-05-20 21:52:37 -04:00
  • a1bdd94d4c feat(mgmt): /api/audit/{query,export} endpoints with permission gates (#23 M8) Joseph Doherty 2026-05-20 21:49:14 -04:00
  • 263884fa63 docs(audit): add M8 CLI implementation plan (#23) Joseph Doherty 2026-05-20 21:39:29 -04:00
  • 9ba453191b Merge branch 'feature/audit-log-m7-central-ui': Audit Log #23 M7 Central UI Joseph Doherty 2026-05-20 21:39:00 -04:00
  • fac31c6018 fix(ui): AuditLogQueryService uses scope-per-query to avoid DbContext race (#23 M7) Joseph Doherty 2026-05-20 21:33:38 -04:00
  • 9c955da2e7 test(ui): Audit Log Playwright E2E coverage (#23 M7) Joseph Doherty 2026-05-20 21:24:19 -04:00
  • 6dea84cd28 feat(security): OperationalAudit + AuditExport permissions for Audit Log surface (#23 M7) Joseph Doherty 2026-05-20 21:09:42 -04:00
  • 8744630adb feat(ui): server-side streaming CSV export of Audit Log (#23 M7) Joseph Doherty 2026-05-20 20:57:01 -04:00
  • 943c2ced39 feat(ui): Audit KPI tiles on Health dashboard (#23 M7) Joseph Doherty 2026-05-20 20:43:57 -04:00
  • 38fc9b4102 feat(ui): drill-ins from detail pages to Audit Log (#23 M7) Joseph Doherty 2026-05-20 20:26:28 -04:00
  • 1c20e81d77 feat(ui): drill-in from Notifications to Audit Log (#23 M7) Joseph Doherty 2026-05-20 20:20:54 -04:00
  • 450f8bca28 feat(ui): AuditLogPage parses query-string filters for drill-ins (#23 M7) Joseph Doherty 2026-05-20 20:19:47 -04:00
  • ae4480e7aa feat(ui): AuditDrilldownDrawer with JSON/SQL render, cURL, drill-back, redaction badges (#23 M7) Joseph Doherty 2026-05-20 20:13:33 -04:00
  • e052aa4ff8 feat(ui): AuditResultsGrid + AuditLogQueryService with keyset paging (#23 M7) Joseph Doherty 2026-05-20 20:02:46 -04:00
  • 13e84a76a7 feat(ui): AuditFilterBar component (#23 M7) Joseph Doherty 2026-05-20 19:56:49 -04:00
  • 12b86bea7a feat(ui): scaffold Audit Log page + Audit nav group (#23 M7) Joseph Doherty 2026-05-20 19:49:11 -04:00
  • a9f45b0861 refactor(ui): rename AuditLog viewer to ConfigurationAuditLog under /audit/configuration (#23 M7) Joseph Doherty 2026-05-20 19:46:09 -04:00
  • 2d13886286 docs(audit): add M7 Central UI implementation plan (#23) Joseph Doherty 2026-05-20 19:43:30 -04:00
  • 8c2382c2bc docs(audit): roadmap corrections after M6 Joseph Doherty 2026-05-20 19:42:54 -04:00
  • 6d7a03e099 Merge branch 'feature/audit-log-m6-reconciliation-purge': Audit Log #23 M6 Reconciliation + Purge + Partition Maintenance + Health Metrics Joseph Doherty 2026-05-20 19:42:26 -04:00
  • eb5fa8f2bc test(auditlog): partition maintenance roll-forward end-to-end (#23 M6) Joseph Doherty 2026-05-20 19:38:07 -04:00
  • 2138534581 test(auditlog): partition-switch purge end-to-end (#23 M6) Joseph Doherty 2026-05-20 19:36:17 -04:00
  • 66f6724c5d test(auditlog): outage + reconciliation recovery end-to-end (#23 M6) Joseph Doherty 2026-05-20 19:32:01 -04:00
  • ef49b55cf6 fix(health): decouple AuditCentralHealthSnapshot from ActorSystem (#23 M6) Joseph Doherty 2026-05-20 19:25:28 -04:00
  • 2744011ce9 feat(health): surface AuditRedactionFailure in central snapshot (#23 M6) Joseph Doherty 2026-05-20 19:13:19 -04:00
  • 70ed8d4557 feat(health): CentralAuditWriteFailures + AuditCentralHealthSnapshot (#23 M6) Joseph Doherty 2026-05-20 19:11:52 -04:00
  • 42333a72ed feat(health): SiteAuditTelemetryStalledTracker subscribes to EventStream (#23 M6) Joseph Doherty 2026-05-20 19:07:44 -04:00
  • e93f655ce4 feat(health): SiteAuditBacklog metric (count + age + bytes) (#23 M6) Joseph Doherty 2026-05-20 19:02:01 -04:00
  • 75b060e0a8 feat(auditlog): AuditLogPartitionMaintenanceService monthly roll-forward (#23 M6) Joseph Doherty 2026-05-20 18:51:43 -04:00
  • cc2d6e91f1 fix(auditlog): SiteAuditReconciliationActor captures EventStream before await (#23 M6) Joseph Doherty 2026-05-20 18:39:19 -04:00
  • 660fdc4e93 feat(auditlog): AuditLogPurgeActor daily partition-switch purge (#23 M6) Joseph Doherty 2026-05-20 18:36:31 -04:00
  • 6069a20e0f fix(configdb): replace SwitchOutPartitionAsync stub with drop-and-rebuild dance (#23 M6) Joseph Doherty 2026-05-20 18:20:55 -04:00
  • c763bd9a04 feat(auditlog): SiteAuditReconciliationActor central singleton (#23 M6) Joseph Doherty 2026-05-20 18:10:42 -04:00
  • 640fd07454 feat(comms): site-side PullAuditEvents handler (#23 M6) Joseph Doherty 2026-05-20 17:58:43 -04:00
  • 25d9acbce3 feat(comms): PullAuditEvents RPC for audit reconciliation (#23 M6) Joseph Doherty 2026-05-20 17:48:30 -04:00
  • b0584f7a08 docs(audit): add M6 reconciliation+purge+partition+health plan (#23) Joseph Doherty 2026-05-20 17:44:12 -04:00
  • db05af897e docs(audit): roadmap corrections after M5 Joseph Doherty 2026-05-20 17:43:44 -04:00
  • adc490b690 Merge branch 'feature/audit-log-m5-payload-redaction': Audit Log #23 M5 Payload + Redaction Joseph Doherty 2026-05-20 17:43:19 -04:00
  • 1856b63f0c test(auditlog): redaction safety net edge cases (#23 M5) Joseph Doherty 2026-05-20 17:38:59 -04:00
  • 4eeda45f0e test(auditlog): hot-path latency budget for IAuditPayloadFilter (#23 M5) Joseph Doherty 2026-05-20 17:36:29 -04:00
  • b409afda2e feat(auditlog): hot-reloadable AuditLogOptions + regex cache invalidation (#23 M5) Joseph Doherty 2026-05-20 17:35:15 -04:00
  • 23c0fd417e feat(health): AuditRedactionFailure counter + bridge (#23 M5) Joseph Doherty 2026-05-20 17:28:33 -04:00
  • 9b1379ed9b feat(auditlog): wire IAuditPayloadFilter into all writer paths (#23 M5) Joseph Doherty 2026-05-20 17:21:57 -04:00
  • 5a7f3e8bf6 feat(auditlog): per-connection SQL parameter redaction opt-in (#23 M5) Joseph Doherty 2026-05-20 17:11:53 -04:00
  • 37f17dc4a8 feat(auditlog): body regex redaction with over-redaction safety net (#23 M5) Joseph Doherty 2026-05-20 17:09:36 -04:00
  • ad7b330f43 feat(auditlog): HTTP header redaction stage (#23 M5) Joseph Doherty 2026-05-20 17:07:01 -04:00
  • bba2ef1b4d feat(auditlog): DefaultAuditPayloadFilter truncation with UTF-8 boundary safety (#23 M5) Joseph Doherty 2026-05-20 17:01:13 -04:00
  • 25cdf857c9 feat(auditlog): IAuditPayloadFilter contract (#23 M5) Joseph Doherty 2026-05-20 16:59:10 -04:00
  • e7b40c1c50 docs(audit): add M5 payload+redaction implementation plan (#23) Joseph Doherty 2026-05-20 16:56:56 -04:00
  • dae6de2c48 docs(audit): roadmap corrections after M4 Joseph Doherty 2026-05-20 16:56:18 -04:00
  • ac7fc9ce4d Merge branch 'feature/audit-log-m4-remaining-boundaries': Audit Log #23 M4 Remaining Boundary Emission Joseph Doherty 2026-05-20 16:55:45 -04:00
  • 065c8259ae test(auditlog): audit failures never abort user-facing actions (#23 M4) Joseph Doherty 2026-05-20 16:50:48 -04:00
  • a7eea0a795 test(auditlog): Inbound API request audit end-to-end (#23 M4) Joseph Doherty 2026-05-20 16:48:27 -04:00
  • 02727b3a66 test(auditlog): Notify dispatcher audit trail end-to-end (#23 M4) Joseph Doherty 2026-05-20 16:47:09 -04:00
  • 56b26339ca test(auditlog): DB sync emission end-to-end (#23 M4) Joseph Doherty 2026-05-20 16:43:55 -04:00
  • 1c862989b4 feat(inbound): register AuditWriteMiddleware in pipeline (#23 M4) Joseph Doherty 2026-05-20 16:35:13 -04:00
  • 3c3f7770c1 feat(inbound): AuditWriteMiddleware emitting InboundRequest/InboundAuthFailure (#23 M4) Joseph Doherty 2026-05-20 16:35:03 -04:00
  • 855df759b5 feat(siteruntime): emit NotifySend(Submitted) on site-side Notify.To().Send (#23 M4) Joseph Doherty 2026-05-20 16:18:46 -04:00
  • 6de377a39e feat(notif): emit NotifyDeliver(terminal) on terminal transitions (#23 M4) Joseph Doherty 2026-05-20 16:12:44 -04:00
  • 1dfd67a90d feat(notif): emit NotifyDeliver(Attempted) per dispatcher attempt (#23 M4) Joseph Doherty 2026-05-20 16:08:06 -04:00
  • b31747a632 feat(notif): NotificationOutboxActor + CentralAuditWriter wired (#23 M4) Joseph Doherty 2026-05-20 16:04:01 -04:00
  • e4d902753b feat(siteruntime): emit DbOutbound.DbWrite on sync Database.Execute*/ExecuteReader (#23 M4) Joseph Doherty 2026-05-20 15:54:54 -04:00
  • c410fc6d43 docs(audit): add M4 remaining-boundaries implementation plan (#23) Joseph Doherty 2026-05-20 15:41:13 -04:00
  • f48efa7ca8 docs(audit): roadmap corrections after M3 Joseph Doherty 2026-05-20 15:40:33 -04:00
  • d20e8f4e9d Merge branch 'feature/audit-log-m3-cached-operations': Audit Log #23 M3 Cached Operations + Dual-Write Joseph Doherty 2026-05-20 15:39:41 -04:00
  • 73a19c6f02 refactor(auditlog): remove dead-code ternary in CachedCallLifecycleBridge (#23 M3 final-review fix) Joseph Doherty 2026-05-20 15:39:10 -04:00
  • c3d4e6b1e0 test(auditlog): combined telemetry idempotency on retried packets (#23 M3) Joseph Doherty 2026-05-20 15:27:14 -04:00
  • f063b35633 test(auditlog): cached DB write combined telemetry end-to-end (#23 M3) Joseph Doherty 2026-05-20 15:26:04 -04:00
  • f4a7be4929 test(auditlog): cached call combined telemetry end-to-end (#23 M3) Joseph Doherty 2026-05-20 15:25:10 -04:00
  • a3b0fb7f08 refactor(auditlog-tests): extract DirectActorSiteStreamAuditClient + add IngestCachedTelemetry support (#23 M3) Joseph Doherty 2026-05-20 15:21:44 -04:00
  • f81750b2aa fix(siteruntime): immediate-success CachedCall emits terminal telemetry (#23 M3) Joseph Doherty 2026-05-20 15:15:11 -04:00
  • 6fe23a4d9b feat(host): register SiteCallAuditActor + CachedCallTelemetry forwarder/bridge (#22, #23 M3) Joseph Doherty 2026-05-20 15:10:47 -04:00
  • 047988e4c8 feat(siteruntime): Database.CachedWrite emits combined telemetry + S&F audit bridge (#23 M3) Joseph Doherty 2026-05-20 14:55:17 -04:00
  • 63eb1f4225 feat(snf): per-attempt and terminal cached-call lifecycle observer (#23 M3) Joseph Doherty 2026-05-20 14:52:34 -04:00
  • 42430dd10a feat(siteruntime): ExternalSystem.CachedCall emits CachedSubmit telemetry (#23 M3) Joseph Doherty 2026-05-20 14:48:05 -04:00
  • 2145b29d4d feat(auditlog): CachedCallTelemetryForwarder for site-side dual emission (#23 M3) Joseph Doherty 2026-05-20 14:41:15 -04:00
  • 73719ee066 feat(auditlog): extend ISiteStreamAuditClient with IngestCachedTelemetryAsync (#23 M3) Joseph Doherty 2026-05-20 14:39:24 -04:00
  • 0a97fff906 feat(auditlog): combined telemetry dual-write transaction (#23 M3) Joseph Doherty 2026-05-20 14:33:14 -04:00
  • 2b54290c7f feat(comms): IngestCachedTelemetry RPC + CachedTelemetryPacket proto (#23 M3) Joseph Doherty 2026-05-20 14:24:13 -04:00
  • de110f8b42 feat(scaudit): SiteCallAuditActor minimum surface (#22, #23 M3) Joseph Doherty 2026-05-20 14:18:49 -04:00
  • bedfa6b8f3 feat(configdb): ISiteCallAuditRepository + EF impl, monotonic upsert (#22, #23 M3) Joseph Doherty 2026-05-20 14:10:24 -04:00
  • 6667f345fa feat(configdb): add SiteCalls migration (#22, #23 M3) Joseph Doherty 2026-05-20 14:05:36 -04:00
  • 3162286ade feat(configdb): map SiteCall to SiteCalls table (#22, #23 M3) Joseph Doherty 2026-05-20 14:04:17 -04:00
  • e416b21dad feat(commons): CachedCallTelemetry combined operational+audit packet (#23 M3) Joseph Doherty 2026-05-20 13:58:57 -04:00
  • 0f28d13da7 feat(siteruntime): Tracking.Status(id) script API (#23 M3) Joseph Doherty 2026-05-20 13:56:59 -04:00
  • b86d7c61ab feat(siteruntime): OperationTrackingStore site-local SQLite (#23 M3) Joseph Doherty 2026-05-20 13:51:09 -04:00
  • 1c38dd540f feat(commons): TrackedOperationId strong type (#23 M3) Joseph Doherty 2026-05-20 13:47:40 -04:00
  • 4ca0b3ce2a docs(audit): add M3 cached-operations implementation plan (#23) Joseph Doherty 2026-05-20 13:43:46 -04:00
  • db34ba66bf docs(audit): roadmap corrections after M2 Joseph Doherty 2026-05-20 13:41:34 -04:00
  • ee10f61582 Merge branch 'feature/audit-log-m2-site-sync-pipeline': Audit Log #23 M2 Site Pipeline (sync-only) Joseph Doherty 2026-05-20 13:40:59 -04:00
  • f0ee125afa test(auditlog): end-to-end sync-call emission via TestKit + MSSQL fixture (#23) Joseph Doherty 2026-05-20 13:30:13 -04:00
  • dd3351da93 feat(health): SiteAuditWriteFailures counter + AuditLog bridge (#23) Joseph Doherty 2026-05-20 13:22:25 -04:00
  • 82a8bbf225 feat(siteruntime): ExternalSystem.Call emits Audit Log #23 event on every sync call Joseph Doherty 2026-05-20 13:11:19 -04:00