更新K4课程README,清理旧的班级记忆文件,调整目录结构
This commit is contained in:
462
课评规范V1.0.md
Normal file
462
课评规范V1.0.md
Normal file
@@ -0,0 +1,462 @@
|
||||
# ClassFeedback 课评管理规范
|
||||
|
||||
本文档规定了课评仓库的统一目录结构和文件格式,供所有老师参考使用。
|
||||
|
||||
---
|
||||
|
||||
## 一、目录结构规范
|
||||
|
||||
```
|
||||
ClassFeedback/ # 仓库根目录(命名:ClassFeedback)
|
||||
├── .claude/ # Claude配置目录
|
||||
│ ├── memory/ # 记忆数据目录
|
||||
│ │ ├── class/ # 【班级数据 - 核心课评目录】
|
||||
│ │ │ ├── 班级名称/ # 命名:课程+老师+时间(如:CSP05克力周六1600)
|
||||
│ │ │ │ ├── summaries/ # 班级总结/群发文案
|
||||
│ │ │ │ │ ├── YYYYMMDD_课程编号_班级反馈.md
|
||||
│ │ │ │ │ └── YYYYMMDD_课程编号_微信群.txt
|
||||
│ │ │ │ ├── 学生姓名1/ # 学生个人文件夹
|
||||
│ │ │ │ │ ├── feedback/ # 【个人课评目录】
|
||||
│ │ │ │ │ │ ├── YYYYMMDD_课程编号.md # 正常课评
|
||||
│ │ │ │ │ │ ├── YYYYMMDD_课程编号(请假).md # 请假记录
|
||||
│ │ │ │ │ │ ├── YYYYMMDD_课程编号(补课-去XX).md # 补课追踪
|
||||
│ │ │ │ │ │ └── ...
|
||||
│ │ │ │ │ ├── profile.md # 学生画像
|
||||
│ │ │ │ │ └── summary/ # 阶段性总结
|
||||
│ │ │ │ │ └── YYYY-MM_月度总结.md
|
||||
│ │ │ │ ├── 学生姓名2/
|
||||
│ │ │ │ │ └── ...
|
||||
│ │ │ │ ├── 补课/ # 补课学生专用目录
|
||||
│ │ │ │ │ └── 学生姓名/ # 来自其他班级的补课学生
|
||||
│ │ │ │ │ └── feedback/
|
||||
│ │ │ │ │ └── YYYYMMDD_课程编号.md
|
||||
│ │ │ │ └── ...
|
||||
│ │ │ └── 班级名称2/
|
||||
│ │ │ └── ...
|
||||
│ │ ├── lesson/ # 课程大纲资料(可选)
|
||||
│ │ │ └── CSP01/
|
||||
│ │ │ └── 课程大纲.md
|
||||
│ │ └── oj/ # OJ数据分析(可选)
|
||||
│ │ └── analysis/
|
||||
│ └── skills/ # 技能脚本(可选)
|
||||
└── README.md # 仓库说明
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 二、命名规范
|
||||
|
||||
### 2.1 课程编号统一规则
|
||||
|
||||
**班级文件夹中的课程编号必须与校宝排课系统中的 `class_name` 一致。**
|
||||
|
||||
校宝中的课程名格式为 `课程编号+中文描述`,如 `CSP01信息学奥赛01`、`AICODE03AI编程创新课03`。提取编号部分的规则:
|
||||
|
||||
| 校宝 class_name | 提取编号 | 说明 |
|
||||
|-----------------|---------|------|
|
||||
| CSP01信息学奥赛01 | **CSP01** | C++ 信息学奥赛班 |
|
||||
| CSP02信息学奥赛02 | **CSP02** | |
|
||||
| CSP05信息学奥赛05 | **CSP05** | |
|
||||
| AICODE01代码编程入门课01 | **AICODE01** | AI 代码编程班 |
|
||||
| AICODE02代码编程入门课02 | **AICODE02** | |
|
||||
| AICODE03AI编程创新课03 | **AICODE03** | |
|
||||
| AICODE04AI编程创新课04 | **AICODE04** | |
|
||||
| AICODE06AI编程创新课06 | **AICODE06** | |
|
||||
|
||||
**统一要求**:
|
||||
|
||||
1. **C++ 竞赛班统一用 `CSP`**:不得使用 `C++`、`信奥`、`信息学` 等作为课程前缀
|
||||
2. **AI 编程班统一用 `AICODE`**:不得使用 `AI`、`AI03`、`AI01` 等缩写,必须是完整的 `AICODE01`、`AICODE03` 等
|
||||
3. **编号必须与校宝一致**:校宝叫 CSP01 就是 CSP01,叫 AICODE03 就是 AICODE03
|
||||
|
||||
**当前需整改的目录**:
|
||||
|
||||
| 老师 | 当前目录名 | 应改为 |
|
||||
|------|-----------|--------|
|
||||
| 杰森 | AI01杰森周六1045 | AICODE01杰森周六1045 |
|
||||
| 杰森 | AI02杰森周日1400 | AICODE02杰森周日1400 |
|
||||
| 橙子 | AI03橙子周五1700 | AICODE03橙子周五1700 |
|
||||
| 橙子 | AI03橙子周六1900 | AICODE03橙子周六1900 |
|
||||
| 橙子 | AI03橙子周日0845 | AICODE03橙子周日0845 |
|
||||
| 橙子 | AI03橙子周日1400 | AICODE03橙子周日1400 |
|
||||
| 欧文 | AI02欧文周三1900 | AICODE02欧文周三1900 |
|
||||
| 东东 | AI01东东周五1630 | AICODE01东东周五1630 |
|
||||
| 东东 | AI01东东周日1900 | AICODE01东东周日1900 |
|
||||
| 东东 | AI东东周六0845 | AICODE01东东周六0845 |
|
||||
|
||||
### 2.2 文件夹命名
|
||||
|
||||
| 层级 | 命名规则 | 示例 |
|
||||
|------|---------|------|
|
||||
| 班级文件夹 | 课程编号+老师+星期时间 | `CSP05克力周六1600`、`AICODE03东东周五1630`、`K2菠萝周六1045` |
|
||||
| 学生文件夹 | 学生姓名 | `黄振轩`、`刘浩宇`、`李梓宁` |
|
||||
| 课评子目录 | 固定名称 | `feedback`(课评)、`summary`(总结)、`补课`(补课学生) |
|
||||
|
||||
### 2.3 文件命名
|
||||
|
||||
| 类型 | 命名规则 | 示例 |
|
||||
|------|---------|------|
|
||||
| 单次课评 | `YYYYMMDD_课程编号-课次.md` | `20260418_CSP05-07.md`、`20260330_AICODE03-02.md` |
|
||||
| 请假记录 | `YYYYMMDD_课程编号-课次(请假).md` | `20260505_CSP05-10(请假).md` |
|
||||
| 补课追踪 | `YYYYMMDD_课程编号-课次(补课-去班级名).md` | `20260505_CSP05-10(补课-去AICODE03茄子周六1600).md` |
|
||||
| 班级反馈 | `YYYYMMDD_课程编号-课次_班级反馈.md` | `20260418_CSP05-07_班级反馈.md` |
|
||||
| 群发文本 | `YYYYMMDD_课程编号-课次_微信群.txt` | `20260418_CSP05-07_微信群.txt` |
|
||||
| 月度总结 | `YYYY-MM_月度总结.md` | `2026-04_月度总结.md` |
|
||||
| 学生画像 | 固定名称 | `profile.md` |
|
||||
|
||||
> **注意**:课程编号中的 `AI` 统一写 `AICODE`,如 `AICODE03-05` 而非 `AI03-05`。
|
||||
|
||||
### 2.4 日期规范(关键)
|
||||
|
||||
**课评文件名中的日期 YYYYMMDD 必须与校宝 `teaching_date` 完全一致。**
|
||||
|
||||
校宝排课是课评统计的唯一基准。课评完成率自动化统计时,以校宝记录的上课日期精确匹配文件名。
|
||||
|
||||
| 校宝 teaching_date | 正确文件名 | 错误文件名 | 原因 |
|
||||
|-------------------|-----------|-----------|------|
|
||||
| 2026-05-10(周六) | `20260510_CSP01-10.md` | `20260511_CSP01-10.md` | 05-11 是周日,非上课日 |
|
||||
| 2026-05-09(周五) | `20260509_AICODE04-09.md` | `20260510_AICODE04-09.md` | 应取校宝日期而非提交日期 |
|
||||
|
||||
**常见错误**:
|
||||
- 用课评**编写/提交日期**而非**实际上课日期**
|
||||
- 周六上课但文件标周日日期
|
||||
- 用课次所属周的周一/周日日期
|
||||
|
||||
**正确做法**:上完课当天就写完课评,文件名日期取校宝排课日期。
|
||||
|
||||
---
|
||||
|
||||
## 三、课评文件内容格式
|
||||
|
||||
### 3.1 标准课评模板
|
||||
|
||||
```markdown
|
||||
# 课程名称:CSP05-07 初等数论2
|
||||
|
||||
**授课日期**: 2026-04-18
|
||||
|
||||
**课评内容**:
|
||||
学生今天课堂非常认真,三类作业全部完成。但课堂练习调试12次(2次运行错误、3次答案错误、2次编译错误),说明边界条件和代码规范性还需加强。建议每道题重新手写框架,减少复用旧代码,这样基础更扎实。
|
||||
|
||||
课后整理埃氏筛法模板,记录今天的坑点。
|
||||
|
||||
---
|
||||
**老师签名:XXX**
|
||||
```
|
||||
|
||||
### 3.2 课评汇总模板(按学生汇总)
|
||||
|
||||
```markdown
|
||||
# 学生姓名 - 课评汇总
|
||||
|
||||
---
|
||||
|
||||
## 第1节课:课程名(2026-03-07)
|
||||
|
||||
家长好,本周学习的内容是《XXX》:
|
||||
1. 知识点1
|
||||
2. 知识点2
|
||||
|
||||
学生今天表现...(详细课评内容)
|
||||
|
||||
—— 穹狼科创 XXX老师
|
||||
|
||||
---
|
||||
|
||||
## 第2节课:课程名(2026-03-14)
|
||||
|
||||
...
|
||||
|
||||
---
|
||||
```
|
||||
|
||||
### 3.3 班级群发文案模板
|
||||
|
||||
```markdown
|
||||
# CSP05-07 班级反馈(2026-04-18)
|
||||
|
||||
各位家长好,本周CSP05-07课程已结束。
|
||||
|
||||
## 课程内容
|
||||
- 初等数论2:埃氏筛法、质因数分解
|
||||
|
||||
## 班级整体情况
|
||||
- 课堂练习完成率:90%
|
||||
- 课后作业提交率:85%
|
||||
|
||||
## 共性问题
|
||||
1. 边界条件处理不够严谨
|
||||
2. 代码规范性需要加强
|
||||
|
||||
请各位家长督促孩子完成课后作业,整理本周错题。
|
||||
|
||||
—— 克力老师
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 四、课评完成率统计规则
|
||||
|
||||
课评完成率由自动化系统按以下规则计算,请确保目录和文件符合规范以便被正确统计。
|
||||
|
||||
### 4.1 数据来源
|
||||
|
||||
- **出勤基准**:校宝 API 排课数据(`teaching-schedule`),以校宝为准
|
||||
- **统计范围**:仅统计 CSP 和 AICODE 班级
|
||||
- **时间范围**:默认上周三到本周二
|
||||
|
||||
### 4.2 出勤状态判定
|
||||
|
||||
| 校宝 attendance_status | 判定 | 课评要求 |
|
||||
|----------------------|------|---------|
|
||||
| 含 `到课`/`出勤`/`签到` | **到课** | 必须有课评文件 |
|
||||
| 含 `请假` | **请假** | 当天不要求课评 |
|
||||
| 其他 | **缺勤** | 不要求 |
|
||||
|
||||
- 补课学生(`student_identity = 补课`)按到课处理,必须有课评
|
||||
- 试听学生(`student_identity = 试听`)按到课处理,必须有课评
|
||||
|
||||
### 4.3 课评文件查找规则(三级查找)
|
||||
|
||||
对校宝中每个到课学生,系统按以下优先级查找课评文件:
|
||||
|
||||
```
|
||||
校宝记录:学生S 在日期D 到课,排课老师为T,班级编号为B
|
||||
|
||||
第1级 → 去老师T的仓库,在班级B对应目录下查找
|
||||
路径:T仓库/.claude/memory/class/{含B的目录}/S/feedback/
|
||||
文件:YYYYMMDD(D)_*.md(排除汇总/登记/总结/班级反馈)
|
||||
找到 → 匹配成功 ✓
|
||||
未找到 → 进入第2级
|
||||
|
||||
第2级 → 去老师T的仓库,在其他所有班级的 补课/ 目录下查找
|
||||
路径:T仓库/.claude/memory/class/{其他班级}/补课/S/feedback/
|
||||
找到 → 匹配成功 ✓
|
||||
未找到 → 进入第3级
|
||||
|
||||
第3级 → 去其他所有老师的仓库,在所有班级的 补课/ 目录下查找
|
||||
路径:其他老师仓库/.claude/memory/class/{任意班级}/补课/S/feedback/
|
||||
找到 → 匹配成功 ✓
|
||||
未找到 → 标记为「缺失」✗
|
||||
```
|
||||
|
||||
### 4.4 日期匹配
|
||||
|
||||
**严格匹配**:文件名中的 `YYYYMMDD` 必须与校宝 `teaching_date` 完全一致。不一致的课评不计入完成率,会被标注为「日期偏移」。
|
||||
|
||||
### 4.5 学生名匹配
|
||||
|
||||
- 去除空格后比较
|
||||
- 支持包含匹配(如仓库 `梁铭轩` 可匹配校宝 `梁铭轩(大)`)
|
||||
- 去除后缀标记如 `(am)`、`1` 等再尝试
|
||||
|
||||
### 4.6 完成率计算
|
||||
|
||||
```
|
||||
应发总数 = 到课学生数(本班到课 + 补课到课 + 试听到课)
|
||||
已完成 = 按三级查找规则匹配到的学生数
|
||||
完成率 = 已完成 / 应发总数 × 100%
|
||||
```
|
||||
|
||||
请假学生**不纳入**应发总数。如果请假学生后续在其他课堂补课(校宝中以补课身份出现),按到课学生处理。
|
||||
|
||||
### 4.7 上课后必须完成
|
||||
|
||||
- [ ] 为每位**到课**学生编写个人课评(保存到 `feedback/YYYYMMDD_课程编号.md`)
|
||||
- [ ] 日期取校宝排课日期,不是编写日期
|
||||
- [ ] 补课学生也必须有课评(放在补课班级的 `补课/学生名/feedback/` 下)
|
||||
- [ ] 编写班级总结(保存到 `summaries/YYYYMMDD_课程编号_班级反馈.md`)
|
||||
|
||||
---
|
||||
|
||||
## 五、各老师当前格式对照
|
||||
|
||||
| 老师 | 当前路径 | 建议调整为 |
|
||||
|------|---------|-----------|
|
||||
| 19163520381 | `.claude/memory/student/班级/学生/课评反馈/课评汇总.md` | `.claude/memory/class/班级/学生/feedback/YYYYMMDD_课程.md` |
|
||||
| 13711179294 | `ClassFeedback/学生姓名.md` | `.claude/memory/class/班级/学生/feedback/YYYYMMDD_课程.md` |
|
||||
| 13202777474 | `reviews/班级/学生日期.md` | `.claude/memory/class/班级/学生/feedback/YYYYMMDD_课程.md` |
|
||||
| 13974188170 | `.claude/memory/student/班级/学生/课评/第X周课程.md` | `.claude/memory/class/班级/学生/feedback/YYYYMMDD_课程.md` |
|
||||
| 18576526757 | `.claude/memory/student/班级/学生/课评反馈/课评汇总-2026春季.md` | 保持汇总格式,增加单次课评文件 |
|
||||
| **17788733242** | **`.claude/memory/class/班级/学生/feedback/YYYYMMDD_课程.md`** | **✅ 标准格式** |
|
||||
| 13108110172 | `.claude/student/班级/学生/历史课评.md` | `.claude/memory/class/班级/学生/feedback/YYYYMMDD_课程.md` |
|
||||
|
||||
### 非标准结构(无法自动统计课评率)
|
||||
|
||||
| 老师 | 当前结构 | 问题 |
|
||||
|------|---------|------|
|
||||
| 大橘 | `课堂记录/` | 课评不在 `.claude/memory/class/`,无法自动扫描 |
|
||||
| 小Q | `memory/class-evaluation-summary/` | 按周汇总而非按次按学生,无法自动统计 |
|
||||
| 南瓜 | `ClassFeedback/` | 全班课评模式,无个人课评文件 |
|
||||
|
||||
---
|
||||
|
||||
## 六、快速开始
|
||||
|
||||
### 6.1 新建班级
|
||||
|
||||
```bash
|
||||
mkdir -p ".claude/memory/class/课程老师星期时间/学生姓名/feedback"
|
||||
mkdir -p ".claude/memory/class/课程老师星期时间/学生姓名/summary"
|
||||
mkdir -p ".claude/memory/class/课程老师星期时间/summaries"
|
||||
```
|
||||
|
||||
### 6.2 创建课评文件
|
||||
|
||||
```bash
|
||||
# 创建单次课评
|
||||
touch ".claude/memory/class/班级/学生/feedback/$(date +%Y%m%d)_课程编号.md"
|
||||
|
||||
# 创建学生画像
|
||||
touch ".claude/memory/class/班级/学生/profile.md"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 七、注意事项
|
||||
|
||||
1. **日期格式统一**:使用 `YYYYMMDD` 格式(如 20260418),**必须与校宝排课日期一致**
|
||||
2. **课程编号规范**:C++ 班用 `CSP`,AI 班用 `AICODE`,与校宝保持一致,不得使用 `AI`、`C++` 等缩写
|
||||
3. **文件名禁用字符**:避免使用 `/\:*?"<>|`
|
||||
4. **中文命名**:学生姓名和班级名称使用中文,保持可读性
|
||||
5. **及时提交**:每次上完课后当天完成课评并提交到 git,确保文件日期与校宝排课日期一致
|
||||
6. **补课必须记录**:补课学生的课评放在补课班级的 `补课/学生名/feedback/` 下,否则统计不到
|
||||
7. **不要汇总代替单次**:课评必须按次按学生单独文件,不能只有汇总文件
|
||||
|
||||
---
|
||||
|
||||
## 八、考勤状态记录规范
|
||||
|
||||
### 8.1 三种状态
|
||||
|
||||
每次课后,每位学生必须有且仅有一条记录,对应三种状态:
|
||||
|
||||
| 状态 | 文件名格式 | 说明 |
|
||||
|------|-----------|------|
|
||||
| 正常上课 | `YYYYMMDD_课程编号.md` | 包含完整课评内容 |
|
||||
| 请假 | `YYYYMMDD_课程编号(请假).md` | 简要记录请假原因 |
|
||||
| 补课 | `YYYYMMDD_课程编号(补课-去班级名).md` | 记录去了哪个班补课 |
|
||||
|
||||
### 8.2 请假记录模板
|
||||
|
||||
文件名:`20260505_CSP05-10(请假).md`
|
||||
|
||||
```markdown
|
||||
# 请假记录
|
||||
|
||||
**日期**: 2026-05-05
|
||||
**课程**: CSP05-10
|
||||
**学生**: 刘毅潇
|
||||
**状态**: 请假
|
||||
**原因**: (如有)
|
||||
```
|
||||
|
||||
### 8.3 补课追踪(双向记录)
|
||||
|
||||
补课产生**两条**记录,分别在原班级和补课班级:
|
||||
|
||||
**场景**:洋芋老师的学生王五,到茄子老师的 AICODE03 班补课
|
||||
|
||||
**1) 原班级(洋芋老师)— 学生 feedback/ 下**:
|
||||
- 文件名:`20260510_AICODE06-03(补课-去AICODE03茄子周六1600).md`
|
||||
- 内容:简要说明去哪补课
|
||||
|
||||
```markdown
|
||||
# 补课记录
|
||||
|
||||
**日期**: 2026-05-10
|
||||
**原课程**: AICODE06-03
|
||||
**学生**: 王五
|
||||
**状态**: 补课
|
||||
**补课班级**: AICODE03茄子周六1600
|
||||
**补课老师**: 茄子
|
||||
```
|
||||
|
||||
**2) 补课班级(茄子老师)— 补课/学生名/feedback/ 下**:
|
||||
- 文件名:`20260510_AICODE03-05.md`
|
||||
- 内容开头注明:`(补课,来自 AICODE06洋芋周日1400)`,后续正常写课评
|
||||
|
||||
### 8.4 AI 读取逻辑
|
||||
|
||||
AI 扫描 `feedback/` 目录时,通过文件名后缀判断状态:
|
||||
|
||||
| 文件名匹配 | 判定 |
|
||||
|-----------|------|
|
||||
| `YYYYMMDD_课程编号.md` | 正常课评 |
|
||||
| `YYYYMMDD_课程编号(请假).md` | 请假,无需课评 |
|
||||
| `YYYYMMDD_课程编号(补课-去...).md` | 补课,课评在补课班级 |
|
||||
|
||||
---
|
||||
|
||||
## 九、课程大纲同步规范
|
||||
|
||||
### 9.1 大纲来源
|
||||
|
||||
课程大纲从两个独立仓库同步,**不提交到老师自己的仓库**:
|
||||
|
||||
| 课程线 | 同步源 |
|
||||
|--------|--------|
|
||||
| CSP 课程 | `https://git.qonnwolf.com/17788733242/CSP2026` |
|
||||
| AICODE 课程 | `https://git.qonnwolf.com/18675193675/AICODE2026` |
|
||||
|
||||
### 9.2 本地存放位置
|
||||
|
||||
```
|
||||
.claude/memory/lesson/
|
||||
├── CSP/ ← 从 CSP2026 仓库同步
|
||||
│ ├── CSP01/
|
||||
│ ├── CSP02/
|
||||
│ └── ...
|
||||
└── AICODE/ ← 从 AICODE2026 仓库同步
|
||||
├── AICODE01/
|
||||
├── AICODE03/
|
||||
└── ...
|
||||
```
|
||||
|
||||
### 9.3 同步方式
|
||||
|
||||
```bash
|
||||
# 首次克隆到临时目录
|
||||
git clone https://git.qonnwolf.com/17788733242/CSP2026 /tmp/CSP2026
|
||||
git clone https://git.qonnwolf.com/18675193675/AICODE2026 /tmp/AICODE2026
|
||||
|
||||
# 复制大纲到 lesson 目录
|
||||
cp -r /tmp/CSP2026/* .claude/memory/lesson/CSP/
|
||||
cp -r /tmp/AICODE2026/* .claude/memory/lesson/AICODE/
|
||||
|
||||
# 后续更新:拉取后覆盖
|
||||
cd /tmp/CSP2026 && git pull
|
||||
cp -r /tmp/CSP2026/* .claude/memory/lesson/CSP/
|
||||
```
|
||||
|
||||
### 9.4 .gitignore 配置
|
||||
|
||||
在老师的仓库 `.gitignore` 中添加,避免大纲被推送到远端:
|
||||
|
||||
```gitignore
|
||||
# 课程大纲从独立仓库同步,不提交到本仓库
|
||||
.claude/memory/lesson/
|
||||
```
|
||||
|
||||
### 9.5 来源标记
|
||||
|
||||
在 `.claude/memory/lesson/` 下放置 `README.md` 记录来源:
|
||||
|
||||
```markdown
|
||||
# 课程大纲
|
||||
|
||||
本目录从独立仓库同步,不提交到老师自己的远端仓库。
|
||||
|
||||
| 目录 | 来源仓库 |
|
||||
|------|---------|
|
||||
| CSP/ | https://git.qonnwolf.com/17788733242/CSP2026 |
|
||||
| AICODE/ | https://git.qonnwolf.com/18675193675/AICODE2026 |
|
||||
|
||||
更新方式:执行"同步课程大纲"技能
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
*规范制定日期:2026-04-21*
|
||||
*最后更新:2026-05-13*
|
||||
*参考模板:ClassFeedback_17788733242*
|
||||
Reference in New Issue
Block a user