{
  "capability_id": "units.rf.dbm_watts",
  "tool_id": "dbm-watt",
  "engine": "dbm-watt",
  "calculation_version": "1.3.1",
  "generated_at": "2026-09-16T22:03:43.730Z",
  "engine_build": "2026-09-13",
  "test_count": 22,
  "passed": 22,
  "failed": 0,
  "tests_summary": {
    "golden": {
      "total": 9,
      "passed": 9
    },
    "boundary": {
      "total": 7,
      "passed": 7
    },
    "property": {
      "total": 6,
      "passed": 6
    }
  },
  "engine_tested": true,
  "expert_reviewed": false,
  "internally_reviewed": true,
  "review_kind": "internal",
  "source_checked": true,
  "reviewed_by": "CalculatorX electrical review",
  "reviewer_role": "electrical-engineer",
  "last_reviewed": "2026-09-13",
  "expert_review": {
    "status": "not_applicable",
    "reviewer": null,
    "note": "Internal domain review completed; not a named external expert review.",
    "kind": "internal"
  },
  "internal_review": {
    "status": "approved",
    "reviewer": {
      "name": "CalculatorX electrical review",
      "role": "electrical-engineer"
    },
    "reviewed_at": "2026-09-13",
    "scope": [
      "formula",
      "input semantics",
      "assumptions",
      "limitations",
      "sources",
      "tests"
    ],
    "kind": "internal"
  },
  "page": "https://www.calculatorx.com/calc/electric/dbm-watt",
  "api": "https://www.calculatorx.com/api/v1/calc/dbm-watt",
  "schema_input": "https://www.calculatorx.com/schemas/units.rf.dbm_watts.input.json",
  "schema_output": "https://www.calculatorx.com/schemas/units.rf.dbm_watts.output.json",
  "assumptions": [],
  "limitations": [
    "W/mW must be >0 for reverse log",
    "Hard INVALID_MODE",
    "IEEE-754 binary64 overflow → NUMERIC_OVERFLOW",
    "IEEE-754 binary64 underflow to 0 → NUMERIC_UNDERFLOW"
  ],
  "boundary_conditions": [
    "W/mW ≤0 → VALUE_MUST_BE_POSITIVE",
    "Bad mode → INVALID_MODE",
    "binary64 overflow → NUMERIC_OVERFLOW",
    "binary64 underflow to 0 → NUMERIC_UNDERFLOW"
  ],
  "sources": [
    {
      "title": "NIST Technical Note 1850",
      "section": "Appendix B — dBm ↔ milliwatt",
      "url": "https://nvlpubs.nist.gov/nistpubs/TechnicalNotes/NIST.TN.1850.pdf",
      "supports": "P_mW = 10^(dBm/10); dBm = 10 log10(P_mW)",
      "kind": "standard",
      "accessed": "2026-09-12",
      "publisher": "NIST",
      "document_id": "NIST.TN.1850",
      "document_title": "Microwave and Millimeter Wave Power Standards"
    },
    {
      "title": "ITU / RF practice — dBm",
      "section": "0 dBm = 1 mW",
      "supports": "Log power ratio definition relative to 1 mW",
      "kind": "standard",
      "publisher": "ITU"
    }
  ],
  "methods": [],
  "fingerprint": "sha256:70149db348a403e63c9b97ad4beab414c61eaf2afd8f6a75b247bc1cd5c5ca9c",
  "tests": [
    {
      "id": "30dbm",
      "ok": true,
      "kind": "golden",
      "inputs": {
        "mode": "dbm-w",
        "value": 30
      },
      "expect": 1,
      "expectWarning": null,
      "actual": 1,
      "tol": 1e-12
    },
    {
      "id": "0dbm",
      "ok": true,
      "kind": "golden",
      "inputs": {
        "mode": "dbm-w",
        "value": 0
      },
      "expect": 0.001,
      "expectWarning": null,
      "actual": 0.001,
      "tol": 1e-12
    },
    {
      "id": "13dbm",
      "ok": true,
      "kind": "golden",
      "inputs": {
        "mode": "dbm-w",
        "value": 13
      },
      "expect": 0.0199526231496888,
      "expectWarning": null,
      "actual": 0.0199526231496888,
      "tol": 1e-12
    },
    {
      "id": "neg30dbm",
      "ok": true,
      "kind": "golden",
      "inputs": {
        "mode": "dbm-w",
        "value": -30
      },
      "expect": 0.000001,
      "expectWarning": null,
      "actual": 0.000001,
      "tol": 1e-18
    },
    {
      "id": "3dbm-mw",
      "ok": true,
      "kind": "golden",
      "inputs": {
        "mode": "dbm-mw",
        "value": 3
      },
      "expect": 1.9952623149688795,
      "expectWarning": null,
      "actual": 1.9952623149688795,
      "tol": 1e-12
    },
    {
      "id": "1mw-dbm",
      "ok": true,
      "kind": "golden",
      "inputs": {
        "mode": "mw-dbm",
        "value": 1
      },
      "expect": 0,
      "expectWarning": null,
      "actual": 0,
      "tol": 1e-12
    },
    {
      "id": "w-bad",
      "ok": true,
      "kind": "boundary",
      "inputs": {
        "mode": "w-dbm",
        "value": 0
      },
      "expectError": "VALUE_MUST_BE_POSITIVE",
      "code": "VALUE_MUST_BE_POSITIVE",
      "error": "power must be > 0 for log conversion"
    },
    {
      "id": "mw-bad",
      "ok": true,
      "kind": "boundary",
      "inputs": {
        "mode": "mw-dbm",
        "value": 0
      },
      "expectError": "VALUE_MUST_BE_POSITIVE",
      "code": "VALUE_MUST_BE_POSITIVE",
      "error": "power must be > 0 for log conversion"
    },
    {
      "id": "bad-mode",
      "ok": true,
      "kind": "boundary",
      "inputs": {
        "mode": "dbm-dbw",
        "value": 30
      },
      "expectError": "INVALID_MODE",
      "code": "INVALID_MODE",
      "error": "mode must be dbm-w|w-dbm|dbm-mw|mw-dbm"
    },
    {
      "id": "roundtrip",
      "ok": true,
      "kind": "golden",
      "inputs": {
        "mode": "w-dbm",
        "value": 1
      },
      "expect": 30,
      "expectWarning": null,
      "actual": 30,
      "tol": 1e-12
    },
    {
      "id": "missing",
      "ok": true,
      "kind": "boundary",
      "inputs": {
        "mode": "dbm-w"
      },
      "expectError": "MISSING_REQUIRED_INPUT",
      "code": "MISSING_REQUIRED_INPUT",
      "error": "value is required"
    },
    {
      "id": "0p023w",
      "ok": true,
      "kind": "golden",
      "inputs": {
        "mode": "w-dbm",
        "value": 0.023
      },
      "expect": 13.617278360175927,
      "expectWarning": null,
      "actual": 13.617278360175927,
      "tol": 1e-12
    },
    {
      "id": "neg174dbm",
      "ok": true,
      "kind": "golden",
      "inputs": {
        "mode": "dbm-w",
        "value": -174
      },
      "expect": 3.981071705534986e-21,
      "expectWarning": null,
      "actual": 3.981071705534986e-21,
      "tol": 1e-30
    },
    {
      "id": "mw-neg",
      "ok": true,
      "kind": "boundary",
      "inputs": {
        "mode": "mw-dbm",
        "value": -1
      },
      "expectError": "VALUE_MUST_BE_POSITIVE",
      "code": "VALUE_MUST_BE_POSITIVE",
      "error": "power must be > 0 for log conversion"
    },
    {
      "id": "overflow",
      "ok": true,
      "kind": "boundary",
      "inputs": {
        "mode": "dbm-w",
        "value": 4000
      },
      "expectError": "NUMERIC_OVERFLOW",
      "code": "NUMERIC_OVERFLOW",
      "error": "result overflowed IEEE-754 binary64"
    },
    {
      "id": "underflow",
      "ok": true,
      "kind": "boundary",
      "inputs": {
        "mode": "dbm-w",
        "value": -4000
      },
      "expectError": "NUMERIC_UNDERFLOW",
      "code": "NUMERIC_UNDERFLOW",
      "error": "result underflowed to 0 in IEEE-754 binary64"
    },
    {
      "id": "property-0dbm-1mw",
      "ok": true,
      "kind": "property",
      "detail": "0 dBm = 1 mW",
      "expect": 1,
      "actual": 1
    },
    {
      "id": "property-neg30dbm-1uw",
      "ok": true,
      "kind": "property",
      "detail": "−30 dBm = 1 µW",
      "expect": 0.000001,
      "actual": 0.000001
    },
    {
      "id": "property-plus10db-times-10",
      "ok": true,
      "kind": "property",
      "detail": "P(dBm+10)=10 P(dBm)",
      "expect": 10,
      "actual": 10.000000000000005
    },
    {
      "id": "property-mw-is-1000-w",
      "ok": true,
      "kind": "property",
      "detail": "P_mW = 1000 P_W",
      "expect": 1000,
      "actual": 999.9999999999999
    },
    {
      "id": "property-roundtrip-13dbm",
      "ok": true,
      "kind": "property",
      "detail": "dBm→W→dBm",
      "expect": 13,
      "actual": 13
    },
    {
      "id": "property-roundtrip-3dbm-mw",
      "ok": true,
      "kind": "property",
      "detail": "dBm→mW→dBm",
      "expect": 3,
      "actual": 2.999999999999999
    }
  ],
  "tier": "internally_reviewed",
  "verification": {
    "tests": {
      "passed": 22,
      "total": 22,
      "golden": 9,
      "boundary": 7,
      "property": 6
    },
    "contract_checks": {
      "passed": 4,
      "total": 4
    }
  },
  "evidence_core_generated_at": "2026-09-13T01:52:28.084Z",
  "rendered_at": "2026-09-16T22:03:43.730Z",
  "release_integrity": {
    "status": "verified",
    "scope": "workspace",
    "production_attestation_required": true,
    "calculation_version": "1.3.1",
    "artifacts": {
      "engine": "1.3.1",
      "page": "1.3.1",
      "capability": "1.3.1",
      "evidence": "1.3.1",
      "input_schema": "1.3.1",
      "output_schema": "1.3.1",
      "mcp_contract": "1.3.1"
    },
    "digests": {
      "input_schema_sha256": "5c5082367485b8e59088bb08713c44d492dd090fe1de3b0106d7d9e0f24a0864",
      "output_schema_sha256": "70209a1ef3a4b1bd56a1e3ccd63ca6fd22bbbe5c4076cda21fff1bade4645a74",
      "evidence_sha256": "ad3b27522882ca4ecdfafc8c688a9d499b956edb85fc166761d79d6a1f7dd336",
      "evidence_core_sha256": "ad3b27522882ca4ecdfafc8c688a9d499b956edb85fc166761d79d6a1f7dd336",
      "capability_sha256": "56603c0032294f9c78dee3ca6682d6e4d6cad96868d76e9961d11cf37cdbee7e",
      "engine_sha256": "c8d4ccdbfeaf61d7b024d4e1babb0c2ba3b324c1b37bd0cb456a526d8d2b1bd1",
      "mcp_contract_sha256": "863098b311a7b17dc4b229a6302b90b3545b175f716e5d84772c7be8e9716b86"
    },
    "contract_checks": {
      "total": 4,
      "passed": 4,
      "failed": 0,
      "items": [
        {
          "id": "release-artifacts-aligned",
          "status": "pass",
          "detail": "1.3.1"
        },
        {
          "id": "schema-valid-input-executes",
          "status": "pass"
        },
        {
          "id": "engine-success-output-validates-schema",
          "status": "pass"
        },
        {
          "id": "schema-rejects-incomplete-input",
          "status": "pass"
        }
      ]
    },
    "report": "https://www.calculatorx.com/.well-known/calculatorx-release-integrity.json"
  }
}
