Description
GET /api/authz/v1/waffle-flag-states/ (added in #358, backed by openedx_authz.utils.get_waffle_flag_states()) exists only to expose the state of the authz.enable_course_authoring waffle flag to the admin-console MFE, so it can apply the "show if any tier is on, hide if all are off" rule from #340 and #341.
That flag is a temporary migration flag:
Once the flag is fully rolled out and removed from edx-platform, this endpoint (and the org/course override models it queries) will have no reason to exist. The admin-console MFE's dependency on it will also need to be removed at the same time.
Per ADR 0016, this endpoint is a bounded, documented exception to Authorization's domain ownership rule, not a pattern to repeat; this issue exists so that exception has a scheduled end.
Definition of Done
References
Description
GET /api/authz/v1/waffle-flag-states/(added in #358, backed byopenedx_authz.utils.get_waffle_flag_states()) exists only to expose the state of theauthz.enable_course_authoringwaffle flag to the admin-console MFE, so it can apply the "show if any tier is on, hide if all are off" rule from #340 and #341.That flag is a temporary migration flag:
toggle_target_removal_date: 2027-06-09Once the flag is fully rolled out and removed from edx-platform, this endpoint (and the org/course override models it queries) will have no reason to exist. The admin-console MFE's dependency on it will also need to be removed at the same time.
Per ADR 0016, this endpoint is a bounded, documented exception to Authorization's domain ownership rule, not a pattern to repeat; this issue exists so that exception has a scheduled end.
Definition of Done
authz.enable_course_authoringhas been fully rolled out and removed from edx-platformGET /api/authz/v1/waffle-flag-states/,openedx_authz.utils.get_waffle_flag_states(), and theWaffleFlagStatesAPIVieware removed from openedx-authzReferences