Commit Graph

18 Commits

Author SHA1 Message Date
john dbb16f0678 Include three compact history items in WeChat morning draft inline body.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-24 11:27:40 +08:00
john b1f8fbb6e4 Add major-news anchor prefetch and fix news002 weather WeChat rendering.
Anchor queries boost retrieval for diplomacy, finance, and AI headlines; inline conversion now reads news002 wc/we/wt weather cards so drafts show city forecasts again.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-24 09:25:19 +08:00
john 58003e88a0 feat(news): harden news002 image gate after main merge
Memind CI / Test, build, and release guards (push) Has been cancelled
Reject weak or unreachable source images, auto-promote lead cards for
structure audit, and relax push gates while keeping text-only cards.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-22 09:34:00 +08:00
john 67951c1862 Merge origin/main into feature/news002-searxng-fallback
Integrate news002 image localization and compact wechat layout from main
while keeping SearXNG fallback enrichment in the draft worker.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-22 09:29:05 +08:00
John b74ab4ec46 feat(wechat): news002 草稿左上角小图,配图本地化且缺图保留文字卡
Memind CI / Test, build, and release guards (push) Has been cancelled
微信 inline 与静态页 lead-card 统一为左侧缩略图;远程配图下载到当日 public/ 后再上传微信素材。SearXNG 预取与配图 enrichment 链路同步收紧,禁止默认占位小图删卡。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-22 07:36:20 +08:00
john b53ee25738 fix(news): hide imageless news002 cards and prune empty sections
Drop story cards without real images from HTML and WeChat drafts instead
of showing ph placeholders, and remove emptied sections for layout balance.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-21 16:42:50 +08:00
john 6a88b98044 feat: enforce real imagery for news002
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-21 11:03:55 +08:00
john 5708b333cc feat(news): add news002 morning-report template with dedup gate and card images
Freeze the 2026-09-18 layout as news001 and add news002 alongside it.

Analysis of the 0918 production page found 49 news cards covering only ~20
distinct events (4x "王毅同鲁比奥通电话", 5x "东博会南宁开幕"), citing just 7
URLs that are all section landing pages rather than article permalinks, with
zero images. The root cause is structural: 23 fixed sections with fixed card
quotas force padding when the day yields fewer events.

news002 changes the contract so events decide sections, not the reverse:
core sections always render, flex sections are dropped entirely when they have
no unused event, total story cards are capped at 28, and every card carries a
data-event-key fingerprint.

Add wechat-news-morning-dedup.mjs as a post-generation gate, since the prompt
level "no duplicates" rule is unverifiable. It dedupes by event key, then by
article permalink (deliberately ignoring section landing pages, which would
otherwise delete most of the page), then by CJK bigram title similarity, since
the existing whitespace-tokenised matcher does not work on Chinese titles.

Carry per-item images through normalizeSearchResult into the prefetch brief so
cards can render real article thumbnails with a placeholder fallback.

Teach the WeChat inline converter both DOM variants (lead-card, masthead meta,
lede). Per-card images in the WeChat draft body remain a known gap.

Template selection is config/env driven and still defaults to news001.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-21 09:19:41 +08:00
John e962d86ba5 feat(news-morning): enable comments, compact WeChat layout and SEO spec
Default open WeChat draft comments, add SEO/visual template rules with h2 sections and mindspace-geo, and compress inline styles to pack more cards within the 20k HTML budget.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-18 09:29:30 +08:00
John 9ae35f38e1 fix(news-morning): drop hot section and WeChat stats row
Remove the trending/hot search lane and section, forbid stats summary in page spec, and stop injecting card/section counts into WeChat inline articles.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-18 09:00:46 +08:00
John af0282e963 feat(news-morning): add full-tier channels with cross-group dedupe
Expand daily briefing prefetch and template to cover Asia-Pacific, commodities, AI/chips, policy, community, science, culture, startup, crypto, geopolitics, cities and wire feeds, with URL/title deduplication across sections.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-18 08:12:10 +08:00
john b8bcbcb764 feat(wechat): 早报草稿改用内联模板并去掉正文大封面
让定时任务按新版式推送草稿:热门旅游城市天气、无 Hero logo,并约束生成页必须写城市天气卡。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-16 15:20:44 +08:00
john b6d85d487a Update WeChat draft follow template
Memind CI / Test, build, and release guards (push) Failing after 2m51s
2026-09-14 15:36:40 +08:00
john d8eaef3fbd feat(wechat): MindSpace public draft push with 143 host defaults
Add public-page WeChat draft button, publication standard conversion for poem/prose/generic pages, and quick push APIs. Default Studio release SSH targets to john@180.159.29.143 with 105 edge upstream via 10.10.0.2.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 12:32:13 +08:00
john bfe8bac00c fix(wechat): reserve space for uploaded follow QR in draft body
Memind CI / Test, build, and release guards (push) Failing after 5m35s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 09:47:51 +08:00
john 6915b2da74 feat(wechat): refine daily news draft layout and follow QR block
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 09:47:51 +08:00
john 0f9d69bfda fix(wechat): add fallback trim profiles for 20k content limit 2026-09-10 09:47:51 +08:00
john 09008a7b55 feat(wechat): add news morning draft inline HTML converter
Push daily-news pages to WeChat drafts as inline-styled HTML instead of
full-page long images, with automatic trimming to stay within the 20k limit.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 09:47:51 +08:00