fix(plan): use structured alternatives objects in plan explain output per spec #11090

Merged
HAL9000 merged 3 commits from bugfix/m2-plan-explain-alternatives-format into master 2026-06-15 16:48:58 +00:00

3 Commits

Author SHA1 Message Date
controller-ci-rerun 144d040284 chore: re-trigger CI [controller]
CI / load-versions (pull_request) Successful in 15s
CI / push-validation (pull_request) Successful in 25s
CI / build (pull_request) Successful in 35s
CI / lint (pull_request) Successful in 47s
CI / quality (pull_request) Successful in 48s
CI / typecheck (pull_request) Successful in 1m0s
CI / security (pull_request) Successful in 1m8s
CI / helm (pull_request) Successful in 41s
CI / unit_tests (pull_request) Successful in 4m43s
CI / docker (pull_request) Successful in 1m30s
CI / integration_tests (pull_request) Successful in 8m24s
CI / coverage (pull_request) Successful in 9m10s
CI / status-check (pull_request) Successful in 3s
2026-06-15 12:10:18 -04:00
HAL9000 0bd6f98cef chore(contributors): add PR #11090 entry for plan explain alternatives format fix
CI / load-versions (pull_request) Successful in 15s
CI / push-validation (pull_request) Successful in 25s
CI / lint (pull_request) Successful in 1m13s
CI / typecheck (pull_request) Successful in 1m20s
CI / security (pull_request) Successful in 1m18s
CI / quality (pull_request) Successful in 1m15s
CI / build (pull_request) Successful in 47s
CI / helm (pull_request) Successful in 48s
CI / unit_tests (pull_request) Successful in 6m44s
CI / docker (pull_request) Successful in 1m30s
CI / integration_tests (pull_request) Failing after 16m23s
CI / coverage (pull_request) Successful in 14m33s
CI / status-check (pull_request) Failing after 3s
ISSUES CLOSED: #11090
2026-06-15 11:16:04 -04:00
HAL9000 b5f6c4d9b8 fix(plan): use structured alternatives objects in plan explain output per spec
- Replace `alternatives_considered` with structured `alternatives` array containing index(1-based), description, and chosen(boolean) fields in `_build_explain_dict()`
- Fix test fixture: add `chosen_option="GraphQL API"` to match an alternative so exactly_one_chosen assertion is correct
- Fix step pattern: replace fragile CSV-capture step with explicit field-checking step that validates all three keys (index, description, chosen)
- Update BDD scenarios and Robot Framework helpers for new field name
- Add CHANGELOG entry under [Unreleased]/Changed

ISSUES CLOSED: #9166
2026-06-15 11:16:04 -04:00