Constellation, Spacedust, Slingshot, UFOs: atproto crates and services for microcosm

more doc tweaks

Changed files
+8 -5
slingshot
src
+8 -5
slingshot/src/server.rs
···
///
/// Slingshot will always return the CID, despite it not being a required
/// response property in the official lexicon.
+
///
+
/// TODO: probably actually let it be optional, idk are some pds's weirdly
+
/// not returning it?
cid: Option<String>,
/// the record itself as JSON
value: serde_json::Value,
···
/// The only error name in the repo.getRecord lexicon is `RecordNotFound`,
/// but the [canonical api docs](https://docs.bsky.app/docs/api/com-atproto-repo-get-record)
/// also list `InvalidRequest`, `ExpiredToken`, and `InvalidToken`. Of
-
/// these, slingshot will only return `RecordNotFound` or `InvalidRequest`.
+
/// these, slingshot will only generate `RecordNotFound` or `InvalidRequest`,
+
/// but may return any proxied error code from the upstream repo.
#[oai(status = 400)]
BadRequest(XrpcError),
-
/// Just using 500 for potentially upstream errors for now
+
/// Server errors
#[oai(status = 500)]
ServerError(XrpcError),
}
···
///
/// Get a single record from a repository. Does not require auth.
///
-
/// See https://docs.bsky.app/docs/api/com-atproto-repo-get-record for the
-
/// canonical XRPC documentation that this endpoint aims to be compatible
-
/// with.
+
/// See also the [canonical `com.atproto` XRPC documentation](https://docs.bsky.app/docs/api/com-atproto-repo-get-record)
+
/// that this endpoint aims to be compatible with.
#[oai(path = "/com.atproto.repo.getRecord", method = "get")]
async fn get_record(
&self,