对了,关于默嘟象内容被搜索引擎索引的细节:
mastodon本身提供了由用户自行控制的是否被搜索引擎索引的开关(设置 - 偏好设置 - 其他 - 阻止搜索引擎建立索引)
但是

假设a账号开启了禁止索引,然后发了一条公共嘟,该嘟文被其他账号转嘟、而转嘟者并未开启禁止索引
那么是可能出现「搜索引擎通过索引转嘟者的个人主页,进而索引了出现在其个人主页上的a的那条嘟文」的情况的

这一情况也适用于该默嘟象嘟文在其他fedi框架(如misskey)被转发的情况

以及,我虽然没有仔细测试,但我猜测这一情况对于回复和点赞也是成立的,即如果一个未开启禁止索引的用户对开启禁止索引的用户的嘟文进行回复、转嘟、点赞等操作,都会增加该嘟文被索引的概率(特别是跨实例/跨框架的情况下)

而对此有效的控制手段——只发关注者可见嘟文——又会和默嘟象汉语社区普遍的「锁嘟+只通过有发原创嘟文的账户关注请求」相矛盾

你平时使用#默嘟象 的#探索(#Explore)页吗?
你认为里面的热门嘟文、热议标签、推荐关注、热门新闻都是基于怎样的机制上榜的吗?
很遗憾的是,在#mastodon 的项目文档里也完全没有关于此的介绍
https://docs.joinmastodon.org/

我稍微做了番检索,结论是:在默认情况下,这些是完全由你所在实例的管理员(admin和moderator)控制的。
也就是说比起#热门趋势,它更应当被视为#实例精选

以下是我的发现——
1. 默嘟象在3.0版本上线了#热门话题(#trendinghashtags)功能,由实例管理员审核挑选
https://blog.joinmastodon.org/2019/10/mastodon-3.0/
2. 之后3.5版本进一步将其拓展成为#探索页(Explore),包含四个类目的#趋势(#Trends):嘟文、话题、账号、链接
https://blog.joinmastodon.org/2022/03/mastodon-3.5/
3. 4.0版本开始,探索页对外开放,默认配置下无需登录即可访问(实例域名后加/explore即可,比如我所在站点的是https://mastodon.social/explore
4. 各趋势项目的机制是——

下续↓

Mastodon documentation

Welcome to the Mastodon documentation!

4. 各趋势项目的机制是,服务器后端会对话题标签、嘟文互动等数据进行统计,满足指标的项目会出现在实例管理员(admin和moderator)的审核页;管理员可以决定是否允许某项目出现在趋势上。
当然,4.0还提供给管理员一项设置,即满足指标的项目可以直接出现在趋势页、无需管理员审核。该选项默认关闭、并且默嘟象项目开发者不建议开启。

那么,作为入门门槛的统计指标是怎样的呢?一条嘟文要满足怎样的条件,才有可能成为#热门嘟文(#TrendingPosts)呢?
默嘟象的项目文档里没有写。但它是个开源项目,所以可以从它的代码里查看——
在默嘟象的#变更记录(#changelog)里
https://github.com/mastodon/mastodon/blob/main/CHANGELOG.md
有这样两项:
mastodon 3.5
Hashtag trends algorithm is extended to work for posts and links
话题标签热门算法拓展到对嘟文和链接生效
(如前所述,在3.5之前treads就是trendinghashtags,之后被拓展为四类)

以及——
下续↓

以及,
Change "Allow trends without prior review" setting to also work for trending posts
「无需预审即可登上热门」选项现在也对热门嘟文有效

而一条嘟文要满足怎样的指标才能成为#热门嘟文?
首先,先决条件是(这里我会再具体确认一下):
1. 这是一条原发嘟、而非评论嘟(评论给自己的嘟文算作原发)
2. 这条嘟文的作者没有关闭发现许可(设置 - 个人档案 - 安全与隐私 - 在目录中列出此账号)
3. 这条嘟文的作者被管理员批准过(待确认)

在满足了以上条件之后,嘟文的互动数需要满足一定指标——
https://github.com/mastodon/mastodon/discussions/21558
在这个提问中,默嘟象开发者指出了热门嘟文的统计方法
https://github.com/mastodon/mastodon/blob/main/app/models/trends/statuses.rb

首先,实例管理员可以自行设置嘟文趋势门槛(默认是5) self.default_options = {
threshold: 5,
其次,

下续——

Calculation of popularity for trending posts and news · mastodon/mastodon · Discussion #21558

I was looking the other day for documentation on github regarding how the server decides on candidates for trending posts. on our server (v4) I have some weird behaviour occassionally Can anyone di...

GitHub

其次,统计嘟文被转发和被点赞的次数之和,作为趋势指数(score)
observed = (status.reblogs_count + status.favourites_count).to_f
(这里我没看懂是指本实例内产生的互动、还是指嘟文自身携带的互动参数)

当嘟文趋势指数(score)超过审阅门槛(review_threshold)、且属于可上趋势,嘟文会递送至管理员审阅;
在此期间,嘟文互动指数会随时间不断衰减(半衰期可由实例管理员自行设置);

如果开启了免审上热门,那么嘟文趋势指数超过趋势门槛(threshold)就直接被推上趋势页,按照趋势指数降序排列,直到趋势指数衰减到跌出趋势门槛
(这一条是我的推测,我没看懂)

#热门标签(#TrendingHashtags)与此类似,只是统计的是「使用过该tag的用户数」
https://github.com/mastodon/mastodon/blob/main/app/models/trends/tags.rb

observed = tag.history.get(at_time).accounts.to_f

Issues · mastodon/mastodon

Your self-hosted, globally interconnected microblogging community - Issues · mastodon/mastodon

GitHub