Skip to content

v0.54.1

Choose a tag to compare

@github-actions github-actions released this 04 Jul 22:58
· 1053 commits to main since this release
a8a5167

Added

  • Calendar events now appear in the recent-items tabs bar, like projects, documents, queues, and counter groups.
  • Calendar events and the advanced tool now appear in the command palette (⌘K) — events are searchable like other tools; the advanced tool gets one jump entry per enabled initiative.
  • Initiative pages have an advanced-tools tab listing the initiative's advanced tools, with the standard Select → Edit access bulk-sharing flow (creation still happens in the connected automation service, and the UI says so).
  • Counter groups can now be created from the mobile initiative menu, matching the other tools.
  • Hard-purging an advanced tool (manual trash purge or the retention worker) now notifies the connected automation backend so its scheduling mirror is deleted too — including tools swept away by an initiative purge. Configured via ADVANCED_TOOL_BACKEND_URL + ADVANCED_TOOL_PURGE_SECRET (HMAC-signed, best-effort; unset on the default OSS image). Soft delete and archive stay pull-based — the automation side discovers them by syncing.

Changed

  • Canonical tool naming across the API (breaking, pre-v1). Every per-tool name now derives from one canonical tool enum: initiative master switches (events_enabledcalendar_events_enabled, counters_enabledcounter_groups_enabled, advanced_tool_enabledadvanced_tools_enabled), role permission keys (docs_enabled/create_docsdocuments_enabled/create_documents, create_eventscreate_calendar_events, create_counterscreate_counter_groups, create_advanced_toolcreate_advanced_tools), and the per-member permission flags (can_view_docscan_view_documents, can_view_eventscan_view_calendar_events, can_view_counterscan_view_counter_groups, can_view_advanced_toolcan_view_advanced_tools, plus the matching can_create_*). A guild migration renames the columns and rewrites stored permission keys; no compatibility shims. The advanced-tool embed handoff now reads advanced_tools_enabled and the create_advanced_tools claim — external embed backends must follow the rename.
  • Permission keys, initiative switch fields, membership permission flags, and recents entity types are now all derived from the tool enum in code (with CI drift tests), so adding a tool wires every backend surface automatically.
  • The frontend now defines each tool in ONE registry (src/lib/tools.ts) — an icon plus capability flags — and derives everything else from it (routes, i18n keys, permission keys, sidebar rows, command-palette groups, initiative tabs, recents, trash invalidation), with drift tests that fail naming exactly which surface a new tool is missing. Route URLs renamed to the canonical stems: /events/calendar-events and /my-calendar/my-calendar-events (no redirects, pre-v1).

Fixed

  • Trashed counter groups and counters now auto-purge after their retention window, like every other trashed item — previously they lingered in the database indefinitely once past retention.
  • Restoring an item from the trash now refreshes the relevant list pages immediately — the restore invalidation used cache keys that didn't match the app's real query keys, so restored items only reappeared after a manual reload.
  • The calendar event attendee picker no longer comes up empty. It now lists the initiative members who can access the event.
  • Clearing the initiative filter (e.g. clicking "All Documents") now resets to every document without a manual refresh.
  • Break-glass / PAM access now shows the granted guild in the switcher immediately, instead of requiring a page reload before the guild becomes reachable.

Downloads

Android App

No new app build this release — installed apps update automatically over the air on next launch.

Docker Image

docker pull morelitea/initiative:0.54.1

Or use latest tag. View on Docker Hub.