# S006 — spaces backend (member-only) The dogfood ACL primitive: one space whose member list decides who may read and write. Everything private in 林集 hangs off this. ## What landed - **zds fork fixes**: policy-gated writes/reads for space collections, local signing-key resolution, credential ceremony exercised in the zds smoke scripts. - **app0 `core/spaces.zig`**: space create/add-member/remove-member/ members; posts and reads scoped to a space (`post/read --space`). - **CLI**: `linji space create --skey `, `space add-member --space --did `, `space remove-member`, `space members`. ## Key design fact "Authority repo" threads/records are impossible as recorded: space records live in **member repos** (`space.createRecord` with repo=caller) — nobody can write to the community's repo. Member-repo records with AT-URI refs became the standing pattern for everything after (threads in S007, edits in S008). ## Verification `zig build scenario-space` — 29 checkpoints, PASS; M001 scenario still green (later retired by S007).