Skip to content

feat(security): a Detections page for audit log detections - #2534

Merged
Makisuo merged 73 commits into
mainfrom
audit-trail/detections-page
Nov 13, 2026
Merged

Makisuo merged 73 commits into
mainfrom
audit-trail/detections-page

Merge remote-tracking branch 'origin/main' into audit-trail/detection…

d20e687
Select commit
Loading
Failed to load commit list.
Maple Review Bot / Maple / review succeeded Nov 13, 2026 in 35s

Confidence 10/10 · No issues found

🟢 Confidence 10/10 · safe to merge. Only the delta since the previous review was new, and it is empty: both integration-statuses files now match main byte for byte.
no findings · tests covered · risk medium

Adds the Detections list and editor for audit-log detections, its templates and the audit-log "alert on these events" link. Nothing new to review since the last pass: git diff febc3e8..d20e687 touches only apps/web/src/data/integration-statuses.ts and its test, and both are now identical to main (the merge took upstream's version), so they are not in this PR's diff. The McpQueryError issues anchored at apps/web/src/page/registry.ts come from MCP tool warehouse queries; this change only registers two page routes there and does not address them.

  • detections/page lists rules with toggle, edit and confirmed delete against the API's answer
  • detection-form/page creates, edits and prefills from five ready-made templates
  • SecurityDetectionNewSearch carries detectionId, template and the audit log's filters into the editor
  • audit-access keeps the three access states shared with the audit log

Production impact

Open errors in the changed files (2)
Issue Service Occurrences File
@maple/mcp/errors/McpQueryError (7 issues) maple-ai 33 apps/web/src/page/registry.ts
@maple/mcp/errors/McpQueryError (3 issues) maple-chat 15 apps/web/src/page/registry.ts

After this merges, Maple checks whether they stop.

What was checked
  • withRows never flips a row locally: every list mutation applies the API's returned detection (detections/update.ts:132)
  • templateOf and the form's search params drop names this build does not know, so a stale URL opens an empty editor
  • The two files changed since the last review are byte-identical to main, so the merge introduced no divergence

d20e687 · Reply "won't fix" to dismiss a finding, or mention @maple-review-bot to ask about one.