Files
GTI_GERENCIADOR_FISCAL/.superpowers/sdd/2026-09-22-control-panel-operational-ux-v1/final-fix-report.md
T

1.5 KiB

Final Fix Report — Control Panel Operational UX V1

Base: c237820

Changes

  • Legacy blockers without an exact installation binding remain fail-closed. Their detail page explains in Portuguese why resolution is unavailable and omits the resolution form. Direct HTML and JSON attempts return HTTP 409; missing blockers remain 404. Legacy details do not load context by guessing a company identity.
  • Resolution rejects derived company_key values longer than the database limit of 64 characters before creating context, job, or audit rows. No truncation or identity aliasing is performed.
  • Validation-error re-renders preserve the submitted key, value, scope, scope key, and reason, and reload current persisted context for a bound blocker.
  • Added regression coverage in central/tests/test_blocker_resolution_panel.py and central/tests/test_control_panel_pages.py.

Verification

  • TDD RED: focused tests initially failed on the missing company-key validation, unavailable-blocker response/UI, and form/context recovery behavior.
  • Focused: python -m pytest central/tests/test_blocker_resolution_panel.py central/tests/test_control_panel_pages.py -q — 26 passed.
  • Full central suite: python -m pytest central/tests -q — 284 passed, 1 warning (existing openpyxl print-area warning in test_bootstrap_v1_extra.py).
  • git diff --check — passed.

Concerns

  • Test output includes the existing pytest-asyncio configuration deprecation notice and one unrelated openpyxl warning; neither caused test failures.