AgentX
目录 · 项目与目录

工程端 · ATH

项目与目录

项目就是一个普通文件夹。工程人员理解它的内容,交接、归档、排错都会容易很多。

新建与打开

点「新建项目」时选一个目录,ATH 把项目文件直接写进去,不额外建子目录,也没有单独的项目名字段: 项目和目录一一对应。界面里显示的项目名取自目录名,重命名目录后不需要改名,只要用「添加已有项目」 重新指一次新位置即可。

ath project init ./my-product     # 新建
ath project inspect              # 不打开窗口检查项目
ath project status               # 完整性与候选版本
ath project digest               # 内容摘要

同名目录不会互相覆盖:项目按完整路径区分,界面上的提示会给出所在路径。

目录里有什么

文件 / 目录作用
app.yaml界面定义:页面、区域、组件,以及判定图的入口。项目里「长什么样」和「什么算通过」都从这里读。
protocol.yaml协议文档:待测设备的选择条件、报文与字段。没有协议资料时可以是空的,后面再补。
manifest.json项目清单:项目标识与基本信息,ART 用它确认打开的是同一个项目。
resources/导入的协议资料、发现状态,以及运行期笔记(例如最近一次成功连接用的是哪个 DD)。
versions/不可变版本快照,用于比较、分叉、恢复与发布标记。
reports/运行时报告与结构化日志的默认位置。
journal.json事务日志:一次编辑要么整体写入,要么完全不落盘。
state.json编辑历史状态,支撑撤销与重做。
.ath-project.lock项目锁,避免两个进程同时改同一个项目。

复制、迁移与交接

  • 整个目录复制走即可:文件之间用相对路径引用,换台电脑照常打开。
  • ATH 记住的是「当前打开的项目」,ART 记住的是「工位配置的项目」,两者都存路径,不是项目内容。
  • 交接给同事时,除了目录,最好一并说明用哪台设备、接在哪个接口;设备相关设置见 设备与连接。
  • 归档时连同 versions/ 一起保留,以后需要比较或回滚时才有依据。

版本快照

版本是项目内不可变的快照,和 Git 相互独立:一次快照记录当前项目内容,之后可以比较、恢复、 分叉或标记生命周期。

ath version create --name "首版"
ath version list
ath version diff <A> <B>
ath version fork --output ../my-product-v2     # 把已发布项目复制成新的可编辑候选
ath version validate / release / retire        # 校验 → 发布 → 退役

什么时候需要快照

产线换版、判定规则调整、同一产品多个客户配置时。判定规则本身也有规则级修订历史, 可以精确到「哪一条规则被谁改成了什么」,见 判定规则。

打不开或校验不过

ath project status --format json
ath validate
ath project refresh

status 会指出缺失或不一致的字段;refresh 重建派生状态与缓存。校验不过时不要手工改 YAML:优先用 ath app、ath dr 这类带校验的命令写入,避免留下半合法文件。