# # ChangeLog for src/services in Klonkt # # Generated by Trac 1.6 # 09/09/2026 02:11:25 AM Tue, 30 Jun 2026 22:11:03 GMT roboburr [e3a5aed] * src/routes/admin-stats.js (modified) * src/services/StatsService.js (modified) * src/services/i18n.js (modified) * src/views/pages/admin-stats.ejs (modified) feat(stats): let the admin exclude their own IP from statistics ... Tue, 30 Jun 2026 19:50:05 GMT roboburr [f2943c1] * src/routes/admin-media.js (modified) * src/services/VideoCoverService.js (modified) refactor(video-cover, media): stream frames + size cap, drop unused ... Tue, 30 Jun 2026 18:57:47 GMT roboburr [0fc5db5] * src/services/ActivityPubService.js (modified) chore(federation): bump SELFHEAL_VERSION to 5 (heal embed-post covers ... Tue, 30 Jun 2026 18:55:53 GMT roboburr [f7ed139] * src/services/ActivityPubService.js (modified) fix(federation): keep the cover for Klonkt feeds on embed posts ... Tue, 30 Jun 2026 18:46:32 GMT roboburr [f24b795] * src/routes/admin-media.js (added) * src/server.js (modified) * src/services/i18n.js (modified) * src/views/pages/admin-media.ejs (added) * src/views/pages/admin.ejs (modified) feat(media): Beheer -> Media — image library with usage + cleanup of ... Tue, 30 Jun 2026 18:02:20 GMT roboburr [1c33804] * src/services/VideoCoverService.js (modified) fix(video-cover): double the ANMF frame offset (node-webpmux quirk) ... Tue, 30 Jun 2026 17:56:01 GMT roboburr [7ecbefc] * src/services/VideoCoverService.js (modified) fix(video-cover): composite partial animated-WebP frames (fixes ... Tue, 30 Jun 2026 17:43:39 GMT roboburr [857a06f] * src/routes/activitypub.js (modified) * src/routes/posts.js (modified) * src/services/ActivityPubService.js (modified) * src/services/Scheduler.js (modified) feat(video-cover): federate an animated cover as a Video attachment ... Tue, 30 Jun 2026 17:23:54 GMT roboburr [ecbfa41] * package-lock.json (modified) * package.json (modified) * src/services/VideoCoverService.js (added) feat(video-cover): add VideoCoverService + node-webpmux (animated ... Tue, 30 Jun 2026 16:31:56 GMT roboburr [28f797d] * src/services/i18n.js (modified) * src/views/pages/post.ejs (modified) * src/views/shell.ejs (modified) feat(post): share button at the bottom of posts A "Share/Deel" ... Tue, 30 Jun 2026 15:16:22 GMT roboburr [4d1aefb] * src/services/ThumbnailService.js (modified) fix(thumbnails): serve animated WebP/GIF covers as-is (they were ... Tue, 30 Jun 2026 14:50:15 GMT roboburr [1a0b007] * src/services/ActivityPubService.js (modified) feat(federation): link-only tracks federate their external links ... Tue, 30 Jun 2026 14:37:32 GMT roboburr [443f982] * src/services/ActivityPubService.js (modified) feat(federation): let Mastodon card external embeds — drop image ... Tue, 30 Jun 2026 14:24:00 GMT roboburr [28b59e7] * src/services/ActivityPubService.js (modified) fix(federation): don't federate inline images we can't serve (stale ... Tue, 30 Jun 2026 13:58:06 GMT roboburr [292734a] * src/services/ActivityPubService.js (modified) refactor(federation): specific AS2 media types (Image/Audio) for ... Tue, 30 Jun 2026 13:42:44 GMT roboburr [5924bbf] * src/services/ActivityPubService.js (modified) fix(federation): self-heal also refreshes ap_timeline.url (heals dead ... Tue, 30 Jun 2026 13:38:13 GMT roboburr [d8e3ff7] * src/routes/circle.js (modified) * src/services/ActivityPubService.js (modified) * src/services/i18n.js (modified) * src/views/pages/circle-feed.ejs (modified) * src/views/pages/following.ejs (modified) Revert "feat(circle): filter the Circle feed by member (clickable ... Tue, 30 Jun 2026 13:38:10 GMT roboburr [8b700ad] * src/services/ActivityPubService.js (modified) fix(federation): refresh ap_timeline.url on inbound Update (remote ... Tue, 30 Jun 2026 13:31:49 GMT roboburr [462a931] * src/routes/circle.js (modified) * src/services/ActivityPubService.js (modified) * src/services/i18n.js (modified) * src/views/pages/circle-feed.ejs (modified) * src/views/pages/following.ejs (modified) feat(circle): filter the Circle feed by member (clickable chips + ... Tue, 30 Jun 2026 13:24:56 GMT roboburr [d5aa7c8] * src/services/ActivityPubService.js (modified) fix(federation): clear ap_my_reactions when a boosted/liked remote ... Tue, 30 Jun 2026 05:59:09 GMT roboburr [4d63c36] * src/services/ActivityPubService.js (modified) chore(federation): bump SELFHEAL_VERSION 2->3 for a one-time timeline ... Tue, 30 Jun 2026 05:57:53 GMT roboburr [bea59a1] * src/services/ActivityPubService.js (modified) feat(federation): keep the Cirkel in sync the AP way — inbound Update ... Tue, 30 Jun 2026 04:19:12 GMT roboburr [69b509d] * src/routes/admin-epk.js (modified) * src/services/i18n.js (modified) * src/views/pages/admin-audio.ejs (modified) * src/views/pages/admin-playlists.ejs (modified) * src/views/pages/admin-stats.ejs (modified) * src/views/pages/admin.ejs (modified) fix(i18n): localize the "Beheer" back-buttons + EPK save message ... Tue, 30 Jun 2026 02:38:47 GMT roboburr [d3b9f68] * src/routes/activitypub.js (modified) * src/services/ActivityPubService.js (modified) feat(federation): full JSON-LD @context on all AP objects (valid AS2) ... Tue, 30 Jun 2026 02:27:57 GMT roboburr [e0a1ec1] * src/routes/posts.js (modified) * src/services/i18n.js (modified) * src/views/pages/post-edit.ejs (modified) feat(editor): per-post "share audio on the fediverse" toggle Adds a ... Tue, 30 Jun 2026 01:50:00 GMT roboburr [f2eacca] * src/config/database.js (modified) * src/routes/admin-audio.js (modified) * src/routes/audio.js (modified) * src/services/ActivityPubService.js (modified) * src/services/i18n.js (modified) * src/views/pages/admin-audio.ejs (modified) feat(music): per-track "share on the fediverse" — federate the file ... Tue, 30 Jun 2026 01:23:32 GMT roboburr [80797d7] * src/services/ActivityPubService.js (modified) feat(federation): add schema.org/PeerTube embedUrl to playable-audio ... Tue, 30 Jun 2026 00:23:37 GMT roboburr [e954722] * src/services/i18n.js (modified) * src/views/partials/profile-sheet.ejs (modified) fix(i18n): localize the mobile profile-sheet menu labels The mobile ... Mon, 29 Jun 2026 23:24:30 GMT roboburr [328d837] * src/routes/posts.js (modified) * src/services/MusicMeta.js (added) * src/views/shell.ejs (modified) feat(music): schema.org MusicRecording/MusicAlbum structured data on ... Mon, 29 Jun 2026 22:36:16 GMT roboburr [3f9f71d] * src/services/i18n.js (modified) * src/views/pages/circle-feed.ejs (modified) feat(circle): "+N" members modal when a circle has more than 5 sites ... Mon, 29 Jun 2026 22:19:54 GMT roboburr [f2796d3] * src/routes/activitypub.js (modified) * src/services/ActivityPubService.js (modified) fix(federation): AP conformance round — actor enrichment, following ... Mon, 29 Jun 2026 21:59:19 GMT roboburr [fb6819d] * src/services/ActivityPubService.js (modified) fix(federation): make boosts spec-addressable + durable so receivers ... Sun, 28 Jun 2026 22:38:19 GMT Robin Genis [318e1ce] * src/routes/admin-newsletter.js (modified) * src/routes/admin-shows.js (modified) * src/services/i18n.js (modified) fix(i18n): translate the premium-gate 403 messages ... Sun, 28 Jun 2026 22:27:59 GMT Robin Genis [8308c9ca] * src/services/ThumbnailService.js (modified) * src/views/pages/news.ejs (modified) fix(images): full-width timeline media at 1280px (was 640, blurry on ... Sun, 28 Jun 2026 22:13:27 GMT Robin Genis [3487567] * src/middleware/render.js (modified) * src/routes/admin-audio.js (modified) * src/routes/admin-epk.js (modified) * src/routes/admin-newsletter.js (modified) * src/routes/admin-playlists.js (modified) * src/routes/admin-seo.js (modified) * src/routes/admin-settings.js (modified) * src/routes/admin-shows.js (modified) * src/routes/admin-sites.js (modified) * src/routes/admin-stats.js (modified) * src/routes/admin-updates.js (modified) * src/routes/admin-users.js (modified) * src/routes/admin.js (modified) * src/services/i18n.js (modified) fix(i18n): translate admin page titles (pageTitleKey instead of ... Sun, 28 Jun 2026 21:20:04 GMT Robin Genis [5bc67b4] * src/services/ThumbnailService.js (modified) * src/views/pages/following.ejs (modified) * src/views/pages/news.ejs (modified) * src/views/partials/fedi-node.ejs (modified) fix(images): 96px feed/comment/follow avatars (2x of the 44px ... Sun, 28 Jun 2026 17:40:58 GMT Robin Genis [492fc20] * src/services/ThumbnailService.js (modified) * src/views/partials/post-card.ejs (modified) fix(images): 256px size for list/cirkel covers (match the crisp grid ... Sun, 28 Jun 2026 17:15:48 GMT Robin Genis [201ec06] * src/services/ThumbnailService.js (modified) fix(images): cap concurrent ffmpeg (thumbnails) to avoid CPU ... Sun, 28 Jun 2026 16:46:38 GMT Robin Genis [74c5abc] * src/middleware/render.js (modified) * src/server.js (modified) * src/services/ActivityPubService.js (modified) * src/services/ThumbnailService.js (modified) * src/views/pages/following.ejs (modified) * src/views/pages/news.ejs (modified) * src/views/partials/fedi-node.ejs (modified) feat(images): downscale remote (fediverse) avatars via a signed proxy ... Sun, 28 Jun 2026 16:32:37 GMT Robin Genis [f79a471] * src/middleware/render.js (modified) * src/server.js (modified) * src/services/ThumbnailService.js (added) * src/views/partials/post-card.ejs (modified) * src/views/partials/post-tile.ejs (modified) feat(images): on-demand lanczos cover thumbnails for crisp grid/list ... Sun, 28 Jun 2026 14:40:46 GMT Robin Genis [f1627b6] * src/services/i18n.js (modified) * src/views/pages/news.ejs (modified) feat(news): collapse long post bodies with a 'read more' toggle ... Sun, 28 Jun 2026 14:06:48 GMT Robin Genis [be5d86c] * src/services/ActivityPubService.js (modified) feat(i18n): Unicode-aware hashtags + mentions (all scripts, not just ... Sun, 28 Jun 2026 13:34:06 GMT Robin Genis [9910ba1] * src/services/ActivityPubService.js (modified) fix(fedi): verify HTTP signatures behind a Host-rewriting proxy ... Sun, 28 Jun 2026 13:15:39 GMT Robin Genis [cca2e89] * src/middleware/render.js (modified) * src/services/i18n.js (modified) * src/views/pages/account.ejs (modified) feat(identity): one image — the site photo is the only avatar input ... Sun, 28 Jun 2026 10:25:40 GMT Robin Genis [c6cdce6] * src/config/database.js (modified) * src/services/ActivityPubService.js (modified) * src/services/i18n.js (modified) * src/views/pages/news.ejs (modified) feat(news): show boosts from followed accounts in the News feed An ... Sun, 28 Jun 2026 10:12:34 GMT Robin Genis [37a297d] * src/services/i18n.js (modified) * src/views/pages/news.ejs (modified) feat(news): quick 'interact with a fediverse post' button (paste a ... Sun, 28 Jun 2026 10:07:38 GMT Robin Genis [2e62848] * src/services/ActivityPubService.js (modified) fix(fedi): post tags federate as visible hashtags (+ CamelCase for ... Sat, 27 Jun 2026 21:46:03 GMT Robin Genis [abdcf33] * src/config/database.js (modified) * src/routes/admin-sites.js (modified) * src/services/ensurePrimarySite.js (modified) * src/services/i18n.js (modified) chore(cleanup): remove the dead comments_moderation_mode column + ... Sat, 27 Jun 2026 15:01:13 GMT Robin Genis [5f483e3] * .env.example (modified) * deploy/post-receive (modified) * deploy/verify.ps1 (deleted) * package.json (modified) * src/config/database.js (modified) * src/routes/notifications.js (deleted) * src/services/NotificationService.js (deleted) * src/services/i18n.js (modified) * src/views/pages/auth-login.ejs (modified) * src/views/pages/notifications.ejs (deleted) chore: code cleanup — remove dead files, deps, DB tables, Google- ... Sat, 27 Jun 2026 13:58:39 GMT Robin Genis [eb5f978] * CHANGELOG.de.md (added) * CHANGELOG.md (modified) * CHANGELOG.nl.md (added) * src/routes/changelog.js (modified) * src/services/i18n.js (modified) feat(changelog): i18n the public changelog (English base + nl/de) - ... Sat, 27 Jun 2026 13:48:50 GMT Robin Genis [0960c1d] * src/services/i18n.js (modified) * src/views/partials/profile-header.ejs (modified) fix(fedi): tidy the Follow-via-fediverse modal - ... Sat, 27 Jun 2026 13:44:32 GMT Robin Genis [923235e] * src/services/i18n.js (modified) * src/views/pages/auth-register.ejs (modified) feat(setup): note the username is permanent + becomes your fediverse ... Sat, 27 Jun 2026 12:28:08 GMT Robin Genis [204bd74] * src/services/ActivityPubService.js (modified) fix(fedi): mention link href = profile URL, actor URI in the Mention ... Sat, 27 Jun 2026 12:15:56 GMT Robin Genis [dd7daef] * src/services/ActivityPubService.js (modified) feat(fedi): inline @mentions in replies federate (resolve + link + ... Sat, 27 Jun 2026 12:04:36 GMT Robin Genis [bddbfe0] * src/routes/posts.js (modified) * src/services/ActivityPubService.js (modified) * src/services/i18n.js (modified) * src/views/pages/authorize-interaction.ejs (modified) feat(fedi): edit your own outbound replies (Update(Note)) - ... Sat, 27 Jun 2026 11:56:24 GMT Robin Genis [7cea873] * src/services/ActivityPubService.js (modified) fix(fedi): link inline #hashtags in post bodies too (federate as ... Sat, 27 Jun 2026 11:52:49 GMT Robin Genis [6bc2ca7e] * src/services/ActivityPubService.js (modified) fix(fedi): hashtags in replies federate as Hashtag tags + clickable ... Sat, 27 Jun 2026 10:45:01 GMT Robin Genis [f1ce47a] * src/services/i18n.js (modified) * src/views/partials/profile-header.ejs (modified) fix(profile): replace native prompt() with a styled follow modal - ... Sat, 27 Jun 2026 10:27:33 GMT Robin Genis [c6bd87e] * src/services/ActivityPubService.js (modified) fix(fedi): resolve PeerTube videos (array attributedTo) as a reply ... Sat, 27 Jun 2026 09:14:55 GMT Robin Genis [ca0ad44] * src/routes/posts.js (modified) * src/services/i18n.js (modified) * src/views/pages/news.ejs (modified) feat(news): surface embedUrl + a direct "open the player" link - ... Sat, 27 Jun 2026 08:17:34 GMT Robin Genis [9e4e4ff] * src/services/ActivityPubService.js (modified) feat(ap): self-heal also re-syncs NSFW/sensitive + CW onto cached ... Sat, 27 Jun 2026 08:10:43 GMT Robin Genis [b7d4458] * src/config/database.js (modified) * src/routes/activitypub.js (modified) * src/routes/circle.js (modified) * src/routes/posts.js (modified) * src/services/ActivityPubService.js (modified) * src/services/Scheduler.js (modified) * src/services/i18n.js (modified) * src/views/pages/post-edit.ejs (modified) * src/views/pages/post.ejs (modified) * src/views/partials/post-card.ejs (modified) * src/views/partials/post-tile.ejs (modified) feat(nsfw): custom content-warning text + blur in the Cirkel - ... Sat, 27 Jun 2026 08:00:10 GMT Robin Genis [92f6976] * src/services/i18n.js (modified) * src/views/pages/admin-settings.ejs (modified) feat(settings): 18+ notice + confirm when activating Circles ... Sat, 27 Jun 2026 07:51:44 GMT Robin Genis [837fc9c] * src/assets/css/style.css (modified) * src/config/database.js (modified) * src/routes/activitypub.js (modified) * src/routes/posts.js (modified) * src/services/ActivityPubService.js (modified) * src/services/Scheduler.js (modified) * src/services/i18n.js (modified) * src/views/pages/post-edit.ejs (modified) * src/views/pages/post.ejs (modified) * src/views/partials/post-card.ejs (modified) * src/views/partials/post-tile.ejs (modified) * src/views/shell.ejs (modified) feat(posts): NSFW / sensitive content Mark a post NSFW (checkbox in ... Sat, 27 Jun 2026 07:29:38 GMT Robin Genis [f99c830] * src/services/i18n.js (modified) docs(handleiding): rewrite the fediverse sections to match the ... Sat, 27 Jun 2026 07:15:25 GMT Robin Genis [74d61e6] * src/routes/posts.js (modified) * src/services/ActivityPubService.js (modified) feat(fedi): boosting a non-followed post shows it in the Cirkel The ... Sat, 27 Jun 2026 07:08:17 GMT Robin Genis [dcff893] * src/services/i18n.js (modified) * src/views/pages/authorize-interaction.ejs (modified) feat(fedi): interact bookmarklet on the My-replies page A ... Sat, 27 Jun 2026 01:04:55 GMT Robin Genis [80c36a1] * src/routes/posts.js (modified) * src/services/ActivityPubService.js (modified) * src/services/Scheduler.js (modified) feat(fedi): fans-only = followers-only federation (option A) A ... Sat, 27 Jun 2026 00:57:02 GMT Robin Genis [1b99225] * src/services/PlatformIcons.js (modified) * src/services/i18n.js (modified) * src/views/partials/profile-header.ejs (modified) feat(profile): click avatar -> profile summary modal (contacts, ... Sat, 27 Jun 2026 00:16:21 GMT Robin Genis [cd6a008] * src/services/ActivityPubService.js (modified) fix(fedi): preserve newlines when federating to Mastodon Klonkt ... Sat, 27 Jun 2026 00:08:58 GMT Robin Genis [ace5a9b] * src/services/i18n.js (modified) * src/views/pages/authorize-interaction.ejs (modified) feat(fedi): 'Go to post' button on My-replies cards Each sent reply ... Sat, 27 Jun 2026 00:04:44 GMT Robin Genis [7e66e7e] * src/services/ActivityPubService.js (modified) feat(fedi): hide the leading @mention in displayed comments A ... Fri, 26 Jun 2026 23:55:09 GMT Robin Genis [0a75356] * src/routes/posts.js (modified) * src/services/ActivityPubService.js (modified) * src/views/pages/news.ejs (modified) feat(news): feed like+boost toggle in place (fetch, no reload, no ... Fri, 26 Jun 2026 23:50:14 GMT Robin Genis [9d34855] * src/config/database.js (modified) * src/routes/posts.js (modified) * src/services/ActivityPubService.js (modified) * src/views/pages/news.ejs (modified) fix(news): feed like is a toggle too (like/unlike), like boost The ... Fri, 26 Jun 2026 23:38:25 GMT Robin Genis [3d37c67] * src/config/database.js (modified) * src/routes/posts.js (modified) * src/services/ActivityPubService.js (modified) * src/views/pages/authorize-interaction.ejs (modified) feat(fedi): interact page like/boost are 2 icon+label toggle buttons ... Fri, 26 Jun 2026 23:30:21 GMT Robin Genis [3289a64] * src/config/database.js (modified) * src/routes/posts.js (modified) * src/services/ActivityPubService.js (modified) * src/services/i18n.js (modified) * src/views/pages/post.ejs (modified) * src/views/partials/fedi-node.ejs (modified) feat(fedi): comment like is a toggle too (Undo Like / un-favourite) ... Fri, 26 Jun 2026 23:25:14 GMT Robin Genis [c745659] * src/config/database.js (modified) * src/routes/posts.js (modified) * src/services/ActivityPubService.js (modified) * src/views/pages/post.ejs (modified) * src/views/partials/fedi-node.ejs (modified) feat(fedi): comment boost is a toggle with state + coloured action ... Fri, 26 Jun 2026 17:17:09 GMT Robin Genis [eacd3d6] * src/routes/admin-settings.js (modified) * src/services/i18n.js (modified) * src/views/pages/admin-settings.ejs (modified) feat(admin): Solo/Circles mode selector at top of settings + fix ... Fri, 26 Jun 2026 17:04:49 GMT Robin Genis [eefd302] * src/routes/posts.js (modified) * src/services/i18n.js (modified) * src/views/pages/admin.ejs (modified) * src/views/pages/following.ejs (modified) * src/views/pages/news.ejs (moved) * src/views/partials/fedi-tabs.ejs (modified) * src/views/partials/profile-sheet.ejs (modified) * src/views/partials/topnav.ejs (modified) feat(fedi): rename feed Newspaper -> News (/newspaper -> /news) EN ... Fri, 26 Jun 2026 16:10:22 GMT Robin Genis [d22b55c] * src/routes/posts.js (modified) * src/services/i18n.js (modified) * src/views/pages/newspaper.ejs (modified) * src/views/pages/post.ejs (modified) feat(fedi): Bandcamp+Apple Music embeds in feed, server autofill, ... Fri, 26 Jun 2026 15:56:42 GMT Robin Genis [0fa59c3] * src/routes/posts.js (modified) * src/services/i18n.js (modified) * src/views/pages/admin.ejs (modified) * src/views/pages/following.ejs (modified) * src/views/pages/newspaper.ejs (moved) * src/views/partials/fedi-tabs.ejs (modified) * src/views/partials/profile-sheet.ejs (modified) * src/views/partials/topnav.ejs (modified) feat(fedi): rename Timeline tab/route to Newspaper (/timeline -> ... Fri, 26 Jun 2026 14:14:00 GMT Robin Genis [297c77d] * src/routes/posts.js (modified) * src/services/ActivityPubService.js (modified) * src/views/pages/admin.ejs (modified) * src/views/pages/blocks.ejs (modified) * src/views/pages/timeline.ejs (modified) * src/views/pages/volgend.ejs (modified) * src/views/partials/fedi-tabs.ejs (modified) * src/views/partials/profile-sheet.ejs (modified) * src/views/partials/topnav.ejs (modified) refactor(fedi): English URL paths + equal-width tabs + back-to-site ... Fri, 26 Jun 2026 13:50:51 GMT Robin Genis [9e5438e] * src/services/i18n.js (modified) * src/views/pages/authorize-interaction.ejs (modified) * src/views/pages/blocks.ejs (modified) * src/views/pages/fedi-notifications.ejs (modified) * src/views/pages/timeline.ejs (modified) * src/views/pages/volgend.ejs (modified) * src/views/partials/fedi-tabs.ejs (added) * src/views/partials/profile-sheet.ejs (modified) * src/views/partials/tl-tabs.ejs (deleted) * src/views/partials/topnav.ejs (modified) feat(fedi): unify Timeline/Following/Replies/Notifications/Blocking ... Fri, 26 Jun 2026 13:30:43 GMT Robin Genis [a6e6f63] * src/services/i18n.js (modified) * src/views/pages/volgend.ejs (modified) tweak(volgend): drop the 'What do these options do?' heading, keep ... Fri, 26 Jun 2026 13:26:39 GMT Robin Genis [fda08c2] * src/routes/posts.js (modified) * src/services/ActivityPubService.js (modified) * src/services/i18n.js (modified) * src/views/pages/volgend.ejs (modified) refactor(fedi): remove the 'boost latest 5' feature Dropped at ... Fri, 26 Jun 2026 13:23:16 GMT Robin Genis [98ceadd] * src/services/i18n.js (modified) * src/views/pages/volgend.ejs (modified) feat(volgend): explain box above the follow options (what Featured / ... Fri, 26 Jun 2026 13:13:21 GMT Robin Genis [b6cdc3d] * src/routes/posts.js (modified) * src/services/i18n.js (modified) * src/views/pages/authorize-interaction.ejs (modified) * src/views/pages/post.ejs (modified) feat(fedi): like/boost/reply on the interaction page + display-only ... Fri, 26 Jun 2026 13:01:54 GMT Robin Genis [c7c7f02] * src/routes/circle.js (modified) * src/services/ActivityPubService.js (modified) * src/views/partials/post-card.ejs (modified) * src/views/partials/post-tile.ejs (modified) feat(cirkel): render boosted posts in the pinned style with a Boost ... Fri, 26 Jun 2026 12:50:25 GMT Robin Genis [bbce8da] * src/services/ActivityPubService.js (modified) feat(ap): log source IP on dropped/rejected/ignored inbox hits So ... Fri, 26 Jun 2026 12:32:50 GMT Robin Genis [4c47eff] * scripts/migrate-circles.mjs (deleted) * src/server.js (modified) * src/services/ActivityPubService.js (modified) refactor(cirkel): remove the legacy circle auto-migration (no auto- ... Fri, 26 Jun 2026 12:16:33 GMT Robin Genis [78b6d8a] * src/routes/posts.js (modified) * src/services/ActivityPubService.js (modified) * src/services/i18n.js (modified) * src/views/pages/timeline.ejs (modified) feat(tijdlijn): unboost button — retract a boost (Undo Announce) from ... Fri, 26 Jun 2026 12:00:18 GMT Robin Genis [5045c30] * src/config/database.js (modified) * src/middleware/render.js (modified) * src/routes/circle.js (modified) * src/routes/posts.js (modified) * src/services/ActivityPubService.js (modified) feat(cirkel): boosted posts also appear in the Cirkel (mixed by date, ... Fri, 26 Jun 2026 11:16:45 GMT Robin Genis [484adf8] * src/routes/posts.js (modified) * src/services/ActivityPubService.js (modified) * src/services/i18n.js (modified) * src/views/pages/volgend.ejs (modified) feat(cirkel): featuring is local-only; optional one-time 'boost ... Fri, 26 Jun 2026 10:23:33 GMT Robin Genis [98688c6] * src/services/ActivityPubService.js (modified) * src/views/pages/volgend.ejs (modified) feat(fediverse): follow a site by its bare domain (site.com), not ... Fri, 26 Jun 2026 10:04:14 GMT Robin Genis [b79466e] * src/server.js (modified) * src/services/ActivityPubService.js (modified) feat(fediverse): self-heal the timeline cache once per ... Fri, 26 Jun 2026 09:49:44 GMT Robin Genis [c628db10] * scripts/backfill-cirkel-covers.mjs (added) * src/services/ActivityPubService.js (modified) fix(fediverse): expose cover via Note.image for player-card posts ... Fri, 26 Jun 2026 09:33:42 GMT Robin Genis [355364c] * scripts/migrate-circles.mjs (modified) * src/services/ActivityPubService.js (modified) fix(cirkel): migrate ALL circle links, not just status='active' Old ... Fri, 26 Jun 2026 09:28:16 GMT Robin Genis [d71ed03] * src/server.js (modified) * src/services/ActivityPubService.js (modified) feat(cirkel): auto-migrate legacy circle_links to auto-boost on boot ... Fri, 26 Jun 2026 09:20:12 GMT Robin Genis [8ef8c3e] * scripts/migrate-circles.mjs (added) * src/middleware/render.js (modified) * src/routes/admin-circle.js (deleted) * src/routes/changelog.js (modified) * src/routes/circle.js (modified) * src/routes/federation.js (deleted) * src/server.js (modified) * src/services/CircleFederation.js (deleted) * src/services/CircleService.js (deleted) * src/services/SettingsService.js (modified) * src/views/pages/admin-circle.ejs (deleted) * src/views/pages/admin-settings.ejs (modified) * src/views/pages/admin.ejs (modified) * src/views/pages/changelog.ejs (modified) * src/views/pages/circle-post.ejs (deleted) feat(cirkel): remove the old Cirkels pull-protocol; Cirkels is now ... Fri, 26 Jun 2026 09:05:28 GMT Robin Genis [46f3dd6] * src/routes/posts.js (modified) * src/services/i18n.js (modified) * src/views/pages/timeline.ejs (modified) * src/views/pages/volgend.ejs (added) * src/views/partials/profile-sheet.ejs (modified) * src/views/partials/tl-tabs.ejs (added) * src/views/partials/topnav.ejs (modified) feat(fediverse): split Tijdlijn (feed) from Volgend (following) + put ...