Files
playbook/skills/tsl-api-reference/SKILL.md
T

51 lines
2.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
name: tsl-api-reference
description: "当编写、修改或审查 TSL 代码,需要确认 API、class 成员或框架回调是否存在及其精确签名、参数、返回值和示例时使用;也用于按中文业务说法查找天软数据字典中的表、数据源与字段。触发说法包括「argmax 怎么用」「有没有去重函数」「TStringList 有哪些方法」「TSBackTesting 要重写什么」「销售现金比率在哪个表」。不用于 TSL 语法、控制流、语言对象模型,也不用于决定 TSL 如何运行。"
---
# TSL API 参考
本 skill 只负责可检索的 TSL API、class/framework 契约和天软数据字典事实。
语法、控制流、语言对象模型或运行方式问题不属于本 skill。
## 查询路由
先选择一条路由,并完整读取对应文件后再执行:
- 已知函数或成员名,或只知道 API 行为:读取
[`workflows/api-lookup.md`](workflows/api-lookup.md)。
- 查询 class 摘要、实现子类、重写回调或处理生命周期:读取
[`workflows/class-and-framework.md`](workflows/class-and-framework.md)。
- 按中文业务含义查表、数据源或字段:读取
[`workflows/dictionary-lookup.md`](workflows/dictionary-lookup.md)。
具体参数、输出字段和退出码以所选脚本当前的 `--help` 为权威。
`<this-skill-dir>` 替换为包含本 `SKILL.md` 的目录。
## 全局硬规则
- API 名称按索引原样查询和报告。TSL 名称大小写不敏感,但下划线有意义;不得删除
下划线或改写成驼峰式。
- 不得凭记忆或参照相似语言推断 API 名称、签名、参数、返回值或回调字段。
- 同名结果不得默认取第一条;必须按 `scope``module`、owner 或完全限定名消歧。
- `lookup.py` 的 rc=1 表示 skill 数据缺失、损坏或正文不可达,不表示 API 不存在。
## 🔴 CHECKPOINT · 🛑 STOP
出现任一情况时,停止生成包含该 API 或回调字段的代码,并明确报告缺口:
- `lookup.py --name` 无匹配;
- `lookup.py --kw` 换用更准确的中文关键词后仍无候选;
- 同名 API 或 class 无法按 `scope``module`、owner 或完全限定名消歧;
- `class_lookup.py` 返回 `status: not_found`
- 请求依赖生命周期、配置或回调,但 `profile_status=not_profiled`
- Framework Profile 的 `contract_status` 不是 `resolved`
rc=1 不进入上述“API 缺失”分支;应先修复或重新安装 skill 数据,再重新查询。
## 输出约定
报告 API 事实时必须包含:索引中的原样名称或 `qualified_name``scope``module`
`lookup.py --name` 正文取得的精确签名,以及对应的 `page#anchor` 来源。
关键词候选的 summary 只能用于选候选,不能作为签名事实。