Why architecture matters here
Roots fail on path traversal + missing user consent. Architecture matters because scope + validation + consent all combine.
Advertisement
The architecture: every piece explained
The top strip is the flow. Client defines roots. roots/list. Root scope. Change notify.
The middle row is safety. Permission model. Path validation. Multi-root support. User consent.
The lower rows are ops. Audit. Observability. Ops — governance + tests + updates.
Advertisement
End-to-end flow
End-to-end: user opens project. Client declares root = /home/me/project. Server calls roots/list. Server operates only within root. User adds second project; change notify updates server. Path traversal attempts rejected at client boundary.