feat: 补 MIT 许可、自动抓取工具与学科覆盖元数据
一些检查失败了
ci / lint (push) Failing after 52s

登记 chinese-poetry / ck12 / phet,并让 source schema、lint 与 INDEX 能按学科和抓取进度消费。

Co-authored-by: Cursor <cursoragent@cursor.com>
这个提交包含在:
2026-08-22 01:27:25 +08:00
父节点 4c054340dc
当前提交 a006c8c504
共有 23 个文件被更改,包括 2510 次插入 和 111 次删除

查看文件

@@ -8,17 +8,10 @@ sources:
license_note: "⚠️ 仅限非商业研究/教育用途,禁止商用"
fetch_method: manual-download
status: planned
subjects: [chinese, math, english, physics, chemistry, biology, history, geography, it]
stages: [junior]
items: []
- id: phet
title: PhET 互动仿真(科学/数学)
publisher: University of Colorado Boulder
type: website
url: https://phet.colorado.edu/
license: cc-by
license_note: "CC-BY-4.0,署名即可,可商用"
fetch_method: manual-download
status: planned
items: []
# phet 已拆分至 sources/china/phet.yaml(科学/物理主力来源,含可自动下载的 items)
- id: web-papers
title: 第一试卷网 / 教习网等公开试卷(版权灰)
publisher: 各第三方站点(非官方)
@@ -28,4 +21,6 @@ sources:
license_note: "版权状态不明,集中登记、默认按最严格处理;未经核查不得进 structured/derived"
fetch_method: manual-download
status: planned
subjects: [chinese, math, english, science, morality, physics, chemistry, biology, history, geography, it]
stages: [primary, junior]
items: []

查看文件

