This website requires JavaScript.
2e10cbe42d
feat(host): add NodeName to NodeOptions + INodeIdentityProvider
Joseph Doherty
2026-05-23 15:38:27 -04:00
9e5e32d0f2
docs(audit): add SourceNode column to AuditLog/Notifications/SiteCalls design + plan
Joseph Doherty
2026-05-23 15:34:44 -04:00
e3345a0fc1
Merge branch 'feature/inbound-api-full-response-audit': inbound API full request/response audit capture
Joseph Doherty
2026-05-23 09:49:52 -04:00
e6ccee1a16
refactor(inboundapi): pool the request audit buffer + reset Position in finally
Joseph Doherty
2026-05-23 09:46:53 -04:00
e567eb334c
docs(audit): drop stale InboundAuthFailure exclusion from design doc
Joseph Doherty
2026-05-23 09:25:23 -04:00
7d87994ac0
feat(inboundapi): bound audit capture at InboundMaxBytes (memory safety)
Joseph Doherty
2026-05-23 09:25:00 -04:00
651c4b6833
docs(inboundapi): note request/response bodies captured in full to InboundMaxBytes
Joseph Doherty
2026-05-23 06:09:10 -04:00
7efb004a02
docs(audit): schema + Payload Capture Policy note inbound full-body carve-out
Joseph Doherty
2026-05-23 06:07:11 -04:00
a8d2e13d4e
feat(inboundapi): AuditWriteMiddleware captures response body on ApiInbound audit rows
Joseph Doherty
2026-05-23 06:00:24 -04:00
7b619d711d
feat(auditlog): payload filter uses InboundMaxBytes for ApiInbound rows
Joseph Doherty
2026-05-23 05:48:03 -04:00
c5b27361c0
feat(auditlog): add AuditLog:InboundMaxBytes option (default 1 MiB, [8 KiB, 16 MiB])
Joseph Doherty
2026-05-23 05:39:50 -04:00
441ec087a7
docs(audit): implementation plan — full request/response capture for inbound API audit rows
Joseph Doherty
2026-05-23 05:36:08 -04:00
0670864160
docs(audit): design — full request/response capture for inbound API rows
Joseph Doherty
2026-05-23 05:28:34 -04:00
f8127d5754
Merge branch 'fix/audit-grid-resize-flaky-test': stabilise audit-grid resize E2E
Joseph Doherty
2026-05-22 08:00:46 -04:00
bb6f6aaa54
test(centralui): fix flaky audit-grid resize-survives-reload test
Joseph Doherty
2026-05-22 08:00:46 -04:00
c07cc379e6
Merge branch 'feature/collapsible-nav-sections': collapsible sidebar nav sections
Joseph Doherty
2026-05-22 07:56:22 -04:00
86ee7bd1a8
feat(centralui): collapsible sidebar nav sections
Joseph Doherty
2026-05-22 07:36:57 -04:00
d4abacc0d8
Merge branch 'feature/technical-light-rebrand': ScadaBridge rebrand + technical-light theme
Joseph Doherty
2026-05-22 07:04:42 -04:00
b07f43a308
feat(centralui): rebrand web UI to ScadaBridge + technical-light theme
Joseph Doherty
2026-05-22 07:03:46 -04:00
b628b869fa
Merge branch 'feature/execution-tree-node-modal': execution-tree node detail modal
Joseph Doherty
2026-05-22 02:06:02 -04:00
d4a7344f89
docs(centralui): refresh stale test summaries + drop redundant modal-lg
Joseph Doherty
2026-05-22 02:03:36 -04:00
35cef4ad1b
test(centralui): e2e execution-tree node detail modal + docs
Joseph Doherty
2026-05-22 01:54:12 -04:00
3f1ad08f42
feat(centralui): open ExecutionDetailModal on tree-node double-click
Joseph Doherty
2026-05-22 01:46:12 -04:00
5c86983ef6
fix(centralui): Esc-to-close and aria attributes on ExecutionDetailModal
Joseph Doherty
2026-05-22 01:43:41 -04:00
386cd0b955
feat(centralui): ExecutionDetailModal — execution rows with per-row detail
Joseph Doherty
2026-05-22 01:39:04 -04:00
603995d43a
feat(centralui): ExecutionTree node double-click raises OnNodeActivated
Joseph Doherty
2026-05-22 01:32:37 -04:00
6a6d0e88a7
refactor(centralui): extract AuditEventDetail from AuditDrilldownDrawer
Joseph Doherty
2026-05-22 01:25:40 -04:00
fd07654c68
docs(centralui): execution-tree node modal implementation plan + task tracking
Joseph Doherty
2026-05-22 01:15:53 -04:00
d5623e98bd
docs(centralui): execution-tree node detail modal design
Joseph Doherty
2026-05-22 01:13:11 -04:00
afd81c32ef
fix(centralui): marshal Audit Log LocationChanged handler through InvokeAsync
Joseph Doherty
2026-05-21 20:35:20 -04:00
3f1c0e5018
fix(centralui): re-apply Audit Log query-string filters on same-page drill-in
Joseph Doherty
2026-05-21 20:30:48 -04:00
16f800b76a
Merge branch 'feature/audit-parent-executionid': ParentExecutionId cross-execution audit correlation
Joseph Doherty
2026-05-21 20:14:44 -04:00
9ec83d5070
docs(auditlog): generalize two stale XML-doc comments
Joseph Doherty
2026-05-21 20:14:31 -04:00
933f0484ba
test(auditlog): ParentExecutionId e2e waits on audit kinds, not a row count
Joseph Doherty
2026-05-21 20:09:54 -04:00
fb1312d0bf
test(auditlog): end-to-end ParentExecutionId correlation + docs
Joseph Doherty
2026-05-21 19:12:19 -04:00
592cbd028e
feat(audit): ParentExecutionId filter in the CLI and ManagementService
Joseph Doherty
2026-05-21 18:59:06 -04:00
9b1f78638b
refactor(centralui): complete cycle fallback + polish in ExecutionTree
Joseph Doherty
2026-05-21 18:56:03 -04:00
34a4356625
feat(centralui): execution-chain tree view on the Audit Log page
Joseph Doherty
2026-05-21 18:49:13 -04:00
0b5723b777
feat(centralui): ParentExecutionId column, filter and parent drill-in on the Audit Log page
Joseph Doherty
2026-05-21 18:38:02 -04:00
252bf0a970
refactor(auditlog): GetExecutionTreeAsync recurses over a distinct edge set
Joseph Doherty
2026-05-21 18:29:48 -04:00
255dd95cd9
feat(auditlog): GetExecutionTreeAsync recursive execution-chain query
Joseph Doherty
2026-05-21 18:21:49 -04:00
d35551efc2
feat(auditlog): NotifyDeliver rows carry the originating ParentExecutionId
Joseph Doherty
2026-05-21 18:11:04 -04:00
c00603e2a4
feat(auditlog): thread ParentExecutionId through S&F for retry-loop cached rows
Joseph Doherty
2026-05-21 17:58:11 -04:00
150ba5e63f
feat(auditlog): site script-side emitters stamp ParentExecutionId
Joseph Doherty
2026-05-21 17:45:55 -04:00
6af2607a50
feat(siteruntime): thread ParentExecutionId into the routed script's ScriptRuntimeContext
Joseph Doherty
2026-05-21 17:35:49 -04:00
dc2c73b07d
refactor(inboundapi): fail-fast on missing inbound ExecutionId stash
Joseph Doherty
2026-05-21 17:26:49 -04:00
d8453bfba2
feat(inboundapi): mint inbound ExecutionId early, carry it as RouteToCallRequest.ParentExecutionId
Joseph Doherty
2026-05-21 17:22:13 -04:00
50430b9daa
feat(auditlog): ParentExecutionId on site SQLite schema + gRPC AuditEventDto
Joseph Doherty
2026-05-21 17:12:34 -04:00
0a8709e5c5
feat(auditlog): ParentExecutionId column on AuditEvent + central AuditLog
Joseph Doherty
2026-05-21 17:04:39 -04:00
e4b37e2798
docs(auditlog): ParentExecutionId implementation plan + task tracking
Joseph Doherty
2026-05-21 16:58:07 -04:00
6be26e2813
docs(auditlog): ParentExecutionId cross-execution correlation design
Joseph Doherty
2026-05-21 16:53:25 -04:00
156e560171
Merge branch 'feature/audit-executionid': ExecutionId universal audit correlation
Joseph Doherty
2026-05-21 16:30:41 -04:00
5198b114b4
fix(auditlog): evolve existing site auditlog.db schema for ExecutionId
Joseph Doherty
2026-05-21 16:18:17 -04:00
fd76c19007
test(auditlog): end-to-end ExecutionId correlation + docs
Joseph Doherty
2026-05-21 16:06:40 -04:00
24cdfe373c
feat(audit): ExecutionId filter in the CLI and ManagementService
Joseph Doherty
2026-05-21 16:00:09 -04:00
1ba62052d6
feat(centralui): ExecutionId column, filter and drill-in on the Audit Log page
Joseph Doherty
2026-05-21 15:52:57 -04:00
cfd8f1ecf4
feat(auditlog): inbound audit rows carry ExecutionId
Joseph Doherty
2026-05-21 15:44:17 -04:00
6aac4c8ed7
test(auditlog): pin OriginExecutionId preservation in forwarder + Parked NotifyDeliver
Joseph Doherty
2026-05-21 15:42:45 -04:00
85bb61a1f3
feat(auditlog): NotifyDeliver rows carry the originating ExecutionId
Joseph Doherty
2026-05-21 15:35:40 -04:00
705ae95404
test(auditlog): assert ExecutionId threading hops; defensive Guid parse on S&F read
Joseph Doherty
2026-05-21 15:27:37 -04:00
6f5a35f222
feat(auditlog): thread ExecutionId through S&F for retry-loop cached rows
Joseph Doherty
2026-05-21 15:18:35 -04:00
0149ce6180
feat(auditlog): site script-side emitters stamp ExecutionId
Joseph Doherty
2026-05-21 15:05:00 -04:00
6b16a48886
feat(auditlog): ExecutionId on site SQLite schema + gRPC AuditEventDto
Joseph Doherty
2026-05-21 14:53:08 -04:00
990731d12f
test(auditlog): cover ExecutionId in AuditEvent round-trip test; clarify staging-table comment
Joseph Doherty
2026-05-21 14:48:39 -04:00
fd12021984
feat(auditlog): ExecutionId column on AuditEvent + central AuditLog
Joseph Doherty
2026-05-21 14:43:35 -04:00
4002f4197b
docs(plan): Audit Log ExecutionId implementation plan
Joseph Doherty
2026-05-21 14:37:12 -04:00
6ffa47f258
docs(design): Audit Log ExecutionId universal correlation
Joseph Doherty
2026-05-21 14:34:12 -04:00
c9229c35fc
Merge branch 'feature/audit-execution-correlation': per-execution audit correlation id
Joseph Doherty
2026-05-21 13:58:37 -04:00
aadb1fd72a
refactor(auditlog): rename audit correlation field, add cross-helper tests
Joseph Doherty
2026-05-21 13:57:17 -04:00
8243f61e96
feat(auditlog): per-script-execution correlation id on sync audit rows
Joseph Doherty
2026-05-21 13:46:34 -04:00
53508c79b2
Merge branch 'feature/audit-apicall-payloads': capture API-call payloads
Joseph Doherty
2026-05-21 10:17:50 -04:00
849a011400
fix(auditlog): capture request/response payloads on outbound API audit rows
Joseph Doherty
2026-05-21 10:17:42 -04:00
405de525ca
Merge branch 'feature/audit-channel-single-select': single-select Channel filter
Joseph Doherty
2026-05-21 10:03:08 -04:00
77922abb33
feat(centralui): single-select Channel filter on the Audit Log page
Joseph Doherty
2026-05-21 10:02:17 -04:00
5f544bfe1e
Merge branch 'feature/audit-actor-identity': populate audit Actor column
Joseph Doherty
2026-05-21 09:56:43 -04:00
aaa6df24cf
Merge branch 'feature/audit-filter-dropdowns': compact audit filter dropdowns
Joseph Doherty
2026-05-21 09:56:43 -04:00
ae7329034f
fix(auditlog): populate the Actor column on outbound and central rows
Joseph Doherty
2026-05-21 09:50:55 -04:00
e36f0bf9c8
feat(centralui): compact multi-select dropdowns for the audit filter bar
Joseph Doherty
2026-05-21 09:36:36 -04:00
a3eb659b75
Merge branch 'feature/audit-log-followups': Audit Log #23 deferred follow-ups
Joseph Doherty
2026-05-21 09:27:52 -04:00
d34f536220
fix(centralui): stabilise Site Calls + Audit grid Playwright E2E
Joseph Doherty
2026-05-21 09:22:50 -04:00
40955bbca6
docs(plan): mark audit-log follow-up tasks complete
Joseph Doherty
2026-05-21 06:41:53 -04:00
7a386a80ce
docs(auditlog): mark follow-ups complete in roadmap; refresh stale comments
Joseph Doherty
2026-05-21 06:39:49 -04:00
c503df4c4c
fix(centralui): stabilize audit grid th nodes with @key; doc grid limitations
Joseph Doherty
2026-05-21 06:33:20 -04:00
f1478c5a19
feat(centralui): column resize and reorder for the audit results grid
Joseph Doherty
2026-05-21 06:27:46 -04:00
f64a7aed02
refactor(audit): consolidate query-param parsers; widen CLI export to multi-value
Joseph Doherty
2026-05-21 05:37:06 -04:00
2a76be1f94
feat(audit): multi-value filters across ManagementService, CLI and Central UI
Joseph Doherty
2026-05-21 05:27:17 -04:00
37c7a0e5ac
feat(auditlog): multi-value AuditLogQueryFilter dimensions
Joseph Doherty
2026-05-21 05:15:51 -04:00
b3b02a8cb6
fix(centralui): apply status/stuck query-string filters on the Site Calls page
Joseph Doherty
2026-05-21 05:08:50 -04:00
44f1ee372a
feat(centralui): Site Call KPI tiles on the Health dashboard
Joseph Doherty
2026-05-21 05:04:16 -04:00
d73b459057
fix(centralui): single relay toast, paging/skip polish, extra Site Calls tests
Joseph Doherty
2026-05-21 04:59:12 -04:00
7e9d74697b
feat(centralui): Site Calls page with Retry/Discard and Audit drill-in
Joseph Doherty
2026-05-21 04:51:14 -04:00
3cf2b4d47e
fix(sitecallaudit): correct stale relay docs and clarify ack switch
Joseph Doherty
2026-05-21 04:43:48 -04:00
7816b840c1
feat(sitecallaudit): central→site Retry/Discard relay for parked operations
Joseph Doherty
2026-05-21 04:36:04 -04:00
ac1f73cf8a
fix(sitecallaudit): push StuckOnly filter into SQL; doc accuracy fixes
Joseph Doherty
2026-05-21 04:24:16 -04:00
e3519fdb39
feat(sitecallaudit): query, KPI and detail backend for the Site Calls page
Joseph Doherty
2026-05-21 04:14:49 -04:00
6f0d2ca499
refactor(auditlog): consolidate SiteCall DTO mapper into Communication
Joseph Doherty
2026-05-21 04:00:20 -04:00
fdd1a4b886
refactor(auditlog): consolidate AuditEvent DTO mappers into Communication
Joseph Doherty
2026-05-21 03:51:51 -04:00
6f59a1b546
fix(auditlog): assert Forwarded state in push integration test; tidy docs and Host wiring
Joseph Doherty
2026-05-21 03:46:40 -04:00
de5280d1c7
feat(auditlog): real ClusterClient-based site audit push client
Joseph Doherty
2026-05-21 03:39:17 -04:00
8c78913503
fix(communication): correct audit-ingest timeout-path docs and add timeout test
Joseph Doherty
2026-05-21 03:29:54 -04:00