cofacts / rumors-api

GraphQL API server for clients like rumors-site and rumors-line-bot
https://api.cofacts.tw
MIT License
109 stars 26 forks source link

feat(blockUser): changes spammer's article status when blocking an user #295

Closed MrOrz closed 1 year ago

MrOrz commented 1 year ago

Design doc: https://g0v.hackmd.io/XBJS-KEtScWyVCuQ9P_iNQ#M2-Script-for-setting-article-status

This PR modifies block user script so that it can set spammer's article status to "blocked"

coveralls commented 1 year ago

Coverage Status

Coverage: 88.003% (+0.02%) from 87.984% when pulling 1e89a1c54cfe7328bdd70ba7c5d1189f62cb32e3 on anti-seo-m2 into a4e24ec02c504d90e2fd77ac9e31e8340e81f260 on master.

MrOrz commented 1 year ago

Deployed to staging and test on user j4S8C_PM1BJIZ1acF-VZZPmA9Zm8AZUZC7Va2k1uN5p8CK23k (See user's reported articles https://old.cofacts.tw/articles?searchUserByArticleId=2ker4s3fv5rv2&filter=all&replyRequestCount=1 )

Sample article after migration: 2ker4s3fv5rv2

Execution result

$ docker-compose exec cofacts-api-staging node build/scripts/blockUser --userId=j4S8C_PM1BJIZ1acF-VZZPmA9Zm8AZUZC7Va2k1uN5p8CK23k --blockedReason=xxx
Article status update result {
  took: 89,
  timed_out: false,
  total: 1,
  updated: 1,
  deleted: 0,
  batches: 1,
  version_conflicts: 0,
  noops: 0,
  retries: { bulk: 0, search: 0 },
  throttled_millis: 0,
  requests_per_second: -1,
  throttled_until_millis: 0,
  failures: []
}
Reply request status update result {
  took: 43,
  timed_out: false,
  total: 1,
  updated: 1,
  deleted: 0,
  batches: 1,
  version_conflicts: 0,
  noops: 0,
  retries: { bulk: 0, search: 0 },
  throttled_millis: 0,
  requests_per_second: -1,
  throttled_until_millis: 0,
  failures: []
}
Updating 1 articles...
[1/1] article 2ker4s3fv5rv2: changed to 1 reply requests, last requested at 2022-08-23T09:34:00.343Z
(...omitted...)