in bugbot/rules/ni_from_manager.py [0:0]
def set_people_to_nag(self, bug, buginfo):
priority = self.get_priority(bug)
if not self.filter_bug(priority):
return None
for flag in self.status_flags:
if flag not in bug:
logger.warning(f"Bug {bug['id']} doesn't have flag {flag}")
return None
any_affected = any(bug[flag] == "affected" for flag in self.status_flags)
has_manager = False
accepted = False
for flag in bug["flags"]:
if (
flag.get("name", "") == "needinfo"
and flag["status"] == "?"
and (flag["setter"] in self.vip or any_affected)
):
requestee = flag["requestee"]
if self.is_under(requestee):
accepted = True
buginfo["to"] = requestee
moz_name = self.get_people().get_moz_name(flag["setter"])
buginfo["from"] = (
moz_name if moz_name is not None else flag["setter"]
)
if self.add(requestee, buginfo, priority=priority):
has_manager = True
if accepted and not has_manager:
self.add_no_manager(buginfo["id"])
return bug if accepted else None