@@ -0,0 +1,152 @@
# 语文 — 公版古诗文开源汇编
#
# 说明:小学/初中语文的「课文、阅读理解、作文范文」几乎全部锁在教材与教辅中(restricted,
# 不可再分发)。语文唯一能合法规模化再分发的路径是「公版文本 + 开源汇编仓库」:
# 文本本体已过版权保护期(进入公有领域),汇编仓库以 MIT 开源,仅要求保留许可声明。
# 因此本 source 是语文学科的主力来源,L4 的阅读理解题/作文素材由此衍生(自有 IP,版权干净)。
sources:
- id: chinese-poetry
title: chinese-poetry 最全中文诗歌古典文集数据库(37 万首)
publisher: chinese-poetry(GitHub 开源社区项目)
type: dataset
url: https://github.com/chinese-poetry/chinese-poetry
license: mit
license_note: >-
仓库 LICENSE 为 MIT(已通过 GitHub API 核实 spdx_id=MIT)。文本本体为历代公版作品,
已进入公有领域。再分发/商用均可,但须保留 MIT 许可声明与来源仓库署名。
fetch_method: git-clone
status: planned
subjects: [chinese]
stages: [primary, junior]
fetched_at: null
items:
# —— 小学/初中核心(优先下载)——
- id: quan-tang-shi
title: 全唐诗 + 全宋诗(含作者表)
oss_key: edu-raw/k9/chinese/chinese-poetry/quan-tang-shi.tar.gz
src_path: "全唐诗"
sha256: null
size: null
media_type: application/gzip
fetch_date: null
status: planned
note: >-
仓库「全唐诗/」目录,320 个文件:poet.tang.*.json(唐诗约 5.7 万首)、
poet.song.*.json(宋诗约 25 万首)、authors.tang.json / authors.song.json 作者表。
小学必背古诗与初中古诗文的主力来源。
- id: song-ci
title: 宋词(含作者表)
oss_key: edu-raw/k9/chinese/chinese-poetry/song-ci.tar.gz
src_path: "宋词"
sha256: null
size: null
media_type: application/gzip
fetch_date: null
status: planned
note: 仓库「宋词/」目录,ci.song.*.json 约 2.1 万首 + author.song.json。
- id: shijing
title: 诗经
oss_key: edu-raw/k9/chinese/chinese-poetry/shijing.tar.gz
src_path: "诗经"
sha256: null
size: null
media_type: application/gzip
fetch_date: null
status: planned
note: 仓库「诗经/」目录。初中文言启蒙与「关雎」「蒹葭」等课内篇目。
- id: lunyu
title: 论语
oss_key: edu-raw/k9/chinese/chinese-poetry/lunyu.tar.gz
src_path: "论语"
sha256: null
size: null
media_type: application/gzip
fetch_date: null
status: planned
note: 仓库「论语/」目录。小学「论语十二章」及初中文言文课内篇目。
- id: mengxue
title: 蒙学(三字经/百家姓/千字文/弟子规/千家诗/古文观止/声律启蒙等)
oss_key: edu-raw/k9/chinese/chinese-poetry/mengxue.tar.gz
src_path: "蒙学"
sha256: null
size: null
media_type: application/gzip
fetch_date: null
status: planned
note: >-
仓库「蒙学/」目录,13 部:baijiaxing、dizigui、qianziwen、qianjiashi、
guwenguanzhi 等。小学低年级识字与国学启蒙的核心素材。
- id: sishu-wujing
title: 四书五经(大学/中庸/孟子)
oss_key: edu-raw/k9/chinese/chinese-poetry/sishu-wujing.tar.gz
src_path: "四书五经"
sha256: null
size: null
media_type: application/gzip
fetch_date: null
status: planned
note: 仓库「四书五经/」目录:daxue.json、zhongyong.json、mengzi.json(论语见 lunyu 条目)。
- id: chuci
title: 楚辞
oss_key: edu-raw/k9/chinese/chinese-poetry/chuci.tar.gz
src_path: "楚辞"
sha256: null
size: null
media_type: application/gzip
fetch_date: null
status: planned
note: 仓库「楚辞/」目录。初中「离骚」节选等。
# —— 拓展(次优先)——
- id: yuanqu
title: 元曲
oss_key: edu-raw/k9/chinese/chinese-poetry/yuanqu.tar.gz
src_path: "元曲"
sha256: null
size: null
media_type: application/gzip
fetch_date: null
status: planned
note: 仓库「元曲/」目录。初中「天净沙·秋思」等散曲。
- id: wudai-shici
title: 五代诗词
oss_key: edu-raw/k9/chinese/chinese-poetry/wudai-shici.tar.gz
src_path: "五代诗词"
sha256: null
size: null
media_type: application/gzip
fetch_date: null
status: planned
note: 仓库「五代诗词/」目录,含南唐二主词(李煜「虞美人」等课内篇目)。
- id: nalanxingde
title: 纳兰性德词集
oss_key: edu-raw/k9/chinese/chinese-poetry/nalanxingde.tar.gz
src_path: "纳兰性德"
sha256: null
size: null
media_type: application/gzip
fetch_date: null
status: planned
note: 仓库「纳兰性德/」目录。初中「长相思」等。
- id: caocao
title: 曹操诗集
oss_key: edu-raw/k9/chinese/chinese-poetry/caocao.tar.gz
src_path: "曹操诗集"
sha256: null
size: null
media_type: application/gzip
fetch_date: null
status: planned
note: 仓库「曹操诗集/」目录。初中「观沧海」「龟虽寿」。
- id: youmengying
title: 幽梦影
oss_key: edu-raw/k9/chinese/chinese-poetry/youmengying.tar.gz
src_path: "幽梦影"
sha256: null
size: null
media_type: application/gzip
fetch_date: null
status: planned
note: 仓库「幽梦影/」目录。小品文,作文素材向,非课内。
# 未纳入:「御定全唐詩」(繁体,与 quan-tang-shi 内容重复)、「水墨唐诗」(配图素材,
# 如需可后续作为 L4 图片素材单列)、rank/ strains/ loader/(项目脚本与排行,非内容数据)。

27
sources/china/ck12.yaml 普通文件
查看文件

@@ -0,0 +1,27 @@
# 科学 / 物理 — CK-12 FlexBooks(次选,需人工导出)
#
# 定位:内容体系完整(美国 K-12 科学/物理电子课本),但**不可自动下载**——需网页交互
# 或账号导出 PDF/ePub,且为英文,进 L3 前还要翻译改编。因此优先级低于 phet。
# 只在 PhET 覆盖不到的知识点(如系统性的教材式讲解、章末习题)才考虑取用。
sources:
- id: ck12
title: CK-12 FlexBooks — 科学 / 物理开放电子课本
publisher: CK-12 Foundation
type: book
url: https://www.ck12.org/
license: cc-nc-education
license_note: >-
CC BY-NC(署名-非商业)。允许改编与翻译,但**禁止商业使用**,因此 product_safe=false:
可用于内部教研与非商业教学,不得进入对外收费产品。取用前须逐本核实当册许可页。
fetch_method: manual-download
status: planned
subjects: [science, physics]
stages: [primary, junior]
fetched_at: null
items: []
# items 待人工导出后登记。候选册目(英文):
# - Middle School Physical Science / Middle School Physics(初中物理)
# - Middle School Life Science / Earth Science(初中科学)
# - Elementary School Science(小学科学)
# 导出流程:ck12.org 选册 → Download → PDF/ePub → 上传 OSS edu-raw/k9/{science|physics}/ck12/

