rspace-online/modules/rcal
Jeff Emmett 07f525436f
CI/CD / deploy (push) Failing after 2m2s Details
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:10:07 -04:00
..
components feat: object visibility membrane — per-object access filtering 2026-04-12 11:10:07 -04:00
db feat: Phase 4 — remove PostgreSQL from 11 modules, switch to Automerge 2026-03-02 15:48:01 -08:00
geo-hierarchy.ts feat(rcal): add semantic zoom for map and calendar views 2026-04-06 14:40:08 -04:00
landing.ts fix: update rCal landing, de-spam info popups, fix stale URLs & banner persistence 2026-04-04 19:14:27 -04:00
local-first-client.ts feat(rcal): map shows routes with booking status, calendar keeps semantic zoom 2026-04-08 13:28:08 -04:00
mod.ts feat: object visibility membrane — per-object access filtering 2026-04-12 11:10:07 -04:00
schemas.ts feat: object visibility membrane — per-object access filtering 2026-04-12 11:10:07 -04:00