872 Commits

Author SHA1 Message Date
john 03089a12ce feat(portal): default to dark theme for new visitors
Memind CI / Test, build, and release guards (push) Successful in 3m11s
First-time and cleared-storage users see dark mode; saved light preference is unchanged. Inline boot script avoids a light flash before React loads.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 11:33:39 +08:00
john 1f6e8c9bad feat(wechat): expose today news morning status and strict preview APIs
Memind CI / Test, build, and release guards (push) Failing after 6m14s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 08:52:58 +08:00
john 62caf4134b feat(wechat): add Portal worker for daily news morning draft auto push
Run scheduled page generation before push time and write WeChat drafts from admin config so news morning reports no longer require manual pushes.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 08:48:02 +08:00
john 93aa35515e fix(release): parse nested agent-run status JSON during drain
Memind CI / Test, build, and release guards (push) Successful in 5m3s
Non-greedy brace regex missed the queue object when worker status output contains nested JSON; scan balanced objects from the end instead.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 20:31:17 +08:00
john 222815ebba test(release-gate): assert queue-aware agent-run status parsing
Memind CI / Test, build, and release guards (push) Successful in 4m54s
Update release script regression test to match the drain helper that selects the JSON block containing queue.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 20:23:03 +08:00
john f6c9256fbc fix(release): parse agent-run status JSON when worker emits multiple blocks
Memind CI / Test, build, and release guards (push) Has been cancelled
Release drain was timing out because --status now prints a preamble JSON blob without queue; pick the object that contains queue instead of sed from the first brace.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 20:20:06 +08:00
john 3e6b0c262a feat(portal): add light/dark theme sync and OA drive navigation
Memind CI / Test, build, and release guards (push) Successful in 4m31s
Unify chat and OA drive appearance with shared memind-theme storage, default light mode, and cross-frame sync so users can switch themes from chat or the drive shell.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 20:10:06 +08:00
john 97a3e89ff7 fix(mindspace): repair OA drive JSON body parsing and trash paths
Express already parses JSON request bodies, so drive handlers must read req.body directly. Also fix nested trash item original-path parsing to match file-drop-sync behavior.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 19:04:27 +08:00
john 6d5eb15b1b feat(mindspace): add per-user OA cloud drive with fds-style file manager
Expose authenticated /api/mindspace/v1/oa/drive APIs over each user's oa/ workspace and wire a MindSpace entry at /space/oa/drive.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 18:55:46 +08:00
john d07815d317 feat(wechat): update subscribe welcome plaza picks to curated pages
Memind CI / Test, build, and release guards (push) Successful in 6m17s
Replace category links with Xinjiang travel, Plaza late-night food, and creative landing pages; sync missing E2E deps on 103 runtime.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 18:03:27 +08:00
john 55860a688c fix(page-data): wrap sync getDataset before catch in saveOwnerPolicy
Memind CI / Test, build, and release guards (push) Successful in 5m8s
SQLite returns a plain value from getDataset; calling .catch on it broke password policy saves and blocked release guards.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 17:39:04 +08:00
john e42417bd6e feat(wechat): add subscribe morning reminder, plaza welcome, and LLM fallback
Enable daily morning greeting on reply 1 (with custom time, modify, and cancel),
random greeting delivery, M发现 in subscribe welcome, and optional LLM parsing when
rules miss. Also fix WeChat MP draft/config error passthrough and add Tang E2E scripts.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 17:32:10 +08:00
john 78b7d546c2 feat(mindspace): add WeChat MP config and one-click draft push on publish.
Let users bind their own official account credentials in M 配置 and push MindSpace pages to the WeChat draft box during or after publish, reusing the existing draft conversion pipeline.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 16:43:25 +08:00
john 3bc2442769 Merge branch 'feature/goose-v149-pool-103-script'
Memind CI / Test, build, and release guards (push) Failing after 3m52s
2026-09-10 15:32:39 +08:00
john 5b314ec9fd feat(goose-v149): add 103 full pool switch script with rollback
Switch native 18006-18014 from goosed agent 1.41 to goose serve 1.49; harden Portal restart during canary teardown.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 15:32:39 +08:00
john 8a66a931f4 Merge branch 'feature/ignore-103-baselines'
Memind CI / Test, build, and release guards (push) Failing after 2m11s
2026-09-10 15:28:25 +08:00
john 21d980fc15 chore: gitignore local 103 baseline captures
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 15:28:24 +08:00
john e885970411 Merge branch 'feature/goose-v149-103-canary-scripts'
Memind CI / Test, build, and release guards (push) Has been cancelled
2026-09-10 15:27:49 +08:00
john 96176ff280 feat(goose-v149): add 103 canary install and Portal routing scripts
Install v1.49 on loopback :18015 beside stable native pool and toggle TKMIND_GOOSE_CANARY on production .env for user-scoped cutover.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 15:27:48 +08:00
john db90ca7766 Merge branch 'feature/goose-v149-wechat-gate-runbook' (disposition)
Memind CI / Test, build, and release guards (push) Failing after 2m39s
2026-09-10 15:02:51 +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 baff51e2dc Merge branch 'feature/goose-v149-wechat-gate-runbook'
Memind CI / Test, build, and release guards (push) Has been cancelled
WX gate evidence, scheduled-task routing fix, and Goose v1.49 103 cutover runbook.
2026-09-10 15:01:44 +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 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
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