steps:
  - id: confirm-intent
    title: 确认入职意愿
    goal: 在开通账号和推进 offer 前确认新人会按约定入职
    instructions:
      - 与候选人确认入职意愿和入职日期
      - 说明公司会提前开通飞书和相关权限，因此需要明确答复
      - 将确认结果记录给 HR Ops 或带教人
    completion:
      type: user_confirm
      prompt: 确认已经完成入职意愿确认
    help_refs:
      - knowledge.md#入职前确认
    blockers:
      - condition: 入职意愿不确定
        escalation_owner: HR Ops
        message: 暂停开通账号，先由 HR Ops 或带教人确认意愿
    next_step: collect-hr-info-safely

  - id: collect-hr-info-safely
    title: 确认入职信息收集路径
    goal: 知道哪些信息要通过正式 HR 流程收集，避免在 agent 对话中保存敏感信息
    instructions:
      - 阅读 knowledge.md#入职信息字段
      - 只确认字段清单，不在对话中提交身份证号、银行卡号等敏感信息
      - 通过公司正式 HR 流程提交敏感材料
    completion:
      type: user_confirm
      prompt: 确认你知道入职信息应走正式 HR 流程
    help_refs:
      - knowledge.md#入职信息字段
      - faq.yaml#sensitive-info
    blockers:
      - condition: 不知道提交入口
        escalation_owner: HR Ops
        message: 请 HR Ops 提供正式信息收集入口
    next_step: offer-followup

  - id: offer-followup
    title: 跟进 offer 下发
    goal: 确认 offer 是否下发和是否收到
    instructions:
      - 向 HR Ops 确认 offer 预计下发时间
      - 向新人确认是否收到 offer
      - 如果未收到，记录卡点并升级给 HR Ops
    completion:
      type: user_confirm
      prompt: 确认 offer 状态已经记录
    help_refs:
      - knowledge.md#Offer跟进
    blockers:
      - condition: offer 未下发或未收到
        escalation_owner: HR Ops
        message: 请 HR Ops 检查 offer 流程状态
    next_step: prepare-accounts

  - id: prepare-accounts
    title: 提前准备账号与学习资料
    goal: 入职前确认飞书、学习资料和必要账号准备进度
    instructions:
      - 提前 3 天检查飞书账号和必要权限是否在准备中
      - 向新人发送可提前学习的资料清单
      - 对较晚入职的新人保持中间跟进
    completion:
      type: user_confirm
      prompt: 确认账号和学习资料准备状态已跟进
    help_refs:
      - knowledge.md#账号和资料准备
    blockers:
      - condition: 账号无法按时开通
        escalation_owner: IT / Admin
        message: 请 IT / Admin 或 HR Ops 协助确认账号开通
