Implement bulk action monitors (audit log/reporter/Prometheus)
- Dominant language
- Python
- Stars
- 670
- Forks
- 183
- Avg merge
- 15h 13m
- Merged PRs (30d)
- 368
Description
BulkActionMonitor is a pure ABC with no concrete implementations, and no service wiring passes monitors to the bulk processor (defaults to None). Actions already migrated to the bulk framework therefore lose the observation that the legacy BaseAction framework provides via actions/monitors/ (AuditLogMonitor, ReporterMonitor, PrometheusMonitor).
Scope:
Implement the audit-log, reporter, and Prometheus monitors for the bulk action framework, consuming the bulk contract (BA-7054 already preserved operation_type()/spec() on the pure-ABC base for the audit-log/reporter keys).
Wire the monitors into the bulk processor via the DI composer so migrated actions are audit-logged, reported, and metered again.
Decide per-type duplication vs. a thin shared implementation consuming only common fields (epic open question 1).
JIRA Issue: BA-7061
Contributor guide
Research direction
Start with the BulkActionMonitor ABC and the legacy actions/monitors implementations, then inspect the DI composer and the bulk processor wiring. Implement audit-log, reporter, and Prometheus monitoring against the bulk contract, resolve whether shared or per-type code fits, and verify migrated actions regain logging, reporting, and metrics.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- prometheus, python
- Domain
- backend, observability
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100