Reputazione federata

Su SocialHub, @keunes ha proposto di federare la reputazione nel senso che se Discourse supportasse ActivityPub, gli utenti potrebbero utilizzare la propria reputazione esistente su una o più istanze di Discourse in tutta Internet per bypassare i livelli di fiducia iniziali 0 e 1 e passare direttamente al livello 2 (membro) quando si uniscono a un nuovo forum.

Ho appena creato il mio primo post su questa istanza di Discourse e, poiché sono nuovo qui, posso pubblicare solo due link. È comprensibile, ma piuttosto fastidioso. Quindi mi chiedevo: non c’è un modo per rendere Discourse parte del fediverso, in particolare la mia reputazione?

Ad esempio, nel forum di AntennaPod potremmo impostare SocialHub come ‘fonte di fiducia attendibile’ e permettere agli utenti di beneficiare dei livelli di fiducia acquisiti altrove.

Infatti, quando sei un utente di Internet noto con una buona reputazione, le limitazioni dei livelli di fiducia inferiori possono diventare un peso quando ti unisci a nuovi forum. D’altro canto, se acquisisci una cattiva reputazione, ciò potrebbe anche impedirti di ottenere privilegi su nuovi forum (ad esempio, agire come un peso negativo sulla promozione del tuo livello di fiducia, anche se questo è facilmente aggirato utilizzando una nuova identità).

L’idea è quindi quella di facilitare la condivisione della reputazione di comportamenti positivi tra le diverse istanze di Discourse. Dato che esiste già una rete globale di istanze di Discourse, con un numero di utenti qui su Meta che frequentano anche molte altre istanze, diventa sempre più desiderabile unificare le identità tra le istanze per gli utenti regolari, in modo che le conversazioni diventino più fluide. ActivityPub è uno dei modi per farlo e stiamo attualmente esplorando modi per creare un plugin che aggiunga il supporto di ActivityPub a Discourse, che potrebbe servire come base per altre funzionalità federate, inclusa questa.

Storia parallela

@erlend_sh mi ha ricordato questa proposta occasionale di tre anni fa:

Riepilogo delle funzionalità interessanti proposte

Opt-in

Rete di fiducia

Scopribilità

Nel post #4, @erlend_sh ha proposto di aggiungere “comunità in comune” con altri utenti e, alla fine, trasferire i badge tra le comunità per rendere più facile per i membri scoprire nuove comunità.

9 Mi Piace

Prime impressioni che mi vengono in mente riguardo alla “migrazione della reputazione”:

  • dovrebbe essere opzionale per ogni forum
  • dovrebbe essere opzionale per ogni utente (vedi 1)
  • dovrebbe esserci una whitelist modificabile (forse fornita dallo stesso Discourse) dei forum consentiti
  • dovrebbe esserci una blacklist modificabile dei forum consentiti

1: questo pone la questione se vogliamo sollecitare l’utente a riguardo nei primi 5 minuti di utilizzo del forum

4 Mi Piace

Pensavo che i livelli di fiducia riguardassero piuttosto l’apprendimento delle regole e delle consuetudini dei singoli forum. Consentire alle persone di saltare la fase di “ambientamento” di due settimane/15 visite (predefinita) basandosi sulle regole di altri forum potrebbe non funzionare bene.

Non mi dispiacerebbe un livello di fiducia aggiuntivo di “membro associato” che potrebbe essere applicato a forum/utenti registrati in un hub centrale di directory. Qualcosa che mi permetta di avere accesso in lettura a molti forum e, forse, l’opzione di votare nei sondaggi o mettere “Mi piace” alle cose, pur dovendo ancora iscrivermi a un forum specifico per ottenere la piena adesione per pubblicare e progredire nel livello di fiducia, ecc.

2 Mi Piace

Sto gestendo alcune piccole istanze di Discord e temo il giorno in cui dovrò iniziare a configurare bot di moderazione per prevenire spam e altri comportamenti dannosi.

La maggior parte delle carenze di moderazione di Discord potrebbe essere risolta grazie ai Livelli di Fiducia (Trust Levels), che sono ancora enormemente sottoutilizzati nel software per comunità.

