Testing Unicorn users for D941
Backstory, platform
In Fall 2013, ServiceNow administrators received reports of failed mail ingress. After lengthy weeks of analysis, watching the Spam filter, etc., it was determined there is a rare case where legitimate mail is treated as spam for good reasons.
Berlin platform release of ServiceNow launched a feature where mail received against the mail accounts associated with Inactive users is treated as spam, and dropped. This mail will fail to generate in Incident, the user is not notified, and the people who would have otherwise fulfilled the request never receive a ticket.
In Calgary, this is a toggleable feature. In Berlin, there is no way to turn this feature off.
Backstory, Yale
- Lori Seluga and her group grant a bonus time interval to recently-graduated alumni. Therefore they have an active Yale mail account, even though they are no longer undergrads, and they are flagged as Inactive with their NetID.
- Alumni are also eligible for $50 / class deal where they can come back to campus and audit classes on a room-available basis.
- Then these unicorn alumni / students send an email to classesv2 with their active gmail account and non-active NetID, and serviceNow refuses to accept the email, because ServiceNow thinks mail sent by a non-active user is spam. Then the incident doesn't get generated for classesv2.
The workaround is to basically add a grace period to servicenow where recent alumni will still have their Yale mail accepted by the platform.
In one sentence, this is the fault of the gmail grace period. If users would instead use any OTHER mail address, the mail would be accepted by ServiceNow and an incident would be created.
The fix
The fix was assigned to Fred Roos from fruition while he was at 25 Science Park. Backeberg and Roos sat in a cubicle and pair-programmed the solution, saved as update set 2014/01/30 - 1. The fix is a modify to the user import transform scripts to treat these unicorn alumni as active users, even though Central Auth knows they have graduated and should be inactive. This fix was a good start, but there were lingering problems. Those issues were finally settled on update set 2014/03/28 - 1.
Testing the fix
We need to identify some unicorn alumni, and then confirm their status in the system.
Even better would be to ingress mail to the ServiceNow platform emulating as a unicorn, however, only PROD is hooked up to a real mail server, so this is not possible directly. It is possible INDIRECTLY, and I will discuss that later.
Identifying unicorn alumni
The grace period from Lori's group is six months, so we want to look at current year graduates if it is after graduation in the current calendar year, and last year graduates if it is before graduation in the current calendar year. Said differently, look for user in alumni status, AND (graduation year equal to current year if it is June or later ELSE or graduation year equal current year minus one).
The URL for that query:
for 2014 https://yaletest.service-now.com/sys_user_list.do?sysparm_query=edu_statusLIKEalumni%5Eu_graduation_year%3D2014
Then we want to look at the status of the users:
This query dumps users who graduated in 2013 and are set active by service now
That should be most of the users.
This query dumps users who graduated in 2013 and are set not active by service now
When D941 works properly, there should be zero users who graduated in 2014 and are NOT set active.
How to ingress fake mail to TEST
It is possible to ingress fake mail to TEST, but the process is a lot of effort for low return. Basically, the way you do this is you send mail to PROD service now as the user you want to emulate, then you copy and paste the received message details from PROD service now into TEST service now, then tell ServiceNow to 'process message' on the fake received mail you created manually in TEST. Does that sound hard? It is. Verifying the user detail is a sufficient test of this bug.