TODOยถ
Filer page scripts under the CSPยถ
The filer page runs its own inline script (it defines reportProgress for the upload progress bar) and inline event handlers, but meta/csp.yml grants neither script-src-elem nor script-src-attr. They run only because build_csp_header (plugins/filter/csp_filters.py) adds 'unsafe-inline' to both directives whenever the logout service is enabled. With logout disabled the browser refuses them (โExecuting inline script violates โฆ script-src-elemโ, โExecuting inline event handler violates โฆ script-src-attrโ), the upload progress never renders, and the design spec โthe upload progress bar is the primary fill and carries its on-colorโ fails. Options: grant the filerโs script needs in meta/csp.yml (flags for both directives, or hashes of the upstream snippets per pinned version), or let the filer page carry its own policy.
Object-store (S3) consumer integration โ roles not yet wiredยถ
SeaweedFS is the shared S3 object store. A role becomes a consumer by declaring a
seaweedfs service in meta/services.yml, wiring its app config from
lookup('objstore', application_id, ...) (bucket / access_key / secret_key / url /
region), and shipping a gated files/playwright/test-seaweedfs.js. See
web-app-mastodon, web-app-pixelfed, and web-app-nextcloud for the reference
pattern. SeaweedFS S3 requires path-style addressing and the internal http://
endpoint.
The roles below are database-backed and their upstream app can store objects in S3, so the integration is fundamentally possible but not yet implemented. Roles whose upstream has no S3 backend, or whose S3 client is incompatible with SeaweedFS path-style, are listed at the end.
Possible via an upstream plugin/extensionยถ
Role |
Mechanism (verify exact upstream keys before wiring) |
|---|---|
|
media-offload plugin (e.g. WP Offload Media) |
|
S3 |
|
frappe S3 backups + file storage |
|
S3 storage plugin |
Possible โ upstream S3 support still to confirmยถ
Role |
Note |
|---|---|
|
Atlassian DC attachment store on S3 (edition/version dependent) |
|
Atlassian DC attachment store on S3 (edition/version dependent) |
|
confirm upstream S3 file-storage support |
|
confirm upstream S3 attachment support |
|
confirm upstream storage-provider S3 support |
|
confirm S3 attachment store support |
Blocked โ possible only with a provider-side changeยถ
Role |
Blocker |
|---|---|
|
Discourseโs |
Not currently possibleยถ
Role |
Reason |
|---|---|
|
Open-source pretix has no S3/object-store backend (local |
Roles with no object-store surface at all (e.g. web-app-keycloak, web-app-matomo,
web-app-pgadmin, web-app-phpmyadmin, web-app-yourls, web-app-stalwart) keep their
# nocheck: seaweedfs-required exemption and are intentionally excluded.