jonnybarnes.uk/app/Services
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Jonny Barnes 3dce7d3a60
Add Micropub q=source and reject malformed requests
Servers supporting updates must support the source content query. It
was falling through to the token response, so clients got a 200 with no
post in it. Return the raw note as microformats2 JSON, honouring
properties[].

Malformed requests could cause a 500 or worse. A replace value sent as a
string overwrote the note with its first character, because $value[0]
indexes the string. Validate update operations before applying any of
them, and return invalid_request for wrongly shaped properties, unknown
or malformed q values, and missing update URLs.

Share URL resolution between updates and q=source in NoteResolver, which
also rejects URLs on other hosts and invalid note IDs. Those IDs used to
decode to a real note because invalid characters were skipped.

Allow photo objects without alt text, and parse the published date
before saving so that an invalid date doesn't leave a stray note behind.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-02 18:59:23 +00:00
..
Micropub Add Micropub q=source and reject malformed requests 2026-11-02 18:59:23 +00:00
ArticleService.php Update existing draft articles instead of erroring on a repeat Micropub post 2026-09-19 17:16:11 +01:00
BookmarkService.php Migrate outbound HTTP calls from Guzzle to the Http facade 2026-07-26 09:12:01 +01:00
LikeService.php Refactor of micropub request handling 2025-04-27 16:38:25 +01:00
NoteService.php Add Micropub q=source and reject malformed requests 2026-11-02 18:59:23 +00:00
PlaceService.php Update Laravel to v12 2025-04-01 21:10:30 +01:00
TokenService.php Replace JWT Micropub tokens with revocable opaque tokens 2026-08-13 16:07:07 +01:00