feat(wechat): filter unsafe morning news and assistive trim instead of hard fail

Add content safety filter for adult/junk URLs, strip bad cards without failing drafts, copy-archive on force regenerate, and improve news001/002 WeChat inline layout.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
John
2026-09-23 09:58:35 +08:00
parent c36558e0f3
commit 51604d3962
17 changed files with 727 additions and 59 deletions
@@ -34,6 +34,7 @@ async function ensureDraftConfig(service) {
async function main() {
const dryRun = process.argv.includes('--dry-run');
const allowYesterday = process.argv.includes('--allow-yesterday');
const skipQualityGate = process.argv.includes('--skip-gate');
if (!process.env.DATABASE_URL) {
console.error('DATABASE_URL missing');
process.exit(1);
@@ -59,6 +60,7 @@ async function main() {
console.log(JSON.stringify({
dryRun,
allowYesterday,
skipQualityGate,
sourceUserId: config.sourceUserId,
templateId: config.templateId ?? null,
templateVersion: config.templateVersion ?? null,
@@ -87,7 +89,8 @@ async function main() {
const result = await service.pushDraft({
requireToday: !allowYesterday,
triggeredBy: 'manual-push-now',
triggeredBy: skipQualityGate ? 'manual-push-now-skip-gate' : 'manual-push-now',
skipQualityGate,
});
console.log('\n[success]');
console.log(JSON.stringify({