@planuze/pack-scanner
v0.2.3
Published
Scanner de segurança AST de packs: detecta padrões perigosos (eval, child_process, dynamic require) com allowlist por stack.requires (TASK-29-07, ADR-0370).
Readme
@planuze/pack-scanner
Scanner AST e de dados para conteúdo de packs Planuze. O pacote é público porque o comando
atômico planuze pack release precisa executar o scanner controlado pela Planuze em GitHub
Actions sem instalar ou executar dependências do repositório do pack.
buildPlaintextScanInput(files) classifica bytes já coletados em código, dados textuais e paths;
scanPack(input, { requires }) aplica as regras. No fluxo de release, requires vem somente de
manifest.stack.requires do manifesto que será assinado.
O scanner falha de forma fechada quando um arquivo classificado como código não pode ser parseado:
o finding obfuscation-suspect tem severidade error, não aceita downgrade por configuração e
faz o resultado agregado retornar status: fail. Assim, uma falha de sintaxe ou conteúdo ofuscado
não pode pular as regras AST e receber uma atestação publicável.
