Hi Liz,
Is this happening to every learner enrolled through the program or just one? Have you changed the name/shortname of the Learner role? This should work, if I create an audience and assign them to a program then when the learner tries to access the course in the Program they are enrolled via the program enrolment plugin and automatically given the learner role.
There is nothing I can think of that would remove learner roles...and obviously users taking a course with no role will probably have some very strange effects on the completion code.
Can you check Site Administration -> Plugins -> Enrolments -> Program settings for the Program Enrolment plugin and make sure that "Default Role" is set to "Learner"?