playbook/docs/tsl/toolchain.md

3.9 KiB

TSL 工具链与验证命令模板

文档类型:项目工具链模板页 是否可直接用于生成代码:否 是否含可直接照写示例:否 是否含不可照写反例:否 遇到不确定时:项目自身文档、scripts/* 入口脚本、CI 配置;只有目标项目已真实填写且没有 <...> 占位符时才看本页。

本页只记录目标项目的 TSL 执行事实模板,不是通用执行手册,也不是 TSL 语法事实页。只有目标项目已真实填写且没有 <...> 占位符时,本页才可以作为执行依据;仍有 <...> 占位符时,不能作为执行依据。本页不提供真实可执行命令。

模板说明

  • 本文件提供一份通用占位模板,不是通用执行手册。
  • 只有在本项目已经写明工具链、执行入口和验证命令后,才可以把它当成执行依据。
  • 如果这页里仍然出现 <...> 形式的占位符,说明本项目还没有写明真实信息,应回到项目自身文档或脚本入口。
  • 以下命令片段全部属于模板占位,不代表真实命令,也不应被 AI 直接复制执行。

为什么不可直接执行

  • 占位符没有绑定到本项目的真实解释器、路径、环境变量和脚本入口。
  • 同一条模板命令在不同项目里可能对应不同的安装方式、权限模型和验证流程。
  • 如果直接照抄本页内容,最常见的错误是路径不存在、可执行入口错误、凭证缺失或验证层级不匹配。

项目填写项

解释器/编译器(必填)

  • 工具名称:<tsl/tslcli/内部工具名>
  • 安装方式:<内部安装包/路径/IDE 自带/CI 镜像等>
  • 版本要求:<固定版本或范围;未知可写 N/A>
  • 推荐统一入口脚本:scripts/tsl.{sh,ps1}

可执行入口模板:

代码块身份:配置片段 / 概念骨架

<tsl>
<tsl> <path/to/script.tsl> <args...>

平台命令模板:

代码块身份:配置片段 / 概念骨架

macOS/Linux: <tsl>
Windows: <tsl>

运行环境(按需)

  • 必要环境变量模板:

代码块身份:配置片段 / 概念骨架

<TSL_HOME>
<TSL_LIB_PATH>
<LICENSE_PATH>
  • 外部依赖模板:

代码块身份:配置片段 / 概念骨架

<数据库/服务/共享目录/网络权限/账户权限>
  • 运行约束模板:

代码块身份:配置片段 / 概念骨架

是否允许联网:<yes/no>
是否需要许可证/凭证:<说明如何在本地与 CI 提供;禁止写入仓库>
  • 凭证、许可证等敏感信息应通过环境变量或 CI secrets 注入;文档只写变量名或获取方式,不写明文值。

验证命令(必须填写)

  • 至少填写一个最小冒烟命令。
  • 如果项目存在测试体系,应继续填写单元测试、静态检查和构建命令。
  • 所有命令都应替换成本项目的真实入口,不要保留模板占位。

最小冒烟模板:

代码块身份:配置片段 / 概念骨架

<tsl> <path/to/SmokeTest.tsl> <args...>
sh scripts/smoke.sh
powershell -File scripts/smoke.ps1

单元测试模板:

代码块身份:配置片段 / 概念骨架

sh scripts/test.sh
<tsl> <path/to/TestRunner.tsl> <args...>

静态检查 / 格式化模板:

代码块身份:配置片段 / 概念骨架

sh scripts/lint.sh
sh scripts/format.sh

构建 / 打包模板:

代码块身份:配置片段 / 概念骨架

sh scripts/build.sh

成功信号也必须写成真实规则,例如退出码、关键输出或产物路径。

失败处理约定(必填)

  • 只修复与本次改动直接相关的失败;无关失败在输出中说明并隔离。
  • 若某验证步骤无法执行,必须明确写出原因与替代验证手段,例如最小复现脚本或手动检查清单。
  • 建议记录:执行的命令、退出码、关键日志片段和产物位置,便于 review 与复现。