autosnippet
Version:
Extract code patterns into a knowledge base for AI coding assistants
77 lines (76 loc) • 2.27 kB
TypeScript
/**
* MCP Handler — autosnippet_rescan (增量知识更新)
*
* 保留已审核 Recipe,清理衍生缓存,全量/指定维度重新扫描,
* 新知识通过批量提交走正常的进化架构。
*
* 流程:
* 1. snapshotRecipes — 快照保留知识
* 2. rescanClean — 清理衍生缓存
* 3. Phase 1-4 全量分析
* 4. RecipeRelevanceAuditor — 证据验证 + 快速衰退
* 5. 构建 Mission Briefing(含 allRecipes + evolutionGuide)
* 6. 返回给 Agent 按维度执行: evolve → gap-fill → dimension_complete
*
* @module handlers/rescan-external
*/
import type { ServiceContainer } from '#inject/ServiceContainer.js';
import type { RescanInput } from '#shared/schemas/mcp-tools.js';
/** MCP handler context */
interface McpContext {
container: ServiceContainer;
logger: {
info(msg: string, meta?: Record<string, unknown>): void;
warn(msg: string, meta?: Record<string, unknown>): void;
};
startedAt?: number;
[key: string]: unknown;
}
export declare function rescanExternal(ctx: McpContext, args: RescanInput): Promise<{
success: boolean;
errorCode: string | null;
message: string;
data: {
message: string;
} | null;
meta: {
source?: string | undefined;
responseTimeMs?: number | undefined;
version: string;
tool?: string | undefined;
};
} | {
success: boolean;
errorCode: string | null;
message: string;
data: {
meta?: {
warnings?: string[];
responseSizeKB?: number;
[key: string]: unknown;
};
rescan: {
preservedRecipes: number;
cleanedTables: number;
cleanedFiles: number;
reason: string | null;
};
relevanceAudit: {
totalAudited: number;
healthy: number;
watch: number;
decay: number;
severe: number;
dead: number;
proposalsCreated: number;
immediateDeprecated: number;
};
} | null;
meta: {
source?: string | undefined;
responseTimeMs?: number | undefined;
version: string;
tool?: string | undefined;
};
}>;
export {};