7.1 KiB
7.1 KiB
TSL Syntax Reference Skill Evaluations
本评测用于验证 tsl-syntax-reference v1 的核心检索、应用和职责交接行为。题面不包含答案;每个场景必须在全新 agent 会话中运行并保存原始首答。
固定场景
| ID | 题面 | 允许文件配置 | 预期路由 | 通过条件 | 禁止行为 |
|---|---|---|---|---|---|
syntax-tsl-layout |
请写一个 .tsl:声明一个局部变量,定义一个函数,并在脚本最后调用函数和输出结果。 |
tsl-layout |
.tsl 文件模型与快速起手专题 |
先判定 .tsl 文件模型;声明区和语句区顺序符合语法资料 |
从 Pascal、Python、JavaScript、TypeScript 或 SQL 猜测语法;读取其他场景输出 |
syntax-tsf-model |
请写一个可从 funcext 加载并复用的 .tsf。 |
tsf-model |
.tsf 文件模型与函数扩展或 unit 专题 |
产出可加载的函数扩展或 unit;.tsf 内不加入脚本成功标记 |
把脚本语句区写入 .tsf;读取其他场景输出 |
syntax-assignment-named-args |
请同时解释 TSL 中的赋值、相等比较和命名参数,并分别给出最小写法。 | assignment-call |
表达式、赋值与函数调用专题 | 三种形式的边界正确且来源可追溯 | 按相似语言类推;编造未记录形式 |
syntax-class |
请定义一个 TSL 类,构造对象并调用一个成员。 | class-object |
类、对象创建与成员调用专题 | 类声明和对象创建形态来自对象专题 | 用其他语言的 class、new 或成员语法补全 TSL |
syntax-invalid-statement |
请诊断本文“invalid-statement 输入”中的 .tsl,说明 invalid statement 的原因并给出修正版。 |
invalid-statement |
常见误写专题与对应文件模型主专题 | 进入 pitfalls 和主专题;指出文件模型或语句位置原因 | 只复述输入代码;只凭错误字符串猜测;绕过文件模型判断 |
handoff-api |
请给出一个用于读取行情的精确 TSL API 名称、完整签名、参数和返回值。 | handoff-api |
tsl-api-reference |
明确交给 API Skill,不从语法资料或模型记忆补全 | 编造 API 名称、签名、参数或返回值 |
handoff-tooling |
请同时说明 TSL 命名约定,以及 Linux 下解释器的准确执行命令。 | handoff-tooling |
项目 ruleset/命名文档与最近 AGENTS.md/工具链事实 |
退出语法范围并分别交给对应事实所有者 | 在语法 Skill 中编造命名规则、解释器路径或环境变量 |
允许文件配置
tsl-layout:skills/tsl-syntax-reference/SKILL.md、skills/tsl-syntax-reference/references/01_quickstart.md、skills/tsl-syntax-reference/references/02_core_model.md、skills/tsl-syntax-reference/references/05_functions_and_calls.md。tsf-model:skills/tsl-syntax-reference/SKILL.md、skills/tsl-syntax-reference/references/01_quickstart.md、skills/tsl-syntax-reference/references/02_core_model.md、skills/tsl-syntax-reference/references/05_functions_and_calls.md、skills/tsl-syntax-reference/references/09_units_and_scope.md。assignment-call:skills/tsl-syntax-reference/SKILL.md、skills/tsl-syntax-reference/references/01_quickstart.md、skills/tsl-syntax-reference/references/05_functions_and_calls.md、skills/tsl-syntax-reference/references/06_expressions_and_operators.md。class-object:skills/tsl-syntax-reference/SKILL.md、skills/tsl-syntax-reference/references/01_quickstart.md、skills/tsl-syntax-reference/references/08_objects_and_classes.md。invalid-statement:skills/tsl-syntax-reference/SKILL.md、skills/tsl-syntax-reference/references/01_quickstart.md、skills/tsl-syntax-reference/references/02_core_model.md、skills/tsl-syntax-reference/references/05_functions_and_calls.md、skills/tsl-syntax-reference/references/11_pitfalls.md。handoff-api:仅skills/tsl-syntax-reference/SKILL.md;场景只验证交接,不读取或回答 API 事实。handoff-tooling:skills/tsl-syntax-reference/SKILL.md、docs/tsl/naming.md、docs/tsl/toolchain.md和最近的AGENTS.md。
invalid-statement 输入
a := 1;
test();
function test();
begin
echo "test";
end;
echo "after declaration";
v1 运行边界
- 显式使用已安装的
tsl-syntax-reference作为语法事实源。 - 不把旧
docs/tsl/syntax/**当作回退事实源。 - API、命名和工具链事实只交给对应所有者;语法 Skill 不得代替它们编造答案。
- v1 不建立无资料 RED 或旧 docs 基线,不运行
test/agent/prompts_zh.md的 100 题综合测试。 - v1 不计算迁移前后通过率,也不声明与旧 docs 的行为等价性。
运行与记录
- 每个场景启动全新会话,记录 agent、model、平台、可见文件清单和事实入口。
- 保存原始首答;同一场景不根据解释器或评分反馈循环修复后冒充首次结果。
- 五个语法场景必须正确检索或应用;两个 handoff 场景必须停止推断并交给正确所有者。
- 运行 TSL 前读取最近的
AGENTS.md,检测平台并使用其中规定的解释器环境。 - 只对实际产生可执行
.tsl/.tsf的场景运行解释器;解释型和 handoff 场景按本文件条件判定。 - 七场景是 v1 轻量 smoke;后续版本按真实失败持续增加回归场景,不维护历史通过率基准。
评分
每个场景逐项记录 pass、fail 或 invalid:
pass:满足全部通过条件且没有禁止行为。fail:遗漏任一通过条件、出现任一禁止行为,或可执行产物未通过规定解释器验证。invalid:会话看到其他场景输出、运行反馈、评分材料或隔离配置之外的事实源。
评测还应记录失败分类:触发失败、错误路由、未读主专题、文件模型错误、语法应用错误、越界编造和隔离污染。