Skip to content

fix(pipeline): bind deploying conclusion to the final ros_deploy result - #208

Open
ruanzhengxin-zhuxing wants to merge 1 commit into
mainfrom
harness/46703231
Open

fix(pipeline): bind deploying conclusion to the final ros_deploy result#208
ruanzhengxin-zhuxing wants to merge 1 commit into
mainfrom
harness/46703231

Conversation

@ruanzhengxin-zhuxing

Copy link
Copy Markdown
Collaborator

Problem

The selling deploying step success guard only checked that some ros_deploy record satisfied CREATE_COMPLETE, so a conclusion could pair the stack_id of a superseded CREATE_FAILED stack with status: success (Session 5bed835ca9c84c7d9e3ec57fbc95c0e9: CREATE_FAILED stack 41aacbd4… recorded as success).

Fix

  • Add latest_record_must_match to require_tool_result in complete_step_tool.py, validating only the final matching tool call (including failed records) so the conclusion tracks the last ros_deploy attempt.
  • Enable it on the selling deploying guard in pipeline.yaml.
  • Tighten iac-aliyun-deploying SKILL guidance; add engine + contract tests.

Tests

  • tests/pipeline/engine/test_complete_step_tool.py, tests/pipeline/selling/ pass; ruff check and ty check src green.

The deploying success guard only checked that *some* ros_deploy record in the
step satisfied CREATE_COMPLETE, so a conclusion could pair the stack_id of a
superseded CREATE_FAILED stack with status: success as long as an earlier
attempt had matched. Step results then disagreed with the stack that was
actually deployed.

Add a latest_record_must_match option to require_tool_result that validates
only the final matching tool call, and enable it for the selling deploying
guard so stack_id/status always track the last ros_deploy attempt.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant