Commit Graph

245 Commits

Author SHA1 Message Date
john 2e436664ce docs: remove trailing spaces in migration note
Memind CI / Test, build, and release guards (push) Successful in 4m59s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-21 11:04:40 +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 91d5c7a1fd chore(infra): update Studio/103 host IP to 114.85.107.50
Replace all references to the previous Portal host 180.159.29.143 with
114.85.107.50 across release scripts, safety gates, runbooks, and docs.

Also add scripts/push-wechat-news-morning-draft-now.mjs for direct draft
push without waiting on the worker poll interval.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-21 09:49:09 +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 18389a28dc docs: register feature/wechat-push-secret-codes branch disposition
Memind CI / Test, build, and release guards (push) Successful in 3m30s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-20 19:30:15 +08:00
john bb6aa75b3b feat(wechat): add secret codes for morning subscribe and news push
Memind CI / Test, build, and release guards (push) Successful in 4m14s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-20 19:10:27 +08:00
John 1c007999e5 docs: register feature/chat-intent-stage-a and leftover news-morning branch
Memind CI / Test, build, and release guards (push) Successful in 4m39s
Record the merged chat-intent work as closed, and mark the leftover local news-morning branch as not reusable.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-19 21:02:50 +08:00
John a30b62b987 feat(chat-intent): observe routing, keep discuss-first on chat, and escalate short follow-ups
Memind CI / Test, build, and release guards (push) Has been cancelled
Close the chat-session dead zone without flipping production flags: record 0.72 fallbacks, stop C-2 from treating「先聊聊」as execute, and promote「不对你去执行」after a completed direct turn on both h5direct and date sessions.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-19 13:13:17 +08:00
john a15cc66f31 docs: register fix/wechat-schedule-delivery-false-success branch disposition
Memind CI / Test, build, and release guards (push) Successful in 3m42s
Record merge into main and 103 fast release artifact for the WeChat
deferred delivery reminder fix.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-16 21:45:54 +08:00
john 745e9b691d feat(seo): 工作区 public/*.html 默认纳入 SEO 收录
Memind CI / Test, build, and release guards (pull_request) Successful in 3m35s
未点公开发布但已落盘到 public/ 的页面,在无在线非 public 发布阻挡时
合成 implicit public snapshot,注入 canonical/JSON-LD 并扫描进 sitemap。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-16 20:49:20 +08:00
john 607e0d758b docs: register feature/baidu-seo-push branch disposition
Memind CI / Test, build, and release guards (pull_request) Failing after 2m58s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-16 19:25:46 +08:00
john 0f692ab68f docs: register feature/wechat-news-morning-inline-v2 branch disposition
Memind CI / Test, build, and release guards (push) Failing after 4m38s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-16 15:21:55 +08:00
john 96d8e119ed docs: register feature/seo-geo-universal branch disposition
Memind CI / Test, build, and release guards (push) Failing after 2m58s
记录 SEO/GEO 全量能力合并 main 与 103 发布 20260916-103611-8d475087。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-16 10:43:02 +08:00
john acca846856 feat(seo-geo): 全页面 SEO/GEO 回填、统一检查与 Plaza 注入
Memind CI / Test, build, and release guards (pull_request) Failing after 4m17s
引入批量回填与审计工具链,强制 mindspace-geo 元数据,扩展 sitemap/llms 收录 /learn,并为 Plaza 壳页注入 canonical/OG/JSON-LD;本地 593 页已通过 check:mindspace-cover。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-16 09:36:01 +08:00
john 51a32bf6f2 docs: register feature/learn-standalone-pages branch disposition
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-16 09:15:12 +08:00
John b99ddbacee docs: register feature/news-morning-force-archive disposition
Memind CI / Test, build, and release guards (push) Failing after 2m55s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 08:25:22 +08:00
John 0edb3716d5 docs: register feature/news-morning-searxng-prefetch disposition
Memind CI / Test, build, and release guards (push) Has been cancelled
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 08:15:35 +08:00
John d966713d3f docs: register feature/news-morning-fresh-daily disposition
Memind CI / Test, build, and release guards (push) Has been cancelled
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 06:12:07 +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 9862662bb2 docs: register feature/wechat-draft-long-page-errors disposition
Memind CI / Test, build, and release guards (push) Has been cancelled
修复已进入 origin/main,该功能分支改为只读追溯,不再作为开发或发布来源。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-12 12:52:32 +08:00
John 014c3b7981 fix(wechat): 长文推送先留页脚,失败弹窗展示真实原因
Memind CI / Test, build, and release guards (push) Has been cancelled
超过 2 万字时不再把阅读原文和关注区裁掉;公开页错误态不再误报需要登录 MindSpace。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-12 12:51:06 +08:00
John 47cbb4615b docs: register feature/learn-assistant branch disposition
该分支学习助手提交尚未进入 main,登记为禁止再次引用,避免继续阻塞新的开发分支。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-12 12:51:06 +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 b09b269199 chore(infra): migrate 103 production host IP to 180.159.29.143
Update scripts, docs, nginx configs, and release-gate safety checks after the Studio server public IP changed from 58.38.22.103.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 12:28:19 +08:00
john bd44e97f61 docs: close goose-v149-wechat-gate-runbook branch and mark phase3 gate 6
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 15:02:51 +08:00
john 570ecbd1b0 feat(wechat): add WX gate evidence and v1.49 103 cutover runbook
Prioritize scheduled-task intent over page.generate for automation phrases, add run-wechat-gate-evidence.mjs for WX-01..13, and document 103 maintenance-window steps for Goose v1.49.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 15:01:32 +08:00
john fce77f43b1 docs: register cursor/v149-merge-prep-gates branch disposition
Memind CI / Test, build, and release guards (push) Failing after 3m8s
Record merge into main and verification evidence after v1.49 merge-prep closure.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 12:37:04 +08:00
john 695911d1d8 docs(goose-v149): mark merge-prep gates 1-2 complete after v149 push
Memind CI / Test, build, and release guards (push) Has been cancelled
Record tkmind_go upgrade/v1.49-tkmind push and guards:full pass on the closeout checklist.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 12:35:30 +08:00
john 260f2a3038 chore(goose-v149): record consecutive phase3 pass on merge gate
Mark phase3 closeout gate 3 complete after two canary=all GOOSE_V149_PHASE3_OK runs and refresh baseline evidence from run3.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 12:32:22 +08:00
john 4ad04f07f0 chore(goose-v149): refresh merge-prep baselines and fix local build script
Fix build-goosed-v149-local.sh vendor/v8 paths after cd into the v149 worktree,
record phase3/memory drift evidence, and update phase3 closeout gate status.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 12:06:58 +08:00
john b208c4d2bd feat(context): promote local Context Runtime profile to full active
Memind CI / Test, build, and release guards (push) Failing after 3m47s
Add CONTEXT_RUNTIME_ACTIVE_ENV bundle and zero-LLM active probe covering
MCP compact, zvec, and headroom proxy readiness while keeping memory
injection on shadow.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 09:41:55 +08:00
john 3414ae42b1 feat(context): promote MCP compactor to active locally
Memind CI / Test, build, and release guards (push) Has been cancelled
Add active-mode probe script and document mixed shadow/active promotion;
first active switch is MEMIND_MCP_COMPACT_MODE only.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 09:39:32 +08:00
john 0daf40d950 docs(context): note agent memory shadow setup for fusion E2E
Memind CI / Test, build, and release guards (push) Failing after 3m15s
Allow custom shadow portal probe messages and document admin-db steps to
enable recall_fusion_resolved without turning on active injection.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 09:33:47 +08:00
john c7a9d439ca docs: register dsh-executor-local-setup branch disposition
Memind CI / Test, build, and release guards (push) Failing after 3m34s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 09:25:28 +08:00
john f3348f45c0 feat(dev-tools): add shadow portal and dsh gateway local E2E scripts
Add events-only Context Runtime shadow portal verification to save LLM
tokens, wire Tool Gateway → dsh headless smoke, and document both flows.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 09:25:13 +08:00
john c0d43379b8 feat(dev-tools): document dsh install and zero-LLM local checks
Memind CI / Test, build, and release guards (push) Failing after 3m44s
Pin @deepseek-ai/dsh@0.1.1-rc.2 probing in check-dsh-executor-local.mjs,
keep live headless smoke opt-in only, and record the 10k-token approval gate.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 08:50:20 +08:00
john 938f6d6d37 docs: note Homebrew path for codebase-memory-mcp Cursor config
Memind CI / Test, build, and release guards (push) Failing after 34s
Document the ~/.local/bin vs /opt/homebrew/bin mismatch that breaks MCP
connection when install targets a path the global npm binary does not use.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 08:39:41 +08:00
john db3235db8a docs: register codebase-memory-mcp-setup branch disposition
Memind CI / Test, build, and release guards (push) Failing after 2m45s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 08:33:27 +08:00
john 47d0d2accd feat(dev-tools): add codebase-memory-mcp local check and docs
Document MIT dev-tool setup for Cursor code intelligence and add an
offline probe for CLI, Cursor MCP config, and Memind index readiness.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 08:32:56 +08:00
john 2bab7eb62d docs: register context-runtime-shadow-offline branch disposition
Memind CI / Test, build, and release guards (push) Failing after 2m52s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 22:19:09 +08:00
john 478c33376c feat(context): add offline shadow profile and local dev gate
Memind CI / Test, build, and release guards (push) Has been cancelled
Provide context-runtime-profile simulation for gateway shadow events,
run-context-runtime-offline.mjs for zero-LLM verification, and a local
dev guide for user-led shadow self-tests later.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 22:18:47 +08:00
john c6209370d8 docs: register goose-v149-real-llm-gate branch disposition
Memind CI / Test, build, and release guards (push) Failing after 2m25s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 22:10:43 +08:00
john 2fa9523587 feat(goose-v149): add offline phase3 gate without real LLM calls
Memind CI / Test, build, and release guards (push) Has been cancelled
Block unattended DashScope smokes by default and provide a zero-token
merge verification entry via run-goosed-v149-phase3-offline.mjs.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 22:10:19 +08:00
john 67220a14ea fix(goose-v149): block unattended real LLM smokes by default
Prevent phase2/phase3/all reruns from burning DashScope tokens unless
GOOSE_V149_ALLOW_REAL_LLM=1 is explicitly set with human approval.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 22:08:39 +08:00
john 9569d83e58 docs: register mcp-result-compactor branch disposition
Memind CI / Test, build, and release guards (push) Has been cancelled
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 22:05:51 +08:00
john 60a428612c feat(context): add MCP result compactor for tool output shadow path
Memind CI / Test, build, and release guards (push) Has been cancelled
Introduce off/shadow/active compaction for large tkmind read/research and
excel report payloads with optional Redis-backed ctx_fetch handles, keeping
fail-open behavior when storage is unavailable.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 22:05:02 +08:00
john 51c5fc0e18 docs: register goose-v149-local-canary branch disposition
Memind CI / Test, build, and release guards (push) Has been cancelled
Record the merged Context Runtime + Goose v1.49 canary work as closed
so the branch cannot be reused as a development baseline.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 22:02:36 +08:00
john e5dfd8750f Merge branch 'feature/goose-v149-local-canary'
Memind CI / Test, build, and release guards (push) Has been cancelled
2026-09-09 22:01:45 +08:00
john 26ce1241c6 fix(context): repair headroom probe routing and add portal E2E gate
Use the default headroom health probe instead of the goosed fetch adapter
so active mode routes deepseek-no-think through the proxy, and add an E2E
script that verifies goosed pong via headroom with fail-open portal checks.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 22:01:29 +08:00
john fc4ac98e9f feat(context): add dsh executor and headroom active loopback probe
Wire DeepSeek Harness as an optional fourth code executor (default off)
and add a loopback observation script that compares prompt tokens through
headroom proxy with OPENAI_TARGET_API_URL pointed at the compat proxy.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 21:32:57 +08:00