"use strict";
/**
 * Project Caffeine v0.0.3
 * Copyright (c) 2025-2026 Gitconomy Research
 *
 * SPDX-License-Identifier: MIT
 *
 * Contributors:
 * - 郭晧 <guohao@gitconomy.org> (Initial Author)
 */
Object.defineProperty(exports, "__esModule", { value: true });
exports.generateSearchQueries = generateSearchQueries;
/**
 * 将用户的自然语言查询拆解为专业检索词列表。
 *
 * @param {string} query - 用户原始查询字符串
 * @returns {string[]} 去重后的检索词数组（3~5 个）
 */
function generateSearchQueries(query) {
    if (!query || query.trim().length === 0) {
        return ['通用研究主题'];
    }
    // 1. 去除常见标点符号，替换为空格
    const cleaned = query.replace(/[，,。？?、；;]/g, ' ');
    // 2. 按空白字符分割，过滤掉长度小于 2 的词（避免单字噪音）
    const words = cleaned.split(/\s+/).filter(word => word.length >= 2);
    // 3. 去重
    const uniqueWords = [...new Set(words)];
    // 4. 若不足 3 个，补充基于原查询的扩展词
    while (uniqueWords.length < 3) {
        uniqueWords.push(`${query} 相关研究`);
    }
    // 5. 截取前 5 个返回
    return uniqueWords.slice(0, 5);
}
//# sourceMappingURL=intentService.js.map