Conversation
Aplica os tokens da marca ao frontend e publica o design system e o protótipo navegável da Sprint 1. Corresponde ao habilitador PRE-05. Cor, tipografia, raio e sombra saíram da folha de estilo do site da PRO4TECH, não de aproximação visual. As quatro cores semânticas são a exceção — a marca não publica cores de estado, então foram derivadas do laranja em oklch, mantendo luminosidade e croma e variando só o matiz, para conviverem com o acento sem competir com ele. O index.css anterior usava índigo e ciano com efeito de vidro, que não é a identidade do cliente. Os nomes de variável antigos foram mantidos como alias para o App.tsx continuar funcionando; novo código usa os tokens em português. O carregamento das fontes voltou para o index.html, onde já havia preconnect, e a JetBrains Mono foi preservada: a marca não opina sobre monoespaçada. O protótipo abre na Conversa, não no formulário. Se a entrada primordial de dados é por IA — reunião, transcrição, documento — o cadastro manual deixa de ser o caminho principal e o backlog vira o lugar de revisar o que entrou. Toda proposta da IA cita a origem e espera Aceitar ou Dispensar, e perguntas fora do acervo são recusadas em vez de respondidas: é a regra inegociável do PRD e o PBI-03.2.4 virando tela. Os canvases gerados têm ~2,4 MB cada e são regeneráveis a partir dos .dc.html, então ficam fora do versionamento.
O editor agora muda conforme o nível selecionado na árvore. Épico e feature abrem a lista de critérios de aceitação, com adicionar, remover e reordenar (PBI-01.2.1 e PBI-01.2.2); PBI mantém história e cenários. Cenários deixaram de ser um só: viraram lista com reordenação e remoção (PBI-01.2.4), e o checklist passou a cobrar DADO, QUANDO e ENTÃO em todos eles, não apenas no primeiro. Anexo de protótipo entrou com a verificação que o guia exige (PBI-02.1.3, cenário 2): imagem não registra regra de negócio, exceção nem estado de erro, então havendo anexo sem cenário o item é reprovado e o alerta aparece junto do anexo. Isso torna o conjunto de verificações variável, que é justamente o que a fórmula do PBI-01.3.6 pede — a completude passou a ser sobre as aplicáveis, não sobre um total fixo, e o rótulo do painel diz isso.
O PDF que estava no repositório é a v1.0, anterior ao parecer da PRO4TECH: não tem a feature FT-01.6 nem os quatro PBIs que a revisão acrescentou, e a divisão por sprint está desatualizada. O gerador entra versionado desta vez. Ele ficou fora do repositório na primeira geração e se perdeu, o que obrigou a reescrevê-lo do zero agora. Converte o Markdown direto para HTML e imprime com o Chrome headless, sem depender de pandoc nem weasyprint. O bloco de cenário é o ponto sensível e está tratado explicitamente: DADO, QUANDO e ENTÃO saem uma cláusula por linha, com a palavra-chave em coluna própria e sem quebra. Num parágrafo corrido o padrão do cliente deixaria de ser legível — e seria um mau sinal mandar o documento assim para quem escreveu o guia. Cláusula, item de lista e história podem quebrar em duas linhas no Markdown; o conversor junta a continuação antes de emitir o HTML. Sem isso o texto excedente escapava da caixa do cenário. Duas saídas: a completa com os cenários, em 65 páginas, e a resumida só com as histórias, em 21, que é o formato que o cliente já recebeu. As 576 cláusulas do Markdown foram conferidas uma a uma na saída.
As telas da S1-02 e S1-04 já estavam mergeadas usando o índigo antigo. Este commit troca a paleta por baixo delas, sem mexer em layout. O repositório tinha três paletas concorrentes e nenhuma era a do cliente: o index.css seguia índigo com efeito de vidro, o styles/tokens.css dizia "PRO4TECH palette" mas era ciano sobre fundo claro, e o docs/DESIGN_SYSTEM.md trazia laranja #F97316 — que é o orange-500 do Tailwind, não a cor da marca. Os três saíram de captura de tela; os valores aqui saíram da folha de estilo do site da PRO4TECH. styles/tokens.css passa a ser a fonte única e agora é de fato importado. Ele e o styles/components.css eram arquivos órfãos: ninguém os importava, então as classes ds-* de components/ui/index.tsx renderizavam sem estilo nenhum. Quatro tokens que a folha de componentes referenciava não existiam; foram corrigidos. O index.css deixa de declarar cor e fica só com reset, base e componentes. Os nomes antigos continuam como alias, porque Auth.tsx, Projects.tsx e App.tsx os consomem. Contraste conferido par a par. Branco sobre o laranja da marca dá 3,13:1 e reprova na WCAG AA para texto normal; o rótulo do botão principal passou a ser #16181D, que dá 5,67:1 sobre o mesmo laranja. Assim a cor da marca fica intacta em vez de ser escurecida até passar. As pranchas do design system foram corrigidas junto, senão a referência contradiria o código. A etiqueta com o nome do produto usava badge-info, azul de informação. Virou badge-brand. Verificado com o build, os 44 testes e a tela de login aberta no navegador, incluindo o estado de erro.
…nter no protótipo Corrige o breadcrumb fixo de hierarquia no editor do PBI para refletir os pais reais do item selecionado na árvore. Adiciona manipuladores de tecla Enter nas entradas de texto do Chat e na tela de Login para tornar a navegação fluida e totalmente funcional.
…las do app Substitui a altura fixa do container interno por 100% no fluxo de renderização condicional do x-dc, garantindo que o formulário de login ocupe todo a tela isoladamente sem exibir a barra e a tela de Projetos vazadas ao fundo.
…ição na tela inicial O atributo hint-placeholder-val=true fazia o renderizador de preview exibir estaticamente os blocos do Login e do App simultaneamente. Removido do container principal do App para que apenas a tela de Login seja renderizada inicialmente até a autenticação.
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.
Entrega o habilitador
PRE-05: design system, protótipo navegável e os tokens aplicados às telas que já estão namain.O problema
O repositório tinha três paletas concorrentes, e nenhuma era a do cliente:
frontend/src/index.css#6366f1+ ciano, efeito de vidrofrontend/src/styles/tokens.css#0aa7c8sobre fundo clarodocs/DESIGN_SYSTEM.md#F97316orange-500do TailwindOs três foram extraídos de captura de tela. O
DESIGN_SYSTEM.mddiz isso de forma explícita: "extraído utilizando a URL da landing page do cliente, e algumas capturas de tela". Quem olha print e encaixa no valor mais próximo que conhece acaba no Tailwind.Os valores deste PR vieram do
assets/css/main.cssdo site da PRO4TECH:DESIGN_SYSTEM.md#ED6A32#F97316#0B0D10#0A0D14#6B7280#9CA3AF10px— a marca tem um só8pxAs quatro cores de estado são a única exceção: a PRO4TECH não publica cores semânticas. Foram derivadas do laranja em oklch, mantendo luminosidade (
0.676) e croma (0.176) e variando só o matiz, para conviverem com o acento sem competir.Dois bugs encontrados no caminho
styles/tokens.cssestyles/components.csseram arquivos mortos. Ninguém os importava. As classesds-*decomponents/ui/index.tsxrenderizavam sem estilo nenhum. Agoratokens.cssé a fonte única e é de fato importado; quatro tokens que ocomponents.cssreferenciava não existiam e foram corrigidos.Branco sobre o laranja da marca reprova na WCAG AA. Dá
3,13:1, abaixo do mínimo de4,5:1para texto normal. O rótulo do botão principal passou a ser#16181D, que dá5,67:1sobre o mesmo laranja — a cor da marca fica intacta, em vez de ser escurecida até passar.Contraste conferido par a par:
O que entra
Design system — três pranchas: fundamentos, componentes com estados, e os padrões próprios do produto (hierarquia, cenário
DADO/QUANDO/ENTÃO, completude, sugestão da IA).Protótipo navegável — o fluxo da Sprint 1 com controles que funcionam. Abre na Conversa, não no formulário: se a entrada primordial de dados é por IA — reunião, transcrição, documento — o cadastro manual deixa de ser o caminho principal e o backlog vira o lugar de revisar o que entrou. Toda proposta da IA cita a origem e espera Aceitar ou Dispensar; pergunta fora do acervo é recusada em vez de respondida.
Telas existentes —
Auth.tsxeProjects.tsxcontinuam iguais em layout. Os nomes de variável antigos viraram alias, então nada quebrou. A etiqueta com o nome do produto usavabadge-info, azul de informação; viroubadge-brand.PDF do backlog na v1.1 — o que estava no repositório era a v1.0, sem a
FT-01.6nem os quatro PBIs da revisão do cliente. O gerador entra versionado desta vez: ficou fora na primeira geração, se perdeu, e precisou ser reescrito do zero.Verificação
Build passa, os 44 testes passam, e abri a tela de login no navegador para conferir — incluindo o estado de erro. As 576 cláusulas
DADO/QUANDO/ENTÃOdo backlog foram conferidas uma a uma na saída do PDF.Precisa de decisão
docs/DESIGN_SYSTEM.md? Manter os dois é garantir que alguém use o laranja errado. Sugiro apontá-lo paradocs/design/, mas não apaguei nada de ninguém.PRE-05está atribuído ao Giovanni noPLANEJAMENTO_SCRUM.md. Este PR entrega a tarefa inteira. Alinhem antes de mergear.S1-02eS1-04são dele e já estavam mergeadas — vale uma conferida visual de quem as construiu.