课表与空闲行程扩展 - 测试说明（非 WakeUp 官方产品）

版本：v0.11.0。新增挂挂联动：从挂挂打开教务系统，用扩展读取后点击“发送到挂挂”，再在挂挂里确认导入。新增合肥工业大学已提供的 EAMS 课程卡片节点模板，修复该样例网页没有 HTML 表格且课程未被采集的问题。保留分周换课、联合授课教师识别和预览前去重。未宣称适配全部高校，也未完成合肥工业大学全站实测。

这是一个本地测试版浏览器扩展，适用于 Chrome 或 Edge。

安装方式：
1. 解压测试压缩包。
2. 打开 Chrome 的 chrome://extensions/ 或 Edge 的 edge://extensions/。
3. 打开“开发者模式”。
4. 点击“加载已解压的扩展程序”。
5. 选择解压后的 browser-extension 文件夹，也就是包含 manifest.json 的那一层。

测试方式：
1. 先登录学校教务系统并打开课表页面。
2. 点击浏览器工具栏中的扩展图标。
3. 在弹窗中尝试读取当前页面课表并导入。
4. 也可以打开扩展详情页里的“扩展选项”进入主课表页面。

新版读取方式：
- 点击“读取课表”后自动解析并检查全部候选，优先选择结构依据明确、字段完整的结果。
- 自动适配检查显示课程名称、星期、时间、教师、地点及周次的完整数量，列出缺失、冲突、读取截断等原因。手动核对字段或保存作息后会更新检查结果。
- “当前读取检查通过”表示本页结果满足检查规则，不代表课程总数已与学校数据库核实，仍需和原课表核对总数。
- 自动优先选择字段模板，同时保留通用课程表格、课程块作为备选读取结果。
- 明确字段直接读取课程名、教师和地点，不再用姓名长度或教室命名规则重新拆分。
- EAMS 卡片需同时符合 .card-content、strong 内课程编号--班号、p 内课程名与周次/星期(节次)结构，不会把所有普通卡片当课表。3 (3,4) 按周三第3-4节读取。原文未显示教师时留空，不从账号或其他课程猜教师；未提供时钟时间时需首次确认本校作息。
- 混合文字支持机房、实验室、实训室、语音室等场所类型及带括号的短房间编号，排除带标识的学分、学时、考核信息。根据标签、编号或独立片段识别字段，不假定教师、课程、地点必须按固定顺序出现。无编号文字的词义辅助判断会标记待核对。
- 同一课程不同周次的教师、地点、上课时段分别保留；相同安排去重。
- 同一星期、时段在前后半学期上不同课程时，按独立课程块分别读取与保存，切换教学周显示对应课程。支持课程编号后带班号、换行编号、普通文字分隔线和 HTML hr 分隔；不继承整个单元格的教师、地点或周次。
- 多课程边界或姓名行、楼名与房间号通过文字推断时，仍显示核对提示；周次缺失不自动继承其他课程的周次。
- 逗号分隔的联合授课名单、同一安排内明确教师节点均可保留多人；互相矛盾的教师声明仍需核对。
- 相同安排的短编号、完整编号、缺字段副本在预览前合并；只有节次、尚未设置作息时也会去重。缺字段副本只在对应安排唯一且字段相符时合并，不跨周猜教师。
- 只读到节次而没有时钟时间时，需要确认本校作息表；不会套用其他学校的作息时间。
- “适配设置”可加载维护者提供的 JSON 配置、关闭自定义配置。普通用户不需要编写配置，格式说明见 ADAPTERS.md。
- 新版不调用云端 AI、不收集账号密码，不执行配置文件内的代码。仍有无法自动读取的页面，尤其是图片、Canvas、未获授权的跨域内嵌页面。
- 当前新增模板用合成页面样例验证，不代表相同厂商的所有版本均已验证。

注意：
- 不要只双击 index.html 测试导入功能，导入功能需要按浏览器扩展方式安装。
- 仅安装来自可信提供者且已核对内容的测试包；不要绕过浏览器安全警告。
- 测试时请记录浏览器、学校教务系统名称、导入是否成功、失败截图或报错文字。

读取失败时：
- 确认已登录学校教务网站，个人课表已完整显示，再点击扩展读取。
- 诊断会显示已读取页面数、可见表格数、字段映射安排数和内嵌页面数。
- 如果显示内嵌页面入口，可以打开实际显示课表的页面，再点击扩展读取。不是每个内嵌页面都含课表。
- 如果仍失败，请提供课表布局截图和诊断文字，不要提供密码、Cookie、登录票据或完整网络请求日志。
- 合肥工业大学本科教务入口：https://jxglstu.hfut.edu.cn/eams5-student/login。已用用户提供的单个课程 HTML 节点验证 EAMS 卡片采集，未登录实测完整课表；其他视图、隐藏教师详情或动态加载结构仍需核对。

更新：先导出备份；用新版文件更新原扩展文件夹，在扩展管理页点击重新加载。不要卸载旧扩展，以免丢失该扩展保存的数据。