225
sources/china/phet.yaml 普通文件
查看文件

@@ -0,0 +1,225 @@
# 科学 / 物理 — PhET 互动仿真(可自动下载)
#
# 为什么是主力来源:CC-BY 4.0(署名即可商用再分发)+ 有官方简体中文版 + 单文件可直接 curl。
# 这是科学/物理两科里**唯一既高质量又能全自动下载**的开放资源。
#
# 下载模板(已实测可用,2026-08-22 全部返回 200):
# https://phet.colorado.edu/sims/html/{item-id}/latest/{item-id}_zh_CN.html
# 每个仿真是一个自包含的离线 HTML5 单文件(内联全部 JS/资源),大小约 2–5 MB,
# 下载后可直接本地/内网打开,无需联网。本 source 21 个条目合计约 70 MB。
#
# 注意:并非所有仿真都有 zh_CN 版本。已实测 404 的(geometric-optics-basics、
# sound-waves、my-solar-system)未纳入;新增条目前请先 curl 探测再登记。
sources:
- id: phet
title: PhET 互动仿真 — 简体中文离线单文件(科学/物理)
publisher: University of Colorado Boulder
type: tool
url: https://phet.colorado.edu/
license: cc-by
license_note: >-
CC-BY 4.0,署名即可,允许商用与再分发。对外发布须保留 "PhET Interactive Simulations,
University of Colorado Boulder" 署名与 CC-BY 链接。仿真为交互式工具(非题库),
适合嵌入课程页面作探究活动。
url_template: https://phet.colorado.edu/sims/html/{item_id}/latest/{item_id}_zh_CN.html
fetch_method: curl
status: fetched
subjects: [science, physics, chemistry]
stages: [primary, junior]
fetched_at: 2026-08-22
items:
# ===== 初中物理:力与运动 =====
- id: forces-and-motion-basics
title: 力和运动基础
oss_key: edu-raw/k9/physics/phet/forces-and-motion-basics_zh_CN.html
sha256: 2d5bb20f1243f89e0edc807461481904b61a98dee8438854563658515d800a16
size: 4851186
media_type: text/html
fetch_date: 2026-08-22
status: fetched
note: 初中物理|力的合成、摩擦、牛顿定律入门。实测约 4.8 MB。
- id: friction
title: 摩擦力
oss_key: edu-raw/k9/physics/phet/friction_zh_CN.html
sha256: abe2f1ee0de0bb614ab8e00de29f2f6e1668ada97a067e343db306030f1b1320
size: 2081436
media_type: text/html
fetch_date: 2026-08-22
status: fetched
note: 初中物理|摩擦生热的微观解释。实测约 2.1 MB。
- id: balancing-act
title: 平衡(杠杆)
oss_key: edu-raw/k9/physics/phet/balancing-act_zh_CN.html
sha256: f8a725c4242c308ba6a6450fd79a93a98a0954c8a697bee88637f68f82148c86
size: 3152716
media_type: text/html
fetch_date: 2026-08-22
status: fetched
note: 初中物理|杠杆平衡条件、力矩。实测约 3.2 MB。
- id: hookes-law
title: 胡克定律
oss_key: edu-raw/k9/physics/phet/hookes-law_zh_CN.html
sha256: 3ab65654e49500c721f6bdf7995ab48257b8b894042853731adc5d1e64361f26
size: 2427596
media_type: text/html
fetch_date: 2026-08-22
status: fetched
note: 初中物理|弹力与形变的正比关系。
- id: masses-and-springs-basics
title: 质量与弹簧(基础)
oss_key: edu-raw/k9/physics/phet/masses-and-springs-basics_zh_CN.html
sha256: e2802cc4ec2dccde90467fbbda7a47e8dbf37e4a5ce166209501aae38eb8347c
size: 1762060
media_type: text/html
fetch_date: 2026-08-22
status: fetched
note: 初中物理|弹簧测力计原理、简谐运动直观。
- id: projectile-motion
title: 抛体运动
oss_key: edu-raw/k9/physics/phet/projectile-motion_zh_CN.html
sha256: a331570b5d2a6225a26b078e25700a3098b7eb4d99a997b1ccfe04a4f7097943
size: 4378652
media_type: text/html
fetch_date: 2026-08-22
status: fetched
note: 初中物理(拓展)|运动的合成与分解,衔接高中。
- id: energy-skate-park-basics
title: 能量滑板公园(基础)
oss_key: edu-raw/k9/physics/phet/energy-skate-park-basics_zh_CN.html
sha256: 33704f185353838f97fde2482d970df456f6ce7c1d34fe487b0303c28c724eb7
size: 4912386
media_type: text/html
fetch_date: 2026-08-22
status: fetched
note: 初中物理|动能/势能转化与机械能守恒。实测约 4.9 MB。
# ===== 初中物理:压强与浮力 =====
- id: density
title: 密度
oss_key: edu-raw/k9/physics/phet/density_zh_CN.html
sha256: 1dd91f8c05a0e7839ab5e0a122755ed8808fc46fcd87bc0c08d7ead706f9ebd9
size: 4846707
media_type: text/html
fetch_date: 2026-08-22
status: fetched
note: 初中物理|密度概念与沉浮判断。实测约 4.8 MB。
- id: under-pressure
title: 压强(液体内部压强)
oss_key: edu-raw/k9/physics/phet/under-pressure_zh_CN.html
sha256: df9c145fd82f28157427e452da22f84188366960a258aac19c26fecd91106231
size: 1234194
media_type: text/html
fetch_date: 2026-08-22
status: fetched
note: 初中物理|液体压强随深度/密度变化。
# ===== 初中物理:电与磁 =====
- id: circuit-construction-kit-dc
title: 直流电路搭建实验
oss_key: edu-raw/k9/physics/phet/circuit-construction-kit-dc_zh_CN.html
sha256: 94efaabb68fc5a61b69a50b0b63953cb38fe5d4b801473fa3348e2833a640fe7
size: 3509296
media_type: text/html
fetch_date: 2026-08-22
status: fetched
note: 初中物理|串并联、欧姆定律、电表读数。**电学最重要的一个仿真**。实测约 3.5 MB。
- id: balloons-and-static-electricity
title: 气球与静电
oss_key: edu-raw/k9/physics/phet/balloons-and-static-electricity_zh_CN.html
sha256: fde2657d9ba242fd153a5c4b7bd26a8624a38a25249251094d45af5c870bd09c
size: 3539205
media_type: text/html
fetch_date: 2026-08-22
status: fetched
note: 初中物理|电荷转移与摩擦起电。实测约 3.5 MB。
- id: john-travoltage
title: 静电放电(John Travoltage)
oss_key: edu-raw/k9/physics/phet/john-travoltage_zh_CN.html
sha256: ceb1fb773cf93e1e42fab1784f6a72843ff02dda84d3128fac7562fbb767110b
size: 1918798
media_type: text/html
fetch_date: 2026-08-22
status: fetched
note: 初中物理|电荷积累与放电现象,趣味性强。
- id: faradays-law
title: 法拉第电磁感应定律
oss_key: edu-raw/k9/physics/phet/faradays-law_zh_CN.html
sha256: 9c3270c9e0d9485779c92400945be32b03ea6148c77b49790c96f55cabab68e8
size: 2227465
media_type: text/html
fetch_date: 2026-08-22
status: fetched
note: 初中物理(拓展)|磁生电,衔接发电机原理。
# ===== 初中物理:光与波 =====
- id: bending-light
title: 光的折射
oss_key: edu-raw/k9/physics/phet/bending-light_zh_CN.html
sha256: 7edcfa3f426b9241485e06c3e9ad132a38c9564e4e1eb2637362bf4c08c0116e
size: 3406402
media_type: text/html
fetch_date: 2026-08-22
status: fetched
note: 初中物理|反射/折射定律、色散。实测约 3.4 MB。
- id: wave-on-a-string
title: 绳上的波
oss_key: edu-raw/k9/physics/phet/wave-on-a-string_zh_CN.html
sha256: f7e197797642e04be1d7360681f65bf2df67377d60e53b22a996881801f06b8d
size: 2487284
media_type: text/html
fetch_date: 2026-08-22
status: fetched
note: 初中物理|波的产生与传播、频率/振幅/波速。实测约 2.5 MB。
- id: color-vision
title: 视觉与颜色
oss_key: edu-raw/k9/physics/phet/color-vision_zh_CN.html
sha256: 26466a0acb4515bbd9fda6d70495a9d713e5c6af8064f6a2e94ec6b4c868c9b8
size: 5772634
media_type: text/html
fetch_date: 2026-08-22
status: fetched
note: 小学科学 / 初中物理|三原色与色觉形成。
# ===== 小学 / 初中科学 =====
- id: states-of-matter-basics
title: 物态变化(基础)
oss_key: edu-raw/k9/science/phet/states-of-matter-basics_zh_CN.html
sha256: e0b511b18f3d19ee3be0df01c694e1eddf10003aae453ed8ff3e07e8fe5a2fe0
size: 1918612
media_type: text/html
fetch_date: 2026-08-22
status: fetched
note: 小学科学 / 初中物理|固液气三态与微观粒子模型。实测约 1.9 MB。
- id: gravity-force-lab-basics
title: 万有引力实验(基础)
oss_key: edu-raw/k9/science/phet/gravity-force-lab-basics_zh_CN.html
sha256: 8e302da41a15a1d2d3280082dcf61c495b01b8f606efb4afafdbec328ccab0c5
size: 2888393
media_type: text/html
fetch_date: 2026-08-22
status: fetched
note: 小学科学 / 初中物理|质量与距离如何影响引力。
- id: gravity-and-orbits
title: 引力与轨道
oss_key: edu-raw/k9/science/phet/gravity-and-orbits_zh_CN.html
sha256: 9c82f56dd60fe2be49036b9b2eedfa74d7fc36fac37f33148bcd82be361688fa
size: 3446870
media_type: text/html
fetch_date: 2026-08-22
status: fetched
note: 小学科学(天文)|日地月系统、四季与公转。
- id: concentration
title: 溶液浓度
oss_key: edu-raw/k9/science/phet/concentration_zh_CN.html
sha256: 8a8f72ee0281f6032492fe42669e5dac7cf1f9855342c0c0f67acd546a488de5
size: 2621430
media_type: text/html
fetch_date: 2026-08-22
status: fetched
note: 小学科学 / 初中化学|溶解、浓度、饱和。
- id: ph-scale-basics
title: pH 值(基础)
oss_key: edu-raw/k9/science/phet/ph-scale-basics_zh_CN.html
sha256: 04123b8ae4ba580533f6b784ab8eb26335e244fea71f0051a205b145644137bc
size: 2523039
media_type: text/html
fetch_date: 2026-08-22
status: fetched
note: 小学科学 / 初中化学|酸碱性与常见物质 pH。

