{
  "capability_id": "electrical.apparent_power",
  "tool_id": "amps-to-va",
  "engine": "amps-va",
  "calculation_version": "1.4.3",
  "generated_at": "2026-09-16T22:03:43.697Z",
  "engine_build": "2026-09-10",
  "test_count": 36,
  "passed": 36,
  "failed": 0,
  "tests_summary": {
    "golden": {
      "total": 9,
      "passed": 9
    },
    "boundary": {
      "total": 13,
      "passed": 13
    },
    "property": {
      "total": 14,
      "passed": 14
    }
  },
  "engine_tested": true,
  "expert_reviewed": false,
  "internally_reviewed": false,
  "review_kind": null,
  "source_checked": true,
  "reviewed_by": null,
  "reviewer_role": null,
  "last_reviewed": null,
  "expert_review": {
    "status": "optional_not_performed",
    "reviewer": null,
    "scope": [
      "formula",
      "input semantics",
      "assumptions",
      "limitations",
      "sources",
      "tests"
    ],
    "note": "Domain expert review is optional under CVP (CVP-EXP-01). Absence does not block CVP Verified. See Review policy for supplemental domain assurance."
  },
  "internal_review": {
    "status": "not_applicable",
    "reviewer": null
  },
  "page": "https://www.calculatorx.com/calc/electric/amps-to-va",
  "api": "https://www.calculatorx.com/api/v1/calc/amps-to-va",
  "schema_input": "https://www.calculatorx.com/schemas/electrical.apparent_power.input.json",
  "schema_output": "https://www.calculatorx.com/schemas/electrical.apparent_power.output.json",
  "assumptions": [
    "AC steady-state with RMS voltage and current magnitudes.",
    "Three-phase mode is balanced sinusoidal AC using line-to-line RMS voltage, where V_LL = √3 V_LN and line currents are equal. IEEE 1459 covers a wider set of conditions; this calculator does not.",
    "Total power factor λ is not applied to VA/kVA results."
  ],
  "limitations": [
    "Not for DC systems",
    "Not for unbalanced or nonsinusoidal three-phase; √3 formula assumes balanced sinusoidal V_LL = √3 V_LN and equal line currents",
    "Not for line-to-neutral three-phase mode",
    "Not for equipment protection or conductor sizing",
    "When power_factor is supplied, REST/MCP include derived.estimated_real_power; omitted when λ is absent"
  ],
  "boundary_conditions": [
    "Missing or non-positive voltage returns an error (UI and API); never a fake 0 A / 0 VA",
    "Power factor outside [0, 1] is rejected when provided; not silently ignored. λ=0 is accepted (P_est=0 when S>0).",
    "Negative primary (current or VA) is rejected",
    "Overflow to Infinity or NaN is rejected as NON_FINITE_RESULT; never returned as a success result"
  ],
  "sources": [
    {
      "title": "IEC 60050 — International Electrotechnical Vocabulary",
      "section": "Apparent power (IEV 131-11-41)",
      "url": "https://www.electropedia.org/iev/iev.nsf/display?openform&ievref=131-11-41",
      "supports": "S = U × I definition of apparent power; unit volt-ampere (VA)",
      "kind": "standard",
      "accessed": "2026-09-04",
      "clause": "IEV 131-11-41"
    },
    {
      "title": "IEC 60050 — International Electrotechnical Vocabulary",
      "section": "Power factor (IEV 131-11-46)",
      "url": "https://www.electropedia.org/iev/iev.nsf/display?openform&ievref=131-11-46",
      "supports": "λ = |P| / S, so λ = 0 when P = 0 and S > 0; optional page/API estimate P_est = S × λ_entered uses this definition",
      "kind": "standard",
      "accessed": "2026-09-04",
      "clause": "IEV 131-11-46"
    },
    {
      "title": "IEEE Std 1459-2025",
      "section": "Definitions for electric power measurement under sinusoidal, nonsinusoidal, balanced, or unbalanced conditions",
      "url": "https://standards.ieee.org/ieee/1459/7578/",
      "supports": "IEEE 1459 covers sinusoidal, nonsinusoidal, balanced, and unbalanced conditions. This calculator implements only the balanced sinusoidal three-phase model S = √3 × V_L-L × I_L (V_LL = √3 V_LN, equal line currents).",
      "kind": "standard",
      "accessed": "2026-09-04",
      "publisher": "IEEE",
      "published": "2025-05-16",
      "errata_checked": true
    },
    {
      "title": "BIPM SI Brochure (9th edition, version 4.01)",
      "section": "SI base and derived units for ampere, volt, and power",
      "url": "https://www.bipm.org/en/publications/si-brochure",
      "supports": "V, A, W, and VA unit relationships",
      "kind": "reference",
      "accessed": "2026-09-04",
      "published": "2026-06",
      "doi": "https://doi.org/10.59161/AUEZ1291"
    }
  ],
  "methods": [],
  "fingerprint": "sha256:8f1fe71ef5ac163067373cca83fd06606a09cf26222e4f7549938786262e71d7",
  "tests": [
    {
      "id": "1phi-20A-120V",
      "ok": true,
      "kind": "golden",
      "inputs": {
        "mode": "amps-va",
        "primary": 20,
        "volts": 120,
        "phase": "single"
      },
      "expect": 2400,
      "expectWarning": null,
      "actual": 2400,
      "tol": 0.5
    },
    {
      "id": "1phi-12A-230V",
      "ok": true,
      "kind": "golden",
      "inputs": {
        "mode": "amps-va",
        "primary": 12,
        "volts": 230,
        "phase": "single"
      },
      "expect": 2760,
      "expectWarning": null,
      "actual": 2760,
      "tol": 0.5
    },
    {
      "id": "3phi-10A-400V",
      "ok": true,
      "kind": "golden",
      "inputs": {
        "mode": "amps-va",
        "primary": 10,
        "volts": 400,
        "phase": "three"
      },
      "expect": 6928.203,
      "expectWarning": null,
      "actual": 6928.203230275509,
      "tol": 1
    },
    {
      "id": "3phi-60A-480V",
      "ok": true,
      "kind": "golden",
      "inputs": {
        "mode": "amps-va",
        "primary": 60,
        "volts": 480,
        "phase": "three"
      },
      "expect": 49883.06,
      "expectWarning": null,
      "actual": 49883.06325798366,
      "tol": 1
    },
    {
      "id": "va-to-amps-2760",
      "ok": true,
      "kind": "golden",
      "inputs": {
        "mode": "va-amps",
        "primary": 2760,
        "volts": 230,
        "phase": "single"
      },
      "expect": 12,
      "expectWarning": null,
      "actual": 12,
      "tol": 0.01
    },
    {
      "id": "boundary-volts-zero",
      "ok": true,
      "kind": "boundary",
      "inputs": {
        "mode": "amps-va",
        "primary": 12,
        "volts": 0,
        "phase": "single"
      },
      "expectError": "VOLTAGE_MUST_BE_POSITIVE",
      "code": "VOLTAGE_MUST_BE_POSITIVE",
      "error": "Voltage must be greater than zero"
    },
    {
      "id": "boundary-volts-negative",
      "ok": true,
      "kind": "boundary",
      "inputs": {
        "mode": "amps-va",
        "primary": 12,
        "volts": -230,
        "phase": "single"
      },
      "expectError": "VOLTAGE_MUST_BE_POSITIVE",
      "code": "VOLTAGE_MUST_BE_POSITIVE",
      "error": "Voltage must be greater than zero"
    },
    {
      "id": "boundary-primary-negative",
      "ok": true,
      "kind": "boundary",
      "inputs": {
        "mode": "amps-va",
        "primary": -5,
        "volts": 230,
        "phase": "single"
      },
      "expectError": "VALUE_MUST_BE_NON_NEGATIVE",
      "code": "VALUE_MUST_BE_NON_NEGATIVE",
      "error": "primary must be greater than or equal to 0"
    },
    {
      "id": "boundary-pf-80",
      "ok": true,
      "kind": "boundary",
      "inputs": {
        "mode": "amps-va",
        "primary": 12,
        "volts": 230,
        "phase": "single",
        "pf": 80
      },
      "expectError": "POWER_FACTOR_OUT_OF_RANGE",
      "code": "POWER_FACTOR_OUT_OF_RANGE",
      "error": "Power factor must be between 0 and 1 inclusive"
    },
    {
      "id": "boundary-pf-zero",
      "ok": true,
      "kind": "boundary",
      "inputs": {
        "mode": "amps-va",
        "primary": 10,
        "volts": 120,
        "phase": "single",
        "pf": 0
      },
      "expect": 1200,
      "expectWarning": null,
      "actual": 1200,
      "tol": 0.5
    },
    {
      "id": "boundary-pf-one-ok",
      "ok": true,
      "kind": "boundary",
      "inputs": {
        "mode": "amps-va",
        "primary": 10,
        "volts": 120,
        "phase": "single",
        "pf": 1
      },
      "expect": 1200,
      "expectWarning": null,
      "actual": 1200,
      "tol": 0.5
    },
    {
      "id": "boundary-unknown-mode",
      "ok": true,
      "kind": "boundary",
      "inputs": {
        "mode": "watts-va",
        "primary": 12,
        "volts": 230,
        "phase": "single"
      },
      "expectError": "INVALID_MODE",
      "code": "INVALID_MODE",
      "error": "Unsupported mode: watts-va"
    },
    {
      "id": "boundary-unknown-phase",
      "ok": true,
      "kind": "boundary",
      "inputs": {
        "mode": "amps-va",
        "primary": 12,
        "volts": 230,
        "phase": "split"
      },
      "expectError": "INVALID_PHASE",
      "code": "INVALID_PHASE",
      "error": "phase must be \"single\" or \"three\""
    },
    {
      "id": "boundary-tiny-positive-volts",
      "ok": true,
      "kind": "boundary",
      "inputs": {
        "mode": "amps-va",
        "primary": 1,
        "volts": 0.000001,
        "phase": "single"
      },
      "expect": 0.000001,
      "expectWarning": null,
      "actual": 0.000001,
      "tol": 1e-12
    },
    {
      "id": "boundary-missing-volts",
      "ok": true,
      "kind": "boundary",
      "inputs": {
        "mode": "amps-va",
        "primary": 12,
        "volts": null,
        "phase": "single"
      },
      "expectError": "MISSING_REQUIRED_INPUT",
      "code": "MISSING_REQUIRED_INPUT",
      "error": "Voltage is required when calculating apparent power or current"
    },
    {
      "id": "boundary-missing-primary",
      "ok": true,
      "kind": "boundary",
      "inputs": {
        "mode": "amps-va",
        "volts": 230,
        "phase": "single"
      },
      "expectError": "MISSING_REQUIRED_INPUT",
      "code": "MISSING_REQUIRED_INPUT",
      "error": "primary (current in A, or VA in va-amps mode) is required"
    },
    {
      "id": "boundary-overflow-va",
      "ok": true,
      "kind": "boundary",
      "inputs": {
        "mode": "amps-va",
        "primary": 1e+308,
        "volts": 1e+308,
        "phase": "single"
      },
      "expectError": "NON_FINITE_RESULT",
      "code": "NON_FINITE_RESULT",
      "error": "Calculation overflowed the finite numeric range"
    },
    {
      "id": "boundary-infinity-volts",
      "ok": true,
      "kind": "boundary",
      "inputs": {
        "mode": "amps-va",
        "primary": 12,
        "volts": "Infinity",
        "phase": "single"
      },
      "expectError": "INVALID_NUMBER",
      "code": "INVALID_NUMBER",
      "error": "volts must be a finite number"
    },
    {
      "id": "golden-zero-current",
      "ok": true,
      "kind": "golden",
      "inputs": {
        "mode": "amps-va",
        "primary": 0,
        "volts": 230,
        "phase": "single"
      },
      "expect": 0,
      "expectWarning": null,
      "actual": 0,
      "tol": 0
    },
    {
      "id": "3phi-va-to-amps-400V",
      "ok": true,
      "kind": "golden",
      "inputs": {
        "mode": "va-amps",
        "primary": 6928.203230275509,
        "volts": 400,
        "phase": "three"
      },
      "expect": 10,
      "expectWarning": null,
      "actual": 10,
      "tol": 0.01
    },
    {
      "id": "3phi-amps-kva-10A-400V",
      "ok": true,
      "kind": "golden",
      "inputs": {
        "mode": "amps-kva",
        "primary": 10,
        "volts": 400,
        "phase": "three"
      },
      "expect": 6.928203230275509,
      "expectWarning": null,
      "actual": 6.928203230275509,
      "tol": 0.001
    },
    {
      "id": "property-double-current",
      "ok": true,
      "kind": "property",
      "inputs": {
        "mode": "amps-va",
        "primary": 24,
        "volts": 230,
        "phase": "single"
      },
      "expect": 5520,
      "expectWarning": null,
      "actual": 5520,
      "tol": 0.5
    },
    {
      "id": "property-double-voltage",
      "ok": true,
      "kind": "property",
      "inputs": {
        "mode": "amps-va",
        "primary": 12,
        "volts": 460,
        "phase": "single"
      },
      "expect": 5520,
      "expectWarning": null,
      "actual": 5520,
      "tol": 0.5
    },
    {
      "id": "property-roundtrip-va-amps",
      "ok": true,
      "kind": "property",
      "inputs": {
        "mode": "va-amps",
        "primary": 49883.06,
        "volts": 480,
        "phase": "three"
      },
      "expect": 60,
      "expectWarning": null,
      "actual": 59.9999960812547,
      "tol": 0.05
    },
    {
      "id": "amps-kva-12A-230V",
      "ok": true,
      "kind": "golden",
      "inputs": {
        "mode": "amps-kva",
        "primary": 12,
        "volts": 230,
        "phase": "single"
      },
      "expect": 2.76,
      "expectWarning": null,
      "actual": 2.76,
      "tol": 0.01
    },
    {
      "id": "property-linearity-current",
      "ok": true,
      "kind": "property",
      "detail": "S(2I,V)=2S(I,V)",
      "expect": 5520,
      "actual": 5520
    },
    {
      "id": "property-linearity-voltage",
      "ok": true,
      "kind": "property",
      "detail": "S(I,2V)=2S(I,V)",
      "expect": 5520,
      "actual": 5520
    },
    {
      "id": "property-roundtrip-va-amps-va",
      "ok": true,
      "kind": "property",
      "detail": "VA→A recovers I",
      "expect": 12,
      "actual": 12
    },
    {
      "id": "property-three-phase-sqrt3",
      "ok": true,
      "kind": "property",
      "detail": "S3φ=√3·V·I",
      "expect": 6928.203230275509,
      "actual": 6928.203230275509
    },
    {
      "id": "property-pf-omitted-equals-pf-one",
      "ok": true,
      "kind": "property",
      "detail": "S(λ omitted)=S(λ=1)",
      "expect": 2760,
      "actual": 2760
    },
    {
      "id": "property-pf-zero-equals-omitted",
      "ok": true,
      "kind": "property",
      "detail": "S(λ=0)=S(λ omitted)",
      "expect": 2760,
      "actual": 2760
    },
    {
      "id": "property-roundtrip-grid",
      "ok": true,
      "kind": "property",
      "detail": "VA↔A round-trip over 64 pairs",
      "expect": 64,
      "actual": 64
    },
    {
      "id": "property-derived-pf-08",
      "ok": true,
      "kind": "property",
      "detail": "12 A × 230 V × λ0.8 → S=2760 VA, P_est=2208 W",
      "expect": 2208,
      "actual": 2208
    },
    {
      "id": "property-derived-pf-zero",
      "ok": true,
      "kind": "property",
      "detail": "10 A × 120 V × λ0 → S=1200 VA, P_est=0 W",
      "expect": 0,
      "actual": 0
    },
    {
      "id": "property-derived-pf-omitted",
      "ok": true,
      "kind": "property",
      "detail": "power_factor absent → derived omitted",
      "expect": null,
      "actual": null
    },
    {
      "id": "property-derived-zero-s",
      "ok": true,
      "kind": "property",
      "detail": "S=0 with λ supplied → P_est=0 W and note",
      "expect": "note",
      "actual": "λ is formally undefined when S=0; P_est is shown as 0 W"
    }
  ],
  "tier": "engine_tested",
  "verification": {
    "tests": {
      "passed": 36,
      "total": 36,
      "golden": 9,
      "boundary": 13,
      "property": 14
    },
    "contract_checks": {
      "passed": 4,
      "total": 4
    }
  },
  "evidence_core_generated_at": "2026-09-10T22:48:17.762Z",
  "rendered_at": "2026-09-16T22:03:43.697Z",
  "release_integrity": {
    "status": "verified",
    "scope": "workspace",
    "production_attestation_required": true,
    "calculation_version": "1.4.3",
    "artifacts": {
      "engine": "1.4.3",
      "page": "1.4.3",
      "capability": "1.4.3",
      "evidence": "1.4.3",
      "input_schema": "1.4.3",
      "output_schema": "1.4.3",
      "mcp_contract": "1.4.3"
    },
    "digests": {
      "input_schema_sha256": "5bf23cb0b374dc943d075d420a742cbbfabfe8dd5b7f4a26a608ec186c0b9835",
      "output_schema_sha256": "550be97c601f18e5c860c9a6aaf3d5f117474eda14f4121568ae369861f1b19c",
      "evidence_sha256": "546fc141dbdac1bb9824f2676544c2560e5c93499d507f42095cdfe1869983e8",
      "evidence_core_sha256": "546fc141dbdac1bb9824f2676544c2560e5c93499d507f42095cdfe1869983e8",
      "capability_sha256": "8c320193d6993bb3589b866980765e7b5c885ab7454e5232dbb8df8749f27b84",
      "engine_sha256": "c8d4ccdbfeaf61d7b024d4e1babb0c2ba3b324c1b37bd0cb456a526d8d2b1bd1",
      "mcp_contract_sha256": "863098b311a7b17dc4b229a6302b90b3545b175f716e5d84772c7be8e9716b86"
    },
    "contract_checks": {
      "total": 4,
      "passed": 4,
      "failed": 0,
      "items": [
        {
          "id": "release-artifacts-aligned",
          "status": "pass",
          "detail": "1.4.3"
        },
        {
          "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"
  }
}
