Skip Navigation
julian

Co-Founder (NodeBB) | Husband šŸ¤·ā€ā™‚ļø and Dad šŸ™‰ to three | Rock Climber šŸ§—ā€ā™‚ļø | Foodie šŸ„™ | Conductor šŸŽµ | Saxophonist šŸŽ·

āœ… Small teams craft better code.
šŸ‡ØšŸ‡¦ Made in Canada
šŸ—Øļø Federating NodeBB with funding from NLNet ā™„ļøšŸ‡ŖšŸ‡ŗ

Posts
28
Comments
109
Joined
12 yr. ago
  • @AltCode right, I think the issue here is that the posts themselves do not contain a backreference to the magazine they were posted to.

    So for example, their latest post has addressed the following:

     undefined
        
    ...
      "to": [
        "https://www.w3.org/ns/activitystreams#Public"
      ],
      "cc": [
        "https://flipboard.com/users/theverge/followers"
      ],
    ...
    
      

    ... note that the magazine itself is not included, and so when NodeBB receives the object, it does not know to slot the topic into the appropriate category.

    cc @[email protected] again about this one :smile:

  • @AltCode This should be fixed in the upcoming v4.3.0.

    https://github.com/NodeBB/NodeBB/issues/13352

    It won't proactively remove the duplicates, but they'll be pruned out within ~7 days.

  • @AltCode that user and the category are (I think) separate actors. I'm not sure what the user does, shares its own posts, possibly... but like you said, nobody follows that user so I suppose that's why there's not much shown as shared either.

  • It's pretty wild how wide-ranging these tariffs affect small scale manufacturers with in and out of the United States.

    I've been hearing scattered reports across different industries all saying the same thing:

    1. They have 60 days or less of inventory remaining.
    2. They cannot order more because nobody Stateside will pay for those items at prices increased to offset the tariffs.

    For companies with razor thin margins, even 1% changes the calculus. A 145% tariff is already well over the point of no return.

  • @AltCode I think it's just Flipboard, right?

    It might be because of the issue mentioned upthread where items shared by those groups don't have a back reference to the itself so it isn't slotted in it.

    They might all just be uncategorized instead. Can you find those items when you search their url or id in the NodeBB search bar?

  • @[email protected] that's the main thing for me too. That news orgs, political agencies, and corporations use Xitter to communicate is the real travesty.

  • @[email protected] oh sure, bit of a pot calling kettle black situation though.

  • Fediverse memes @feddit.uk
    julian @community.nodebb.org

    Adobe is on BlueSky! no, wait...

  • @[email protected] have you tried navigating directly to the url without the preceding @? It isn't required (for NodeBB).

    In cases where the category is currently a user, you'll have to put the whole handle into the search box and execute the search, the category will then be migrated from the user.

  • ActivityPub @community.nodebb.org
    julian @community.nodebb.org

    Updates to the world page

    tl;dr — you can now find remote categories and see your tracked/watched categories in /world.

    A new alpha version of NodeBB was tagged today: v4.3.0-alpha.3. The biggest change is to the /world route, which up until now showed a list of topics from outside of the local NodeBB instance.

    New to this alpha release:

    1. A quick search widget was added, allowing you to directly search for remote categories. There is no need to navigate to to the search page to discover new categories.
    2. Your list of tracked and watched categories will show at the top of the page.
      • "Tracking" and "Watching" categories—both local and remote—is how content discovery happens in NodeBB. Tracked categories will have new content show up in the "unread" page, while watched categories take that a step further and notify you when new content is posted.
      • Tracking and watching a category will tell NodeBB to subscribe to that remote community for updates

    At this time we're continuing to l

  • @[email protected] it is! The in-development stuff I'm working on makes it much easier to post directly to a Lemmy community.

    This is probably the first, yes. It was also a bit of a live test at the same time.

  • Fediverse memes @feddit.uk
    julian @community.nodebb.org

    Join the one called "Fediverse"

  • Let's clarify something here. Mastodon follower only posts don't have the "public pseudo user" addressed, do they?

    That's the important piece that this whole thing hinges upon

    If it is present, Mastodon is a fault. If not, Pixelfed messed up.

    Am I mistaken?

    For example, a followers-only post is addressed to the followers collection of the author, at minimum. When NodeBB sees this, it doesn't even consider it public, because the public pseudo user isn't addressed. We also have no concept of "followers only", but we handle them just fine.

  • @[email protected] as I learned, the latter—kai oats—is Canadian.

  • A note that the ForumWG meeting is scheduled to begin shortly: https://meet.jit.si/ap-forum-wg

  • @AltCode all three flipboard remote categories seem to be working now :joy:

  • The remaining questions here are:

    • whether preferredUsername is meant to be unique to the instance (in which case having multiple ids point to an identical preferredUsername would be a violation), and
    • what exactly AP software should do when it encounters this situation... store a list of "known alias" IDs? There are potential security issues to doing so.
  • @AltCode I forked this out to a new topic. I think it's time to loop @[email protected] into the conversation (at the very least so this could be potentially escalated).

    Mattias, it seems that when the WPML and ActivityPub plugins are enabled together, notes federated out by the blog user in another language have different ids but the same preferredUsername.

    e.g. [email protected]: https://vivaldi.com/?author=46 and https://vivaldi.com/ja/?author=46

    NodeBB interprets this as two different users. Curiously, Mastodon does not, the second ID explicitly does not resolve.

    So there can be two solutions here:

    1. The underlying issue can be fixed by WordPress, the solution of which is out of scope (for me at least)
    2. NodeBB can adopt whatever mechanism Mastodon is using... which is most likely that Mastodon does a two-way when asserting an ID, and ensures that the webfinger resource points to the ID.
  • @AltCode okay! Thanks for reporting, it sounds like there are two issues going on:

    1. Categories losing their handle-to-id association
      • Frustratingly, this read very similarly to #13283, and both remote users and categories share similar logic. I have so far not been able to reproduce it at all on local development.
    2. Separate users (different IDs) sharing the same preferredUsername.
      • This is an interesting one, and I am not entirely sure where the fault lies. I wonder how other software handles it?
  • @[email protected] that's because Discovery is just bad fan fiction.

    It makes Enterprise worth watching.

  • Forums and Threaded Discussions Task Force @community.nodebb.org
    julian @community.nodebb.org

    Agenda Prep for April 2025 WG Meeting

    Agenda preparation for the April ForumWG meeting can be found at this public link (anyone can make comments for review.)

    Monthly meetings are held on the first Thursday of each month, at 13h00 to 14h00 Eastern Time (currently 17h00 to 18h00 UTC). You can find them listed in the SocialCG Calendar. The next meeting will be held on 3 April 2025.

    We will be discussing:

    • Review of brainstorm/whiteboarding session from March
    • Context Ownership
      • Brainstorm use cases/user stories
    • Moving objects (between contexts) and moving contexts (between audiences)
      • Relies on context ownership ā€œFEPā€
      • Brainstorm use cases/user stories
      • Support for multiple objects (forking)?
      • Same origin only? Support moving objects/contexts between instances? Different FEP?
    Forums and Threaded Discussions Task Force @community.nodebb.org
    julian @community.nodebb.org

    Moving topics

    Within the context of threaded discussions, contexts (aka "topics", "posts", "threads", etc.) are associated with an audience (aka "forum", "category", "community", etc.).

    What happens currently when a context is moved from one audience to another? How does ActivityPub enabled software communicate this?

    I recently moved this topic from one category to another, and in doing so, realized that I have absolutely no idea what happens to the group association as seen by other software.

    @[email protected] also said in the other thread: > Also moving what NodeBB calls a topic (a post in Lemmy/PieFed) from what NodeBB calls a category (community in Lemmy/PieFed) into a different category (without spawning a new topic or leaving the old copy behind) is much needed but not implemented in Lemmy/PieFed/Mbin.

    One solution would be to fe

    ActivityPub @community.nodebb.org
    julian @community.nodebb.org

    How do PieFed/Lemmy/Mbin handle cross-posting?

    tl;dr — how do PieFed/Lemmy/Mbin handle cross-posting?

    Currently, when a NodeBB admin moves a topic from the uncategorized pseudo-category into a local category, we federate out an as:Announce, people typically think of that as a "boost" or "share".

    That worked fine when the entirety of the category list was your local categories plus the "uncategorized" pseudo-category. However, now that NodeBB is moving towards supporting remote categories (via group actors), this UX makes less sense. We wouldn't want to "move" a topic out of the category it is supposed to be in, just for visibility to other local users. Additionally, topic moving was limited to administrators, and from the get-go we knew it would eventually cause issues because people other than admins would want to share topics to other local users.

    This is where the "cross-post" functionality comes in, which is entirely new to NodeBB. I don't think this is new to other AP-enabled threaded discussion software. The idea w

    ActivityPub @community.nodebb.org
    julian @community.nodebb.org

    Are Flipboard collections(?) AP groups?

    Hey @[email protected], are Flipboard collections (or are they magazines? I forget the term!) federating out as as:Group? I'm wondering whether it would be possible for NodeBB to load them in as categories, and be able to browse them natively...

    I'm just not able to easily find them in the Flipboard UI right now, but I'm relatively new at using the app :)

    ActivityPub @community.nodebb.org
    julian @community.nodebb.org

    Live testing of remote categories

    Happy Tuesday!

    Today we've updated the NodeBB community forum onto the remote-categories testing branch, which means that users on the open social web that identify themselves as "Groups" will be rendered in NodeBB as categories. Prior to this, they looked like users.

    Here are some examples of remote categories:

    ActivityPub "groups" and forum categories have quite a few things in common — they don't usually post topic themselves, they "contain" topics, and they are usually administered by a separate group of users (moderators!) In many ways, these groups lend themselves to categories much more easily than they do as users.

    Notes:

    • We will likely be releasi
    ActivityPub @community.nodebb.org
    julian @community.nodebb.org

    Forum specific UX for remote categories

    The upcoming possibility of browsing to remote federated categories/communities has me thinking about interesting use cases for it.

    Note that Lemmy, PieFed, mBin, and other "community-centric" software already do support this, so it's nothing new, I'm actually playing catch-up.

    One interesting use case centers around NodeBB's /unread route, which tracks new topics since your last visit. Since ever, and even now in v4, this is only for local categories, but if you're able to "subscribe" to a remote category, then we could enable use of this page for that content too.

    Think about waking up and seeing a self-curated feed of new content from your subscribed communities! There are some interesting parallels to RSS here, too.

    What other forum-centric use cases do you think would be enhanced by the ability to browse remote categories?

    ActivityPub @community.nodebb.org
    julian @community.nodebb.org

    Signifying an audience in an object (PieFed/Lemmy)

    Hi @[email protected]/@freamon and @[email protected] —I'm working (not-so-secretly) on refactoring NodeBB so that it is able to "browse" remote audiences/group actors, and that would include things like PieFed and Lemmy communities.

    N.B. Given varied nomenclature (group/category/community/subforum), the ForumWG calls this structure an "audience".

    Where I am at now is working through the logic for slotting an object into a category.

    The most obvious choice here would be to look at as:audience. It's even specified in 1b12, and the majority of threaded implementations follow 1b12.

    I am making this post because nutomic explicitly removed the audience from being served in Lemmy (as of January this year), so I don't think relying on that property would be wise.

    I asked

    ActivityPub @community.nodebb.org
    julian @community.nodebb.org

    Mainstream adoption of ActivityPub vs. DIY indie hacking

    @[email protected] recently made a statement that got me thinking about our place in the open social web, and the direction it's going.

    He says to @[email protected] and @[email protected] re: SXSW

    > #FediverseHouse this feels like an irrelevant echo chamber, I really miss the grassroots #DIY that built this space in the first place. This #maistreaming is too much noise vs signal... currently the grassroots #DIY space is a hollow shell

    (two posts combined)

    That immediately got me on edge as someone new to ActivityPub in 2024. Does this mean I'm "mainstream", and somehow "bad"?

    Mainstream adoption is good and a step in the right direction. I personally think ActivityPub isn't ready for general mainstream consumption, but we as a group are ra

    Forums and Threaded Discussions Task Force @community.nodebb.org
    julian @community.nodebb.org

    Minutes from 6 March 2025 WG Meeting

    March 2025 ForumWG Minutes

    Apologies in advance if I misrepresented anybody or missed any crucial bits of information.


    • Julian provided a brief summary of the state of conversational contexts
      • two-pronged approach: top down (feps), bottom up (implementors)
      • IceShrimp.NET (waiting and watching)
        • Already exposes context collections, integration testing pending
      • Mitra
        • Implemented (top-level only) context collections of objects, tested and working
    • Julian said 7888 is object-based contexts, 171b is activity-based contexts and notes that activity-based context can be more comprehensive (incl. likes, reactions, updates)
    • a (@[email protected]) notes that 7888 is more generic and doesn't specify object-vs-activity; notes there is also a missing link between an object and its Create act
    Forums and Threaded Discussions Task Force @community.nodebb.org
    julian @community.nodebb.org

    Agenda Prep for March 2025 WG Meeting

    Agenda preparation for the February ForumWG meeting can be found at this public link (anyone can make comments for review.)

    Monthly meetings are held on the first Thursday of each month, at 13h00 to 14h00 Eastern Time (currently 18h00 to 19h00 UTC). You can find them listed in the SocialCG Calendar. The next meeting will be held on 6 March 2025.

    We will be discussing:

    ActivityPub @community.nodebb.org
    julian @community.nodebb.org

    Recommend object URL should 301 to AP resource

    Wanted to start a convo with @[email protected] from Ghost and @[email protected] from Discourse about AP resource discovery.

    A common use case from fediverse users is to be linked out to a site, and attempt to "bring it in" to their local instance/app of choice. This is done by taking the browser URL and pasting it into their site/app's search bar, or equivalent.

    For example:

    For context, last night I discovered that Ghost's latest blog post didn't make it into NodeBB, due to a bug on my end. I attempted to resolve it via URL but there was no AP resource at that URL. I ended up having to query the instance actor (which I happened to already know), and looking at the outbox.

    To my knowledge there is no way to find a Discourse post

    ActivityPub @community.nodebb.org
    julian @community.nodebb.org

    NodeBB on FediDB

    Hey @[email protected], can I poke you about getting NodeBB on FediDB?

    It automatically picked up a couple NodeBB sites, so I think the nodeinfo stuff is working, just not sure if it required some manual intervention on your end to get the software link working — it currently 404s.

    Cheers :flag-ca:

    Forums and Threaded Discussions Task Force @community.nodebb.org
    julian @community.nodebb.org

    The state of conversational contexts (February 2025)

    A conversational context is what the ForumWG uses to describe what you might see as a reply tree or comment thread. One of the short-to-medium term goals of the ForumWG is to get conversational backfill working reliably.

    What this means — conversational backfill means that when you encounter a post/status/note/etc. (e.g. you're mentioned or boosted/shared something), there is a reliable and comprehensive way to retrieve the entire conversation around it, so you are not interacting with the object on its own, but in its proper context with all its sibling replies.

    We plan to achieve this with a combination of a top-down (FEP-driven) and bottom-up (implementor-first) approach. While this sounds incongruent, top-down approaches tend to overcomplicate and bottom-up approaches tend to violate the protocol (unintentionally of course :joy:.)

    There are a number of independent top-down efforts to achieve this:

    ActivityPub @community.nodebb.org
    julian @community.nodebb.org

    New federated testing instance for NodeBB

    For awhile now we've hosted https://try.nodebb.org/ as our demo instance for people to see a plain NodeBB instance.

    I have added a federated category on that instance now. You can of course still make test posts to this instance, but you can also feel free to fill @[email protected] with garbage instead :laughing:

    Please note that the "try" instance of NodeBB is reset every 24 hours, which means all follow relationships, content, etc. will only last at most that long. If you follow the category or an account on that instance, those categories/users will "forget" you followed them.

    Forums and Threaded Discussions Task Force @community.nodebb.org
    julian @community.nodebb.org

    FEP 7888 serving up an OrderedCollection

    Just wrapped up a call with @[email protected] and @[email protected] to review their implementations of FEP 7888, specifically in relation to conversational backfill.

    :heavy_check_mark: individual objects serve a context property :heavy_check_mark: that context property is a URL that resolves

    One of the concerns raised was related to the OrderedCollection of items served by the context. Specifically, if the items presented in the collection were not in chronological order, NodeBB failed at importing some of the items as the inReplyTo referenced an object that did not exist.

    The solution to this was to ensure that the collection items were in chronological order from oldest to newest. Once fixed:

    :heavy_check_mark: the context resolved to an OrderedCollection containing objects :heavy_check_mark: NodeBB was able to pull in

    Forums and Threaded Discussions Task Force @community.nodebb.org
    julian @community.nodebb.org

    Minutes from 13 February 2025 WG Meeting

    The full minutes from the Forum and Threaded Discussions Task Force monthly meeting (held on 13 February) can be found at this Google Docs link

    Apologies in advance if I misrepresented anybody or missed any crucial bits of information.


    February 2025 Minutes

    • The meeting was deferred a week due to Julian being out of the country, but this time conflicted with the Geosocial TF and perhaps it would be easier to just skip the month instead.
    • Julian attempted developer outreach in the weeks leading up to FOSDEM (and at FOSDEM), specifically relating to FEP 7888 and resolvable contexts.
      • Much of the feedback revolved around the perceived complexity of the FEP
      • A separate attempt to focus more on outcomes (e.g. conversational backfill via 7888) led to more positive feedback
    • This led to the desire to modify FEP 7888 away from being a (perceived) monolithic FEP into a
    ActivityPub @community.nodebb.org
    julian @community.nodebb.org

    1b12 vs Guppe groups

    @panos brought up something interesting recently, which is that Lemmy communities don't boost everything (at least when viewed from Mastodon), but just the original post.

    I wasn't sure whether this was intentional (because 1b12 definitely specifies that everything is boosted, replies and all). The only explanation I can think of is that 1b12 boosts activities, and Mastodon doesn't understand that, so it's actually an implementation quirk that causes Mastodon to not actually see the entire conversation.

    NodeBB used to Announce(Note) and Announce(Create(Note)), and it meant that Mastodon was seeing everything. This was desirable from a synchronization standpoint, but it meant everything was going into Mastodon user feeds, which was @panos' concern.

    I think Guppe (which is kind of like 1b12? Not sure) boosts everything, but again, am not 100% sure.