查看文件

@@ -8,6 +8,8 @@ sources:
license_note: "官方平台,教学使用;具体导出内容须遵守平台服务条款"
fetch_method: manual-export
status: planned
subjects: [chinese, math, english, science, morality, physics, chemistry, biology, history, geography, it]
stages: [primary, junior]
items: []
- id: tal-scq5k
title: TAL-SCQ5K 小学应用题数据集
@@ -18,6 +20,8 @@ sources:
license_note: "研究/教育用途,非商业(见仓库许可)"
fetch_method: manual-download
status: planned
subjects: [math]
stages: [primary, junior]
items: []
- id: ape210k
title: Ape210K 小学应用题数据集(21万题)
@@ -28,6 +32,8 @@ sources:
license_note: "研究/教育用途,非商业"
fetch_method: git-clone
status: planned
subjects: [math]
stages: [primary]
items: []
- id: math23k
title: Math23K 初中数学应用题数据集
@@ -38,6 +44,8 @@ sources:
license_note: "研究/教育用途,非商业"
fetch_method: git-clone
status: planned
subjects: [math]
stages: [junior]
items: []
- id: cmath
title: CMATH 中文小学数学数据集
@@ -48,4 +56,6 @@ sources:
license_note: "研究/教育用途,非商业"
fetch_method: manual-download
status: planned
subjects: [math]
stages: [primary]
items: []

