Ulmo.1 collectstatic failure: SuspiciousFileOperation (/openedx/css/images/correct-icon.png outside STATIC_ROOT)

Our current environment is Ulmo.1, Tutor 21+, and custom theme plugin + orgcode plugin (both tested disabled)

The Problem is during collectstatic, the process fails with a SuspiciousFileOperation referencing a path outside STATIC_ROOT.

Command: tutor local run lms python manage.py lms collectstatic --noinput

Error:

django.core.exceptions.SuspiciousFileOperation:
The joined path (/openedx/css/images/correct-icon.png)
is located outside of the base path component (/openedx/staticfiles)

The Stack trace ends in: openedx/core/djangoapps/theming/storage.py

What I have already verified: Clean install of Ulmo.1, Removed and rebuilt Tutor environment, Disabled custom plugins, Verified theme does not reference /css/images, Verified plugins do not reference /css/images, Deleted staticfiles directory: rm -rf /openedx/staticfiles/*, then reran collectstatic.

Static files that exis. The correct images are present in staticfiles: /openedx/staticfiles/images/correct-icon.png, openedx/staticfiles/images/incorrect-icon.png, /openedx/staticfiles/images/partially-correct-icon.png

But during hashing Django attempts to resolve: /openedx/css/images/correct-icon.png which is outside STATIC_ROOT.

From staticfiles scan:

/openedx/staticfiles/xblock/resources/xmodule.discussion_block/js/common_static/images/correct-icon.png
/openedx/staticfiles/studio/images/correct-icon.png
/openedx/staticfiles/images/correct-icon.png

Question:

Is this a known issue in Ulmo.1 static pipeline or theming storage?

Specifically: openedx/core/djangoapps/theming/storage.py appears to attempt hashing a URL pointing to /openedx/css/images/…

Should that path exist, or is this a legacy reference that should be rewritten during collectstatic?

Any guidance on where the incorrect path originates would be greatly appreciated.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.