| name | legal-test-builder-patrick-munro |
| description | 构建一个高保真的交互式法律评估,作为单个自包含的 HTML 工件。输出包括实时倒计时器、带悬停注释问题条款的合同审查任务、候选人答题文本框、隐藏在展开块后的参考答案、基于情景的法律备忘录任务、策略和功能构建题,以及编码了评分标准的提交前检查清单。在用户需要以下事项时使用:(1) 用现实的限时练习评估法律候选人,(2) 用习题集而非学说来培训或带教初级律师,(3) 帮助候选人准备其面临的真实居家(take-home)评估,(4) 为法学院学生、内部团队或合规培训构建教学材料,或 (5) 针对特定法律主题产出基于情景的培训模块。触发词包括"legal test"(法律测试)、"take-home"(居家评估)、"mock exam"(模拟考试)、"contract redline exercise"(合同红线修订练习)、"candidate assessment"(候选人评估)、"legal training exercise"(法律培训练习)、"practice test"(练习测试)或类似措辞,即使是非正式的。
|
| metadata | {"author":"Patrick Munro","license":"agpl-3.0","version":"2026-04-25"} |
法律测试构建器(Legal Test Builder)
产出生产级的交互式 HTML 法律评估,作为单个自包含文件,可离线运行并在任何现代浏览器中干净渲染。
何时使用
- 为候选人准备真实的居家评估
- 用现实的限时练习评估法律候选人,测试判断力而非学说回忆
- 通过情景式学习带教初级律师
- 为内部团队或客户教育构建法律培训模块
- 法学院学生的模拟法庭和起草练习
- 以情景应用为要点的合规或监管培训
第 1 步:收集输入
构建前,确认或推断以下内容。如未指定,作合理默认并在输出中醒目标记假设,以便用户纠正。
| 输入 | 关键问题 | 未指定时的默认值 |
|---|
| 角色 | 测试或培训的是哪个职位? | "法律顾问(Legal Counsel)" |
| 组织 | 情景的语境 | 下方库中的虚构公司 |
| 法律领域 | 合同法、知识产权、雇佣、监管、并购、合规、隐私等 | 商业合同 |
| 适用法律 | 英格兰法、德国法、法国法、纽约法等 | 英格兰法 |
| 测试时长 | 评估总时间 | 3 小时 |
| 难度 | 初级 / 中级 / 高级 / 合伙人级 | 中级 |
| 目的 | 候选人评估 vs 培训 vs 考试准备 | 候选人评估 |
| 任务数量 | 有多少个不同的练习 | 3-4 个任务 |
| 参考答案 | 包含(培训 / 准备)还是排除(现场考试) | 作为展开块包含 |
对候选人准备和培训:始终将参考答案作为隐藏的展开块包含。
对现场候选人评估:生成剥离展开块的第二个"考官版本"。
第 2 步:设计任务堆栈
一份扎实的 3 小时测试使用此结构。按时长调整任务数量和时限。
任务 01:合同审查与红线修订(50-70 分钟)
锚定任务。最能揭示实践法律判断力。
- 起草一份现实的 6-10 条款协议,内嵌 5-8 个问题
- 问题应涵盖严重、高和中三个级别
- 始终包含至少一个缺失条款(合同中完全没有的内容)
- 至少包含一个陷阱条款——看起来标准但实际不是(如一个洗白过度宽泛 IP 转让的回授许可)
- 问题嵌入模式见
references/contract-design.md
任务 02:法律备忘录 / 书面分析(35-50 分钟)
测试在新情况下的推理。最好构建为没有干净答案的情景。
- 给出一个具有真实法律张力的情景事实
- 指明适用法律和任何约束
- 情景应足够新颖,使候选人无法背诵教科书答案
- 情景构建模式见
references/scenario-design.md
任务 03:短文分析(20-35 分钟)
一个聚焦的问题,一个问题一个答案。适合:利益冲突、监管合规、特定的雇佣或 GDPR 问题、合同解释。
任务 04:策略 / 功能构建(30-45 分钟)
测试资历和商业判断力,而非法律知识。
- 经典框架:"您是第一位法务招聘。现在是第 90 天。您构建了什么、您刻意没有构建什么、什么让您夜不能寐?"
- 替代方案:"识别三项最高优先级的法律风险以及您将如何应对每一项。"
- 按角色类型的模板见
references/strategy-questions.md
第 3 步:构建 HTML
写代码前先读 references/html-framework.md。它包含:
- 完整的 CSS 设计系统(设计标记、字体排印、组件)
- 带问题条款悬停提示的合同注释模式
- 展开块组件
- 计时器实现
- 检查清单组件
- 颜色和严重性惯例
核心架构规则
- 单文件:所有内容内联。除 Google Fonts 外无外部依赖。
- 可离线运行:字体缓存后,测试必须无需互联网即可工作。
- 计时器:粘性页眉,显示时:分:秒。颜色变化:正常 → 琥珀色(低于 30 分钟)→ 红色并脉冲(低于 10 分钟)。
- 合同问题:在
<span class="problem"> 元素上用 data-title 和 data-body 属性注释。JS 提示在悬停时渲染。注释在悬停前不可见。
- 展开块:参考答案默认隐藏。点击展开。绝不自动打开。
- 书写区:每个问题下方放
<textarea class="write-area">。候选人在展开前书写。
- 检查清单:带可点击项目的最后部分。用它来编码评分标准。
内容质量规则
- 合同文本必须现实。 不能明显是假的。适当使用规范的界定术语、条款编号和序言。
- 问题必须自然嵌入。 坏的条款应读起来合理。仅因明显错误而被发现的起草拙劣条款是糟糕的测试。
- 参考答案必须有立场。 不是"视情况而定"。陈述结论、证明其正当性,然后在存在真实不确定处承认它。
- 陷阱必须被明确点名,放在风格清晰的陷阱框中。候选人需要理解的不只是问题是什么,还有为什么直觉性回应是错的。
- 钩子引语:每个主要部分包含一句令人难忘的框架句。一句抓住战略要点的句子,放在钩子框中。
- 缺口必须诚实标记。 如果参考答案涉及一个发展中法律领域,如实说明。缺口框发出信号:"这是不确定的;以下是处理方法。"
第 4 步:严重性和优先级框架
在所有问题行和情景分析中一致使用:
| 严重性 | 颜色 | 定义 |
|---|
| 严重(CRITICAL) | 红 | 对组织的使命、商业模式或法律地位具有存在性意义。错过这一点的律师在测试中不及格。 |
| 高(HIGH) | 琥珀 | 重大的商业或法律敞口。应被发现并谈判。 |
| 中(MEDIUM) | 蓝 | 次优但不立即危险。发现它有加分。 |
在合同任务中,始终包含至少 2 个严重问题。既发现两者并能阐明其存在性意义者,才是值得录用的人。
第 5 步:检查清单设计
提交前检查清单是隐形的评分细则。设计它:
- 编码区分好答案与优秀答案的内容
- 至少包含 2 项关于候选人如何参与(对不确定性诚实、结论先行、不注水)而非只写了什么的项目
- 以一句捕捉被测试角色理念的话结束
第 6 步:双版本输出
- 对候选人准备或培训:构建时含参考答案(含展开块)
- 对现场评估:剥离展开块和参考答案内容,保留任务说明、合同文本和书写区。以干净的"考官版本"呈现。
生成干净版本时,移除所有 .reveal-block div 和 .reveal-body 内容。.reveal-header 可以移除,或保留为仅考官版本可见的"评分备注"占位符。
参考文件
构建前先读:
references/html-framework.md:完整的 CSS 和 JS 实现,含所有组件模式
references/contract-design.md:如何设计问题嵌入良好的现实合同
references/scenario-design.md:备忘录和分析任务的情景构建
references/strategy-questions.md:按角色类型的策略问题模板
输出格式
呈现最终的 HTML 文件。在摘要中注明:
- 任务数量、总时间预算
- 内嵌合同问题的数量及其严重性分布
- 参考答案是包含还是排除
- 候选人或培训者应知晓的任何法律不确定性标记