查看文件

@@ -8,6 +8,8 @@ sources:
license_note: "AMC 真题版权归 MAA,公开传播受限;内部教研参考,禁止再分发/商用。待核查后定级"
fetch_method: manual-download
status: planned
subjects: [amc8, math]
stages: [primary, junior]
items: []
- id: ccf-csp
title: CCF CSP-J/S 历年真题
@@ -18,4 +20,6 @@ sources:
license_note: "CCF 官方公开,允许教学使用"
fetch_method: manual-download
status: planned
subjects: [cspj, it]
stages: [junior]
items: []

查看文件

@@ -8,38 +8,90 @@ sources:
license_note: "官方免费发布,允许教学使用(样卷/词表/听力音频)"
fetch_method: manual-download
status: fetched
fetched_at: "2026-08-21"
subjects: [ket, pet, fce, english]
stages: [primary, junior]
fetched_at: 2026-08-22
items:
- id: a2-key-vocab
title: A2 Key 2020 词汇表 PDF
oss_key: edu-raw/exams/ket/vocab/cambridge-official/a2-key-vocabulary-list.pdf
sha256: null
size: null
sha256: 2abe174d067cd17ffa061cfc4bbbc0e5a55185ac696a5ef8ba49372c753a3ad6
size: 544296
media_type: application/pdf
fetch_date: "2026-08-21"
status: planned
fetch_date: 2026-08-22
status: fetched
note: "vocab JSONL (structured/exams/ket/vocab/) 由此清洗;待 oss_sync 上传"
- id: b1-preliminary-vocab
title: B1 Preliminary 词汇表 PDF
oss_key: edu-raw/exams/pet/vocab/cambridge-official/b1-preliminary-vocabulary-list.pdf
sha256: null
size: null
title: B1 Preliminary 2020 词汇表 PDF
oss_key: edu-raw/exams/pet/vocab/cambridge-official/b1-preliminary-2020-vocabulary-list.pdf
sha256: 85b094be8c214e4da6cb710f0b5450a455ae010ccb4064c5578f68ef6aa139ad
size: 628829
media_type: application/pdf
fetch_date: "2026-08-21"
status: planned
fetch_date: 2026-08-22
status: fetched
note: "B1 词表清洗源;直链域名用 cambridgeenglish.cn(.org 已 404)"
- id: b1-preliminary-vocab-booklet
title: B1 Preliminary 词汇手册 PDF(含释义/例句,较厚)
oss_key: edu-raw/exams/pet/vocab/cambridge-official/b1-preliminary-vocabulary-booklet.pdf
sha256: c4fae109ab5416c7bc68e6686fd9a69abf2428f73e5768ce248d810e612eef20
size: 8202984
media_type: application/pdf
fetch_date: 2026-08-22
status: fetched
- id: a2-key-listening
title: A2 Key 听力音频
oss_key: edu-raw/exams/ket/audio/cambridge-official/a2-key-listening.mp3
sha256: null
size: null
sha256: f50df0695c23148f0caac3cf059fb9028db6ee467e75b993ebb0e60af2f70654
size: 11974884
media_type: audio/mpeg
fetch_date: "2026-08-21"
status: planned
- id: sample-papers
title: 官方样卷包(PDF/MP3/ZIP)
oss_key: edu-raw/exams/ket/sample_papers/cambridge-official/
sha256: null
size: null
fetch_date: 2026-08-22
status: fetched
- id: b1-preliminary-listening
title: B1 Preliminary 听力音频
oss_key: edu-raw/exams/pet/audio/cambridge-official/b1-preliminary-listening.mp3
sha256: 8d2cd238fc9b3fe6342467a0f288a98dfb4481c5239d7bd8539f6d9b4bc76090
size: 26401678
media_type: audio/mpeg
fetch_date: 2026-08-22
status: fetched
# 样卷:oss_key 必须是具体文件(目录形式无法单文件上传/校验)
- id: a2-key-sample-tests-zip
title: A2 Key for Schools 官方样卷包 ZIP
oss_key: edu-raw/exams/ket/sample_papers/cambridge-official/a2-key-for-schools-sample-tests.zip
sha256: 349d83c36718e597322588895a5dfce59e319f773263b3a60d96e0650f784e07
size: 24264467
media_type: application/zip
fetch_date: "2026-08-21"
status: planned
fetch_date: 2026-08-22
status: fetched
- id: b1-preliminary-sample-tests-zip
title: B1 Preliminary for Schools 官方样卷包 ZIP
oss_key: edu-raw/exams/pet/sample_papers/cambridge-official/b1-preliminary-for-schools-sample-tests.zip
sha256: 3e11b30226c492d4dab168b60d8607d19131751e4e465e2e5b20e98c217cc077
size: 23143382
media_type: application/zip
fetch_date: 2026-08-22
status: fetched
- id: a2-key-handbook
title: A2 Key for Schools 考官手册 PDF
oss_key: edu-raw/exams/ket/sample_papers/cambridge-official/a2-key-handbook.pdf
sha256: ebd74b6103c0a06276c6459f5eb947531b49f365bc4df2d52fc7bec85bbd9f0c
size: 7860476
media_type: application/pdf
fetch_date: 2026-08-22
status: fetched
- id: b1-preliminary-handbook
title: B1 Preliminary for Schools 考官手册 PDF
oss_key: edu-raw/exams/pet/sample_papers/cambridge-official/b1-preliminary-handbook.pdf
sha256: fd47cbd4bf647a9188b4e913eafe8a63eb904e4babd7f89fc8abc1ebd47e5d49
size: 9073455
media_type: application/pdf
fetch_date: 2026-08-22
status: fetched
- id: score-conversion
title: 分数换算表 PDF(原始分 → Cambridge Scale)
oss_key: edu-raw/exams/ket/sample_papers/cambridge-official/score-conversion.pdf
sha256: 63e371b4f1dc6d51069a443461af3f3811dac5599ce0f879f867e7521f5d9330
size: 695401
media_type: application/pdf
fetch_date: 2026-08-22
status: fetched

