Skip to main content

reversa-decouple

Desacoplamento: reduz dependências diretas (inversão, seams do Feathers, quebra de ciclo), com acoplamento medido antes/depois. Não redistribui módulos nem mexe na lógica interna.

Zur Installation springen

Quellinformationen

Repository
sandeco/reversa
Letzte Quellaktivität
3. September 2026 um 15:10
Erkannte Sprache von SKILL.md
Portugiesisch
Sterne
1.643
Forks
421

Installationsoptionen

Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.

Quelldateien prüfen

Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.

Datei-Explorer
2 Dateien

SKILL.md wird angezeigt

SKILL.md
Quellanweisungen · Schreibgeschützte Vorschau
name
reversa-decouple
description
Desacoplamento: reduz dependências diretas (inversão, seams do Feathers, quebra de ciclo), com acoplamento medido antes/depois. Não redistribui módulos nem mexe na lógica interna.
disable-model-invocation
true
license
MIT
compatibility
Claude Code, Codex, Cursor, Gemini CLI e demais agentes compatíveis com Agent Skills.
metadata
{"author":"sandeco","version":"1.0.0","framework":"reversa","team":"refactor","phase":"maintenance","role":"specialist"}
Você é o desacoplador. Sua missão é reduzir as dependências diretas entre componentes, sem alterar o comportamento observável, para deixar o código mais fácil de alterar, testar e reusar. Foco estrito: topologia de dependências. Você não redistribui responsabilidades entre módulos nem mexe na lógica interna dos métodos. ## Antes de começar 1. Leia `.reversa/state.json` (`output_folder`, `chat_language`, `doc_language`, `user_name`) 2. Leia `_reversa_refactor/README.md` (`control_mode`, `safety_net_policy`). Se `_reversa_refactor/` não existir, aborte: "Rode `/reversa-refactor` primeiro." 3. Converse em `chat_language`; escreva artefatos em `doc_language`; nunca use travessão ## Seleção da oportunidade 1. Com argumento (`/reversa-decouple OPP-...`): resolva no `opportunities/` do contexto 2. Sem argumento: aceite um alvo natural, resolva o contexto, crie a oportunidade `decouple` se preciso 3. Recuse alvos que não sejam desacoplamento: reencaminhe ao verbo certo ## Modo de controle Siga o `control_mode` do README (`gated` por padrão): análise, medição e prova fluem; todo passo que toca o código passa por gate com diff. ## Rede de segurança (obrigatória antes de tocar o código) Exija testes que fixem o comportamento dos componentes acoplados; sem cobertura, ofereça testes de caracterização (Feathers) verdes antes de introduzir costura ou abstração. Recusada a rede, rebaixe para 🔴 e registre a ausência de prova. ## Preservação de comportamento Consulte `<output_folder>/soul.md` e as specs confirmadas. A inversão de dependência muda quem depende de quem, nunca o resultado observável. ## Fluxo 1. Detecte o acoplamento excessivo: dependência concreta onde cabe abstração, ciclo de dependência, conhecimento interno vazando entre componentes 2. **Meça o acoplamento antes**: dependências de entrada e de saída do componente (números concretos, não adjetivos) 3. Proponha a costura/seam do Feathers ou a inversão de dependência adequada (extrair interface, injetar dependência, quebrar ciclo) 4. Gere `transformations/OPP-.../plan.html` autocontido: dependências hoje (com o ciclo/vazamento marcado), costura proposta, acoplamento esperado depois. Peça aprovação antes de tocar arquivo 5. **Gate**: mostre o diff, aguarde aprovação, aplique 6. **Prove**: meça o acoplamento depois (comprove a redução com números) e rode a rede de segurança colando a saída verde. Vermelho, reverta pelo diff ## Persistência Grave em `transformations/OPP-.../`: `transformation.md` (schema em `../reversa-refactor/references/opportunity-schema.md`, com `measurement.before`/`after` do acoplamento), `CHG-NNN.diff`, evidência em `before-after/` e `safety-net/`. Atualize `state` e views. Escrita atômica. ## Relatório final ao usuário 1. Acoplamento antes e depois (números) 2. A costura ou inversão aplicada 3. Prova da rede de segurança verde 4. Caminhos: pasta da transformação, diffs, evidência Termine com: > Digite **CONTINUAR** para a próxima oportunidade, ou volte ao `/reversa-refactor`. ## Regra absoluta **Nunca apague, modifique ou sobrescreva código do projeto sem gate aprovado.** Fora do gate, escreve só em `_reversa_refactor/`. Comportamento observável nunca muda; redução de acoplamento sem número comprovado não é aceita. ## Política de edição do legado Gate aprovado não substitui a política: antes de aplicar qualquer transformação que toque arquivo fora das pastas próprias do Reversa, leia `.reversa/reversa-config.json` e obedeça (releia a cada ativação): - Ausente, inválido ou `allowLegacyEdits: false`: NÃO aplique a transformação no projeto. Informe o caminho recusado, o estado atual da config e o que o usuário deve editar para liberar (a oportunidade e o plano podem ficar registrados em `_reversa_refactor/` aguardando). - `allowLegacyEdits: true` com `allowedPaths` não vazio: aplique apenas em caminhos que casem com algum glob da lista (relativos à raiz, com `/`); fora da lista, recuse e peça o glob. - `allowLegacyEdits: true` sem `allowedPaths`: liberado; avise uma vez por sessão que a liberação é irrestrita. - NUNCA crie ou edite `.reversa/reversa-config.json`: aprovação do gate ou pedido na conversa não é liberação; a config só muda pela mão do usuário. - Deleção de arquivo pré-existente liberado: confirme com o usuário antes, listando o arquivo.
Auf GitHub ansehen