8 Commits

Author SHA1 Message Date
f48506b1ca
generic: net return full response struct
This is still quite easy to stub, and the extra information is very
useful to the caller.

Signed-off-by: Yonah <contrib@gensokyo.uk>
2025-09-19 21:36:33 +09:00
5fe911dd01
songs: represent autoplay as integer
This is represented in the same way as CID fields, so use the same data type.

Signed-off-by: Yonah <contrib@gensokyo.uk>
2025-09-19 20:50:02 +09:00
8edf742aaa
cmd/msrserve: initial drop-in replacement server
This is still quite ugly and only meant to get things going for now, as
a proof of concept. It is usable though, and quite fast.

Signed-off-by: Yonah <contrib@gensokyo.uk>
2025-09-19 01:18:28 +09:00
0999ccd211
cmd/msrfetch: preserve metadata order
The composite maps are no longer needed as the new Album variant makes
more sense than them. They are also unordered while the base variants of
both endpoints are ordered. Composite is therefore only used for
validation in the current implementation.

Signed-off-by: Yonah <contrib@gensokyo.uk>
2025-09-18 21:56:45 +09:00
b5f5626b02
album: extend struct for /api/album/%d/data
This also includes tests against a sample response from the
https://monster-siren.hypergryph.com/api/album/1030/data endpoint.

Signed-off-by: Yonah <contrib@gensokyo.uk>
2025-09-18 19:29:23 +09:00
da4b1d86d9
cmd/msrfetch: fetch from enriched composite data
This creates a content-addressed store for all media files. It is not
yet usable but an API and cdn backend will be implemented from it in a
later commit, as well as tooling for export and tagging.

Signed-off-by: Yonah <contrib@gensokyo.uk>
2025-09-18 07:20:36 +09:00
21871a387c
generic: return content length alongside body
This increases efficiency for bigger response bodies.

Signed-off-by: Yonah <contrib@gensokyo.uk>
2025-09-18 06:06:52 +09:00
00b50dab08
cmd/msrfetch: save enriched compound data
This implementation of cmd/msrfetch is only temporary, used to fetch the
testdata. At this point we have all metadata present in the repo and all
that is left is to fetch the media.

Signed-off-by: Yonah <contrib@gensokyo.uk>
2025-09-18 05:55:19 +09:00