docs: 为全部 38 个源文件补充详细模块级注释
为 iAs 项目的所有 Rust 源文件添加了系统化的模块级文档注释(//!), 覆盖全部 src/ 下的文件。每个文件包含模块职责、架构设计、数据流 和关键设计决策的说明。 主要变更: - 入口/CLI: main.rs, cli.rs — 系统架构概览、子命令说明 - Daemon/Worker: daemon.rs, worker.rs — 三消费者架构、旧架构说明 - 微信通道: mod.rs, client.rs, types.rs — API 端点、登录流程 - LLM 系统: mod.rs, types.rs, provider.rs, deepseek.rs, conversation.rs — 架构分层、流式处理、工具循环、摘要机制 - 上下文管理: mod.rs, types.rs, builder.rs, tools.rs — Checkpoint 机制、Token Budget、双重摘要 - 工具系统: mod.rs, types.rs, builtin.rs, approval.rs — 两层元工具架构、审批流程 - 内置工具: mod.rs + 6 个工具 — API 端点、认证方式、参数说明 - 消息队列: mod.rs, message_queue.rs, runner.rs — 公平轮转算法、三消费者路由 - 数据库/状态/调度/日志: db/mod.rs, state.rs, scheduler.rs, logger.rs — 表结构、回退策略、定时任务、日志初始化
This commit is contained in:
@@ -1,3 +1,23 @@
|
||||
//! ## 审批管理器 —— 高风险工具的用户确认流程
|
||||
//!
|
||||
//! 当 LLM 调用高风险工具时,需要用户通过微信输入确认码来批准。
|
||||
//!
|
||||
//! ### 完整流程
|
||||
//! 1. `create(user_id, skill_name)` → 生成 6 位随机确认码,SHA-256 哈希后存储
|
||||
//! 2. 向用户发送 "⚠️ 操作确认\n\n技能:{name}\n确认码:{code}"
|
||||
//! 3. 用户在微信聊天中输入确认码
|
||||
//! 4. `handle_reply(user_id, reply)` → 验证确认码哈希
|
||||
//! - 匹配 → `Approved`
|
||||
//! - 不匹配 → 减少尝试次数(最多 3 次)
|
||||
//! - 输入 0 或"取消" → `Rejected`
|
||||
//! - 超时 → `Expired`(每 60 秒清理一次)
|
||||
//!
|
||||
//! ### 安全设计
|
||||
//! - 确认码用 SHA-256 哈希后存储,原始码不持久化
|
||||
//! - 每次生成随机 6 位数字(100000-999999)
|
||||
//! - 最多 3 次尝试,超时 5 分钟
|
||||
//! - 同时支持内存和数据库双写
|
||||
|
||||
use rand::Rng;
|
||||
use sha2::{Digest, Sha256};
|
||||
use sqlx::PgPool;
|
||||
|
||||
Reference in New Issue
Block a user