single-node-api-raises-permissionerror
IN premise
API functions that target a single node by ID (`show_node`, `explain_node`, `trace_assumptions`, `trace_access_tags`) raise `PermissionError` when the caller lacks clearance; collection endpoints silently filter instead.
Summary
When you call an API function that looks up one specific node by its ID, the system will throw a PermissionError if you don't have sufficient clearance to see that node. But when you call functions that return lists or collections of nodes, restricted nodes are quietly omitted from the results rather than causing an error. This means callers need to handle two different access-denial patterns depending on whether they're fetching a single item or browsing a set.
Dependents
These beliefs depend on this one:
- api-enforces-typed-preconditions — API functions enforce preconditions at the system boundary with typed exceptions: duplicate node IDs raise ValueError, missing justification arguments raise ValueError, and unauthorized single-node access raises PermissionError — establishing a consistent error contract at every entry point.
Details
| Source | entries/2026/04/24/tests-test_access_tags.md |