Files
superset2/tests
Amin Ghadersohi e9f795a338 feat(extensions): Tier 3 persistent storage — full CRUD + list endpoints, pagination, encryption
Implements the Extension Storage Layer (Tier 3) from the architecture proposal:

- New `extension_storage` table and SQLAlchemy model with three storage scopes:
    global (shared), user-scoped (per-user), resource-linked (tied to a Superset resource)
- `ExtensionStorageDAO` with upsert semantics, Fernet encryption, and scope isolation
- REST API under `/api/v1/extensions/<publisher>/<name>/storage/persistent/`:
    GET/PUT/DELETE for global/<key>, user/<key>, resources/<type>/<uuid>/<key>
    GET list endpoints (with ?page & ?page_size pagination) for /global/, /user/, /resources/<type>/<uuid>/
- Alembic migration creating `extension_storage` table
- Unit tests covering all three scopes, upsert, delete, pagination, and encryption
  (encrypted roundtrip, Fernet token verification, cross-scope coexistence)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-07 11:23:23 -07:00
..