I Livelli di Fiducia in rete (federati), condivisi tra più istanze interoperanti, abilitano due funzionalità importanti:

Rete di Fiducia

Un utente che ha raggiunto il TL 2 su Meta dovrebbe essere promosso direttamente al TL 1 quando si unisce a qualsiasi forum che ha elencato meta.discourse.org come Forum Fidato. È essenzialmente il passo successivo rispetto a Let experienced users skip "new to Discourse" features.

È un sistema molto semplice, simile al PageRank.

Scopribilità

Discord offre una comoda funzione che ti permette di vedere quali comunità di chat (server) hai in comune con un altro utente:

Questo mi ha ricordato ciò che considero ancora il caso d’uso più interessante per il nostro elusivo Discourse Hub:

Una forma simile di trasferimento dei badge da altre istanze sarebbe molto utile. Quando qualcuno riceve il suo primo badge ‘Utile’ (un tale badge non esiste ancora di default), ogni istanza aggiuntiva in cui viene mostrato funge da promemoria e conferma per questa persona che è il tipo di membro della comunità che aiuta gli altri.

6 Mi Piace

Se venisse introdotto il network di fiducia, mi piacerebbe vedere il supporto per un elenco di fiducia (Trusted Trust List) oltre che per i Forum di Fiducia. Cioè, un’istanza Discourse potrebbe pubblicare il proprio elenco di Forum di Fiducia e io potrei scegliere di fidarmi di meta.discourse.org/trusted-forums.json sulla mia istanza, ad esempio. (Probabilmente non ricorsivo)

3 Mi Piace

Come immagini che funzioni? In modo anonimo, senza dati utente o…?

Non sono sicuro di quali dati utente sarebbero rilevanti specificamente per l’elenco dei forum fidati. Immagino che i Forum Fidati siano qualcosa che l’amministratore dell’istanza sceglie e, se l’amministratore opta per pubblicarli, la richiesta a meta.discourse.org/trusted-forums.json (o qualsiasi sia l’URL) produrrebbe qualcosa del genere:

{
  "trustedForums": [
    "meta.discourse.org",
    "bestforum.com",
    "marvellousdiscussions.org",
    ...
  ]
}

Quindi, come amministratore di un’istanza, potrei inserire “meta.discourse.org” nell’elenco dei Forum Fidati per fidarmi solo di quell’istanza (non delle istanze che essa stessa si fida) oppure potrei inserirlo invece nell’Elenco delle Fiducie Fidate (con un nome migliore…) per fidarmi di quell’istanza e delle istanze che essa si fida.

Il JSON probabilmente non conterrebbe effettivamente un riferimento alla propria istanza; questo serve solo a illustrare che fidarsi dell’elenco di un’altra istanza dovrebbe implicare anche la fiducia in quell’istanza.


Dato che menzioni i dati utente, presumo tu ti riferisca a come vedo io il funzionamento della fiducia stessa. Questo va oltre la portata del mio commento, ma dato l’idea di @erlend_sh di promuovere un utente al livello TL1, immagino che l’istanza dovrebbe condividere qualcosa come un hash SHA256 dell’indirizzo email con i forum fidati al momento della registrazione (o più probabilmente in un lavoro Sidekiq dopo la registrazione).

Sebbene questo eviti la condivisione diretta dei dati utente, vedo immediatamente un difetto utilizzando il JSON sopra come esempio. Se un utente ha un account su bestforum.com e poi si registra su meta.discourse.org, ciò rivelerebbe al primo che l’utente ha creato un account sul secondo e potrebbe rivelare al secondo che l’utente ha già un account sul primo, il che potrebbe essere indesiderabile.

Non sono davvero sicuro di come gestire questo problema. Far sì che l’utente acconsenta esplicitamente al momento della registrazione non può essere davvero affidabile, perché un’istanza che desidera abusare di tale meccanismo potrebbe semplicemente rimuoverlo.

Forse il “Discourse Hub” potrebbe risolvere gran parte di questo problema mantenendo (e ricevendo) solo indirizzi email hashati associati alle istanze e ai livelli di fiducia. Un’istanza interrogerebbe l’hub con un indirizzo email hashato e forse utilizzerebbe un sistema basato su un punteggio tra le istanze in cui quell’hash è stato rilevato e i livelli di fiducia raggiunti, in modo che un’istanza non veda mai quali altre istanze sono coinvolte, ma solo il punteggio risultante.

