Every adventure in BLUERABBIT is a graph of milestones, and every player sees a different resolved view of that graph depending on their level, completions, and unlocked items.
Under the hood, one function - getPlayerProgress() - walks every quest for the adventure and resolves it to a single status: finished, available, locked, blocked, future, or expired. That's the function driving the map you actually explore.