At this level
app.bulleted · 11- app.bulleted.appAccess permission-set
- app.bulleted.authFull permission-set
- app.bulleted.comment record A comment on a node, owned by its author.
- app.bulleted.commentPolicy record Who may comment on a bullet and on the bullets beneath it. Record key 'self' is the repository's default; any other key names the node at 'root', and applies to that node and its descendants. The absence of any policy means nobody may comment, so silence is the closed state.
- app.bulleted.getOutline query The public outline for an identity, optionally zoomed to one bullet. Answers from this appview's index of public records; it does not read the identity's PDS. No authentication, because everything here is already public.
- app.bulleted.mirror record A live reference rendering another node's subtree in place.
- app.bulleted.node record A single bullet in an outline. Parentage is expressed only by a child pointing up at its parent; there is no children array.
- app.bulleted.note record Supplemental text for a node. Shares the node's record key and repository, so the note for at://{did}/app.bulleted.node/{rkey} lives at at://{did}/app.bulleted.note/{rkey}.
- app.bulleted.outline record Titles and describes an outline, and names who may contribute to it. Record key 'self' means the identity's whole forest; any other key names the subtree at 'root'. The key is 'any' rather than 'tid' because 'self' is not a TID.
- app.bulleted.space space An outline shared with a named set of people. Every bullet is still a record in its author's own permissioned repo for this space; the space is the authorization and sync boundary they share, not a place records are moved to. Identified by the proposal-0016 triple of space authority DID, this NSID as the space type, and a space key.
- app.bulleted.spaceAccess permission-set
- app.bulleted.admin.deny procedure Add a value to the appview's denylist and, by default, remove what it has already indexed. Requires the administrative credential. Adding to the list stops future indexing; nuking removes what is already there, which is why nuke defaults to true.
- app.bulleted.admin.listDenied query Page through the appview's denylist, newest first. Requires the administrative credential. You cannot operate a list you cannot read: without this, the only way to audit a takedown is to open the database.
- app.bulleted.admin.undeny procedure Remove a value from the appview's denylist and rebuild the membership filter. Requires the administrative credential. A denylist with no removal path means one mistyped DID is permanent. Undeny does NOT restore rows a nuke removed; the restoration field says what brings the content back, if anything does.