cofacts

Month: 2024-12

2024-12-01

mrorz 08:59:17
https://github.com/cofacts/rumors-api/pull/352 unit test 修好囉
因為刪了 tested code 幾行而掉 coverage

#352 Move blockUser to under admin API

Implement admin API `/moderation/blockUser` by reusing existing code and unit tests • Use `fets` `HTTPError` to properly pass error message to API caller • Remove CLI-specific things like progress bar • Update test and fix open handle issue

mrorz 08:59:17
https://github.com/cofacts/rumors-api/pull/352 unit test 修好囉
因為刪了 tested code 幾行而掉 coverage

2024-12-02

mrorz 14:48:52
今日議程: https://g0v.hackmd.io/@cofacts/meetings/%2F5-jQ-pWnT4iOEOos9t7Cyw

HackMD

Cofacts 會議記錄 - HackMD

# Cofacts 會議記錄 - [搜尋](<https://cse.google.com/cse?cx=71f4f7ee215d54fe6>)[target=_blank] ## 2024 -

2024-12-03

Kapibara 17:03:12
@isklm.tech has joined the channel

2024-12-09

mrorz 12:59:46
今日議程:https://g0v.hackmd.io/@cofacts/meetings/%2FJBzxtPVYTbattxTcYTVRgA

HackMD

Cofacts 會議記錄 - HackMD

# Cofacts 會議記錄 - [搜尋](<https://cse.google.com/cse?cx=71f4f7ee215d54fe6>)[target=_blank] ## 2024 -

2024-12-11

