v0.31.5
Fixed
OIDC_ENABLEDenv var no longer prevents admins from disabling OIDC via the UI — env var now only seeds on first boot instead of overriding the DB value on every read- Guild switching no longer shows stale sidebar data — restored query cache invalidation on guild switch that was accidentally removed during React Query migration
- HTML
<strong>tags rendered as literal text in delete confirmation dialogs — switched to react-i18nextTranscomponent for proper bold rendering in initiative, guild, and settings dialogs (en + es locales) - Defensive
Array.isArrayguard in document template queries to prevent crash on non-array data - Admin initiative member role promotion (500 error) — endpoint referenced non-existent
.roleattribute onInitiativeMember; fixed to resolve roles viarole_idFK - Admin delete user dialog 404s when fetching initiative members across guilds — added admin endpoint
GET /admin/initiatives/{id}/membersthat bypasses RLS - Self-deletion dialog 404s when fetching initiative members across guilds — added user endpoint
GET /users/me/initiative-members/{id}that bypasses RLS for owned initiatives
Changed
- Centralized settings and AI settings mutation hooks (Phase 4a) — 13 new hooks in
useSettings.tsanduseAISettings.tsreplace inline mutations across 7 settings pages/components; addedMutationOptstouseUpdateRoleLabels - Centralized remaining mutation hooks (Phase 4b) — 22 new hooks across
useAdmin.ts,useUsers.ts,useSecurity.ts, and newuseImports.ts; addedMutationOptsto 11 existing hooks inuseComments.ts,useTags.ts,useNotifications.ts; no.tsxfile importsuseMutationdirectly - Centralized inline
useMutationhooks for tasks, subtasks, task statuses, project members, role permissions, and project documents into domain hook files (useTasks.ts,useProjects.ts) — replaces ~50 inline mutations across 15 component/page files - Consolidated standalone
useProjectFavoriteMutationanduseProjectPinMutationhooks intouseProjects.tsasuseToggleProjectFavoriteanduseToggleProjectPin - All mutation hooks now accept an optional
MutationOptsparameter, allowing callers to provideonSuccess,onError,onSettled, and other mutation options - Added shared
MutationOptstype (frontend/src/types/mutation.ts) - Fixed
apiMutatorto merge request options (custom headers were silently ignored) - Optimized database indexes: dropped 9 redundant indexes (PK-subsumed and unique-constraint-duplicated) and added 6 high-priority FK/reverse-lookup indexes for
task_assignees,initiative_members,project_permissions,document_permissions,initiatives, andprojects - Synced model declarations (
index=True) with actual database indexes for maintainability - Test database setup is now fully automatic —
conftest.pycreates theinitiative_testdatabase and runs migrations on first test run, removing the need for manualsetup_test_db.sh - Centralized document mutations into
useDocuments.ts— new hooks for create, upload, duplicate, copy, member CRUD (individual + bulk), role permission CRUD, and AI summary generation; replaces inline mutations across DocumentSettingsPage, DocumentDetailPage, DocumentsPage, CreateDocumentDialog, CreateWikilinkDocumentDialog, and DocumentSummary - Centralized initiative mutations into
useInitiatives.tswithMutationOptssupport — replaces inline mutations in InitiativeSettingsPage
Downloads
Android App
Download the APK from the assets below and install on your Android device.
Docker Image
docker pull morelitea/initiative:0.31.5Or use latest tag. View on Docker Hub.