# 功能规划

## 个人信息模型

采用 **基础 KV 字段 + 结构化 block** 两层结构。

**基础字段**（KV 键值对）：姓名、性别、出生日期、手机号、邮箱、身份证号、学校、学院、专业、年级、学号、学分绩、政治面貌、联系地址、邮政编码。

**结构化 block**（每组可包含多条记录）：
- 项目经历
- 科研经历
- 实习经历
- 学生工作经历
- 竞赛奖项
- 荣誉称号
- 语言成绩
- 技能证书

block 中的数据既用于网页表单自动填写，也作为文档填充的数据来源。

## 材料库

材料库采用 **KV 键值对** 结构管理：`材料名称 → 对应文件`，每份文件必须有明确名称，AI 才能语义匹配。

**示例：**

| 材料名称 | 文件 |
|----------|------|
| 证件照 | photo_id.jpg |
| 身份证正面 | id_front.jpg |
| 大学英语六级证书 | cet6_certificate.pdf |
| 数学竞赛省级一等奖证书 | math_competition_award.jpg |

材料卡片展示：材料名称、材料类型、缩略图、文件格式、文件大小。

**材料匹配流程：** 网页要求上传"四六级证书" → AI 识别材料需求 → 匹配材料库中的"大学英语六级证书" → 用户确认 → 自动上传。

## 网页表单自动填写

识别网页表单字段（input/select/textarea），通过 LLM 语义匹配个人信息库，自动填写高置信度字段。

涉及身份证号、手机号等敏感字段时，Popup 中标记为"需确认"，用户检查后再决定是否提交。

## 功能优先级

### P0 — 已完成

- Options 页个人信息录入（KV 字段）+ API 配置
- 页面表单字段扫描（content script）
- LLM 语义匹配
- Popup 核对 + 一键填充
- 插件内跳转 Options（不依赖外部网页）

### P1 — 当前重点

- 个人信息结构升级（基础 KV + 结构化 block）
- Options 页改版（支持编辑 block 数据）
- 材料管理 UI（上传、命名、预览、替换、删除）
- 材料匹配 + 自动上传（网页文件上传 → AI 匹配材料名称 → 确认 → 上传）

### P2 — 值得做

- 打包导出/导入（个人信息 + 材料文件 → zip，支持备份恢复）
- PDF 材料汇总（材料拖拽排序 → jsPDF 拼装）
- 置信度展示（匹配结果区分高/低置信度）

### P3 — 锦上添花

- 匹配历史记录
- 从页面反填到 Profile
- 云盘同步

## 明确不做

- 悬浮球 / 侧边面板（现有 Popup + Options 已够用）
- 敏感字段强制确认机制（无实质收益）
- 多身份模板切换（用结构化 block 替代）
- 文档智能填充（Word/PDF 解析 → 填写 → 导出）
- 独立 Workbench 网页（全部在插件内操作）