@null 14:35:35
cofacts的回覆被塞了一堆詐騙訊息 [https://cofacts.tw/article/19pgeh615lbj4](https://cofacts.tw/article/19pgeh615lbj4)
還有這一篇也出現大量疑似二次詐騙的回覆
https://cofacts.tw/article/30e84ayuqma1q

原本想先給 downvote,但發現訊息太多了
大感謝,剛才 merge PR 讓公告進入 master branch 了
Amos 14:41:11
還有這一篇也出現大量疑似二次詐騙的回覆
https://cofacts.tw/article/30e84ayuqma1q

原本想先給 downvote,但發現訊息太多了
mrorz 16:50:39
大感謝,剛才 merge PR 讓公告進入 master branch 了

2024-12-13

nina.hsueh 23:00:37
@nina.hsueh has joined the channel

2024-12-15

LC 20:45:42
@andy2004.yen has joined the channel

2024-12-16

Min 13:33:23
@caro84810 has joined the channel
mrorz 13:42:05
今日議程: https://g0v.hackmd.io/@cofacts/meetings/%2Fx3iNmflkSeSA1_AbfTjAiA

HackMD

Cofacts 會議記錄 - HackMD

# Cofacts 會議記錄 - [搜尋](<https://cse.google.com/cse?cx=71f4f7ee215d54fe6>)[target=_blank] ## 2024 -

2024-12-17

@null 21:37:25

Health Check Name: line-bot.cofacts.tw
Health Check ID: 43bacff73e318b0ee85fdcda1f7d8627
Time : 2024-12-17 13:37:13 +0000 UTC
Status: Unhealthy
Failure reason: Response code mismatch error
Expected codes: [200]
Received code: 521
@null 21:37:30

Health Check Name: api.cofacts.tw
Health Check ID: 86c058fd4a13c3a35fd33ecb2c6e74cf
Time : 2024-12-17 13:37:21 +0000 UTC
Status: Unhealthy
Failure reason: HTTP timeout occurred
@null 21:37:44

Health Check Name: cofacts.tw
Health Check ID: 26c31cd565ee9448e8cff64528205cd3
Time : 2024-12-17 13:37:26 +0000 UTC
Status: Unhealthy
Failure reason: HTTP timeout occurred
@null 21:41:36

Health Check Name: cofacts.tw
Health Check ID: 26c31cd565ee9448e8cff64528205cd3
Time : 2024-12-17 13:41:18 +0000 UTC
Status: Unhealthy
Failure reason: HTTP timeout occurred
@null 21:46:39

Health Check Name: cofacts.tw
Health Check ID: 26c31cd565ee9448e8cff64528205cd3
Time : 2024-12-17 13:46:26 +0000 UTC
Status: Unhealthy
Failure reason: HTTP timeout occurred
@null 21:49:10

Health Check Name: cofacts.tw
Health Check ID: 26c31cd565ee9448e8cff64528205cd3
Time : 2024-12-17 13:48:56 +0000 UTC
Status: Unhealthy
Failure reason: HTTP timeout occurred
@null 21:51:41

Health Check Name: cofacts.tw
Health Check ID: 26c31cd565ee9448e8cff64528205cd3
Time : 2024-12-17 13:51:26 +0000 UTC
Status: Unhealthy
Failure reason: HTTP timeout occurred
@null 21:54:25

Health Check Name: cofacts.tw
Health Check ID: 26c31cd565ee9448e8cff64528205cd3
Time : 2024-12-17 13:54:06 +0000 UTC
Status: Unhealthy
Failure reason: HTTP timeout occurred
@null 21:56:55

Health Check Name: cofacts.tw
Health Check ID: 26c31cd565ee9448e8cff64528205cd3
Time : 2024-12-17 13:56:36 +0000 UTC
Status: Unhealthy
Failure reason: HTTP timeout occurred
@null 22:01:41

Health Check Name: cofacts.tw
Health Check ID: 26c31cd565ee9448e8cff64528205cd3
Time : 2024-12-17 14:01:27 +0000 UTC
Status: Unhealthy
Failure reason: HTTP timeout occurred
@null 22:06:55

Health Check Name: cofacts.tw
Health Check ID: 26c31cd565ee9448e8cff64528205cd3
Time : 2024-12-17 14:06:37 +0000 UTC
Status: Unhealthy
Failure reason: HTTP timeout occurred
@null 22:10:52

Health Check Name: cofacts.tw
Health Check ID: 26c31cd565ee9448e8cff64528205cd3
Time : 2024-12-17 14:10:37 +0000 UTC
Status: Unhealthy
Failure reason: HTTP timeout occurred
@null 22:14:46

Health Check Name: cofacts.tw
Health Check ID: 26c31cd565ee9448e8cff64528205cd3
Time : 2024-12-17 14:14:27 +0000 UTC
Status: Unhealthy
Failure reason: HTTP timeout occurred
@null 22:20:08

Health Check Name: cofacts.tw
Health Check ID: 26c31cd565ee9448e8cff64528205cd3
Time : 2024-12-17 14:19:47 +0000 UTC
Status: Unhealthy
Failure reason: HTTP timeout occurred
@null 22:23:57

Health Check Name: cofacts.tw
Health Check ID: 26c31cd565ee9448e8cff64528205cd3
Time : 2024-12-17 14:23:38 +0000 UTC
Status: Unhealthy
Failure reason: HTTP timeout occurred
@null 22:26:21

Health Check Name: cofacts.tw
Health Check ID: 26c31cd565ee9448e8cff64528205cd3
Time : 2024-12-17 14:26:01 +0000 UTC
Status: Unhealthy
Failure reason: HTTP timeout occurred
Bin Chang 22:26:49
@idforbin has left the channel
@null 22:28:56

Health Check Name: cofacts.tw
Health Check ID: 26c31cd565ee9448e8cff64528205cd3
Time : 2024-12-17 14:28:38 +0000 UTC
Status: Unhealthy
Failure reason: HTTP timeout occurred
@null 22:34:05

Health Check Name: cofacts.tw
Health Check ID: 26c31cd565ee9448e8cff64528205cd3
Time : 2024-12-17 14:33:48 +0000 UTC
Status: Unhealthy
Failure reason: HTTP timeout occurred
@null 22:36:37

Health Check Name: cofacts.tw
Health Check ID: 26c31cd565ee9448e8cff64528205cd3
Time : 2024-12-17 14:36:18 +0000 UTC
Status: Unhealthy
Failure reason: HTTP timeout occurred
@null 22:41:55

Health Check Name: cofacts.tw
Health Check ID: 26c31cd565ee9448e8cff64528205cd3
Time : 2024-12-17 14:41:38 +0000 UTC
Status: Unhealthy
Failure reason: HTTP timeout occurred
@null 22:45:45

Health Check Name: cofacts.tw
Health Check ID: 26c31cd565ee9448e8cff64528205cd3
Time : 2024-12-17 14:45:28 +0000 UTC
Status: Unhealthy
Failure reason: HTTP timeout occurred
@null 22:48:27

Health Check Name: cofacts.tw
Health Check ID: 26c31cd565ee9448e8cff64528205cd3
Time : 2024-12-17 14:48:08 +0000 UTC
Status: Unhealthy
Failure reason: HTTP timeout occurred
mrorz 22:54:49
Oh no
Linode 明明用 google pay 但卻記著我的舊卡片
但確實是我漏信在先
我換成比較多人都會收的信箱
mrorz 22:54:49
Oh no
Linode 明明用 google pay 但卻記著我的舊卡片
但確實是我漏信在先
我換成比較多人都會收的信箱
@null 22:54:56

Health Check Name: cofacts.tw
Health Check ID: 26c31cd565ee9448e8cff64528205cd3
Time : 2024-12-17 14:54:39 +0000 UTC
Status: Unhealthy
Failure reason: HTTP timeout occurred
@null 22:57:28

Health Check Name: cofacts.tw
Health Check ID: 26c31cd565ee9448e8cff64528205cd3
Time : 2024-12-17 14:57:09 +0000 UTC
Status: Unhealthy
Failure reason: HTTP timeout occurred
mrorz 23:56:07
Back online now
mrorz 23:56:07
Back online now

2024-12-18

@null 22:38:03
今天又出現新的大量垃圾訊息了 最新查核點開都是一樣的垃圾
感謝回報
2024/12/18 的這些 spam 已經拿掉囉,記錄在
https://github.com/cofacts/takedowns/blob/master/2024/0123-spam.md
😲 1
bil 23:39:26
感謝回報
mrorz 23:50:38
2024/12/18 的這些 spam 已經拿掉囉,記錄在
https://github.com/cofacts/takedowns/blob/master/2024/0123-spam.md

2024-12-19

cai 18:57:15
可疑訊息也被二次詐騙洗文章了
結果又有新的XD
Removed
cai 18:57:15
可疑訊息也被二次詐騙洗文章了
結果又有新的XD
Removed
😲 1

2024-12-20

mrorz 13:17:45
@acerxp511 可以 merge 這個囉 https://github.com/cofacts/takedowns/pull/138
Repo environment 應該也是對的

#138 Feature/takedown bot

*Feature* • Use github app to create a takedown pull request, if gemini recognize a reply as second scam(二次詐騙) or sexual content. • Query replies before `REVIEW_REPLY_BEFORE`(format: `{ "seconds":0, "minutes":10, "hours":0, "days":0}`). • Filtered out known users that existed in pervious pr by parsing the pr title. • List the ten more replies written by the suspicious user for the moderator to review and determine if they are a spammer. • Created a `moderators` team for bot to assign pr reviewers(future work). *Created PR* <https://github.com/cofacts/takedowns/pull/141|#141> We can directly copy the payload <https://private-user-images.githubusercontent.com/6376572/394758609-98f1875f-b20e-4e59-a226-85b6f1b2b687.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzQ2NzIxNjcsIm5iZiI6MTczNDY3MTg2NywicGF0aCI6Ii82Mzc2NTcyLzM5NDc1ODYwOS05OGYxODc1Zi1iMjBlLTRlNTktYTIyNi04NWI2ZjFiMmI2ODcucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI0MTIyMCUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNDEyMjBUMDUxNzQ3WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9MDY5NWY4NzU0OTk0MjQxY2U2OTYwMzZiOTA5NDg4ZGVmOGFkMjg5NTdiOWFkMGFiODUwNmNiOTUzM2I3NzMxYiZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ.7d20cW-hTsksJdkRkaKFM_W-KA70TJBWHwETlrkKWiI|takedown pr> *Langfuse* • `ENV` variable for langfuse to tag the generation content. • Do nothing if `LANGFUSE_BASEURL` is not specified. *Github action* • Schedule run every ten minutes but also can be triggered manually • Note: some <https://github.com/orgs/community/discussions/52477|job may be dropped> due to high load • Environment: set `master` branch as production, others as staging <https://private-user-images.githubusercontent.com/6376572/394762515-cfd90d9a-0e01-466a-bf7b-120bff370a32.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzQ2NzIxNjcsIm5iZiI6MTczNDY3MTg2NywicGF0aCI6Ii82Mzc2NTcyLzM5NDc2MjUxNS1jZmQ5MGQ5YS0wZTAxLTQ2NmEtYmY3Yi0xMjBiZmYzNzBhMzIucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI0MTIyMCUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNDEyMjBUMDUxNzQ3WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9MGJhNWZhNDE1NThiMzY2NzVkZWYyMmE1MDAxMmM3MmI0YTkxYmQ1OTY2NWIzMGE0N2M2MWJhMGFkMDRlM2Y4OCZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ.jdhksIyWyS0VML8x_XcoY56_o43HjVv8gcbBpWvvJLo|environment> *Takedown bot setting* <https://docs.github.com/en/apps/creating-github-apps/registering-a-github-app/registering-a-github-app|https://docs.github.com/en/apps/creating-github-apps/registering-a-github-app/registering-a-github-app> • <https://github.com/apps/cofacts-takedown|landing page> • <https://github.com/organizations/cofacts/settings/apps/cofacts-takedown|settings> • is <https://docs.github.com/en/apps/creating-github-apps/registering-a-github-app/making-a-github-app-public-or-private|private> <https://private-user-images.githubusercontent.com/6376572/387290622-30b63dd4-ad32-4627-b418-b0f541644f7f.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzQ2NzIxNjcsIm5iZiI6MTczNDY3MTg2NywicGF0aCI6Ii82Mzc2NTcyLzM4NzI5MDYyMi0zMGI2M2RkNC1hZDMyLTQ2MjctYjQxOC1iMGY1NDE2NDRmN2YucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI0MTIyMCUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNDEyMjBUMDUxNzQ3WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9ZDdjOGFlOTc1YjU0YWJjNTcwZmUyYzFkMjgyNGM3NDg4NmQ3N2U5ZDJlNjg0MzJjNjFiOWFmOTJjZjkyYTA4OCZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ.SuZQ6W7QDhPVZN-pUqO7OQhiVEb_oJAn0IMYRE0amr8|截圖 2024-11-18 晚上11 45 49> • only installed in cofacts/takedown repo <https://private-user-images.githubusercontent.com/6376572/387289925-0d83a78c-21b3-461d-926e-bc65278d32f3.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzQ2NzIxNjcsIm5iZiI6MTczNDY3MTg2NywicGF0aCI6Ii82Mzc2NTcyLzM4NzI4OTkyNS0wZDgzYTc4Yy0yMWIzLTQ2MWQtOTI2ZS1iYzY1Mjc4ZDMyZjMucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI0MTIyMCUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNDEyMjBUMDUxNzQ3WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9MGE2MjM4YzYyZGRkM2Y0ODMxZGI5NjhkMGFiMTlhYWEyNTMxN2I1NTRlZmVhMTZkMjQyNWI4MTE3OWU1MzFmOSZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ.QZGJgeZxtUf_dgch0z237bZT_I78nFe78dRKGLKtsYs|截圖 2024-11-18 晚上11 47 13> *INSTALLATION_ID* <https://private-user-images.githubusercontent.com/6376572/388866497-49f5da4b-4243-4eb3-b568-e3b03b3ec27d.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzQ2NzIxNjcsIm5iZiI6MTczNDY3MTg2NywicGF0aCI6Ii82Mzc2NTcyLzM4ODg2NjQ5Ny00OWY1ZGE0Yi00MjQzLTRlYjMtYjU2OC1lM2IwM2IzZWMyN2QucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI0MTIyMCUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNDEyMjBUMDUxNzQ3WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9MzA3OGFmMjRlNjc1MjQ3Yzg1ZDlhMDMzNmU0NDk4ZjUyZjk4M2YwNjYyNTg2MDQyZGIxMzUzYzk0ZDFmZTY4OCZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ.tCSvj8Xoy8PYAa2cfrjmOj_qSzcV-yV1Gnh80jwa2ZY|截圖 2024-11-22 下午4 42 21> *Authentication with <https://github.com/octokit/auth-app.js/tree/main?tab=readme-ov-file#usage-with-octokit|octokit>* Three parameters needed 1. The ID of your GitHub app 2. A private key for your GitHub app 3. The ID of the installation that you want to authenticate as See <https://docs.github.com/en/apps/creating-github-apps/authenticating-with-a-github-app/authenticating-as-a-github-app-installation#using-octokitjs-to-authenticate-with-an-installation-id|Using Octokit.js to authenticate with an installation ID> for detail.

只是我們要開始努力看 takedown PR 並執行下架⋯⋯ XD
後來發現改成 `4-59/10 * * * *` 還是會掉 action,晚點再發一個新 pr 改用 lastScannedAt
感謝感謝
mrorz 13:17:45
@acerxp511 可以 merge 這個囉 https://github.com/cofacts/takedowns/pull/138
Repo environment 應該也是對的
只是我們要開始努力看 takedown PR 並執行下架⋯⋯ XD
後來發現改成 `4-59/10 * * * *` 還是會掉 action,晚點再發一個新 pr 改用 lastScannedAt
感謝感謝
mrorz 13:18:12
只是我們要開始努力看 takedown PR 並執行下架⋯⋯ XD

2024-12-23

mrorz 13:54:58
今日議程 ⁦https://g0v.hackmd.io/@cofacts/meetings/%2FvtVRnJdBRTeyX9stIEQqPQ

HackMD

Cofacts 會議記錄 - HackMD

# Cofacts 會議記錄 - [搜尋](<https://cse.google.com/cse?cx=71f4f7ee215d54fe6>)[target=_blank] ## 2024 -

2024-12-28

2024-12-29

mrorz 19:25:53
明天沒有周會唷,本週移到周四
👍 1
mrorz 19:25:53
明天沒有周會唷,本週移到周四
mrorz 19:26:43
看起來 AI 回得還不錯