use std::collections::HashMap;
use std::sync::LazyLock;

pub(super) static SYNONYMS: LazyLock<HashMap<&str, &[&str]>> = LazyLock::new(|| {
    let mut m: HashMap<&str, &[&str]> = HashMap::new();
    m.insert("encrypt", &["加密", "encryption", "sqlcipher"]);
    m.insert("encryption", &["加密", "encrypt", "sqlcipher"]);
    m.insert("sqlcipher", &["加密", "encryption", "encrypt"]);
    m.insert("database", &["数据库", "sqlite", "db"]);
    m.insert("db", &["数据库", "database", "sqlite"]);
    m.insert("api", &["接口", "endpoint", "端点"]);
    m.insert("rest", &["http", "接口", "api"]);
    m.insert("hook", &["钩子", "hooks", "机制"]);
    m.insert("hooks", &["钩子", "hook", "机制"]);
    m.insert("trait", &["特征", "接口", "adapter"]);
    m.insert("adapter", &["适配器", "trait", "ToolAdapter"]);
    m.insert("benchmark", &["基准测试", "性能测试", "eval", "bench"]);
    m.insert("compression", &["压缩", "compaction", "compress"]);
    m.insert("timeout", &["超时", "timed out"]);
    m.insert("worker", &["后台任务", "工作线程"]);
    m.insert("memory", &["记忆", "memories", "memo"]);
    m.insert("search", &["搜索", "检索", "fts", "查询"]);
    m.insert("fts", &["搜索", "全文搜索", "fts5"]);
    m.insert("fts5", &["搜索", "全文搜索", "fts", "trigram"]);
    m.insert("tokenizer", &["分词器", "trigram", "分词"]);
    m.insert("prompt", &["提示词"]);
    m.insert("publish", &["发布", "发帖"]);
    m.insert("posting", &["发帖", "发布"]);
    m.insert("deploy", &["部署", "上线"]);
    m.insert("config", &["配置", "configuration", "设置"]);
    m.insert("port", &["端口"]);
    m.insert("session", &["会话"]);
    m.insert("scope", &["作用域", "范围"]);
    m.insert("global", &["全局", "跨项目"]);
    m.insert("summary", &["摘要", "总结", "格式"]);
    m.insert("format", &["格式", "结构"]);
    m.insert("mcp", &["server", "工具", "protocol"]);
    m.insert("server", &["服务器", "服务端"]);
    m.insert("twitter", &["X", "推特", "发帖"]);
    m.insert("promote", &["提升", "升级"]);
    m.insert("auto", &["自动", "自动化"]);
    m.insert("performance", &["性能", "优化", "benchmark"]);
    m.insert("video", &["视频"]);
    m.insert("quality", &["质量"]);
    m.insert("cost", &["成本"]);
    m.insert("context", &["上下文", "语境"]);
    m.insert("加密", &["encrypt", "encryption", "sqlcipher"]);
    m.insert("数据库", &["database", "sqlite", "db"]);
    m.insert("接口", &["api", "interface", "trait"]);
    m.insert("搜索", &["search", "fts", "检索", "查询"]);
    m.insert("检索", &["search", "fts", "搜索"]);
    m.insert("竞品", &["competitive", "comparison", "对比"]);
    m.insert("对比", &["comparison", "竞品", "vs"]);
    m.insert("优化", &["optimization", "optimize", "性能"]);
    m.insert("质量", &["quality", "品质"]);
    m.insert("记忆", &["memory", "memories", "memo"]);
    m.insert("共享", &["sharing", "global", "跨项目"]);
    m.insert("偏好", &["preference", "设置"]);
    m.insert("发帖", &["posting", "publish", "发布", "twitter"]);
    m.insert("发布", &["publish", "release", "deploy"]);
    m.insert("挂起", &["hang", "卡住", "stuck"]);
    m.insert("超时", &["timeout", "timed out"]);
    m.insert("压缩", &["compression", "compress"]);
    m.insert("配置", &["config", "configuration", "设置"]);
    m.insert("端口", &["port"]);
    m.insert("架构", &["architecture", "design", "设计"]);
    m.insert("分词", &["tokenizer", "tokenize", "trigram"]);
    m.insert("规则", &["rules", "rule"]);
    m.insert("部署", &["deploy", "deployment"]);
    m.insert("失败", &["failure", "failed", "error", "错误"]);
    m.insert("任务", &["task", "job"]);
    m.insert("机制", &["mechanism", "hook", "hooks", "系统"]);
    m.insert("提升", &["promote", "升级", "improve"]);
    m.insert("自动", &["auto", "automatic", "自动化"]);
    m.insert("视频", &["video"]);
    m.insert("抖音", &["douyin", "tiktok"]);
    m.insert("成本", &["cost"]);
    m.insert("性能", &["performance", "benchmark", "优化"]);
    m.insert("格式", &["format", "structure", "结构"]);
    m.insert("摘要", &["summary", "总结"]);
    m.insert("总结", &["summary", "摘要"]);
    m.insert("会话", &["session"]);
    m.insert("实现", &["implementation", "implement"]);
    m.insert("服务", &["server", "service"]);
    m.insert("跨项目", &["cross-project", "global", "共享"]);
    m.insert("上下文", &["context"]);
    m.insert("钩子", &["hook", "hooks"]);
    m.insert("适配器", &["adapter", "trait"]);
    m
});
