2.1 KiB
2.1 KiB
Session 0090.0 — Transcript
App: ohm Start: 2026-06-08T20-30 (PST) Type: brainstorming Status: PLACEHOLDER — claimed at session start; finalized at session end.
This file reserves session ID 0090 for ohm. The driver replaces this body with the full transcript and renames the file to its final SESSION-0090.0-TRANSCRIPT-2026-06-08T20-30--.md form at session end.
Launch prompt
Brainstorm and spec a scoped Admin information architecture for the
three-tier model (deployment → project → collection), and the
collection-management surfaces that hang off it.
Problem: §22 delivered scoped roles ({owner, contributor} at {global,
project, collection}) but the admin *page* IA never followed. Today
/admin is mounted only at deployment/site scope (App.jsx:348), and it
mixes grains that don't belong together:
- Retired RFCs (a collection-grained concept) live in the global,
site-owner-only admin (Admin.jsx:49–54, §13.7) — wrong scope.
- Graduation queue is already project-flavored (useProjectId()) yet
also sits at site level.
- Create-project / create-collection actions exist and work
(POST /api/projects, POST /api/projects/<id>/collections; modals in
CreateProjectModal.jsx / Directory.jsx) but are only reachable via
the multi-item directories, which the N=1 landing logic
(DeploymentLanding, App.jsx:448) redirects past — so an Owner on a
single-project/single-collection deployment has no UI path to manage
or create siblings. Effectively API-only today.
- In-app metadata field-schema config is deferred (decision D8 in
docs/design/2026-06-06-configurable-collection-metadata.md): a
collection's `fields:` are edited in .collection.yaml in git, with
no in-app surface. This is logically a Collection-Admin capability.
Goal: produce a Solution-Design spec for a coherent Site Admin / Project
Admin / Collection Admin IA. Don't write code this session.
Deferred decisions
Autonomous-mode low-confidence calls the driver made and would have liked operator input on. Appended as the session runs; surfaced at finalize. Empty if none.