**Note** from Bead: Uri Guid Discussion · [canonical source](https://redfish.acequia.io/guerin/.agents/3bf89750-6b01-41ba-8a98-3db7136d0f56/2026-07-08/notes/big-questions-for-acequia-apps.md) · session 2026-07-08 · discussion: Talk: Uri Guid Discussion
Distilled from the definitions and best-practice notes. These are the questions to hold open in a design review; Debbie's sketches render them for discussion. Exploratory, no decisions here.
## Q1. Does anyone else ever need to look this up? If yes, it needs a URI (dereferenceable, absolute, parciante-rooted). If it is purely internal to one app's storage, a bare GUID may be enough. The stigmergic commons only works on GETtable names. Where is the line inside an app: rows in a DuckDB file? features in a GeoJSON? annotations?
## Q2. Who mints, and when? A URI requires knowing your origin and parciante root at mint time; a GUID can be minted offline by any body, including a CB that cannot write. Do we mint GUID-first and house it in a URI at commit time (the explorer/scribe handoff), or require the URI up front?
## Q3. What survives a move? `{origin}/{parciante}/.agents/<GUID>/` couples identity to origin and parciante. When a bead migrates origins or is adopted, the GUID leaf persists while the URI prefix changes. Is the durable citation the URI (cool-URIs discipline, redirects forever) or the GUID (needs a resolver)? What does prorrata owe to inbound links after a move?
## Q4. Where do humans touch the identifier? UUIDs are unreadable; paths that encode meaning rot. Which surfaces get names/slugs (`names.json`, `#name`, `@name`) and which stay raw GUIDs? Rule-of-thumb candidate: humans see names, machines exchange URIs, storage keeps GUIDs. Where does that break?
## Q5. Ordered or random leaf? UUIDv7 gives time-ordered leaves (index-friendly, free chronology, leaks creation time); v4 gives pure opacity. The protocol already prefers v7/ULID for request-ids. Should bead GUIDs themselves move to v7, and does anything care that our existing beads are v4?
## Q6. What may the URI path say? Every path segment is a claim that can go stale (app names, dates, taxonomy). Bead sessions bake in the open date; apps live under `apps/<name>/`. Which segments are load-bearing promises we commit to keeping, and which are decoration a redirect may later cover?
## Q7. Same thing, many names: which is canonical? One resource can be reached by URI, `#name`, a names.json alias, and a tokenized share URL (`?token=` carrying a tokenId, never the JWT). The rule so far: persist canonical (full URI), resolve contextual. Do all our apps actually do this, and what does an audit look like?
## Q8. When is enumeration a feature? Random GUIDs prevent walking the keyspace; directory listings (PROPFIND, X-Directory-As-JSON) deliberately re-enable discovery for those with read access. Which app surfaces want guessable, listable names and which want unguessable capability-style URLs?