test(cli): 所有者循环的信号事件恢复路径没有测试
□ 问题
由#3316所添加的CLI所有者回路有一个未经测试的分支:一个信号到达而自有过程通过一个事件等待而睡眠.
“等待等待线”每5秒投票一次,一旦Cursor报告已发信号'(packages/cli/src/commands/workflow.ts:3505',Cursor建于:3476-3484'),就返回假设'。 整合套装包涵盖相邻的路径——在最后期限前等待时间,在一个业主之下连续等待两次,在最后期限前等待期满 ,注意等待释放其业主,以及等待另一个过程——但当业主正在入睡并声称等待“满足”时,没有什么能推动真正的信号进入跑道。
在#3316上,两个评论员都独立命名了它:包检记录到它无法获得的证据,而CodeRabbit则将其提升为功能-正确小发现.
∮为什么它很重要∮
这是活动的成功之路,在CLI的主导下等待。 今天所断言的一切都是因为时间耗尽而结束的等待;没有什么东西会因为等待的事情实际上发生了而坚持等待而结束. 使民意测验失去信号At'——或让被取代的Cursor警卫在:3513'把信号当作一个已放行的等待,然后返回`停止'——的倒退,将使跑道一直停留到最后期限,仍然通过整个套房,看起来是缓慢的成功,而不是破碎的。
警卫是特殊的风险。 它比较了 " 步骤名称 " 和 " resumeAt " ,并在两者移动时停止循环。 一个信号预计也不会改变,因此分支取决于信号如何写出等待语境的落实细节,没有测试针.
∮为什么现在∮
#3316合并为"c15da5166",因此代码在"dev"上未经测试. 这一缺口被接受为该PR的非屏蔽,因为 " /signal " 需要一个运行中的服务器,这使得路径脱离了仅CLI的情景#3312. 这种推理限制了风险;它没有涵盖仍然可以达到的组合——一个服务器运行而一个前缘或脱落的CLI进程拥有运行——如果信号获得非服务器路径,它将停止应用.
□ 希望的结果
集成测试开始运行,在某一事件上暂停等待一个遥远的最后期限,在拥有CLI进程时通过普通路径发出信号,并声称运行恢复和完成等待节点满意'——而不是过期',而不暂停。
□ 变化无常
- 这个断言是针对可观测运行状态(等待状态和运行终端),而不是在民意调查的内部,所以一个行为保留重写循环不断流出.
- 固定时间的截止时间已经足够长了,到期时间不可能是完成运行的时间;由于所发射的截止时间证明没有结果,测试时间已经过去。
- 现有的事件等待到期案件将保留下来,并保持与这个案件不同。
- 这里没有生产行为的变化。 如果测试证明树枝断了 那 . . . . . . .
内容来源: coleam00/Archon