查看文件

@@ -8,23 +8,27 @@ sources:
license_note: "研究/教育用途,非商业(见仓库 licence.txt)"
fetch_method: git-clone
status: fetched
subjects: [ket, pet, fce, english]
stages: [primary, junior]
fetched_at: "2026-08-21"
items:
- id: cepoc-ket-json
title: KET.json(6套68空)
title: KET.json(6套完形)
oss_key: edu-raw/exams/ket/questions/cepoc/KET.json
src_path: KET.json
sha256: null
size: null
media_type: application/json
fetch_date: "2026-08-21"
status: planned
note: "latin1 编码;清洗为 qb-1.1 落 structured/exams/ket/questions/cepoc-a2-key.jsonl"
note: "latin1 编码 JSONL;清洗为 qb-1.1 落 structured/exams/ket/questions/cepoc-a2-key.jsonl"
- id: cepoc-b1-json
title: B1 Preliminary.json(含 FCE 36套360空)
oss_key: edu-raw/exams/pet/questions/cepoc/B1-Preliminary.json
title: PET.json(21套完形,即 B1 Preliminary)
oss_key: edu-raw/exams/pet/questions/cepoc/PET.json
src_path: PET.json
sha256: null
size: null
media_type: application/json
fetch_date: "2026-08-21"
status: planned
note: "清洗为 qb-1.1 落 structured/exams/pet/questions/cepoc-b1-preliminary.jsonl"
note: "repo 实际文件名为 PET.json(此前误登记为 B1-Preliminary.json);清洗落 structured/exams/pet/questions/cepoc-b1-preliminary.jsonl"

