feat: editar identidade de automação (external_key) na Library #48

Merged
jhony75 merged 1 commit from feature/scenario-external-key-edit into develop 2026-09-09 19:32:33 -03:00
Owner

Fecha a decisão em aberto desde o item 1 do roadmap ("não tem UI pra editar external_key"). Você pediu pra tratar como tarefa própria e pequena — é isso.

O que já existia

O backend já suportava external_key por completo (criar/editar, unicidade verificada, nunca roubado em duplicação). Só faltava UI — api.updateScenarioTemplate existia em api.ts mas nunca era chamado de lugar nenhum no frontend.

Mudança

  • "Editar identidade de automação" no menu "..." do cenário na Library, mesmo padrão de formulário inline já usado pra renomear suíte.
  • Mostra "Identidade de automação: nenhuma vinculada" ou o valor atual, com tooltip explicando pra que serve (ligar resultados de automação ingeridos ao cenário certo).

Bug encontrado e corrigido de carona

Testando isso descobri que update_scenario_template sempre criava uma entrada de histórico (TestScenarioTemplateVersion) e incrementava version em qualquer PUT — inclusive um que só mudasse external_key/suite_id/tags. Como não existia UI nenhuma chamando esse endpoint até agora, isso nunca tinha sido percebido na prática. Corrigido: só vira versão nova quando name/description/steps (o conteúdo de verdade do cenário) está no payload — metadados de classificação não são "uma forma diferente de testar a mesma coisa".

Validei ao vivo contra o dev: editar a identidade de automação mantém v1 e a aba Histórico continua vazia; editar o nome ainda bumpa a versão normalmente.

Verificação

  • Backend: pytest -q -n auto — 157 passed (1 teste novo cobrindo o fix de versionamento)
  • Frontend: npx tsc --noEmit / npm run lint (0 erros) / npx vitest run (107 passed, 1 teste novo) / npm run build — todos ok
  • Testado manualmente no navegador contra o dev real (dado de teste revertido depois).
Fecha a decisão em aberto desde o item 1 do roadmap ("não tem UI pra editar external_key"). Você pediu pra tratar como tarefa própria e pequena — é isso. ## O que já existia O backend já suportava `external_key` por completo (criar/editar, unicidade verificada, nunca roubado em duplicação). Só faltava UI — `api.updateScenarioTemplate` existia em `api.ts` mas **nunca era chamado de lugar nenhum** no frontend. ## Mudança - "Editar identidade de automação" no menu "..." do cenário na Library, mesmo padrão de formulário inline já usado pra renomear suíte. - Mostra "Identidade de automação: nenhuma vinculada" ou o valor atual, com tooltip explicando pra que serve (ligar resultados de automação ingeridos ao cenário certo). ## Bug encontrado e corrigido de carona Testando isso descobri que `update_scenario_template` sempre criava uma entrada de histórico (`TestScenarioTemplateVersion`) e incrementava `version` em **qualquer** PUT — inclusive um que só mudasse `external_key`/`suite_id`/`tags`. Como não existia UI nenhuma chamando esse endpoint até agora, isso nunca tinha sido percebido na prática. Corrigido: só vira versão nova quando `name`/`description`/`steps` (o conteúdo de verdade do cenário) está no payload — metadados de classificação não são "uma forma diferente de testar a mesma coisa". Validei ao vivo contra o dev: editar a identidade de automação mantém `v1` e a aba Histórico continua vazia; editar o nome ainda bumpa a versão normalmente. ## Verificação - Backend: `pytest -q -n auto` — 157 passed (1 teste novo cobrindo o fix de versionamento) - Frontend: `npx tsc --noEmit` / `npm run lint` (0 erros) / `npx vitest run` (107 passed, 1 teste novo) / `npm run build` — todos ok - Testado manualmente no navegador contra o dev real (dado de teste revertido depois).
feat: editar identidade de automação (external_key) na Library
All checks were successful
EEG QA CI / validate-and-build (pull_request) Successful in 4m41s
EEG QA CI / Deploy production (pull_request) Has been skipped
EEG QA CI / Deploy development (pull_request) Has been skipped
ff744584ff
Fecha a lacuna deixada em aberto desde o item 1 do roadmap: o backend
já suportava external_key por completo (criar/editar, unicidade
verificada, nunca roubado em duplicação), mas não existia nenhuma UI
pra editar um cenário na Library -- external_key só era setado via
mapeamento de Automation Discovery.

Adiciona "Editar identidade de automação" no menu "..." do cenário,
com o mesmo padrão de formulário inline já usado pra renomear suíte.

fix: editar só external_key/suite_id/tags não deve virar uma versão
nova do cenário -- são metadados de classificação, não uma forma
diferente de testar a mesma coisa. update_scenario_template sempre
criava uma entrada de TestScenarioTemplateVersion e incrementava
version em QUALQUER PUT, mesmo um que só mudasse a external_key --
nunca dava pra perceber isso porque não havia UI nenhuma chamando esse
endpoint até agora. Version só bump quando name/description/steps
(conteúdo de verdade) estão no payload.
jhony75 merged commit 038b59a75b into develop 2026-09-09 19:32:33 -03:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
jhony75/eeg-qa!48
No description provided.