@baruk/identity
v0.3.1
Published
Foundation canônica de identidade do ecossistema Baruk — contratos + primitivas (password/scrypt, sessão HMAC + opaca, RBAC). Framework-agnostic, zero runtime deps.
Readme
@baruk/identity
Fundação canônica de identidade do ecossistema Baruk (ADR-ECO-0014): contratos (Principal, Credential, IdentityStore, RBAC) + primitivas framework-agnostic (password/scrypt canônico, sessão HMAC e opaca, rbac). Zero dependência de runtime.
É a camada foundation para a qual toda identidade converge. @baruk/portal-core consome daqui suas primitivas; o IdP consolidado (ex-@baruk/core) converge para estes contratos. Ficha: ENGINE.md.
import { hashPassword, verifyPassword } from "@baruk/identity/password";
import { createAuthToken, verifyAuthToken } from "@baruk/identity/session";
import { resolvePermissions, canDo } from "@baruk/identity/rbac";verifyPassword valida hashes de qualquer keylen (32 do portal, 64 da plataforma) → habilita verify-then-upgrade (A4) sem invalidar hashes existentes.
Scripts
npm run typecheck·npm test·npm run test:contract·npm run buildnpm run validate:package— validação isolada e inspeção de tarball
Distribuição
O package está publicado no npm Registry público (https://registry.npmjs.org, escopo @baruk, acesso public).
Consuma por faixa SemVer — não é necessário file: nem tarball:
npm install @baruk/identity@^0.2.0A publicação é feita pelo pipeline oficial (.github/workflows/publish.yml) via npm Trusted Publishing (OIDC), sem token permanente. Provenance/attestation não é emitido: o npm não gera provenance para pacotes cujo source repository é privado no GitHub, e este repositório permanece privado por decisão de governança (auditoria Codex GPT-5.6, R4.5).
Nota histórica: durante BOS-02 o consumo físico foi validado por tarball temporário enquanto a publicação estava pendente. Esse arranjo foi encerrado e não descreve a operação atual.
