This document should hopefully help you when you need to make changes to the scenarios. I've broken it down into different types of changes and certain steps that need to be taken.
Keep track of the String IDs you add or make changes to. You can send this list to the translations team so they only have to focus on the content that's changed. |
Test changes on the go by using the Health Bot's editors 'Run' button |
Keep at least two tabs open: 1 of localization tool to quickly make text changes and 1 for the scenario you are currently editing. |
The wrapper scenario is the beginning scenario and holds just a few / statements and questions:
This is the best place to put information that is of interest to US Citizen and/or the CDC, but not necessary for core guidance. That way the cores can be used by other countries or other departments without much modification.
The scenarios / algorithms are broken into five files for adult symptomatic questions, adult asymptomatic questions, questions for adults who are vaccinated against Covid-19, questions for children who are vaccinated against Covid-19, and pediatric unvaccinated questions. The pathways within the pediatric and vaccinated cores tend to have three major pathways: Asymptomatic, COVID-19 Exposure, and No Exposure. The adult pathway has the asymptomatic pathway broken out into it's own file. Those pathways are broken down even further depending on symptoms and COVID test results. In the image below (from a much earlier version of the bot), the 3 major paths are labeled. Any questions that come before these questions in the scenario determine which scenario the user will take and which options are show. The documents from the Health Bot team are split in the exact same way so it makes it easy to determine where the changes are made.
The messages that are presented to the user have now been marked with IDs in the documentation. This makes it very easy for debugging when a tester finds a certain path is not yielding the correct responses.
If the changes that need to be made a purely text changes to existing text, you can make those changes directly in the localization tool. Open the localization tool and search for the string ID of the content you want to change.
If you are not sure of the string ID you want to change, then open the 'DICT' block and look within there. The string ID should be named appropriately for their purpose. For example, the intro message's string ID is CDC/messages/intro_msg. Another way of finding the string ID of the text you want to change is by figuring out the block it is used in. The names of the scenario blocks describe their content. Open the block for edit and see which scenario variable is being used in it. You can then go to the 'DICT' object and search for that variable.
Structural changes happen when content is added, removed, and/or moved around. These types of changes typically only happen when there's a new algorithm version from the Health Bot team.
If you need to add a new question, first figure out which scenario it should go in and where in the scenario. The way I do that is by determining if the question falls within a 'pathway', or if it's a beginning question (like Age) before there are any algorithm pathways. Use the information in the Scenario Breakdown section of this page to determine in which scenario to make the change. Further determine in which pathway the question should go or if it's a beginning question (like age or gender).
Because the symptoms list changes often, there are special steps you have to take to make sure the bot displays information correctly and the information from bot sessions comes out correctly.
Changing non-symptoms type answer options can sometimes just mean updating the string in the Localization tool. If the string is used for more than one question, however, you may need to create a new variable.
Because the comorbidities list changes often, there are special steps you have to take to make sure the bot displays information correctly and the information from bot sessions comes out correctly. Extra care needs to be taken if comorbidites are added or the order is changed because there is some special handling of the "Pregnancy" comorbidity based on age and sex.