Files
test_demo/MX-PD-盘古 - new/PanGu.DieBonderApp/.github/instructions/workflow.instructions.md
Shi.Ji e31d3560bb 添加 MX-PD-盘古 项目文件
将 MX-PD-盘古 - new 目录下的所有文件添加到主仓库
2026-05-18 11:43:09 +08:00

2.9 KiB

applyTo
applyTo
MainShell/Process/**/*.cs,**/*Activity.cs,**/*Workflow*.cs,**/*ProcessService.cs,**/*MotionService.cs

Workflow Instructions

Workflow Architecture

This repository uses:

  • WorkflowRunner
  • AutoProductionWorkflowBuilder
  • ActivityAbstractBase
  • CompositeActivity
  • WorkflowStepIds
  • WorkflowStepIdResolver

中文说明

流程系统基于现有 Workflow 架构实现,生成代码时应优先复用这些对象和机制。

Layering Rules

  • Activity layer only:
    • calls Service / MotionService / ProcessService
    • writes WorkflowContext
    • returns execution result
  • PrepareExecute and AfterExecute only handle pre/post processing
  • Core workflow logic must be implemented in Service layer
  • Do not place recipe parsing, compensation logic, vision logic, or hardware orchestration in Activity

中文说明

分层规则:

  • Activity 层只负责调用 Service、写 WorkflowContext、返回执行结果
  • PrepareExecuteAfterExecute 只做前后处理
  • 核心流程逻辑必须放在 Service 层
  • 不要在 Activity 中写配方解析、视觉算法、补偿逻辑、硬件调度

Routing Rules

  • Do not place workflow jump logic in Activity
  • Actual workflow transitions must be configured by WorkflowStep
  • Normal business branches should use Route / SetRoute
  • Failure should only be used for real failures:
    • hardware error
    • timeout
    • communication failure
    • invalid required input
    • unrecoverable process error

中文说明

跳转规则:

  • 不要在 Activity 中写流程跳转逻辑
  • 流程跳转统一由 WorkflowStep 配置
  • 正常业务分支优先使用 Route / SetRoute
  • Failure 只用于真正异常,例如硬件错误、超时、通讯失败、关键输入缺失、不可恢复错误

JumpConditions Rules

  • JumpConditions are matched in add order
  • More specific branches must be placed first
  • Default flow must be placed last

中文说明

JumpConditions 匹配顺序按添加顺序执行:

  • 更具体的条件放前面
  • 默认分支放最后

Service Responsibilities

Service layer should be responsible for:

  • reading WorkflowContext
  • reading RecipeManager and current recipe
  • reading teach data and process parameters
  • acquiring hardware via HardwareManager
  • validating inputs
  • validating hardware state
  • validating safety conditions
  • executing workflow core steps
  • computing business result or compensation result
  • determining Route
  • returning structured process result

中文说明

Service 层职责:

  • 读取 WorkflowContext
  • 读取 RecipeManager 和当前配方
  • 读取示教数据和工艺参数
  • 通过 HardwareManager 获取硬件对象
  • 校验输入、硬件状态和安全条件
  • 执行核心流程步骤
  • 计算业务结果或补偿结果
  • 决定 Route
  • 返回结构化结果对象

Output Preference

When implementing workflow code, prefer:

  1. Activity skeleton
  2. Service skeleton
  3. result object design
  4. WorkflowContext write-back fields
  5. WorkflowStep routing suggestion
  6. JumpConditions ordering suggestion

中文说明

实现流程代码时,优先输出:

  1. Activity 骨架
  2. Service 骨架
  3. 结果对象设计
  4. WorkflowContext 回写字段
  5. WorkflowStep 路由建议
  6. JumpConditions 顺序建议