So che succede quando qualcuno di Discourse mette “mi piace” all’argomento sul bug pubblicato in Contribute > Bug. Voi usate un webservice per questo e ascoltate semplicemente il primo “mi piace” su un nuovo post, verificando solo che non sia stato messo “mi piace” più volte dalla stessa persona di CDCK?
Mi piacerebbe sapere di più sulla vostra implementazione!
SELECT distinct p.user_id, p.created_at granted_at, p.id post_id
FROM badge_posts p
JOIN topics t ON t.id = p.topic_id
JOIN post_actions pa ON pa.post_id = p.id AND
post_action_type_id = (
SELECT id FROM post_action_types WHERE name_key = 'like'
) AND
pa.user_id IN (
SELECT gu.user_id
FROM group_users gu
WHERE gu.group_id = ( SELECT id FROM groups WHERE name ilike 'team' )
)
WHERE category_id = (
SELECT id FROM categories WHERE name ilike 'bug'
) AND p.post_number = 1
(Inoltre, ho creato anche elementi simili per funzionare con una specifica reazione di un certo gruppo )
@JammyDodger questo è fantastico! Non ho ancora avuto il tempo di approfondire le query personalizzate dei badge, ma questo potrebbe finalmente darmi un’opportunità.
Se è possibile chiedere, come gestisci internamente le segnalazioni di bug oltre al badge? Almeno nel contesto di Meta? Lo aggiungi manualmente alla tua coda di bug da qualche parte? Utilizzi un plugin per inviarlo alla tua coda di bug direttamente dall’argomento?
Sono anche curioso riguardo alla logistica della gestione dei report di bug e delle richieste di funzionalità in Discourse e a come li colleghi ai tuoi sistemi di sviluppo/interni.
Sono molto divertenti. E ci sono molti esempi disponibili se ti servono ispirazione o consigli.
La categoria Contribute > Bug è una parte importante della nostra coda di bug. Per evitare duplicati, spesso gestiamo il problema direttamente all’interno del topic di Meta (utilizzando whispers, @menzioni e assegnazioni) e spostiamo realmente i problemi in un’area del Team solo se richiedono conversazioni aggiuntive significative o input da altri. Riceviamo anche segnalazioni di bug attraverso i canali dei clienti, che vengono spesso risolte ‘nel topic’, a meno che non ci siano più segnalazioni o ne esista già una pubblica (in tal caso, se ne utilizza generalmente una come principale per non frammentare troppo la conversazione, e le altre vengono cross-linkate). Per quelli che rileviamo noi stessi, abbiamo alcuni topic interni che possiamo utilizzare per prendere nota di cose più piccole pronte affinché qualcuno possa occuparsene e risolverle; per quelle più grandi, creiamo un topic dedicato allo stesso modo della categoria pubblica Contribute > Bug.
Generalmente, il flusso è il seguente: arriva una segnalazione e uno di noi prova a riprodurla e raccoglie eventuali dettagli aggiuntivi necessari. Una volta confermata, inviamo un segnale d’allarme tramite @menzione al gruppo/persona competente per darle una priorità e assegnarla. Arriva la correzione e viene inserita in un post per chiudere il topic (con un ritardo del timer del topic solo per confermare che tutto funzioni come previsto ).
Contribute > Feature è un po’ diverso poiché spesso c’è molto di più da discutere internamente. Cerchiamo di limitare al minimo i whispers su questi topic pubblici e li riserviamo a brevi note e per attirare l’attenzione su quelli che stanno attirando un interesse maggiore (di nuovo @menzioni). In questo modo non frammentiamo la conversazione in troppi posti. I product manager apprezzano di interagire pubblicamente con questi topic per esplorare diversi casi d’uso e valutare le possibilità (oltre che per far sapere alle persone qual è il loro pensiero sull’argomento, poiché ci piace essere trasparenti dove possibile ). Se un Contribute > Feature diventa qualcosa che stiamo prendendo seriamente in considerazione, verrà creato un topic interno in cui sviluppatori, designer, product manager, moderatori della comunità curiosi, ecc. possono tutti esprimere le loro idee e mockup su come ritengono che possa essere realizzato al meglio (cross-linkato al topic di Meta per collegarli).
Ora che l’ho scritto, non sono sicuro che sia utile… Ma fammi sapere se vuoi sapere qualcos’altro.