gotosocial/internal/db
tobi dcfc9b7885 [feature] Use hidesToPublicFromUnauthedWeb and hidesCcPublicFromUnauthedWeb properties for web visibility of statuses (#4315)
This pull request implements two new properties on ActivityPub actors: `hidesToPublicFromUnauthedWeb` and `hidesCcPublicFromUnauthedWeb`.

As documented, these properties allow actors to signal their preference for whether or not their posts should be hidden from unauthenticated web views (ie., web pages like the GtS frontend, web apps like the Mastodon frontend, web APIs like the Mastodon public timeline API, etc). This allows remote accounts to *opt in* to having their unlisted visibility posts shown in (for example) the replies section of the web view of a GtS thread. In future, we can also use these properties to determine whether we should show boosts of a remote actor's post on a GtS profile, and that sort of thing.

In keeping with our stance around privacy by default, GtS assumes `true` for `hidesCcPublicFromUnauthedWeb` if the property is not set on a remote actor, ie., hide unlisted/unlocked posts by default. `hidesToPublicFromUnauthedWeb` is assumed to be `false` if the property is not set on a remote actor, ie., show public posts by default.

~~WIP as I still want to work on the documentation for this a bit.~~

New props are already in the namespace document: https://gotosocial.org/ns

Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4315
Reviewed-by: kim <gruf@noreply.codeberg.org>
Co-authored-by: tobi <tobi.smethurst@protonmail.com>
Co-committed-by: tobi <tobi.smethurst@protonmail.com>
2025-07-09 16:50:25 +02:00
..
bundb [feature] Use hidesToPublicFromUnauthedWeb and hidesCcPublicFromUnauthedWeb properties for web visibility of statuses (#4315) 2025-07-09 16:50:25 +02:00
postgres [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
sqlite [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
test [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
account.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
admin.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
advancedmigration.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
application.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
basic.go [feature] Add healthcheck endpoints /livez and /readyz (#2783) 2024-03-25 17:05:14 +00:00
conversation.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
db.go [feature] Push notifications (#3587) 2025-01-23 16:47:30 -08:00
domain.go [feature] Handle retractions of domain permission subscription entries (#4261) 2025-06-15 12:36:51 +02:00
emoji.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
error.go [chore] Migrate accounts to new table, relax uniqueness constraint of actor url and collections (#3928) 2025-04-06 14:39:40 +02:00
filter.go [performance] filter model and database table improvements (#4277) 2025-06-24 17:24:34 +02:00
headerfilter.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
instance.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
interaction.go [bugfix] delete interaction requests when deleting account (#4278) 2025-06-19 10:21:03 +02:00
list.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
marker.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
media.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
mention.go [bugfix] Fix no notification if mention edited into status (#4102) 2025-05-04 09:45:10 +00:00
move.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
notification.go [feature] Notify accounts when a status they've interacted with has been edited (#4157) 2025-05-11 13:38:13 +00:00
params.go [chore] Improve copyright header handling (#1608) 2023-03-12 16:00:57 +01:00
poll.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
relationship.go [bugfix] process account delete synchronously to prevent OOM (#4260) 2025-06-11 11:38:10 +02:00
report.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
rule.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
search.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
session.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
sinbinstatus.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
status.go [chore] migration to update statuses.thread_id to be notnull (#4160) 2025-05-26 15:33:42 +02:00
statusbookmark.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
statusedit.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
statusfave.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
tag.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
thread.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
timeline.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
tombstone.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
user.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
util.go [experiment] add alternative wasm sqlite3 implementation available via build-tag (#2863) 2024-05-27 17:46:15 +02:00
webpush.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
workertask.go [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00