Add open_questions_gate scenario exercising mapping-form scripted gates - #485
Merged
Merged
Conversation
AB#3239 follow-up. Adds tests/harness/scenarios/
open_questions_gate_answer_loop_then_abort/scenario.yaml — the first
scenario to exercise the AB#3212 scripted-gate infrastructure's
mapping form (gate value + additional_input payload).
Path covered in plan-level.yaml:
depth_guard ... state_detector(not_started)
-> architect#1 (1 high-severity open_question)
-> open_questions_counter -> open_questions_gate
(scripted=answer + additional_input.answers)
-> architect#2 (open_questions cleared)
-> ensure_plan_branch (returns error envelope)
-> ensure_plan_branch_error_gate (scripted=abort, string form)
-> terminal_abort_run -> $end
Doubles as the proof for both gate-script forms in one scenario:
mapping form (open_questions_gate) and string shorthand
(ensure_plan_branch_error_gate). With AB#3212 strict_gates=true,
typos in either name would fail loudly.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Adds
tests/harness/scenarios/open_questions_gate_answer_loop_then_abort/scenario.yaml— the first scenario to exercise the AB#3212 scripted-gate infrastructure's mapping form (gate value +additional_inputpayload).Why
AB#3239 PR #482 shipped the first scripted-gate scenario (
plan_level_closed_unmerged_acknowledges_via_gate), which used the string shorthand form. AB#3212 PR #483 added the mapping form so gates declaringprompt_for: Xcan carry anadditional_inputpayload. Nothing exercised that path until now.open_questions_gate.answerdeclaresprompt_for: answers— the canonical proving ground.Path covered (
plan-level.yaml)The architect answer-loop round-trip (gate
answerroute -> back to architect -> open_questions cleared) is the headline behaviour; theensure_plan_branch_error_gateabort is just the clean terminal so we don't have to drive the rest of the plan-PR lifecycle.Why this scenario is worth its weight
additional_inputis shipped but untested.answerroute navigates back toarchitect— proving the gate routing actually fired.open_questions_gate) AND string form (ensure_plan_branch_error_gate). With AB#3212strict_gates=true, a typo in either name fails the scenario loudly.Results
Notes
ensure_plan_branchreturnserrorto short-circuit the downstream chain. In real runs,ensure_plan_branch_error_gatewould more typically be hit on transient git failure — the abort path was already there; we just walked it.pre_coder_branch_mismatch_gate) shipped in PR test(harness): pre_coder_branch_mismatch_gate abort scenario (AB#3210) #484. AB#3211 (squash_coverage_mismatch_gate) remains blocked on a per-scenario tmpgit initfixture — separate ADO item to follow.Closes: AB#3239 follow-up coverage of
open_questions_gatemapping form.Refs: AB#3212 (scripted-gate infrastructure), AB#3239 (initial closed_unmerged scenario).