dhalドキュメント
9ページ中9ページDhal 1.x はパッケージ、CLI、設定について安定した契約を提供します。実験的な機能は明示的に区別されます。
エンジン
ts
import { createDhal } from "@rokadhq/dhal";
const protection = createDhal({ configPath: "dhal.json" });DhalEngine は次を公開します。
config: 解決・検証済み設定events: アプリケーションイベントバスinspect(request): セキュリティ判断recordOutcome(request, outcome): 認証失敗シグナルに使うレスポンス結果flush(timeoutMs?): 管理対象テレメトリの排出close(timeoutMs?): エンジンを閉じて排出getRuntimeSnapshot(): カウンターと状態
DhalDecision には action、statusCode、reason、score が含まれ、必要に応じて ruleId、severity、wouldBlock、meta が含まれます。monitor モードでは、ブロック相当の判断は wouldBlock: true で許可されます。
DhalOptions は config、configPath、logger、rateLimitStore、signalStore、ipReputationProvider、telemetry を受け取れます。
安定したサブパス
@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
機械可読の契約
ts
import {
DHAL_V1_PUBLIC_EXPORTS,
DHAL_V1_CLI_COMMANDS,
getDhalV1Contract,
validateDhalV1Contract
} from "@rokadhq/dhal/v1-contract";1.x の範囲では、安定版 export は削除・改名されず、安定 CLI コマンドは維持され、設定スキーマ 1 は後方互換です。非推奨 API は将来のメジャー削除前に移行ガイドを提供します。
AI 支援 autosetup は実験的です。
アップグレード
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変更履歴を確認し、以前の固定バージョンと monitor モードへ戻せる手順をテストしてください。