查看文件

@@ -8,6 +8,8 @@ sources:
license_note: "自制课件,仅内部参考,禁止再分发/商用"
fetch_method: manual-export
status: archived
subjects: [it]
stages: [primary, junior]
items:
- id: qihang-v1-all
title: 启航班V1 整包归档

查看文件

@@ -8,6 +8,8 @@ sources:
license_note: "自制课件,仅内部参考,禁止再分发/商用"
fetch_method: manual-export
status: archived
subjects: [it]
stages: [primary, junior]
items:
- id: qihang-v2-all
title: 启航班V2 整包归档

查看文件

@@ -8,6 +8,8 @@ sources:
license_note: "自制工程,仅内部参考;若持续演进可未来拆独立 repo"
fetch_method: manual-export
status: archived
subjects: [it]
stages: [primary, junior]
items:
- id: qihang-v3-all
title: 启航班V3 整包归档

查看文件

@@ -8,6 +8,8 @@ sources:
license_note: "自制课件,仅内部参考,禁止再分发/商用"
fetch_method: manual-export
status: archived
subjects: [it]
stages: [primary, junior]
items:
- id: zhizaoying-v1-all
title: 智造营V1 整包归档

查看文件

@@ -3,47 +3,230 @@
"title": "edu-content source registry",
"description": "机器可读的 L1 资源清单。一个 YAML 文件 = 一个域,内含多条 source。source 是四层血缘链的根 id。",
"type": "object",
"required": ["sources"],
"required": [
"sources"
],
"additionalProperties": false,
"properties": {
"sources": {
"type": "array",
"items": { "$ref": "#/definitions/source" }
"items": {
"$ref": "#/definitions/source"
}
}
},
"definitions": {
"source": {
"type": "object",
"required": ["id", "title", "publisher", "type", "license", "status"],
"required": [
"id",
"title",
"publisher",
"type",
"license",
"status",
"subjects"
],
"additionalProperties": false,
"properties": {
"id": { "type": "string", "pattern": "^[a-z0-9][a-z0-9-]*$", "description": "全局唯一 kebab-case,血缘链根 id" },
"title": { "type": "string" },
"publisher": { "type": "string" },
"type": { "type": "string", "enum": ["dataset", "website", "book", "internal", "tool"] },
"url": { "type": ["string", "null"], "description": "internal 可为 null" },
"license": { "type": "string", "enum": ["official-free", "cc-by", "cc-by-sa", "cc-nc-education", "restricted", "internal-only", "llm-generated", "unknown"] },
"license_note": { "type": "string" },
"fetch_method": { "type": "string", "enum": ["curl", "git-clone", "manual-download", "manual-export", "generated"], "description": "unknown 允许暂存" },
"status": { "type": "string", "enum": ["planned", "fetching", "fetched", "failed", "archived"] },
"fetched_at": { "type": ["string", "null"], "pattern": "^\\d{4}-\\d{2}-\\d{2}$|^$" },
"items": { "type": "array", "items": { "$ref": "#/definitions/item" } }
"id": {
"type": "string",
"pattern": "^[a-z0-9][a-z0-9-]*$",
"description": "全局唯一 kebab-case,血缘链根 id"
},
"title": {
"type": "string"
},
"publisher": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"dataset",
"website",
"book",
"internal",
"tool"
]
},
"url": {
"type": [
"string",
"null"
],
"description": "internal 可为 null"
},
"license": {
"type": "string",
"enum": [
"official-free",
"mit",
"cc-by",
"cc-by-sa",
"cc-nc-education",
"restricted",
"internal-only",
"llm-generated",
"unknown"
]
},
"license_note": {
"type": "string"
},
"fetch_method": {
"type": "string",
"enum": [
"curl",
"git-clone",
"manual-download",
"manual-export",
"generated"
],
"description": "unknown 允许暂存"
},
"status": {
"type": "string",
"enum": [
"planned",
"fetching",
"fetched",
"failed",
"archived"
]
},
"fetched_at": {
"type": [
"string",
"null"
],
"pattern": "^\\d{4}-\\d{2}-\\d{2}$|^$"
},
"items": {
"type": "array",
"items": {
"$ref": "#/definitions/item"
}
},
"subjects": {
"type": "array",
"items": {
"type": "string",
"enum": [
"chinese",
"math",
"english",
"science",
"morality",
"physics",
"chemistry",
"biology",
"history",
"geography",
"it",
"ket",
"pet",
"fce",
"amc8",
"cspj"
]
},
"description": "该来源覆盖的学科/考试域,取值与 structured/ 目录名一致;用于回答『某学科有哪些来源』"
},
"stages": {
"type": "array",
"items": {
"type": "string",
"enum": [
"primary",
"junior"
]
},
"description": "覆盖学段:primary=小学,junior=初中"
},
"url_template": {
"type": [
"string",
"null"
],
"description": "fetch_method=curl 时的下载模板,{item_id} 占位;item.url 优先级更高。例:https://host/sims/{item_id}/{item_id}_zh_CN.html"
}
}
},
"item": {
"type": "object",
"required": ["id", "title"],
"required": [
"id",
"title"
],
"additionalProperties": false,
"properties": {
"id": { "type": "string", "pattern": "^[a-z0-9][a-z0-9-]*$", "description": "source 内唯一" },
"title": { "type": "string" },
"oss_key": { "type": ["string", "null"], "description": "fetched 后必填,形如 edu-raw/exams/ket/vocab/cambridge-official/a2-key-vocab.pdf" },
"sha256": { "type": ["string", "null"], "pattern": "^[a-f0-9]{64}$|^$" },
"size": { "type": ["integer", "null"], "minimum": 0 },
"media_type": { "type": "string" },
"fetch_date": { "type": ["string", "null"], "pattern": "^\\d{4}-\\d{2}-\\d{2}$|^$" },
"status": { "type": "string", "enum": ["planned", "fetching", "fetched", "failed", "archived"] },
"note": { "type": "string" }
"id": {
"type": "string",
"pattern": "^[a-z0-9][a-z0-9-]*$",
"description": "source 内唯一"
},
"title": {
"type": "string"
},
"oss_key": {
"type": [
"string",
"null"
],
"description": "fetched 后必填,形如 edu-raw/exams/ket/vocab/cambridge-official/a2-key-vocab.pdf"
},
"sha256": {
"type": [
"string",
"null"
],
"pattern": "^[a-f0-9]{64}$|^$"
},
"size": {
"type": [
"integer",
"null"
],
"minimum": 0
},
"media_type": {
"type": "string"
},
"fetch_date": {
"type": [
"string",
"null"
],
"pattern": "^\\d{4}-\\d{2}-\\d{2}$|^$"
},
"status": {
"type": "string",
"enum": [
"planned",
"fetching",
"fetched",
"failed",
"archived"
]
},
"note": {
"type": "string"
},
"url": {
"type": [
"string",
"null"
],
"description": "该条目的直接下载地址;缺省时由 source.url_template 渲染"
},
"src_path": {
"type": [
"string",
"null"
],
"description": "fetch_method=git-clone 时,条目在仓库内的相对路径(打包为 oss_key 指向的归档)"
}
}
}
}