From: Jérôme Benoit Date: Thu, 19 Mar 2026 14:53:24 +0000 (+0100) Subject: fix(ocpp): keep StopTransactionRequest as 1.6 wire type, narrow reason via indexed... X-Git-Tag: ocpp-server@v3.2.0~33 X-Git-Url: https://git.piment-noir.org/?a=commitdiff_plain;h=c6aac34df81f2bea43b465cb58e563015df4de70;p=e-mobility-charging-stations-simulator.git fix(ocpp): keep StopTransactionRequest as 1.6 wire type, narrow reason via indexed access Revert the Omit-based widening of StopTransactionRequest — it's a 1.6 wire protocol message and should not accept OCPP 2.0 reason values. Use StopTransactionRequest['reason'] indexed access type for narrowing in ChargingStation, avoiding any version-specific OCPP16* import. --- diff --git a/src/charging-station/ChargingStation.ts b/src/charging-station/ChargingStation.ts index 2d63905c..0021490d 100644 --- a/src/charging-station/ChargingStation.ts +++ b/src/charging-station/ChargingStation.ts @@ -9,8 +9,6 @@ import { URL } from 'node:url' import { parentPort } from 'node:worker_threads' import { type RawData, WebSocket } from 'ws' -import type { OCPP16StopTransactionReason } from '../types/index.js' - import { BaseError, OCPPError } from '../exception/index.js' import { PerformanceStatistics } from '../performance/index.js' import { @@ -1225,7 +1223,7 @@ export class ChargingStation extends EventEmitter { >(this, RequestCommand.STOP_TRANSACTION, { meterStop: this.getEnergyActiveImportRegisterByTransactionId(rawTransactionId, true), transactionId, - ...(reason != null && { reason: reason as OCPP16StopTransactionReason }), + ...(reason != null && { reason: reason as StopTransactionRequest['reason'] }), }) }