Forums and Threaded Discussions Task Force

0 readers
1 users here now

Discussion and announcements related to the SWICG Forums and Threaded Discussions Task Force.

This profile is a discussion forum category and shares content from users who post in its discussions.


This is a forum category containing topical discussion. You can start new discussions by mentioning this category.

founded 1 month ago
1
1
submitted 2 weeks ago* (last edited 2 weeks ago) by julian@community.nodebb.org to c/forum-wg@community.nodebb.org
 
 

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 (@trwnh@mastodon.social) 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 activity.
  • angus (@angusmcleod@mastodon.social) notes Discourse is essentially following 7888 but wants to know how to represent likes if implementors are predominately object-based
  • a: use the likes collection, evan (@evan@cosocial.ca) +1'd
  • Julian noted that the bottom-up approach (implementors) is mainly focused on backfill, and identifying other implementors.
  • Julian also notes that 171b implementors have made some inroads to support backfill from 7888 implementors, both FEPs are cross-compatible and we should strive to have it remain so

Freeform brainstorming session

  • Goal: identify and prioritise short-to-medium term goals for the ForumWG
  • Medium: Jitsi whiteboard

forumwg-brainstorm-march-2025.png

SVG version

Unfortunately there was no note-taking during the whiteboarding session, but readers are encouraged to ask questions about items identified in the image above (or attached).

  • End goal is to be able to point to a set of FEPs if someone new to AP wanted to implement threaded discussions
  • Evan suggested that this would be a good report, but also recommended that a W3C explainer be created instead
  • Context ownership was identified as a foundational element that is worth exploring/fep creation, as it is what multiple future discussion items would be based upon.
2
 
 

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:

  • Housekeeping
    • Daylight savings time Monday, ForumWG meetings track Eastern Time
    • EST ⇒ EDT (lose one hour)
  • Update — State of Conversational Contexts (Julian)
  • Brainstorm/whiteboarding: Use cases for resolvable contexts To decide focus of feps/implementors for the upcoming few months

As always — time permitting — if you'd like to speak or inquire about a certain topic, comment in the agenda or reply here, the floor is open!

3
 
 

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:

These FEPs are in the R&D phase.

State of the Top-Down approach

At this time, the ForumWG is only recommending the following:

  • Publishers SHOULD use context for grouping related objects in a thread (but this is not the only way to use context).

There is general agreement over:

  • A context SHOULD resolve to a resource.

There are concerns over:

  • What that resource is (as:OrderedCollection, a new type, something else?)
  • What is included in that context (plain objects or activities)

State of the Bottom-Up approach

The bottom-up approach is results-oriented, and while certain implementors may follow certain FEPs, the overarching goal is "cross-compatible conversational backfill".

Separately, these implementors are (or have signalled interest in) implementing conversational backfill:

  • FEP 7888
    • NodeBB (@julian) and Discourse (@angusmcleod@mastodon.social)
      • Attaches context to objects
      • context resolves to an OrderedCollection containing objects
      • Two-way conversation backfill is tested and working (7888 only).
    • WordPress (@pfefferle@mastodon.social) and Frequency (@jesseplusplus@mastodon.social)
      • Attaches context to objects
      • context resolves to an OrderedCollection containing objects
      • Outgoing conversational backfill is tested and working — others can backfill an entire conversation from these implementors.
    • Lemmy (@nutomic@lemmy.ml) and PieFed (@rimu@mastodon.nzoss.nz)
      • Have signalled interest (neither positive nor negative) in conversational backfill and are waiting and watching at this time.
  • FEP 171b
    • Mitra (@silverpill@mitra.social)
      • Attaches context to activities
      • context resolves to an OrderedCollection containing activities
      • Incoming conversational backfill is tested and working — Mitra can backfill an entire conversation from FEP 7888 and 171b implementors (:tada: nice!)
    • Hubzilla (@scott@authorship.studio) and Streams (@mikedev@fediversity.site)
      • Attaches context to activities
      • context resolves to an OrderedCollection containing activities
      • Outgoing conversational backfill is tested and working (against Mitra)

What's Next

This thread will likely contain updates and discussion from related parties about their implementations and what they wish to do next. In the cruelest irony of ironies, because conversational backfill is not ubiquitous yet, you will need to "View Original URL" in order to see all of the replies.

The ForumWG will meet again on 6 March 13h00 EST where all of this will be discussed, as well as planning out the future focus items for the ForumWG.

If you are an implementor, there is no reason you cannot join the fray. Boost this post, reply to it, join the conversation(al context)!!

If you're not an implementor, boost me anyway :stuck_out_tongue:

4
 
 

Just wrapped up a call with @pfefferle@mastodon.social and @jesseplusplus@mastodon.social 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 the entire conversation

NodeBB used to guard against this by ordering all received items by chronological order, but I realized that while this worked 99%+ of the time, there are some fun (ahem...) individuals who send objects with timestamps way in the future.

Personally I think removing the sorting just to fix one edge case was premature. At the same time, I think specifying that the OrderedCollection be sorted in chronological order should be a requirement.

cc @trwnh@mastodon.social

5
 
 

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 general high-level introduction to utilising context to represent threaded discussions
    • 7888 would branch out into "child FEPs" that deal with more focused, technical aspects that implementors could pick and choose from.
  • In addition to simpifying FEP 7888, the two next candidates for child FEPs would be:
    1. Followable objects (FEP-efda) which would lead to the ability for software to "subscribe" to topics for updates
    2. Conversational Contexts & Backfill (FEP TBD) which is self-explanatory
  • A whiteboarding session to determine user stories and long-term FEP prioritiy planning was deferred to March 2025.
  • A "resolvable contexts" office hours is planned for 17th February 2025 at 10h00 Eastern Standard Time
6
 
 

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

Monthly meetings normally are held on the first Thursday of each month, at 1700 to 1800 UTC. You can find them listed in the SocialCG Calendar. The next meeting will be held on 13 February 2025 due to my being out of the country last week.

We will be discussing:

  • Long-form text and resolvable context updates from FOSDEM
  • Concerns regarding developer accessibility of FEP 7888
  • Live brainstorm/whiteboarding session re: long-term focus of threaded conversation FEPs

As always — time permitting — if you'd like to speak or inquire about a certain topic, comment in the agenda or reply here, the floor is open!

7
 
 

Hello all,

Just a quick note that the Forum and Threaded Discussions Task Force meeting is delayed one week as I am out of the country currently, returning Monday.

8
 
 

There will not be a ForumWG meeting today due to the holidays being a rather slow period for development.

We'll be back in February for a post-FOSDEM meetup!