Commit Graph

683 Commits

Author SHA1 Message Date
john 6ba95c6229 fix(scheduled-task): reject meta-only phrases in taskSpec parsing
Memind CI / Test, build, and release guards (push) Successful in 7m31s
Treat hollow requests like「我要做一个定时执行任务」as missing taskSpec so
WeChat preflight asks for both schedule and executable content instead of
accepting「执行」as a deliverable task description.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-12 01:36:38 +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 2313d76eed fix(seo): join h5_page_records in indexable publication queries
Memind CI / Test, build, and release guards (push) Successful in 8m43s
Prevent Portal crash when sitemap/llms discovery runs against production schema.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-10 09:53:45 +08:00
john 943dad5221 test(portal): mock template catalog bootstrap in auth service tests
Memind CI / Test, build, and release guards (push) Failing after 7m56s
Fix canary release source guards that match publish|space|billing tests.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-10 09:36:51 +08:00
john c3e6d4ee31 fix(session-broker): ignore release-gate artifacts in coverage scan
Memind CI / Test, build, and release guards (push) Failing after 6m29s
Prevent stale Gate local stacks from blocking h5-session verify during production release.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-10 09:20:31 +08:00
john 7a08c0f6ae test(portal): expect templateCatalogService in agent runtime route deps
Memind CI / Test, build, and release guards (push) Failing after 7m58s
Align route contract test with the page template catalog dependency wiring.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-10 08:25:53 +08:00
john 0796a7bf22 fix(release-gate): map page-template and admin-server impact paths
Memind CI / Test, build, and release guards (push) Failing after 7m22s
Unblock production Gate selection for the page template catalog and SEO release.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-10 08:07:33 +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 7c65540366 Rename user-facing product label from TKMind to Memind.
Memind CI / Test, build, and release guards (push) Failing after 3m8s
Centralize the display name so nav, login, and page chrome stay consistent ahead of the 103 release.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-07 19:24:09 +08:00
john 5db7478c98 test(wechat-mp): expect stdio restore during session reconcile
Memind CI / Test, build, and release guards (push) Successful in 8m19s
Reconcile now re-adds missing sandbox-fs before reply; update the dedicated
session test to assert add_extension and restart are invoked.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-07 15:49:57 +08:00
john d523b9595d fix(session): restore sandbox-fs after agent-run quiesce
Agent runs quiesced stdio MCP extensions including sandbox-fs, but reconcile
skipped re-adding missing stdio extensions and treated absent listings as OK.
Preserve sandbox-fs across quiesce and re-add other required stdio extensions
on the next reconcile so generate_image and write_file stay available.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-07 15:49:04 +08:00
tkmind 49ff7c9bad feat(billing): record subscription-covered token usage in usage records (#46)
Memind CI / Test, build, and release guards (push) Successful in 2m52s
2026-08-06 10:52:55 +00:00
tkmind 7c18c998bd Merge pull request 'fix(billing): mock billing admin config in auth bootstrap tests' (#45) from fix/billing-admin-config-bootstrap-tests into main
Memind CI / Test, build, and release guards (push) Successful in 4m9s
2026-08-06 09:08:17 +00:00
john 07a88eb194 fix(billing): mock billing admin config in auth bootstrap tests
Memind CI / Test, build, and release guards (pull_request) Successful in 7m24s
Portal canary source guards were failing because bootstrap tests used a stub pool without query.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-06 17:05:44 +08:00
tkmind 8e4fc09cb5 Merge pull request 'feat(billing): make metering formula admin-configurable' (#44) from feature/billing-formula-admin-config into main
Memind CI / Test, build, and release guards (push) Failing after 2m1s
2026-08-06 09:00:04 +00:00
john 391ba0b705 feat(billing): make metering formula admin-configurable
Memind CI / Test, build, and release guards (pull_request) Failing after 1m29s
Allow margin/FX/cost-mode knobs to be overridden via h5_billing_admin_config so memind_adm can adjust DeepSeek billing without editing env.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-06 16:55:09 +08:00
tkmind c44017eccd Merge pull request 'fix(analytics): include username on page_generated events' (#43) from fix/analytics-page-generated-username into main
Memind CI / Test, build, and release guards (push) Successful in 4m17s
2026-08-06 07:32:03 +00:00
john b300cb5e04 fix(analytics): include username on page_generated events
Memind CI / Test, build, and release guards (pull_request) Successful in 5m34s
Umami creator labels read event_data.username; server events only sent
owner_label, so dashboards fell back to MindSpace UUID path segments.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-06 15:25:09 +08:00
john 26846a0274 feat(wechat): add WeChat voice reco API fallback for service account
Memind CI / Test, build, and release guards (push) Successful in 3m27s
When passive Recognition is empty, convert AMR to mp3 and call WeChat
addvoicetorecofortext before the existing asr.tkmind.cn fallback.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-05 18:01:50 +08:00
john d9db72fd90 fix(billing): use admin_adjust ledger reason for setImageQuota
Memind CI / Test, build, and release guards (push) Successful in 4m19s
Production ledger reason column is ENUM and rejects admin_set.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-05 16:24:24 +08:00
john f488d49d51 fix(billing): add setImageQuota for admin absolute remaining/total
Memind CI / Test, build, and release guards (push) Has been cancelled
Grant-only bonus adjustments cannot lower capacity below the stored plan
limit; admin set now updates period_images_limit when needed.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-05 16:21:07 +08:00
john fda90d8579 merge: billing PG session cost fallback
Memind CI / Test, build, and release guards (push) Successful in 17m14s
2026-08-05 15:48:44 +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 e2014e05e6 fix(analytics): stop identifying Public visitors as page creators
Public generated pages were calling umami.identify(owner_id), collapsing
every visitor into the creator session. Anonymous visits now skip identify;
logged-in viewers identify with their own distinct id.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-05 13:05:18 +08:00
john 9e50681d96 merge: billing branch disposition registration
Memind CI / Test, build, and release guards (push) Failing after 10m24s
2026-08-05 10:04:02 +08:00
john eb8eedb07f docs: register billing session cost fix branch disposition
Record closure of feature/billing-session-cost-priority after merge to main
and 103 release 20260805-095542-44121df.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-05 10:04:02 +08:00
john 44121df83c merge: billing session cost priority and compensation script
Memind CI / Test, build, and release guards (push) Has been cancelled
Fix inflated token-estimate overcharge by preferring Goose accumulated_cost;
includes Aug 4+ user compensation tooling.
2026-08-05 09:53:10 +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 1e7004dffe fix(wechat): apply agent timeout and Page Data review to all users
Memind CI / Test, build, and release guards (push) Failing after 10m39s
Remove per-user gray gates so WeChat MP always honors agentReplyTimeoutMs and enables Page Data Aider review when the feature flag is on.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-05 09:32:27 +08:00
john 089a44fb11 docs: close codex/flux-schnell-workflow-kind after main rollback release
Memind CI / Test, build, and release guards (push) Successful in 4m25s
Register the abandoned flux branch as non-reusable after 103 returned to main @ 6a48e0a.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-04 20:48:49 +08:00
john 6a48e0ad91 merge: native goosed remount for Portal release
Memind CI / Test, build, and release guards (push) Successful in 4m59s
2026-08-03 16:50:54 +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 2cc98b9392 merge: retrigger CI on host runner
Memind CI / Test, build, and release guards (push) Successful in 7m3s
2026-08-03 16:12:39 +08:00
john 2f4dd39181 ci: retrigger on host-mode runner
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-03 16:12:36 +08:00
john 4e66c43350 merge: retrigger CI after runner wrapper
Memind CI / Test, build, and release guards (push) Failing after 2s
2026-08-03 16:11:09 +08:00
john 85872e1e84 ci: retrigger after runner wrapper fix
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-03 16:11:06 +08:00
john 93aa7c1cfa merge: retrigger CI after runner recovery
Memind CI / Test, build, and release guards (push) Failing after 8s
2026-08-03 16:06:09 +08:00
john 49c2671845 ci: retrigger workflow after runner and Colima recovery
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-03 16:06:07 +08:00
john 5cebd1121e merge: map Gitea workflows as non-runtime for release gate
Memind CI / Test, build, and release guards (push) Failing after 7s
2026-08-03 15:50:29 +08:00
john 492bf6fbb4 fix(release-gate): treat Gitea workflow files as non-runtime impact paths
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-03 15:50:26 +08:00
john 1d1af888e9 merge: fix CI for macOS self-hosted runner and AUTH-08 flake
Memind CI / Test, build, and release guards (push) Failing after 5s
2026-08-03 15:47:27 +08:00
john 4ebe7c76aa fix(ci): support memind-ci-mac runner and stabilize acceptance HTTP server
The self-hosted macOS runner cannot run apt-get or install Linux-only Sharp
packages; gate CI on sqlite availability and platform-specific Sharp setup.
Also wait for ephemeral Express listen before fetch to avoid AUTH-08 flakes.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-03 15:47:11 +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 36b1ae3992 fix(release-gate): map admin billing paths and repair pgvector test
Memind CI / Test, build, and release guards (push) Failing after 3s
Allow image-quota admin files in impact selection and update Memory V2
runtime test for hybrid pgvector keyword query.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-03 15:08:02 +08:00
john 35ec2e3544 docs: register feature/image-quota-admin branch disposition
Memind CI / Test, build, and release guards (push) Failing after 6s
Record merged image quota work as closed; admin UI lives in memind_adm 5174 only.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-03 15:01:27 +08:00
john 946d8756c8 feat(billing): enforce image generation quota with admin API and user display
Memind CI / Test, build, and release guards (push) Failing after 3s
Add period_images_bonus and ledger tracking, gate image_make on remaining quota,
expose admin image-quota routes, show remaining image quota in the balance popover,
and document that admin UI must live in memind_adm (5174) not ops.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-03 14:58:38 +08:00
john 36d8e74784 merge: register feature/h5-llm-router-canary branch disposition
Memind CI / Test, build, and release guards (push) Failing after 2s
2026-08-03 12:32:13 +08:00
john 305af3cd35 docs: close feature/h5-llm-router-canary after main merge and 103 release
Record that the branch core LLM router work is already on main and production,
and mark the stale branch as read-only to prevent merge or release reuse.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-03 12:28:16 +08:00