At this level
app.gainforest.feed · 3- app.gainforest.feed.like record Record declaring a 'like' of a piece of subject content. A faithful port of app.bsky.feed.like into the app.gainforest.feed namespace. `subject` is a com.atproto.repo.strongRef (uri + cid), so a like can target any record in the GainForest commons — an observation, project, cert, organization, donation, post, or comment — and the GainForest appview decides which subject types to aggregate. Unlike = delete this record.
- app.gainforest.feed.post record Record containing a GainForest feed post. A faithful port of app.bsky.feed.post into the app.gainforest.feed namespace. A reply (i.e. a 'comment') is a post that carries a `reply` ref; because that ref uses com.atproto.repo.strongRef, the GainForest appview can honour replies whose parent/root is ANY record in the commons (an observation, project, cert, organization, or donation), not only another post. Deprecated `entities`/`textSlice` fields from the Bluesky source were omitted in favour of `f
- app.gainforest.feed.repost record Record representing a 'repost' (reshare) of existing subject content. A faithful port of app.bsky.feed.repost into the app.gainforest.feed namespace. `subject` is a com.atproto.repo.strongRef (uri + cid), so a reshare can target any record in the GainForest commons — an observation, project, cert, organization, donation, post, or comment — and the GainForest appview decides which subject types to aggregate and resurface in timelines. Undo reshare = delete this record.