brianfeucht opened a new issue, #8891:
URL: https://github.com/apache/incubator-devlake/issues/8891

   ### Search before asking
   
   - [x] I had searched in the 
[issues](https://github.com/apache/incubator-devlake/issues?q=is%3Aissue) and 
found no similar issues.
   
   
   ### What happened
   
   Description:
   
   The Rootly plugin collects incidents by filtering per-service using 
filter[service_ids]. However, in practice many (or all) Rootly incidents are 
created without service associations. This causes three compounding issues that 
silently discard valid incidents:
   
   Bug 1 — Collector always sends service filter
   buildIncidentsQuery always appends filter[service_ids]=<serviceId> to every 
API request. The Rootly API returns 0 results for incidents with no service 
tag, so untagged incidents are never stored in the raw table.
   
   Bug 2 — ValidateTaskOptions rejects empty ServiceId
   There is no way to trigger a global (unfiltered) collection because an empty 
serviceId returns a validation error: "not enough info for Rootly execution".
   
   Bug 3 — Extractor service-membership guard drops incidents when ServiceId is 
empty
   In extractRootlyIncident, there is a safety check that filters out any 
incident whose service list doesn't contain the current ServiceId. When 
ServiceId == "", containsServiceId always returns false, so any incident that 
does have service relationships attached gets dropped as a false positive.
   
   Impact:
    - Any incident not tagged with a specific service is permanently lost — 
never reaches the tool layer or domain layer
   
   
   
   
   ### What do you expect to happen
   
   Allow ServiceId to be empty (opt-in global collection)
   Skip filter[service_ids] in buildIncidentsQuery when ServiceId is empty
   Skip the extractor service-membership guard when collecting globally
   
   ### How to reproduce
   
    1. Create a Rootly incident without associating it to any service
    2. Run the Rootly collector for any service scope
    3. The incident does not appear in _tool_rootly_incidents or the incidents 
domain table
   
   ### Anything else
   
   _No response_
   
   ### Version
   
   v1.0.3-beta12
   
   ### Are you willing to submit PR?
   
   - [x] Yes I am willing to submit a PR!
   
   ### Code of Conduct
   
   - [x] I agree to follow this project's [Code of 
Conduct](https://www.apache.org/foundation/policies/conduct)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to