Rokad
Toda la documentación
Documentación de dhal

API y contrato v1

Usa los exports estables, el motor, los subpaths y las garantías de compatibilidad de Dhal v1.

Ver repositorio
Documentación de dhal
Página 9 de 9

Dhal 1.x ofrece un contrato estable de paquete, CLI y configuración. Las superficies experimentales se identifican explícitamente.

Motor

ts
import { createDhal } from "@rokadhq/dhal";
const protection = createDhal({ configPath: "dhal.json" });

DhalEngine expone:

  • config: configuración resuelta;
  • events: bus de eventos;
  • inspect(request): decisión de seguridad;
  • recordOutcome(request, outcome): resultado usado por señales de credenciales;
  • flush(timeoutMs?): drena telemetría;
  • close(timeoutMs?): cierra y drena;
  • getRuntimeSnapshot(): contadores y salud.

Decisión

Una DhalDecision contiene action, statusCode, reason, score y opcionalmente ruleId, severity, wouldBlock y meta. En modo monitor, una decisión bloqueante se permite con wouldBlock: true.

Opciones

DhalOptions permite config, configPath, logger, rateLimitStore, signalStore, ipReputationProvider y telemetry.

Subpaths estables

  • @rokadhq/dhal
  • @rokadhq/dhal/express
  • @rokadhq/dhal/fastify
  • @rokadhq/dhal/node-http
  • @rokadhq/dhal/stores/redis
  • @rokadhq/dhal/stores/redis-signal
  • @rokadhq/dhal/stores/memory-signal
  • @rokadhq/dhal/reputation/abuseipdb
  • @rokadhq/dhal/telemetry/otel
  • @rokadhq/dhal/telemetry/webhook
  • @rokadhq/dhal/config-schema
  • @rokadhq/dhal/doctor
  • @rokadhq/dhal/rules/catalog
  • @rokadhq/dhal/presets
  • @rokadhq/dhal/report
  • @rokadhq/dhal/compatibility
  • @rokadhq/dhal/readiness
  • @rokadhq/dhal/migrations
  • @rokadhq/dhal/stability
  • @rokadhq/dhal/v1-contract

Contrato legible por máquinas

ts
import {
  DHAL_V1_PUBLIC_EXPORTS,
  DHAL_V1_CLI_COMMANDS,
  getDhalV1Contract,
  validateDhalV1Contract
} from "@rokadhq/dhal/v1-contract";

En 1.x, los exports estables no se eliminan ni renombran, los comandos estables permanecen, el esquema 1 sigue siendo compatible y las deprecaciones reciben guía de migración antes de una futura versión mayor.

Autosetup asistido por IA es experimental.

Actualización

bash
npm install @rokadhq/dhal@latest
npx dhal migrate --check
npx dhal test-config
npx dhal doctor
npx dhal readiness --production
npx dhal replay fixtures.replay.json

Revisa el changelog y conserva un rollback probado a la versión anterior y a modo monitor.