Files
memind/health-channel-aliases.mjs
T
john 2baf29b3ae feat(health): complete P0 health channel — baseline engine, page-data, MindSpace UI
Deliver encrypted health zone, observation API, baseline maturity pipeline,
page-data bindings, and H5/WeChat channel integration for health P0.

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

28 lines
1.4 KiB
JavaScript

/** H5/微信 idle 口语 → 菜单项映射(不含需 Agent 的长句评估)。 */
export function matchHealthMenuAlias(text) {
const raw = String(text ?? '').trim();
if (!raw) return null;
if (/^(录入|记录一下|记一下|测血压|我要录|手输)/.test(raw)) return '1';
if (/^(上传|传一下).{0,6}(报告|化验|体检)/.test(raw) || /^(化验单|体检单|报告照片)/.test(raw)) {
return '2';
}
if (/^(评估|健康评估|看看评估)/.test(raw)) return '3';
if (/^(档案|看档案|时间线|timeline)/i.test(raw)) return '4';
if (/^(菜单|帮助|怎么用|功能列表)/.test(raw)) return 'menu';
return null;
}
export function looksLikeHealthQuickAssess(text) {
const raw = String(text ?? '').trim();
if (!raw || looksLikeHealthReportPageRequest(raw)) return false;
return /(?:最近怎么样|有没有异常|健康评估)|(?:身体|血压|健康).{0,12}(?:怎么样|帮我看看|分析一下)|帮我看看.{0,12}(?:身体|血压|健康)|整.{0,6}健康分析|来.{0,4}分析/.test(raw);
}
export function looksLikeHealthReportPageRequest(text) {
const raw = String(text ?? '').trim();
if (!raw) return false;
if (/工作(?:汇报)?报告|周报|月报|述职/.test(raw)) return false;
return /(?:生成|出|写|导出|给我|整).{0,10}(?:健康|体检|身体)?(?:分析)?报告|(?:健康|体检|身体).{0,8}(?:分析)?报告(?:页)?|^health report\b/i.test(raw);
}