eduevidence 6.2.0 → 6.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +395 -0
- package/README.md +22 -13
- package/README.zh-CN.md +15 -8
- package/SKILL.md +10 -9
- package/benchmarks/evidence-library.json +277 -1
- package/docs/architecture.md +6 -3
- package/docs/j-ev-experimental.md +250 -0
- package/docs/reproducibility.md +138 -0
- package/domains/_neutral/copy/few_shots.json +21 -0
- package/domains/_neutral/copy/framing_lexicon.json +19 -0
- package/domains/_neutral/copy/module_labels.json +5 -0
- package/domains/_neutral/copy/module_labels_footer.json +102 -0
- package/domains/_neutral/copy/module_labels_modules.json +204 -0
- package/domains/_neutral/copy/module_labels_nav.json +126 -0
- package/domains/_neutral/copy/module_labels_summary.json +98 -0
- package/domains/_neutral/copy/module_labels_tables.json +164 -0
- package/domains/_neutral/copy/module_labels_v2.json +90 -0
- package/domains/_neutral/copy/risk_constructs.json +20 -0
- package/domains/_neutral/copy/section_titles.json +66 -0
- package/domains/_neutral/copy/terminology.json +11 -0
- package/domains/check_copy_packs.py +103 -0
- package/domains/education/copy/few_shots.json +22 -0
- package/domains/education/copy/framing_enums.json +167 -0
- package/domains/education/copy/framing_lexicon.json +166 -0
- package/domains/education/copy/module_labels.json +169 -0
- package/domains/education/copy/risk_constructs.json +48 -0
- package/domains/education/copy/section_titles.json +186 -0
- package/domains/education/copy/terminology.json +70 -0
- package/domains/education/manifest.json +1 -1
- package/domains/education/outcome_taxonomy.json +2 -2
- package/domains/manifest.json +1 -1
- package/domains/policy/copy/few_shots.json +22 -0
- package/domains/policy/copy/framing_enums.json +94 -0
- package/domains/policy/copy/framing_lexicon.json +174 -0
- package/domains/policy/copy/module_labels.json +168 -0
- package/domains/policy/copy/risk_constructs.json +33 -0
- package/domains/policy/copy/section_titles.json +186 -0
- package/domains/policy/copy/terminology.json +64 -0
- package/engine/capabilities.py +57 -5
- package/engine/decision_policy.py +88 -17
- package/engine/library_builtin.py +7 -4
- package/engine/tribunal.py +17 -23
- package/engine/versions.py +1 -1
- package/examples/ai-coding-assistant-evidence/EduEvidence_Report.html +4 -4
- package/examples/ai-coding-assistant-evidence/reports-5themes/EduEvidence_Report_academic.html +4 -4
- package/examples/ai-coding-assistant-evidence/reports-5themes/EduEvidence_Report_claude.html +4 -4
- package/examples/ai-coding-assistant-evidence/reports-5themes/EduEvidence_Report_datalab-dark.html +4 -4
- package/examples/ai-coding-assistant-evidence/reports-5themes/EduEvidence_Report_datalab.html +4 -4
- package/examples/ai-coding-assistant-evidence/reports-5themes/EduEvidence_Report_presentation.html +4 -4
- package/examples/spaced-retrieval-practice/EduEvidence_Report.html +2728 -0
- package/examples/spaced-retrieval-practice/report.html +2522 -0
- package/examples/spaced-retrieval-practice/reports-5themes/EduEvidence_Report_academic.html +4 -4
- package/examples/spaced-retrieval-practice/reports-5themes/EduEvidence_Report_claude.html +4 -4
- package/examples/spaced-retrieval-practice/reports-5themes/EduEvidence_Report_datalab-dark.html +4 -4
- package/examples/spaced-retrieval-practice/reports-5themes/EduEvidence_Report_datalab.html +4 -4
- package/examples/spaced-retrieval-practice/reports-5themes/EduEvidence_Report_presentation.html +4 -4
- package/examples/workplace-ai-assistant/EduEvidence_Report.html +2814 -0
- package/examples/workplace-ai-assistant/reports-5themes/EduEvidence_Report_academic.html +36 -36
- package/examples/workplace-ai-assistant/reports-5themes/EduEvidence_Report_claude.html +36 -36
- package/examples/workplace-ai-assistant/reports-5themes/EduEvidence_Report_datalab-dark.html +36 -36
- package/examples/workplace-ai-assistant/reports-5themes/EduEvidence_Report_datalab.html +36 -36
- package/examples/workplace-ai-assistant/reports-5themes/EduEvidence_Report_presentation.html +36 -36
- package/integrations/jev/__init__.py +115 -0
- package/integrations/jev/approval.py +212 -0
- package/integrations/jev/cli.py +84 -0
- package/integrations/jev/config.py +112 -0
- package/integrations/jev/gateway.py +128 -0
- package/integrations/jev/modes.py +38 -0
- package/integrations/jev/tools_classify.py +88 -0
- package/integrations/jev/tools_extract.py +111 -0
- package/integrations/jev/tools_rerank.py +71 -0
- package/integrations/jev/tools_screen.py +87 -0
- package/integrations/jev/tools_verify.py +95 -0
- package/integrations/jev_mcp.py +22 -0
- package/integrations/semantic_decide.py +286 -0
- package/integrations/semdecide_cli.py +55 -0
- package/package.json +9 -1
- package/pyproject.toml +1 -1
- package/references/report-copy-style.md +43 -3
- package/schemas/v2/decision-snapshot.schema.json +20 -9
- package/schemas/v2/intake.schema.json +191 -0
- package/scripts/build_evidence_library.py +15 -5
- package/scripts/dashboard_server.py +13 -2
- package/scripts/intake/__init__.py +31 -0
- package/scripts/intake/__main__.py +18 -0
- package/scripts/intake/background.py +78 -0
- package/scripts/intake/browser.py +79 -0
- package/scripts/intake/cli.py +57 -0
- package/scripts/intake/constants.py +57 -0
- package/scripts/intake/depth.py +53 -0
- package/scripts/intake/enhancements.py +106 -0
- package/scripts/intake/hooks.py +90 -0
- package/scripts/intake/prefs.py +76 -0
- package/scripts/intake/prompts.py +85 -0
- package/scripts/intake/session.py +152 -0
- package/scripts/lint_file_layers.py +126 -0
- package/scripts/orchestrator.py +68 -17
- package/scripts/pre_verdict_gate.py +21 -7
- package/scripts/skill_lint.py +11 -1
- package/scripts/skill_payload.py +3 -3
- package/scripts/test_adversarial_empirical.py +70 -6
- package/skill/agents/evidence-judge.md +49 -7
- package/skill/workflows/experimental-jev.md +170 -0
- package/skill/workflows/intake.md +120 -0
- package/visualization/eduevidence-report/scripts/build_infographics.py +32 -14
- package/visualization/eduevidence-report/scripts/build_report.py +75 -662
- package/visualization/eduevidence-report/scripts/report_copy_pack.py +296 -0
- package/visualization/eduevidence-report/scripts/report_copy_policy_guard.py +47 -0
- package/visualization/eduevidence-report/scripts/zh_labels.py +61 -0
- package/scripts/build_esl_artifacts.py +0 -1921
- package/scripts/build_killer_demo.py +0 -295
- package/scripts/enrich_projects_human_and_lieflat.py +0 -315
- package/scripts/generate_new_projects.py +0 -686
- package/scripts/sync_killer_demo_report.py +0 -270
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
# EduEvidence 复现指南
|
|
2
|
+
|
|
3
|
+
> **复现范围声明(v5.2.0 起,R6 口径收敛)**:可复现承诺分两层,不得混谈。
|
|
4
|
+
>
|
|
5
|
+
> 1. **确定性层(完全可复现)**:schema 校验、置信度计算(规则化公式)、pre-verdict gate、
|
|
6
|
+
> meta-analysis/robustness 数学、报告烘焙与哈希链——同一输入在同一版本上逐字节可复现;
|
|
7
|
+
> 本指南的三步走覆盖这一层。
|
|
8
|
+
> 2. **LLM 层(有边界可复现)**:检索、抽取、挑战、裁决等依赖外部 LLM 的阶段不是逐字节
|
|
9
|
+
> 确定的。其复现条件 = 模型版本 + temperature + prompt 版本 三者同时固定;当前仓库通过
|
|
10
|
+
> run manifest 记录这三项(如 `benchmarks/empirical/run-empirical-01/manifest.json` 的
|
|
11
|
+
> `temperature: 0.0`),但不承诺跨模型供应商的结果一致。
|
|
12
|
+
>
|
|
13
|
+
> 引擎对"证据是否真实"的立场:所有示例包在 `result.json.meta.data_origin` 与报告头徽章中
|
|
14
|
+
> 如实标注数据来源(`real` / `manual_curated` / `synthetic` / `hybrid`);引用的 DOI 经
|
|
15
|
+
> `scripts/audit_dois.py` 对照 Crossref/DataCite 注册表核验(报告:
|
|
16
|
+
> `benchmarks/doi-audit/report.md`)。标注 `synthetic` 的演示包不构成任何实证声明。
|
|
17
|
+
|
|
18
|
+
本指南确保任何人在全新环境中都能复现 EduEvidence 确定性层的校验、测试与 Benchmark 结果。全部命令以仓库根目录 `<repo-root>`(即 pyproject.toml 所在目录)为工作目录执行。
|
|
19
|
+
|
|
20
|
+
## 〇、V2 Research Engine 复现
|
|
21
|
+
|
|
22
|
+
- 引擎模块 `engine/`(stdlib-only)可独立复现:`python3 -m pytest tests/test_v2_*.py`。
|
|
23
|
+
- 图状态复现:`graph/HEAD` + `revisions/rev-N` 快照 + `manifest.json` 的 before/after 哈希链;同一输入 bundle 提交产生确定性哈希。
|
|
24
|
+
- V1 历史产物(`examples/ai-coding-assistant/`、旧 `runs/`)不可变;`eduevidence migrate-v1 --pack <dir>` 生成新 V2 Project 且不改动源包。
|
|
25
|
+
- Shared Research Library 与 Project 图同用不可变 revision 模型;快照导入记录 `library_revision/library_entity_id/content_hash/imported_at`。
|
|
26
|
+
- 测试覆盖:V1 兼容基线、图原子性/孤儿 revision/HEAD 镜像分歧修复、迁移不变量、模式推荐、能力规划、synthesis 独立计数、Tribunal 政策、Gap 推导、数据集隐私门、全周期单 revision 提交、决策 diff、CLI 薄分发。
|
|
27
|
+
|
|
28
|
+
## 一、环境要求
|
|
29
|
+
|
|
30
|
+
- **Python**:≥ 3.10(pyproject.toml 中 `requires-python = ">=3.10"`);
|
|
31
|
+
- **pytest**:≥ 7.0(dev 依赖,安装时自动带入);
|
|
32
|
+
- 无其它强制运行时依赖:EduEvidence 本体是文档+Schema+脚本,Mode A 平台原生模式下不需要 daemon / CLI / Agent MCP;
|
|
33
|
+
- 操作系统:macOS / Linux / Windows 均可;建议使用 venv 隔离环境。
|
|
34
|
+
|
|
35
|
+
### 1.1 创建虚拟环境(推荐)
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
cd <repo-root>
|
|
39
|
+
python3.11 -m venv .venv
|
|
40
|
+
source .venv/bin/activate # Windows: .venv\Scripts\activate
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
## 二、安装步骤
|
|
44
|
+
|
|
45
|
+
在虚拟环境内安装本项目(含 dev 依赖):
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
pip install -e '.[dev]'
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
- `-e`(editable)安装使脚本与 schema 变更即时生效,无需重装;
|
|
52
|
+
- `.[dev]` 安装 `pytest>=7.0`;
|
|
53
|
+
- 安装成功后可用 `python -c "import sys; print(sys.version)"` 确认版本 ≥ 3.10。
|
|
54
|
+
|
|
55
|
+
## 三、运行测试
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
pytest
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
- 测试自动发现 `tests/` 下 `test_*.py` 文件(见 pyproject.toml `[tool.pytest.ini_options]`);
|
|
62
|
+
- 覆盖范围:schema 校验器、confidence 规则化计算、Complexity Gate 判级、benchmark 输出格式等;
|
|
63
|
+
- 预期结果:全部测试通过(`addopts = "-q"` 输出简洁)。
|
|
64
|
+
|
|
65
|
+
## 四、运行 Schema 验证
|
|
66
|
+
|
|
67
|
+
校验某份数据是否符合对应 Schema(mandatory 字段缺失会标记为 UNSUPPORTED):
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
python scripts/validate_schema.py \
|
|
71
|
+
--schema schemas/evidence.schema.json \
|
|
72
|
+
--data examples/ai-coding-assistant/evidence.jsonl
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
- `--schema`:指定任一顶层 Schema(schemas/ 下 37 个契约,跨 V1–V4 代际,如 education-frame / evidence / methodology / verdict / intervention / evaluation / report-result 等);
|
|
76
|
+
- `--data`:指定要校验的 JSON 或 JSONL 数据文件;
|
|
77
|
+
- 主 Demo 示例数据位于 `examples/ai-coding-assistant/evidence.jsonl`,验证通过时应输出每条 evidence 的校验状态与 SUPPORTED/UNSUPPORTED 统计;
|
|
78
|
+
- 合格线:**校验通过率 100%**,任一条未通过即非零退出码。
|
|
79
|
+
|
|
80
|
+
## 五、运行 Benchmark
|
|
81
|
+
|
|
82
|
+
逐题运行五条基线(B0–B4)并生成结果:
|
|
83
|
+
|
|
84
|
+
```bash
|
|
85
|
+
python scripts/benchmark.py --questions benchmarks/questions.jsonl
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
- `--questions`:第一版 30 题(S×10 / M×10 / L×10),每题字段为 `id`、`level`(S/M/L)、`domain`、`question`、`expected_outcomes`、`notes`(与 `validate_questions()` 校验一致);人工金标注位于 `benchmarks/annotations/gold-<id>.json`;
|
|
89
|
+
- 运行产物:每题一个 JSON,写入 `benchmarks/results/`;
|
|
90
|
+
- 核心指标(Citation Support Precision、Unsupported Claim Rate、Contradiction Discovery Rate、Outcome Separation Accuracy、Scope Calibration、Intervention Evidence Alignment)由 `benchmarks/evaluator/` 对照 `benchmarks/annotations/` 计算;
|
|
91
|
+
- 可选参数(如 `--ablation` 跑 A1–A7、`--repeat 5` 测稳定性)以 `python scripts/benchmark.py --help` 为准。
|
|
92
|
+
|
|
93
|
+
## 六、输出产物:Research & Decision Pack
|
|
94
|
+
|
|
95
|
+
每次端到端运行(Demo 或 L 级题目)产出一份双层 Research & Decision Pack:
|
|
96
|
+
|
|
97
|
+
- **Visual Brief**:用于快速浏览 Decision、Outcome Separation、Evidence Tribunal、Evidence-to-Action 与关键来源。
|
|
98
|
+
- **Full Report**:由当前研究内容规划为 **5–7 个动态章节**,而不是固定章节模板。
|
|
99
|
+
|
|
100
|
+
完整报告必须覆盖以下语义模块;这些模块可以按研究叙事合并进同一章节,但不得遗漏:
|
|
101
|
+
|
|
102
|
+
| 模块 | 内容 |
|
|
103
|
+
|------|------|
|
|
104
|
+
| decision | 最终决策、Confidence、可说/不可说与主要风险 |
|
|
105
|
+
| scope | Education Research Frame、研究边界与决策标准 |
|
|
106
|
+
| retrieval | 检索策略、来源覆盖与证据选择 |
|
|
107
|
+
| outcomes | Outcome Separation:任务表现、学习、保持、迁移与风险 |
|
|
108
|
+
| evidence | Claim-Level Evidence 与 Evidence Matrix |
|
|
109
|
+
| quality | Methodology / Evidence Quality Audit |
|
|
110
|
+
| conflicts | Skeptic / Counter-Evidence / Conflict Analysis |
|
|
111
|
+
| trace | Evidence Tribunal + Claim → Evidence → Source 追溯 |
|
|
112
|
+
| applicability | 适用性、外推边界与必要条件 |
|
|
113
|
+
| intervention | 最小可验证干预、Guardrails 与 Stop Conditions |
|
|
114
|
+
| evaluation | Baseline / Post-test / Retention / Transfer 评价方案 |
|
|
115
|
+
| sources | Sources、Provenance 与附录 |
|
|
116
|
+
|
|
117
|
+
Pack 的证据链始终可以从 Decision / Claim 反查到 Evidence,再追溯到 Source 与 source location;章节如何合并不改变这一追溯关系。
|
|
118
|
+
|
|
119
|
+
## 七、常见问题(FAQ)
|
|
120
|
+
|
|
121
|
+
| 现象 | 处理 |
|
|
122
|
+
|------|------|
|
|
123
|
+
| `pytest` 无测试收集 | 确认在仓库根目录运行且依赖已安装 |
|
|
124
|
+
| validate_schema 报非零退出 | 逐条查看 UNSUPPORTED 记录,补齐 mandatory 字段 |
|
|
125
|
+
| benchmark 输出缺失 | 检查 `benchmarks/results/` 目录可写;确认 `benchmarks/questions.jsonl` 字段完整 |
|
|
126
|
+
| pip install 找不到 `[dev]` | 确认工作目录是根目录(pyproject.toml 存在) |
|
|
127
|
+
| Python 版本低于 3.10 | 升级解释器或使用 pyenv 安装 ≥3.10 |
|
|
128
|
+
|
|
129
|
+
## 八、端到端复现三步走
|
|
130
|
+
|
|
131
|
+
```bash
|
|
132
|
+
pip install -e '.[dev]' # 1. 安装
|
|
133
|
+
pytest # 2. 验证环境
|
|
134
|
+
python scripts/validate_schema.py --schema schemas/evidence.schema.json --data examples/ai-coding-assistant/evidence.jsonl
|
|
135
|
+
python scripts/benchmark.py --questions benchmarks/questions.jsonl # 3. 复现示例与基准
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
三步全部成功即视为复现完成。
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
{
|
|
2
|
+
"domain": "_neutral",
|
|
3
|
+
"states": {
|
|
4
|
+
"adopt": {
|
|
5
|
+
"zh": "",
|
|
6
|
+
"en": ""
|
|
7
|
+
},
|
|
8
|
+
"pilot": {
|
|
9
|
+
"zh": "",
|
|
10
|
+
"en": ""
|
|
11
|
+
},
|
|
12
|
+
"reject": {
|
|
13
|
+
"zh": "",
|
|
14
|
+
"en": ""
|
|
15
|
+
},
|
|
16
|
+
"insufficient_evidence": {
|
|
17
|
+
"zh": "",
|
|
18
|
+
"en": ""
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
{
|
|
2
|
+
"domain": "_neutral",
|
|
3
|
+
"purpose": "Neutral UI labels — module_labels_footer.",
|
|
4
|
+
"labels": {
|
|
5
|
+
"tribunal_decision": {
|
|
6
|
+
"zh": "决策",
|
|
7
|
+
"en": "Decision"
|
|
8
|
+
},
|
|
9
|
+
"tribunal_confidence": {
|
|
10
|
+
"zh": "置信度",
|
|
11
|
+
"en": "Confidence"
|
|
12
|
+
},
|
|
13
|
+
"tribunal_can": {
|
|
14
|
+
"zh": "可以主张",
|
|
15
|
+
"en": "Can claim"
|
|
16
|
+
},
|
|
17
|
+
"tribunal_uncertain": {
|
|
18
|
+
"zh": "尚不能主张",
|
|
19
|
+
"en": "Cannot yet claim"
|
|
20
|
+
},
|
|
21
|
+
"tribunal_cannot": {
|
|
22
|
+
"zh": "被反驳的主张",
|
|
23
|
+
"en": "Contradicted claims"
|
|
24
|
+
},
|
|
25
|
+
"tribunal_missing": {
|
|
26
|
+
"zh": "缺失证据",
|
|
27
|
+
"en": "Missing evidence"
|
|
28
|
+
},
|
|
29
|
+
"tribunal_flow": {
|
|
30
|
+
"zh": "EvidenceFlow 协议",
|
|
31
|
+
"en": "EvidenceFlow Protocol"
|
|
32
|
+
},
|
|
33
|
+
"tribunal_figure": {
|
|
34
|
+
"zh": "裁决信息图",
|
|
35
|
+
"en": "Tribunal infographic"
|
|
36
|
+
},
|
|
37
|
+
"header_evidence": {
|
|
38
|
+
"zh": "证据 ",
|
|
39
|
+
"en": "Evidence: "
|
|
40
|
+
},
|
|
41
|
+
"header_sources": {
|
|
42
|
+
"zh": "来源 ",
|
|
43
|
+
"en": "Sources: "
|
|
44
|
+
},
|
|
45
|
+
"header_mode": {
|
|
46
|
+
"zh": "模式:",
|
|
47
|
+
"en": "Mode: "
|
|
48
|
+
},
|
|
49
|
+
"header_generated": {
|
|
50
|
+
"zh": "生成时间:",
|
|
51
|
+
"en": "Generated: "
|
|
52
|
+
},
|
|
53
|
+
"header_evidence_suffix": {
|
|
54
|
+
"zh": " 条",
|
|
55
|
+
"en": ""
|
|
56
|
+
},
|
|
57
|
+
"header_sources_suffix": {
|
|
58
|
+
"zh": " 个",
|
|
59
|
+
"en": ""
|
|
60
|
+
},
|
|
61
|
+
"footer_schema": {
|
|
62
|
+
"zh": "Schema",
|
|
63
|
+
"en": "Schema"
|
|
64
|
+
},
|
|
65
|
+
"footer_claims": {
|
|
66
|
+
"zh": "Claim Binding",
|
|
67
|
+
"en": "Claim Binding"
|
|
68
|
+
},
|
|
69
|
+
"footer_numbers": {
|
|
70
|
+
"zh": "Numeric Consistency",
|
|
71
|
+
"en": "Numeric Consistency"
|
|
72
|
+
},
|
|
73
|
+
"footer_bilingual": {
|
|
74
|
+
"zh": "Bilingual Structure",
|
|
75
|
+
"en": "Bilingual Structure"
|
|
76
|
+
},
|
|
77
|
+
"footer_language": {
|
|
78
|
+
"zh": "语言人话化",
|
|
79
|
+
"en": "Human Language"
|
|
80
|
+
},
|
|
81
|
+
"footer_no_false_precision": {
|
|
82
|
+
"zh": "无伪精度",
|
|
83
|
+
"en": "False Precision"
|
|
84
|
+
},
|
|
85
|
+
"footer_lieflat_bound": {
|
|
86
|
+
"zh": "Lieflat 数据溯源",
|
|
87
|
+
"en": "Lieflat Data Bound"
|
|
88
|
+
},
|
|
89
|
+
"footer_no_axis_distortion": {
|
|
90
|
+
"zh": "坐标轴无失真",
|
|
91
|
+
"en": "Axis Distortion"
|
|
92
|
+
},
|
|
93
|
+
"footer_colorblind_safe": {
|
|
94
|
+
"zh": "色盲安全",
|
|
95
|
+
"en": "Colorblind Safe"
|
|
96
|
+
},
|
|
97
|
+
"footer": {
|
|
98
|
+
"zh": "EduEvidence 证据报告 · {integrity} · 单文件离线可打开 · 数据源:result.json",
|
|
99
|
+
"en": "EduEvidence Evidence Report · {integrity} · single-file offline · source: result.json"
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}
|
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
{
|
|
2
|
+
"domain": "_neutral",
|
|
3
|
+
"purpose": "Neutral UI module/visual labels (part 2).",
|
|
4
|
+
"labels": {
|
|
5
|
+
"svg_balance_desc": {
|
|
6
|
+
"zh": "各结果类型的正向 / 负向 / 零效应证据条数(基于 effect_direction,不等同于 Claim 是否被支持)。",
|
|
7
|
+
"en": "Positive / negative / null effect counts per outcome (based on effect_direction, not claim support)."
|
|
8
|
+
},
|
|
9
|
+
"svg_balance_title": {
|
|
10
|
+
"zh": "各结果类型证据效应分布",
|
|
11
|
+
"en": "Outcome evidence effect balance"
|
|
12
|
+
},
|
|
13
|
+
"svg_benchmark_desc": {
|
|
14
|
+
"zh": "各基线的引用支持精度(Citation support precision)对比;无基准数据时不绘制。",
|
|
15
|
+
"en": "Citation support precision per baseline; not drawn when no baseline data exists."
|
|
16
|
+
},
|
|
17
|
+
"svg_benchmark_title": {
|
|
18
|
+
"zh": "基准对比:各基线引用支持精度",
|
|
19
|
+
"en": "Benchmark: citation support precision by baseline"
|
|
20
|
+
},
|
|
21
|
+
"svg_figure1_desc": {
|
|
22
|
+
"zh": "各结果类型的正向 / 负向 / 零效应证据条数;计数轴整数刻度,不随主题变化。来源:EduEvidence result.json。",
|
|
23
|
+
"en": "Counts of positive / negative / null effects per outcome type with an integer count axis, theme-independent. Source: EduEvidence result.json."
|
|
24
|
+
},
|
|
25
|
+
"svg_figure1_title": {
|
|
26
|
+
"zh": "各结果类型效应方向分布(出版级学术图)",
|
|
27
|
+
"en": "Effect direction by outcome type (publication figure)"
|
|
28
|
+
},
|
|
29
|
+
"svg_tribunal_desc": {
|
|
30
|
+
"zh": "可以主张与不可主张的证据 ID 与建议决策徽章;完整主张文本见下方裁决卡片。",
|
|
31
|
+
"en": "Evidence IDs for claims that can and cannot be claimed, plus the recommended action badge; full claim text is in the tribunal cards below."
|
|
32
|
+
},
|
|
33
|
+
"svg_tribunal_title": {
|
|
34
|
+
"zh": "证据裁决信息图",
|
|
35
|
+
"en": "Evidence Tribunal infographic"
|
|
36
|
+
},
|
|
37
|
+
"svg_workflow_title": {
|
|
38
|
+
"zh": "EvidenceFlow 协议流程",
|
|
39
|
+
"en": "EvidenceFlow Protocol"
|
|
40
|
+
},
|
|
41
|
+
"outcome_separation_title": {
|
|
42
|
+
"zh": "结果分离",
|
|
43
|
+
"en": "Outcome separation"
|
|
44
|
+
},
|
|
45
|
+
"outcome_sep_note": {
|
|
46
|
+
"zh": "将不同结果类型分开裁决。",
|
|
47
|
+
"en": "Outcomes are adjudicated separately."
|
|
48
|
+
},
|
|
49
|
+
"outcome_group_task": {
|
|
50
|
+
"zh": "过程 / 近端",
|
|
51
|
+
"en": "Proximal / process"
|
|
52
|
+
},
|
|
53
|
+
"outcome_group_learning": {
|
|
54
|
+
"zh": "目标结果",
|
|
55
|
+
"en": "Target outcomes"
|
|
56
|
+
},
|
|
57
|
+
"outcome_group_risk": {
|
|
58
|
+
"zh": "风险",
|
|
59
|
+
"en": "Risk"
|
|
60
|
+
},
|
|
61
|
+
"outcome_group_other": {
|
|
62
|
+
"zh": "其他结果",
|
|
63
|
+
"en": "Other outcomes"
|
|
64
|
+
},
|
|
65
|
+
"method_guard": {
|
|
66
|
+
"zh": "构念护栏",
|
|
67
|
+
"en": "Construct guard"
|
|
68
|
+
},
|
|
69
|
+
"applicability": {
|
|
70
|
+
"zh": [
|
|
71
|
+
"适用于谁",
|
|
72
|
+
"适用范围",
|
|
73
|
+
"适用结果",
|
|
74
|
+
"适用条件",
|
|
75
|
+
"目标人群",
|
|
76
|
+
"目标情境"
|
|
77
|
+
],
|
|
78
|
+
"en": [
|
|
79
|
+
"Suitable for",
|
|
80
|
+
"Scope",
|
|
81
|
+
"Outcomes",
|
|
82
|
+
"Conditions",
|
|
83
|
+
"Target population",
|
|
84
|
+
"Target context"
|
|
85
|
+
]
|
|
86
|
+
},
|
|
87
|
+
"intervention_lesaners": {
|
|
88
|
+
"zh": "目标人群",
|
|
89
|
+
"en": "Target population"
|
|
90
|
+
},
|
|
91
|
+
"intervention_population": {
|
|
92
|
+
"zh": "目标人群",
|
|
93
|
+
"en": "Target population"
|
|
94
|
+
},
|
|
95
|
+
"intervention_duration": {
|
|
96
|
+
"zh": "试点时长",
|
|
97
|
+
"en": "Pilot duration"
|
|
98
|
+
},
|
|
99
|
+
"intervention_policy": {
|
|
100
|
+
"zh": "使用规则",
|
|
101
|
+
"en": "Usage policy"
|
|
102
|
+
},
|
|
103
|
+
"intervention_rule": {
|
|
104
|
+
"zh": "规则",
|
|
105
|
+
"en": "Rule"
|
|
106
|
+
},
|
|
107
|
+
"intervention_activities": {
|
|
108
|
+
"zh": "活动",
|
|
109
|
+
"en": "Activities"
|
|
110
|
+
},
|
|
111
|
+
"intervention_check": {
|
|
112
|
+
"zh": "结果检查",
|
|
113
|
+
"en": "Outcome check"
|
|
114
|
+
},
|
|
115
|
+
"intervention_stop": {
|
|
116
|
+
"zh": "停止条件",
|
|
117
|
+
"en": "Stop conditions"
|
|
118
|
+
},
|
|
119
|
+
"intervention_timeline": {
|
|
120
|
+
"zh": "干预时间线信息图",
|
|
121
|
+
"en": "Intervention timeline infographic"
|
|
122
|
+
},
|
|
123
|
+
"evaluation_measures": {
|
|
124
|
+
"zh": [
|
|
125
|
+
"基线",
|
|
126
|
+
"后测",
|
|
127
|
+
"持续",
|
|
128
|
+
"扩展"
|
|
129
|
+
],
|
|
130
|
+
"en": [
|
|
131
|
+
"Baseline",
|
|
132
|
+
"Post",
|
|
133
|
+
"Durability",
|
|
134
|
+
"Scale-out"
|
|
135
|
+
]
|
|
136
|
+
},
|
|
137
|
+
"evaluation_metrics": {
|
|
138
|
+
"zh": [
|
|
139
|
+
"过程指标",
|
|
140
|
+
"效果指标",
|
|
141
|
+
"风险指标"
|
|
142
|
+
],
|
|
143
|
+
"en": [
|
|
144
|
+
"Process metrics",
|
|
145
|
+
"Effect metrics",
|
|
146
|
+
"Risk metrics"
|
|
147
|
+
]
|
|
148
|
+
},
|
|
149
|
+
"evaluation_question": {
|
|
150
|
+
"zh": "研究问题",
|
|
151
|
+
"en": "Research question"
|
|
152
|
+
},
|
|
153
|
+
"evaluation_threshold": {
|
|
154
|
+
"zh": "成功阈值",
|
|
155
|
+
"en": "Success threshold"
|
|
156
|
+
},
|
|
157
|
+
"evaluation_plan": {
|
|
158
|
+
"zh": "分析计划",
|
|
159
|
+
"en": "Analysis plan"
|
|
160
|
+
},
|
|
161
|
+
"evaluation_figure": {
|
|
162
|
+
"zh": "评价设计信息图",
|
|
163
|
+
"en": "Evaluation design infographic"
|
|
164
|
+
},
|
|
165
|
+
"svg_intervention_title": {
|
|
166
|
+
"zh": "干预时间线",
|
|
167
|
+
"en": "Intervention timeline"
|
|
168
|
+
},
|
|
169
|
+
"svg_intervention_desc": {
|
|
170
|
+
"zh": "各试点阶段的短名称与活动数量。",
|
|
171
|
+
"en": "Short phase names and activity counts."
|
|
172
|
+
},
|
|
173
|
+
"svg_evaluation_title": {
|
|
174
|
+
"zh": "评价设计流程",
|
|
175
|
+
"en": "Evaluation design flow"
|
|
176
|
+
},
|
|
177
|
+
"svg_evaluation_desc": {
|
|
178
|
+
"zh": "基线、后测、持续与扩展的评价流程。",
|
|
179
|
+
"en": "Evaluation flow across baseline, post, durability and scale-out."
|
|
180
|
+
},
|
|
181
|
+
"svg_workflow_desc": {
|
|
182
|
+
"zh": "从问题框架到裁决与适用性的完整流程。",
|
|
183
|
+
"en": "Research flow from framing to adjudication and applicability."
|
|
184
|
+
},
|
|
185
|
+
"decision_kpi": {
|
|
186
|
+
"zh": [
|
|
187
|
+
"决策",
|
|
188
|
+
"置信度",
|
|
189
|
+
"证据最充分的结果",
|
|
190
|
+
"最不确定的结果",
|
|
191
|
+
"主要风险",
|
|
192
|
+
"来源数量"
|
|
193
|
+
],
|
|
194
|
+
"en": [
|
|
195
|
+
"Decision",
|
|
196
|
+
"Confidence",
|
|
197
|
+
"Best-supported outcome",
|
|
198
|
+
"Most uncertain outcome",
|
|
199
|
+
"Main risk",
|
|
200
|
+
"Sources"
|
|
201
|
+
]
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
{
|
|
2
|
+
"domain": "_neutral",
|
|
3
|
+
"purpose": "Neutral UI labels — module_labels_nav.",
|
|
4
|
+
"labels": {
|
|
5
|
+
"theme_label": {
|
|
6
|
+
"zh": "主题",
|
|
7
|
+
"en": "Theme"
|
|
8
|
+
},
|
|
9
|
+
"lang_label": {
|
|
10
|
+
"zh": "语言",
|
|
11
|
+
"en": "Language"
|
|
12
|
+
},
|
|
13
|
+
"zh": {
|
|
14
|
+
"zh": "中文",
|
|
15
|
+
"en": "中文"
|
|
16
|
+
},
|
|
17
|
+
"en": {
|
|
18
|
+
"zh": "EN",
|
|
19
|
+
"en": "EN"
|
|
20
|
+
},
|
|
21
|
+
"visual_brief": {
|
|
22
|
+
"zh": "可视化摘要",
|
|
23
|
+
"en": "Visual Brief"
|
|
24
|
+
},
|
|
25
|
+
"full_report": {
|
|
26
|
+
"zh": "完整报告",
|
|
27
|
+
"en": "Full Report"
|
|
28
|
+
},
|
|
29
|
+
"toolbar_brief": {
|
|
30
|
+
"zh": "摘要",
|
|
31
|
+
"en": "Brief"
|
|
32
|
+
},
|
|
33
|
+
"toolbar_full": {
|
|
34
|
+
"zh": "完整报告",
|
|
35
|
+
"en": "Full report"
|
|
36
|
+
},
|
|
37
|
+
"toolbar_print": {
|
|
38
|
+
"zh": "打印",
|
|
39
|
+
"en": "Print"
|
|
40
|
+
},
|
|
41
|
+
"brief_nav_aria": {
|
|
42
|
+
"zh": "摘要导航",
|
|
43
|
+
"en": "Brief navigation"
|
|
44
|
+
},
|
|
45
|
+
"contents": {
|
|
46
|
+
"zh": "目录",
|
|
47
|
+
"en": "Contents"
|
|
48
|
+
},
|
|
49
|
+
"collapse_contents": {
|
|
50
|
+
"zh": "收起目录",
|
|
51
|
+
"en": "Collapse contents"
|
|
52
|
+
},
|
|
53
|
+
"expand_contents": {
|
|
54
|
+
"zh": "展开目录",
|
|
55
|
+
"en": "Expand contents"
|
|
56
|
+
},
|
|
57
|
+
"expand_evidence": {
|
|
58
|
+
"zh": "查看完整证据",
|
|
59
|
+
"en": "View full evidence"
|
|
60
|
+
},
|
|
61
|
+
"expand_methodology": {
|
|
62
|
+
"zh": "查看审计依据",
|
|
63
|
+
"en": "View audit rationale"
|
|
64
|
+
},
|
|
65
|
+
"expand_source": {
|
|
66
|
+
"zh": "查看来源与溯源",
|
|
67
|
+
"en": "View source & provenance"
|
|
68
|
+
},
|
|
69
|
+
"expand_details": {
|
|
70
|
+
"zh": "展开完整说明",
|
|
71
|
+
"en": "Expand full explanation"
|
|
72
|
+
},
|
|
73
|
+
"what_this_means": {
|
|
74
|
+
"zh": "这意味着什么",
|
|
75
|
+
"en": "What this means"
|
|
76
|
+
},
|
|
77
|
+
"original_title": {
|
|
78
|
+
"zh": "原文标题",
|
|
79
|
+
"en": "Original title"
|
|
80
|
+
},
|
|
81
|
+
"original_text": {
|
|
82
|
+
"zh": "原文",
|
|
83
|
+
"en": "Original text"
|
|
84
|
+
},
|
|
85
|
+
"full_report_intro": {
|
|
86
|
+
"zh": "结论前置:全部可追溯证据与方法学细节都在这里,关键论证位置穿插有意义的可视化,每个数字都能回查到 result.json。",
|
|
87
|
+
"en": "Conclusions first: every traceable piece of evidence and method note lives here, with visuals only at points where they add meaning. Every number traces back to result.json."
|
|
88
|
+
},
|
|
89
|
+
"raw_tag_title": {
|
|
90
|
+
"zh": "原始标识",
|
|
91
|
+
"en": "raw id"
|
|
92
|
+
},
|
|
93
|
+
"colon": {
|
|
94
|
+
"zh": ":",
|
|
95
|
+
"en": ": "
|
|
96
|
+
},
|
|
97
|
+
"trace_claim_sep": {
|
|
98
|
+
"zh": ":",
|
|
99
|
+
"en": ": "
|
|
100
|
+
},
|
|
101
|
+
"lang_switcher_aria": {
|
|
102
|
+
"zh": "语言切换 / Language switch",
|
|
103
|
+
"en": "语言切换 / Language switch"
|
|
104
|
+
},
|
|
105
|
+
"theme_switcher_aria": {
|
|
106
|
+
"zh": "主题 / Theme",
|
|
107
|
+
"en": "主题 / Theme"
|
|
108
|
+
},
|
|
109
|
+
"no_data": {
|
|
110
|
+
"zh": "无数据。",
|
|
111
|
+
"en": "No data."
|
|
112
|
+
},
|
|
113
|
+
"cite_doi_ok": {
|
|
114
|
+
"zh": "DOI 可验证",
|
|
115
|
+
"en": "DOI verified"
|
|
116
|
+
},
|
|
117
|
+
"benchmark_note": {
|
|
118
|
+
"zh": "result.json 未携带 benchmark.baselines,本图不绘制;基准表现见独立基准报告。",
|
|
119
|
+
"en": "result.json carries no benchmark.baselines, so this visual is omitted; see the standalone benchmark report."
|
|
120
|
+
},
|
|
121
|
+
"method_target": {
|
|
122
|
+
"zh": "审查目标",
|
|
123
|
+
"en": "Audit target"
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
}
|