Commit Graph

208 Commits

Author SHA1 Message Date
john 8f91c52c67 feat(help): add cursor help escalation worker and chat bridge
Introduce help escalation persistence, cursor help worker processing,
optional OpenAI-compatible chat bridge, and page delivery remediation.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-27 09:33:49 +08:00
john ad6dcc283f feat(cursor): wire executor through portal, admin, and wechat routes
Register cursor in LLM executor bindings, route page/code tasks through
cursor runtime selection, and bootstrap wechat cursor policy services.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-27 09:33:47 +08:00
john 9332bacabd feat(router): improve direct_chat fast-path and add 103 token env sync
Memind CI / Test, build, and release guards (push) Failing after 12m44s
Route explicit text-only Q&A away from Agent before page-generation rules,
and add a script to enable Router + tighter memory budgets on 103 without
changing the global deepseek-v4-pro model.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 15:13:22 +08:00
john 9dfafb99ca fix(schedule): harden reminder utterance routing for WeChat ITL
Memind CI / Test, build, and release guards (push) Successful in 3m43s
Expand ASR normalization and colloquial reminder parsing so simple timed reminders route to L1 confirm cards instead of the agent, and disable schedule-guard false failures when ITL is enabled.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-24 18:02:19 +08:00
john d58dc2a251 feat(wechat): add Intent Transaction Layer with unified task schema
Introduce Draft → Confirm → Commit flow for WeChat schedule intents behind
feature flags, plus h5_tasks dual-write/read aggregation and rollout scripts
so reminders and automations get explicit user confirmation before persisting.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-24 15:59:17 +08:00
john b93c92a3e2 test(scenario): cover multi-image page generation end to end
Memind CI / Test, build, and release guards (push) Failing after 14m27s
The read_image poisoning fix had no end-to-end guard because scenarios could
only send text. Add an upload_images step that renders and uploads visually
distinct images, let chat steps attach them the same way the WeChat channel
does, and assert the generated page actually embeds every upload.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-22 10:50:23 +08:00
john f57e080b49 docs(ops): register wechat delivery fix branch and add manual resend scripts
Memind CI / Test, build, and release guards (push) Successful in 3m44s
Document branch disposition after 103 release, and add standalone/manual
helpers to resend scheduled-task WeChat delivery when reconcile cannot replay.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-17 22:35:16 +08:00
john 0a7b2df5fe docs(release): close production-inspection-fixes branch and add standalone repair script
Memind CI / Test, build, and release guards (push) Successful in 3m8s
Register branch disposition after 103 deploy/repair, and add a lightweight
103 repair script that avoids heavy runtime module imports.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-16 08:59:19 +08:00
john 843e4d1002 fix(prod): dedupe scheduled tasks and reconcile orphan delivery contracts
Memind CI / Test, build, and release guards (push) Successful in 2m58s
Prevent duplicate active scheduled tasks, fail static preparing contracts
when HTML is missing, raise MindSpace remote timeout default to 30s, and
add 103 repair scripts for inspection follow-ups.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-16 08:52:16 +08:00
john 835677a285 feat(release): add standard and fast 103 portal release modes
Formalize fast release as --mode fast so verified changes can skip canary promotion and full Gate reruns while keeping backups and health checks.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-15 08:03:44 +08:00
john b97f607817 fix(canary): drop Docker preflight on native 103 goosed
Memind CI / Test, build, and release guards (push) Failing after 2m35s
103 no longer runs goosed-prod Docker. Canary preflight now checks the
native 18006-18014 pool, and release-gate tests match 127.0.0.1 health probes.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-14 22:42:23 +08:00
john e59809eff4 fix(canary): share the native 103 goosed pool instead of Docker
Memind CI / Test, build, and release guards (push) Failing after 2m40s
103 retired Docker goosed on 2026-07-30. Portal canary now health-checks
18006-18014 and inherits those targets, instead of requiring goosed-prod-1.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-14 22:35:58 +08:00
john fd56f087c6 fix(canary): reuse the healthy shared DeepSeek proxy on 18036
Memind CI / Test, build, and release guards (push) Failing after 2m48s
Stable 103 already runs deepseek-no-think on 18036. Require that contract
instead of demanding a free port, so canary install does not fight production.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-14 22:23:07 +08:00
john 2f240e7500 fix(release-gate): skip duplicate CI work and stop live LLM blowups
Shared paths like db.mjs were pulling PAGE/DATA live agent suites into every
hotfix. Keep those cases for actual page-data changes, resume passed suites on
the same artifact, and fail fast on Docker/port issues instead of rerunning 100+
scenarios.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-14 22:15:16 +08:00
john 443544d1f7 fix(h5): show TKMind as the user-facing product name
Memind CI / Test, build, and release guards (push) Has been cancelled
Keep the chat chrome, page title, and related copy aligned with the existing TKMind brand.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-14 09:42:50 +08:00
john 6542a43495 fix(release): bundle memind-runtime-profile for WeChat menu scripts
Memind CI / Test, build, and release guards (push) Successful in 5m55s
load-env.mjs depends on memind-runtime-profile.mjs; include it in portal
runtime packaging so wechat-mp-menu.mjs works on 103 without manual scp.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-12 16:23:54 +08:00
john e9ea55cf5e chore(wechat): rename service account menu label TKMind to Memind
Memind CI / Test, build, and release guards (push) Successful in 5m30s
Align the first WeChat custom menu button with the Memind product name before direct 103 release.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-12 16:03:51 +08:00
john 421e204711 feat(mindspace): add achievements showcase with paginated management
Memind CI / Test, build, and release guards (push) Successful in 3m28s
Ship the M成果 page with list/delete UX, fix deletePage for incomplete page records, route /space/achievements, and add M成果 under the WeChat M空间 menu.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-12 15:21:42 +08:00
john c58a23d155 fix(scheduled-task): improve live verify and short delivery acceptance
Memind CI / Test, build, and release guards (push) Failing after 12h5m29s
Extend live verify wait budget to cover Agent execution timeout, use a
deterministic smoke taskSpec, and accept concise successful replies like
「验证成功」 instead of treating them as non-delivery.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-10 22:41:29 +08:00
john c7832e1869 fix(verify): ceil scheduled task runAtLocal to next minute
Memind CI / Test, build, and release guards (push) Failing after 2m45s
Avoid flaky verify failures when truncating sub-minute offsets into the past.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-10 21:42:31 +08:00
john 049d8a6f80 fix(scheduled-task): enable worker by default and add WeChat preflight
Memind CI / Test, build, and release guards (push) Has been cancelled
Scheduled automations were saved but never executed because the worker
required an explicit env flag. Follow H5_REMINDER_WORKER_ENABLED when unset,
add WeChat preflight to write tasks deterministically, and surface worker
warnings on create.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-10 19:32:09 +08:00
john fde6503bdf feat(mindspace): add SEO/GEO delivery, page template catalog, and admin hooks
Memind CI / Test, build, and release guards (push) Has been cancelled
Enable optional SEO/GEO injection and discovery routes for confirmed public pages while keeping private pages noindex. Add premium page template skills, portal catalog API, template shop UI, and Baidu push gated by memind_adm config.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-10 08:06:12 +08:00
john 8c1ae7550d fix(billing): read Goose accumulated_cost from PostgreSQL fallback
Goosed GET /sessions/:id returns accumulated_cost null while memind_sessions
PG has the real upstream cost. Fall back to PG before token estimate billing.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-05 15:48:39 +08:00
john e7f0627dc9 fix(billing): prefer Goose session cost over token estimate
Billing fell back to inflated token list-price estimates when Finish
frames carried inline accumulatedCost, causing ~70x overcharge vs DeepSeek.
Always fetch session accumulated_cost first; add Aug 4+ compensation script.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-05 09:52:13 +08:00
john c2189ee30d fix(release): restart native goosed pool after Portal live swap on 103
103 production uses launchd goosed-native instead of Docker bind mounts;
fall back to kickstarting native services when docker compose is unavailable.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-03 16:50:54 +08:00
john 147734870b fix(release-gate): stabilize browser smoke UI-08 console check
Memind CI / Test, build, and release guards (push) Failing after 12s
Drop optional cover meta from the fixture and scope UI-08 console errors to
the final public-page view so chat /api/goals polling does not fail the gate.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-03 15:24:53 +08:00
john 599f23521f fix(release): accept active launchctl state for portal tunnel preflight
Memind CI / Test, build, and release guards (push) Failing after 3s
Tunnel agents can report spawn scheduled while the SSH forward is already
healthy; treating that as failure caused successful releases to roll back.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-02 20:40:37 +08:00
john 7e26b459bc fix(page-data): scope WeChat delivery verification to newly bound pages
Memind CI / Test, build, and release guards (push) Failing after 4s
Historical workspace Page Data HTML was failing delivery smoke checks and
blocking new survey links from reaching WeChat users. Add a webhook scenario
test script for 103 regression runs.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-02 20:32:03 +08:00
john cdc265d7e0 fix(agent-run): tolerate goosed stdio MCP listing gaps during session reconcile.
Memind CI / Test, build, and release guards (push) Failing after 4s
Skip hot-adding stdio extensions goosed omits from /extensions, stabilize MCP
scope during session start, and wire chat intent routing into the agent-run worker.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-01 20:02:33 +08:00
john 6f3e53a56a feat(memory-v2): close Phase A with auto-review, product events, and H5 recall UI.
Add candidate auto-review pipeline, shadow audit tooling, admin metrics page,
and user-visible memory recall hints in chat with phase-a readiness checks.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-01 17:14:06 +08:00
john 666db0b939 feat(goal-run): add multi-checkpoint goal orchestration with H5 and admin surfaces.
Persist goal runs in MySQL, bind agent runs to checkpoints, expose awaiting-approval
UX in chat, and add admin inspection routes with local verify scripts.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-01 17:03:16 +08:00
john 43bc8bbc2b feat(h5): add LLM intent router admin controls and shadow verification.
Expose shadow/canary router policy in ops admin, add FAQ rule fast-path,
and tighten router defaults (1200ms timeout, 0.65 confidence).
Includes verify-h5-llm-router-shadow for production canary rollout.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-01 16:48:01 +08:00
john 81e63c16d3 Add scheduled task automation skill with worker execution pipeline.
Memind CI / Test, build, and release guards (push) Failing after 18s
Introduce scheduled-task-automation for H5 and WeChat, persist tasks in h5_scheduled_tasks, and run due jobs via a dedicated worker that executes agent tasks and delivers results.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-31 08:02:49 +08:00
john 78e5a6c026 feat(ops): add imgproxy native runtime tooling and record 103 deployment
Memind CI / Test, build, and release guards (pull_request) Failing after 18s
Bundle vendored imgproxy with Mach-O dylibs for 103 launchd, fix install to exec the binary directly with launchctl enable, and document the live native release in the runtime topology.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-31 05:38:14 +08:00
john 08ea5e05a9 fix(ops): restore stop_docker_pool_keep_standby function in migrate script
Memind CI / Test, build, and release guards (pull_request) Has been cancelled
Repair a bash syntax error introduced when adding monitor and DeepSeek proxy phases.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-30 20:38:50 +08:00
john 0dfb2e2b82 docs(ops): record 103 goosed native migration and add migrate tooling
Memind CI / Test, build, and release guards (pull_request) Has been cancelled
Document the completed Docker-to-native goosed pool cutover on 103, add the production migrate script with backup/rollback paths, and extend local native pool soak/metrics helpers used as migration gates.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-30 20:24:22 +08:00
tkmind b549a390fe Merge pull request 'feat(mindspace): add page quota grace write and local delivery guardrails' (#41) from codex/mindspace-page-quota-delivery into main
Memind CI / Test, build, and release guards (push) Has been cancelled
2026-07-30 02:56:45 +00:00
tkmind 418406517f Merge pull request 'fix(release-gate): isolate PAGE agent runs from split-service MCP routing' (#40) from codex/release-gate-page-agent-isolation into main
Memind CI / Test, build, and release guards (push) Has been cancelled
2026-07-30 02:56:28 +00:00
john 371900bae5 feat(mindspace): add page quota grace write and local delivery guardrails.
Memind CI / Test, build, and release guards (pull_request) Failing after 18s
Centralize page HTML quota checks with grace-write semantics across page
services and workspace tools, keep localhost MindSpace links clickable in
chat display, and expand Page Data/static-page skill plus local dev docs
for quota, delivery URLs, and native Aider/OpenHands tooling.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-30 10:44:26 +08:00
john d67ebb0c77 fix(release-gate): isolate PAGE agent runs from split-service MCP routing.
Memind CI / Test, build, and release guards (pull_request) Failing after 17s
Gate stacks inherited developer MCP env and routed sandbox-fs writes to the
8082 workspace root, so PAGE/DATA scenarios failed with ENOENT despite a
healthy goosed. Sanitize isolated portal env, grant gate skills, and align
CHAT search assertions with the tkmind_search tool name.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-30 10:43:28 +08:00
john df5bcd87b5 fix: route stable production goosed through DeepSeek no-think proxy
Memind CI / Test, build, and release guards (pull_request) Failing after 18s
DeepSeek V4 tool rounds fail with reasoning_content errors when stable
goosed hits api.deepseek.com directly. Default stable portal startup to
the 18036 compat proxy and add a standalone recovery script for 103 ops.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-30 10:43:26 +08:00
john b553107817 fix: make goosed remount health ignore canary
Memind CI / Test, build, and release guards (push) Failing after 1m25s
Stable remount checks required exactly 9 compose containers, but the
shared goosed-prod project also runs canary. Count only goosed-1..9 and
verify the /opt/portal bind plus a root marker under the live runtime.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-28 18:34:28 +08:00
john 065b1588b7 fix: deliver WeChat pages when image_make fails
Fall back to workspace share thumbnails so already-published HTML can be
sent instead of blocking on REQUIRED_FRESH. Also allow an explicit
ALLOW_DIRECT_STABLE_RELEASE path matching the pre-2026-07-23 direct
stable packaging flow.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-28 18:19:29 +08:00
john 7eedda092d fix: broaden WeChat session page continuation phrasing
Memind CI / Test, build, and release guards (push) Successful in 2m37s
Recognize retry, HTML page, page edits, and poem content edits as session continuations so delivery skips fresh-thumbnail forcing and retains agent context for multi-turn page work.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-28 16:54:42 +08:00
john 7a381db132 refactor: make production gate impact only
Memind CI / Test, build, and release guards (push) Has been cancelled
2026-07-28 01:13:28 +08:00
john 8cd85a9b11 fix: pin Aider binary for portal canary
Memind CI / Test, build, and release guards (push) Has been cancelled
2026-07-28 01:01:03 +08:00
john 1e91195853 fix: enable WeChat Page Data review in canary
Memind CI / Test, build, and release guards (push) Has been cancelled
2026-07-28 00:38:18 +08:00
john 7ba63a83b1 fix: split portal canary backup preflight
Memind CI / Test, build, and release guards (push) Successful in 1m40s
2026-07-27 23:22:05 +08:00
john 82b74d71ad fix: relax REL release gate checks for normal Portal publishes
Memind CI / Test, build, and release guards (push) Failing after 1m35s
Ignore local .runtime build output in REL-01, accept missing Gitea CI when
origin/main matches HEAD, and compare two clean runtime rebuilds for REL-03.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-27 22:26:01 +08:00
john 48c61a3279 fix: harden long conversation continuity
Memind CI / Test, build, and release guards (push) Successful in 1m28s
2026-07-27 21:39:34 +08:00