test(hitl): stop gating validate checks on the literal --output json flag - #2559
test(hitl): stop gating validate checks on the literal --output json flag#2559nikhil-maryala wants to merge 1 commit into
Conversation
…flag Ten "Agent validated the flow" command_executed criteria required `flow validate.*--output json`. The flag is outcome-invisible, so the pattern docks agents that validate without typing it — the repo's test-writing rules forbid exactly this gate, and the Aug 9 antigravity verification run for #2534 showed the 0/1 match in the wild. Keep the behavior gate (validate was executed); drop the flag from the pattern. Remaining instances in uipath-test and uipath-coded-apps are left to their owners — flagged in the PR. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
Claude finished @nikhil-maryala's task in 1m 13s —— View job PR Review: test(hitl): stop gating validate checks on the literal --output json flag
SummaryDrops Change-by-Change Review1. All 10 YAML files —
|
| Area | Status | Notes |
|---|---|---|
| Frontmatter | OK | No frontmatter changes |
| E2E Tests | OK | Criteria patterns align with .claude/rules/test-writing.md; no weights/thresholds changed |
| Skill Body | OK | No skill files changed |
| References & Assets | OK | No references changed |
| Repo Hygiene | OK | Scoped to HITL suite only; no secrets, no unrelated changes |
Issues for Manual Review
None found. The run_command criteria already independently verify that uip flow validate passes (with --output json in the harness command), so removing the flag from command_pattern does not reduce test coverage.
Conclusion
Clean, mechanical fix that aligns 10 test tasks with the repo's own test-writing rules. No issues found — approve.
|
Claude finished @nikhil-maryala's task in 3m 1s —— View job Coder-eval task lint (advisory)10 task YAMLs modified; verdict counts: 0 Critical, 0 High, 0 Medium, 0 Low, 10 OK (1 pre-existing theme noted below). Rubric: .claude/commands/lint-task.md. This check is advisory and never blocks merge. Evidence of passing run✅ Author confirms verification: " Per-task lintAll 10 files received the same mechanical edit (removing
|
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 250dd56e3c
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| description: "Agent ran flow validate during the session" | ||
| tool_name: "Bash" | ||
| command_pattern: '(uip|\$UIP)\s+(maestro\s+)?flow\s+validate.*--output\s+json' | ||
| command_pattern: '(uip|\$UIP)\s+(maestro\s+)?flow\s+validate' |
There was a problem hiding this comment.
Require a target before counting validation
When an agent probes the CLI with uip maestro flow validate --help, this shortened regex now counts the command as “validated” even though no flow file was checked. The canonical invocation requires <file> (skills/uipath-human-in-the-loop/SKILL.md:39), and the later run_command is grader-owned rather than evidence that the agent performed validation, so all ten changed tasks can incorrectly award this behavioral criterion during command discovery; require a real positional target or explicitly exclude help invocations while leaving --output json optional.
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
+1, is the change making it too loose.
|
Passing-run claim —
Antigravity note: the agent authored no HITL node and never ran validate — its "Agent validated the flow" criterion now correctly reports |
Problem
Ten
command_executedcriteria in the uipath-human-in-the-loop suite gate "Agent validated the flow" on the pattern(uip|\$UIP)\s+(maestro\s+)?flow\s+validate.*--output\s+json. The--output jsonflag is outcome-invisible, so the pattern docks agents that reach the same validated result without typing the flag —.claude/rules/test-writing.mdforbids exactly this gate ("Never add a gating command_executed check on--output json"). Observed in the wild: the #2534 verification run (antigravity) scoredMatched 0/1on this criterion.Related cases already fixed on main:
flow-solution-select-askno longer gates on the Claude-Code-onlyAskUserQuestiontool, and theevaluate/*flow tasks dropped their--output jsongates — this PR closes out the last evidence-backed instances in the flow/hitl suites.Fix
Drop
.*--output\s+jsonfrom the gating pattern in all 10 YAMLs; the criterion still gates on the behavior (flow validateexecuted). One line per file, no weights or thresholds changed.Out of scope (for owners)
uipath-test(10 criteria) anduipath-coded-apps(4 criteria) embed--output jsonin their gating command patterns too. Left untouched — different CODEOWNERS; flagging for those owners to decide.Verification
run-coder-eval.ymlfrom this branch onquality_04_all_handles,quality_07_runtime_vars,e2e_06_invoice_approval_greenfield_simpleacross claude / codex / antigravity — links to follow in a comment.🤖 Generated with Claude Code