AFAIK currently the app handling works as follows: Each session config has a hardcoded sequence of apps, in which apps cannot be repeated. At any time during the experiment there is an upcoming_apps dict which has the remaining apps (but not the ones already played/skipped). It is possible to skip to an app by using app_after_this_page.
This works for many situations but it is restrictive for many others. For example, it is not possible to aleatorize the app sequence per participant without creating extra rooms with the overhead that implies, or to run an experiment with an ABA structure where an app is run again after some task.
It would be highly beneficial with no other drawback to change from upcoming_apps to something like available_apps, where it would be just a dict with all apps in app_sequence, allowing app_after_this_page to jump to any of it without restriction
AFAIK currently the app handling works as follows: Each session config has a hardcoded sequence of apps, in which apps cannot be repeated. At any time during the experiment there is an
upcoming_appsdict which has the remaining apps (but not the ones already played/skipped). It is possible to skip to an app by usingapp_after_this_page.This works for many situations but it is restrictive for many others. For example, it is not possible to aleatorize the app sequence per participant without creating extra rooms with the overhead that implies, or to run an experiment with an ABA structure where an app is run again after some task.
It would be highly beneficial with no other drawback to change from
upcoming_appsto something likeavailable_apps, where it would be just a dict with all apps inapp_sequence, allowingapp_after_this_pageto jump to any of it without restriction