ores.storage

Table of Contents

1. Summary

ores.storage is ORE Studio's object storage: a bucket-and-key namespace of opaque bytes, reachable over HTTP when a caller is moving a body and over NATS when it is sending a command. It is a composite, and the three parts exist because the contract, the implementation and the service have different consumers and different dependencies.

  • ores.storage.api — the contract: the bucket and key path helpers, and the modelled operation surface both interfaces are generated from.
  • ores.storage.core — the implementation: the streaming HTTP client, the tar.gz archiver, and the atomic and composite transfer helpers.
  • ores.storage.service — the process: it binds the operation set's subjects, authenticates the caller and answers them.

Storage holds no bucket name of its own, no registry and no allow-list: a caller names its bucket, and which buckets exist is the caller's concern. The target is stated in Object Storage.

2. Parts

Part What it is for
ores.storage.api The public contract a consumer links, and no dependency it does not need.
ores.storage.core Where the bytes move: HTTP, archive and the transfer helpers.
ores.storage.service The NATS entry point, and the process shell around it.

3. See also

Emacs 29.3 (Org mode 9.6.15)