diff --git a/Extensions.md b/Extensions.md index e69d440..f009d9a 100644 --- a/Extensions.md +++ b/Extensions.md @@ -11,6 +11,22 @@ None known yet... ## Extension Implementation Issues +### Caching Tips + +Tahoe URIs may refer to either immutable or mutable content. URIs for immutable data are simple to cache by mapping the URI to the contents. + +Mutability is independent of read-only capabilities. A read-only capability may refer to mutable content. + +To determine the mutability of a URI, parse the second field of the URI (delimited by ':'): + + * URI:CHK:... : immutable + * URI:LIT:... : immutable + * URI:DIR:... : mutable, writable + * URI:DIR-RO:... : mutable, not writable + +Note: Currently all files are immutable, and all directories are mutable, but in the future the node type (file or directory) and the mutability will be independent. It's a bad idea to rely on the node type to determine mutability. + + ### HTTP methods The api relies on four HTTP methods defined as per the standard `GET, POST, PUT, and DELETE`, which map intuitively to storage operations.