tags: cofacts, meeting note GA: UA-98468513-3 —

20241031 會議記錄

:::info

:potable_water: Release pipeline

:star: Released to production

:robot_face: rumors-line-bot

:rocket: Staging

:electric_plug: DB & API

Make schema strict

Need a thorough test to see if anything is broken

:robot_face: rumors-line-bot

Testing checklist

https://lin.ee/1QUzEX4nI

⛔️ Release Blockers
未竟項目

:globe_with_meridians: Site

Testing checklist

http://dev.cofacts.tw/

登入自有帳號後檢測:

⛔️ Release Blockers

No

未竟項目

No

:::success 找個深夜 release :::

:eye: Under review

小聚檢討

小松果 https://g0v.hackmd.io/mjJOZkQ0TQqO1FzyucVfZA?view

Open165

Badge 功能

Automatic spam removal

@nonumpa Design doc: https://g0v.hackmd.io/@cofacts/rd/%2Fum7DyY_ESbu2LL78kLw3pg

最近 Spam 太誇張,一天可以有好幾個不同帳號產生 https://github.com/cofacts/takedowns/blob/master/2024/0123-spam.md ,讓檢舉人也疲於奔命 之前自動 spam 移除 ( https://g0v.hackmd.io/@cofacts/rd/%2Fum7DyY_ESbu2LL78kLw3pg ),是想解決自動執行一定要 ssh 的部分,目前推進卡在前面的 refactor 我現在想要先跳過自動執行(phase 1, 2)的實作,直接做自動檢舉(原定計劃中的 phase 3)。執行下架還是手動沒關係,至少能:

  • 自動發 PR
  • PR 裡附上要執行的指令讓我 copy & paste 到 terminal

目前用 ListBlockedUsers + ListReplies API 觀察到已經封鎖的使用者行為:

  • 有的註冊後 10 分鐘內會開始動作,但也有可能會放一陣子;另外,我們也沒開 ListUser API,因此無法掃使用者偵測
  • 開始貼文後,每篇間隔約 25 秒,可能手動也可能用瀏覽器自動化工具,因此就算上 captcha 可能也沒用(如果對方是手動 or browser automation with headed browser)
  • 可能會被有幾種文案交互貼,不會每個都貼一樣的,但都是廣告無誤

我的構想是:

  • 直接在要發 PR 的 https://github.com/cofacts/takedowns 寫 Github action workflow 寫 script,跑在 github action 上比較省事
  • 每 10 分鐘跑個 script 打 ListReplies API 掃過去 10 分鐘的回應(先以回應為主,未來可以再擴充到 reply request 等)
  • 把這些回應丟給 LLM 看是否是詐騙
  • 是的話,先檢查是否已經發過 PR;否則,就發 PR 在該年度 directory 下建立 -.md 公告該使用者違反廣告條款,PR 附上可以複製貼上的 CLI 指令
  • 我看到後覺得是詐騙無誤,就 merge + 手動執行該指令;若是冤枉的,就 close PR。因為前面發 PR 前會先檢查的緣故,script 不會再針對此使用者自動發 PR。

這個設計未來在自動 spam 移除計畫原訂的 pubsub(phase 1)自動指令執行(phase 2)完成後應該可以無痛接軌,變成任何能 merge PR 的人按下 merge 之後都能觸發 spam removal,擴大 spam 處理量能。

[name=mrorz]

Langfuse

[name=mrorz]