rspace-online/modules/rtasks
Jeff Emmett 0eb721d12e feat: object visibility membrane — per-object access filtering
Add per-object visibility levels (viewer/member/moderator/admin) across
all rSpace modules. Objects default to 'viewer' (open), so existing data
remains visible. Server-side GET handlers resolve caller role and filter;
MCP tools filter lists and check single-item access; frontend components
do defense-in-depth filtering with visibility picker (mod+) and lock badges.

- shared/membrane.ts: types + isVisibleTo, filterByVisibility, filterArrayByVisibility
- 9 schema files: visibility field on TaskItem, NoteItem, CalendarEvent, etc.
- 8 module routes: GET handlers filter by caller role
- 6 MCP tool files: list filtering + single-item visibility checks
- 4 frontend components: client filtering, picker, lock badges
- 18 unit tests (all passing)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-12 11:09:44 -04:00
..
components feat: object visibility membrane — per-object access filtering 2026-04-12 11:09:44 -04:00
db feat: add ViewHistory for in-app back navigation, rename rWork to rTasks 2026-03-11 14:04:13 -07:00
lib feat(rtasks): ClickUp two-way sync integration 2026-03-24 17:37:01 -07:00
checklist-routes.ts Add toggle (check/uncheck) to checklist items + "Open in rTasks" button 2026-03-16 13:31:55 -07:00
landing.ts feat: add ViewHistory for in-app back navigation, rename rWork to rTasks 2026-03-11 14:04:13 -07:00
local-first-client.ts feat(comments): notify all space members on new comments and replies 2026-04-09 14:12:09 -04:00
mod.ts feat: object visibility membrane — per-object access filtering 2026-04-12 11:09:44 -04:00
schemas.ts feat: object visibility membrane — per-object access filtering 2026-04-12 11:09:44 -04:00