Tuttavia, con un operatore ovvio di tale hub come Civilized Discourse Construction Kit, Inc., questa disposizione pone comunque una domanda importante: io, come utente di meta e di altre istanze, voglio che CDCK possa vedere quali altre istanze sto utilizzando? (Poiché sarebbe possibile per un operatore di istanza+hub collegare i propri utenti dell’istanza alle voci nell’hub)

In sintesi, immagino che il modo in cui potrebbe funzionare la fiducia sia troppo complicato per questo cervello confuso. :slight_smile:

Sebbene trovi l’approccio dei “forum fidati” interessante e utile, vedo anche un potenziale problema di sicurezza: gli attaccanti potrebbero prendere di mira i “forum fidati” meno controllati per accedere al loro vero obiettivo, dove non potrebbero entrare direttamente. Quindi, se dovessimo implementare un meccanismo di fiducia transitiva, non dovrebbe essere facilmente navigabile e dovrebbe essere accompagnato da un forte meccanismo di ritorsione che sospenda un aggressore su tutte le istanze: lo considero un vincolo rigoroso che aggiungerebbe una notevole complessità e che sarebbe meglio lasciare a una seconda fase di sviluppo.

D’altro canto, potrebbe (sembrare) più semplice mantenere una lista privata di forum fidati, in cui la reputazione remota di un membro su ciascuno di questi forum rafforzerebbe il suo status locale. Forse il concetto di livelli di fiducia potrebbe essere esteso anche alle istanze oltre che agli utenti? Se un’istanza, diciamo Meta, ha un TL3, allora le persone che provengono da lì potrebbero inizialmente avere un TL2, con un fattore di decadimento se l’utente non partecipa; questo aggiunge un ulteriore livello di complessità, ma sto solo pensando ad alta voce e volevo abbozzare alcune possibilità alternative rispetto alla fiducia in intere istanze.

Sono d’accordo sulla discrezione riguardo a chi utilizza quali istanze. Questo aspetto dovrebbe essere preso in considerazione, anche se pubblicare su istanze pubbliche potrebbe equivalere a rivelare il fatto che le si sta utilizzando; ciò potrebbe applicarsi invece alle bacheche private.

2 Mi Piace

Sto ancora rimandando la lista utenti a livello di directory. :slightly_smiling_face:

 https://DiscourseDiscovery.org -

Gli utenti anonimi vedranno una directory dei forum che si sono registrati per essere inclusi nell’elenco pubblico (ricercabile per categoria o ‘Tag del forum’), e potranno anche cercare parole chiave in tutte le istanze della directory.

Iscriviti per creare un account utente DiscourseDiscovery. I nuovi account partiranno da Hub_Level_0 e potranno avanzare attraverso i restanti Hub_Levels completando determinate azioni e un addestramento adattato di Discobot sui ‘Forum’, che copra tutte le competenze necessarie che ritieni siano richieste alle persone.

I diversi Hub_Levels consentiranno l’accesso a più funzionalità nella directory. Ad esempio: vedere categorie normalmente invisibili agli utenti anonimi, eseguire azioni come mettere Mi piace o votare nei sondaggi (le immagini degli avatar potrebbero essere circondate di rosso per indicare membri associati o di Hub_Level), oppure ricevere notifiche sui contenuti dei topic, ecc. Toccare un avatar aprirà la sua Usercard DiscourseDiscovery.

Gli utenti potranno quindi aggiungere qualsiasi account forum ‘membro completo’ a una pagina utente DiscourseDiscovery concatenata (con l’opzione di escludere quelli che desiderano). Qui potranno essere cumulati i badge, oltre all’attività più recente, eccetera.

I forum potrebbero anche avere opzioni in Sicurezza per limitare l’accesso a determinate cose (categorie, sondaggi, ecc.) solo ai membri completi. Potrebbero inoltre scegliere se essere inclusi nella directory pubblica, in una più privata basata sugli Hub_Levels di un utente, o non essere inclusi affatto.

Solo alcune idee. :slightly_smiling_face:

3 Mi Piace