Skip to content

Fix quote-reblog display issue (SubwayTooter compatibility) #480

@ntsklab

Description

@ntsklab

Description

Currently, when a user boosts (reblogs) a quoted post in Hollo, clients like SubwayTooter do not display the quote correctly. The issue seems to be that the outer "boost wrapper" status carries the quote metadata, confusing the client.

I tested a fix in my local fork which addresses this problem by ensuring the quote metadata remains inside the original boosted status. I propose incorporating these changes to improve client compatibility.

Note on AI Usage:
The code for these changes was generated with the assistance of AI. Because of this, I am not entirely sure if it is the most accurate or optimal approach for the Hollo codebase. I would greatly appreciate it if the maintainers could review the implementation.

Proposed Changes

  • In the boost endpoint (/api/v1/statuses/reblog, specifically inside src/api/v1/statuses.ts), explicitly set quoteTargetId: null when creating the new boost wrapper post.
  • This change ensures that the quote_id and quote attributes are kept out of the outer boost wrapper, allowing clients to correctly parse and display the quote from the inner reblog object.
  • Added a test case in src/api/v1/statuses.test.ts to verify that quote_id is null on the wrapper, while the inner boosted post correctly retains the quote_id.

Expected Behavior

When fetching a boosted quote post, the quote_id and quote object should only exist inside the inner reblog attribute, not on the outer wrapper. Clients like SubwayTooter should then be able to display the quote and the boost layout correctly.

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions