Communitygithub.com

Refatoração com Autoridade no Backend

Refatore aplicações para que o backend detenha a verdade de execução e a UI apenas projete snapshots. Use quando ferramentas têm autoridade dividida. Não serve para trabalho cosmético de UI ou novas funcionalidades antes de remover a deriva.

O que é Refatoração com Autoridade no Backend?

Esta skill guia a refatoração de aplicações onde a verdade de execução está indevidamente dividida entre frontend e backend. O objetivo é consolidar toda a autoridade de estado de execução no backend, transformando a UI em um mero projetor de snapshots derivados de comandos, consultas e eventos autoritativos. É útil para eliminar problemas como inconsistências após reinicializações, lógica de compatibilidade persistente no caminho crítico e fluxos de aprovação que dependem de reconstrução local do frontend. Funciona em qualquer plataforma (Tauri, web, desktop) e baseia-se num fluxo estruturado de inventário, congelamento de contrato, normalização de propriedade de estado e remoção de seams de compatibilidade ativos.

Funciona com✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/curiositech/windags-skills/tree/HEAD/skills/backend-authoritative-runtime-refactor

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

O que Refatoração com Autoridade no Backend faz?

Refatore apenas depois de poder dizer exatamente onde a verdade de execução reside e como a UI a lê.

Quando Usar

  • A UI sintetiza gráficos, fases ou escolhas de provedor que o backend não entende.
  • Reiniciar ou reconectar altera o estado visível de execução porque o frontend armazenou autoridade.
  • Schemas antigos e novos, formatos de inicialização ou tipos de nó coexistem no caminho ativo de criação.
  • Aprovação, revisão ou execução downstream depende de reconstrução apenas do frontend.

NÃO Serve para

  • Limpeza visual cosmética sem alteração na propriedade de execução.
  • Refatorações de componentes isolados onde o contrato do backend já é autoritativo.
  • Entregar novas funcionalidades de negócio antes de eliminar a costura de autoridade dividida.
  • Trabalho puro de desempenho do backend quando a arquitetura já possui uma única fonte de verdade.

Pontos de Decisão

flowchart TD
  A[Solicitação de refatoração de workflow] --> B{A UI ainda pode inventar verdade de execução?}
  B -->|Não| C[Use uma skill de domínio ou UI mais restrita]
  B -->|Sim| D[Inventarie comandos, consultas e costuras de eventos]
  D --> E{Cada ação do usuário pode ser mapeada para comando, consulta ou evento?}
  E -->|Não| F[Congele o contrato antes de trabalhar em funcionalidades]
  E -->|Sim| G[Separe estado de projeção do estado de propriedade do backend]
  G --> H{Caminhos legados de compatibilidade ainda estão ativos?}
  H -->|Sim| I[Mova-os para arestas de migração ou remova-os]
  H -->|Não| J[Adicione avaliadores, consultas seguras de inicialização e assinaturas de evento]
  I --> J
  J --> K[Valide prontidão para reconexão, aprovação e execução downstream]

Use este modelo de roteamento primeiro:

  • Se a UI não puder ser descrita como comando -> transição do backend -> projeção de consulta ou evento, a costura ainda está errada.
  • Se um caminho de "compatibilidade temporária" estiver no caminho crítico, trate-o como dívida de refatoração, não como funcionalidade.
  • Se reiniciar ou reconectar não puder reconstruir o estado visível apenas a partir da verdade do backend, a refatoração está incompleta.

Método de Trabalho

1. Inventarie o cérebro dividido

Encontre todos os lugares onde a UI:

  • gera ou muta a verdade de execução
  • inventa fases que o backend desconhece
  • simula execução em caminhos de código ativos
  • preserva schemas antigos e novos no mesmo caminho de criação
  • mistura camadas de roteamento abstratas com IDs exatos de provedor

2. Congele o contrato

Defina apenas três classes:

  • Comandos: iniciar, parar, aprovar, retomar, mutar
  • Consultas: estado de inicialização, payload de revisão, snapshot de execução, saúde do provedor
  • Eventos: transições autoritativas, vereditos de avaliadores, status de portão, marcadores de replay

Se uma ação da UI não puder ser expressa como uma destas, a arquitetura ainda está turva.

3. Normalize a propriedade de estado

Divida stores em:

  • estado de entrada de contrato
  • estado de projeção de snapshot do backend
  • estado de layout da UI

Não permita que nenhuma store possua tanto verdade de execução quanto preocupações de layout.

4. Remova costuras de compatibilidade ativas

Prefira remoção a "suportar ambos por enquanto".

Remoções típicas:

  • compatibilidade de schema singular e plural na criação ativa
  • simulação de navegador ou demo no runtime ativo de desktop
  • tipos de nó obsoletos no caminho principal
  • sumários de revisão duplicados
  • múltiplos formatos de inicialização ou importação

5. Adicione avaliadores antes de confiar na refatoração

Cada nó de implementação deve ter:

  • um avaliador de saída local para correção
  • um avaliador de prontidão downstream para segurança de contrato
  • um caminho de reinicialização ou reconexão que reidrate da verdade do backend, não de suposições do frontend

Modos de Falha

Projeção disfarçada de autoridade

Sintoma: a UI parece "apenas leitura", mas silenciosamente monta fase, gráfico ou verdade de provedor localmente.

Correção: mova essa lógica para comandos ou consultas do backend e trate o frontend como um projetor.

Calcificação da costura de compatibilidade

Sintoma: "suportar ambos por enquanto" permanece no caminho crítico por semanas e se torna a arquitetura real.

Correção: empurre a compatibilidade para arestas de migração unidirecionais com uma data explícita de remoção ou remova agora.

Aprovação sem inspecionabilidade

Sintoma: um humano pode aprovar trabalho que não pode inspecionar porque o payload de revisão é parcial ou sintetizado pelo frontend.

Correção: o backend deve emitir o payload de revisão exato; a UI apenas o renderiza.

Inicialização hostil a replay

Sintoma: reiniciar o app altera o estado visível ou perde a posição do portão porque o frontend armazenou autoridade.

Correção: a inicialização deve ser uma consulta contra a verdade do backend mais replay de evento, não reconstrução de store.

Xibolete

Se reiniciar o app altera o estado de execução visível sem nenhum novo evento do backend, a autoridade ainda está dividida.

Exemplo Trabalhado

Editor de workflow Tauri com lógica de fase de propriedade do frontend

Problema:

  • Stores React criaram o gráfico, inferiram estado de fase e normalizaram camadas de provedor.
  • A execução do backend usava um contrato diferente, então os fluxos de revisão e reinicialização divergiram.

Caminho de refatoração:

  1. Inventarie cada lugar onde a UI inventou a verdade de execução.
  2. Colapse interações de runtime para comandos, consultas e eventos.
  3. Mova normalização de provedor e transições de fase para comandos do backend.
  4. Remova uniões de formato de inicialização do caminho ativo de criação.
  5. Adicione portões de avaliador para que o trabalho downstream prossiga apenas de saídas validadas pelo backend.

Condição de sucesso:

  • Ao reiniciar, a UI reconstrói o mesmo estado visível a partir do snapshot do backend mais eventos.
  • Telas de aprovação renderizam um payload de revisão emitido pelo backend, não uma recomposição React.

Orientação para Fork

Bifurque quando o trabalho se separar limpidamente:

  • Pista de contrato: inventarie costuras de autoridade dividida e defina comandos, consultas e eventos.
  • Pista de remoção: remova camadas de compatibilidade, tipos de nó obsoletos e uniões de formato de inicialização.
  • Pista de verificação: adicione portões de avaliador, testes de replay e cobertura de reinicialização ou reconexão.

Mantenha as decisões finais de propriedade na pista pai para que um ator decida o que o backend realmente possui.

Portões de Qualidade

  • A UI não pode fabricar verdade de gráfico, fase, provedor ou portão localmente.
  • Cada ação do usuário mapeia para um comando, consulta ou evento.
  • O estado de execução sobrevive a reinicialização e reconexão apenas a partir da verdade do backend.
  • Payloads de revisão e aprovação são emitidos pelo backend e renderizados pela UI.
  • A lógica de compatibilidade reside apenas em arestas de migração, não no caminho ativo.
  • A execução downstream para em falha de contrato upstream.
  • IDs exatos de provedor e escolhas de modelo são visíveis no limite do contrato.
  • Testes cobrem caminhos de reinicialização, reconexão, aprovação e falha de avaliador.

Mapa de Referência

  • references/architecture-patterns.md — padrões de contrato de workflow de propriedade do backend e divisões de propriedade de estado.
  • references/windags-lessons.md — lições concretas de uma migração real de runtime de autoridade dividida.

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

curiositech/windags-skills

Expert in 2000s-era music visualization (Milkdrop, AVS, Geiss) and modern WebGL implementations. Specializes in Butterchurn integration, Web Audio API AnalyserNode FFT data, GLSL shaders for audio-reactive visuals, and psychedelic generative art. Activate on "Milkdrop", "music visualization", "WebGL visualizer", "Butterchurn", "audio reactive", "FFT visualization", "spectrum analyzer". NOT for simple bar charts/waveforms (use basic canvas), video editing, or non-audio visuals.

curiositech/windags-skills

Expert legal research agent for finding and scraping expungement data state by state. Knows authoritative sources, URL patterns, Firecrawl configuration, and 2026 legal landscape.

curiositech/windags-skills

Expert in 3D computer vision labeling tools, workflows, and AI-assisted annotation for LiDAR, point clouds, and sensor fusion. Covers SAM4D/Point-SAM, human-in-the-loop architectures, and vertical-specific training strategies. Activate on '3D labeling', 'point cloud annotation', 'LiDAR labeling', 'SAM 3D', 'SAM4D', 'sensor fusion annotation', '3D bounding box', 'semantic segmentation point cloud'. NOT for 2D image labeling (use clip-aware-embeddings), general ML training (use ml-engineer), video annotation without 3D (use computer-vision-pipeline), or VLM prompt engineering (use prompt-engineer).

curiositech/windags-skills

Implement WCAG 2.2 AA/AAA compliance with automated testing, keyboard navigation, screen reader support, and focus management. Activate on: accessibility audit, WCAG compliance, keyboard navigation, screen reader, aria attributes, axe-core, focus trap. NOT for: design-level accessibility review (use design-accessibility-auditor), color contrast only (use css-in-js-architect).

curiositech/windags-skills

Time-blind friendly planning, executive function support, and daily structure for ADHD brains. Specializes in realistic time estimation, dopamine-aware task design, and building systems that actually work for neurodivergent minds.

curiositech/windags-skills

Designs digital experiences for ADHD brains using neuroscience research and UX principles. Expert in reducing cognitive load, time blindness solutions, dopamine-driven engagement, and compassionate design patterns. Activate on 'ADHD design', 'cognitive load', 'accessibility', 'neurodivergent UX', 'time blindness', 'dopamine-driven', 'executive function'. NOT for general accessibility (WCAG only), neurotypical UX design, or simple UI styling without ADHD context.

curiositech/windags-skills

>- Apply crisis decision-making research to agent routing, uncertainty triage, and coordination failure analysis in time-pressured systems. Use when diagnosing handoff failures, analytical paralysis, or expert judgment under incomplete information. NOT for routine coding, simple CRUD design, or static single-agent tasks with complete information.

curiositech/windags-skills

Extend and modify the admin dashboard, developer portal, and operations console. Use when adding new admin tabs, metrics, monitoring features, or internal tools. Activates for dashboard development, analytics, user management, and internal tooling.

curiositech/windags-skills

Conversation patterns and interaction protocols for multi-agent systems. Covers request/response, pub/sub, blackboard, delegation chains, debate, critique, consensus, fan-out/fan-in, supervisor-worker, and peer negotiation. Deep analysis of AutoGen conversation patterns, CrewAI delegation, LangGraph state passing, and FIPA-ACL performatives. Teaches how to design what agents say to each other and in what order. Activate on: "agent conversation", "agent protocol", "multi-agent debate", "agent delegation", "supervisor worker pattern", "agent voting", "consensus protocol", "fan-out fan-in", "agent negotiation", "blackboard pattern", "agent dialogue", "conversation topology", "agent handoff". NOT for: wire format or serialization (use agent-interchange-formats), orchestration infrastructure (use agentic-infrastructure-2026), single agent behavior (use agentic-patterns).

curiositech/windags-skills

Meta-agent for creating new custom agents, skills, and MCP integrations. Expert in agent design, MCP development, skill architecture, and rapid prototyping. Activate on 'create agent', 'new skill', 'MCP server', 'custom tool', 'agent design'. NOT for using existing agents (invoke them directly), general coding (use language-specific skills), or infrastructure setup (use deployment-engineer).

curiositech/windags-skills

AI-powered calendar management and agent-based scheduling coordination. Covers calendar APIs (Google Calendar, CalDAV/iCal), AI scheduling assistants (Reclaim, Clockwise, Motion, Cal.com), building custom calendar agents with MCP, multi-calendar merging, timezone management, focus block protection, meeting fatigue detection, and agent-to-agent meeting negotiation protocols. Activate on: "calendar agent", "AI scheduling", "calendar coordination", "meeting scheduling", "calendar API", "focus time protection", "calendar optimization", "Google Calendar MCP", "Reclaim", "Clockwise", "Motion", "Cal.com", "smart scheduling", "calendar-aware agent", "timezone scheduling", "agent negotiation meetings". NOT for: manual calendar UI component design (use form-validation-architect), project management scheduling or Gantt charts (use project-management-guru-adhd), general time-tracking or pomodoro apps (use adhd-daily-planner for time-awareness), building the agent itself from scratch (use agent-creator).

curiositech/windags-skills

Build and adopt production AI agent infrastructure in 2026. Covers framework selection (LangGraph, CrewAI, AutoGen, MCP), orchestration patterns, evaluation, observability, memory systems, and tool use. Also covers the SOCIAL dimension: how to sell agent infrastructure internally, change management, measuring ROI, building trust in autonomous systems, and scaling adoption across teams. Activate on: "agent infrastructure", "agent framework comparison", "which agent framework", "sell AI tools internally", "agent adoption", "agent observability", "agent evaluation", "MCP architecture", "agentic mesh", "enterprise AI agents", "AI change management", "agent ROI". NOT for: building specific agents (use ai-engineer), designing agent behavior patterns (use agentic-patterns), prompt tuning (use prompt-engineer).

curiositech/windags-skills

Fundamental patterns for effective agentic behavior. Teaches decomposition, tool orchestration, error recovery, context management, quality self-assessment, and knowing when to stop. Model-agnostic principles that make any agent more effective regardless of domain. Activate on: "how should I structure this agent", "agentic workflow", "agent patterns", "multi-step task", "tool orchestration", "/agentic-patterns", "decompose this", "agent best practices", "chain of actions", "when should the agent stop", "agent loop design". NOT for: creating agent infrastructure (use agent-creator), building DAGs (use windags-architect), specific tool implementation.

curiositech/windags-skills

Automated discovery and matching of agent skills for dynamic task routing and capability assessment

curiositech/windags-skills

Cryptographic security for agentic systems — zero-trust agent networking, signed message envelopes (JWS/JWE), capability-based security (ocaps), Merkle tree audit trails, WASM sandboxing, and formal verification. Covers CLI dev tool security, mTLS between agents, permission boundaries (least privilege for AI agents), and supply chain security for skills/plugins. Activate on: "agent security", "zero trust agents", "secure agent communication", "capability-based security", "ocap", "signed messages between agents", "agent audit trail", "sandbox agent execution", "agent permissions", "mTLS agents", "cryptographic verification", "agent supply chain", "OWASP agentic", "prove agent did X", "tamper-proof agent logs". NOT for: application-level SAST scanning (use security-auditor), network firewall rules (use infrastructure), SOC2/HIPAA compliance (organizational), or prompt injection defense (use prompt-engineer).

curiositech/windags-skills

Data structures and serialization formats for agent-to-agent communication. Covers message envelopes, structured output schemas, capability declarations, task handoff payloads, error/retry signaling, and context windows as data structures. Deep comparison of A2A protocol, MCP, OpenAI function calling, and LangChain message types. Teaches when to use rigid schemas vs free-form with validation, typed vs untyped, streaming vs batch. Activate on: "agent message format", "agent communication schema", "agent-to-agent protocol", "A2A protocol", "MCP message format", "structured output for agents", "agent interop", "interchange format", "agent serialization", "task handoff format", "capability declaration". NOT for: what agents say to each other (use agent-conversation-protocols), orchestration topology (use multi-agent-coordination), building agent infrastructure (use agentic-infrastructure-2026).

curiositech/windags-skills

Logic-based agent programming language implementing BDI architecture for practical autonomous agent development

curiositech/windags-skills

>- Design AgentSpeak(L)-style BDI agents with context-guarded plans, selection functions, and intention stacks. Use for interruptible autonomy, agent policy, and multi-agent orchestration in dynamic environments. NOT for simple rule engines, static planners, or centralized workflows.

curiositech/windags-skills

Foundational concurrent computation model where actors communicate exclusively through asynchronous message passing

curiositech/windags-skills

license: Apache-2.0 NOT for unrelated tasks outside this domain.

Habilidades Relacionadas