Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 30 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,33 @@ reference are all pre-1.0, minor (0.x) releases may include breaking changes.

## [Unreleased]

## [0.5.4] - 2026-07-30

### Fixed

- Three detection rules now follow the OCPP 1.6 specification where they
previously diverged from it, matching the toolkit fixes released as toolkit
0.4.5 (toolkit#154, #155, #156):
- `FIRMWARE_UPDATE_FAILURE` matches exactly the two failure values of the
`FirmwareStatus` enumeration, `DownloadFailed` and `InstallationFailed`
(OCPP 1.6 edition 2, section 7.25). It previously matched `DownloadPaused`,
`InstallFailed` and `InstallRebootingFailed`, none of them 1.6 values, and
missed `InstallationFailed`, so a station reporting a failed install was not
flagged.
- `STATUS_TRANSITION_VIOLATION` uses the section 4.9 transition table as
written, 53 permitted transitions. The old matrix flagged 22 transitions the
table permits, most of them recoveries from `Faulted` and `Unavailable` back
into an operative state, and permitted 2 the table omits
(`Preparing -> Unavailable`, `Finishing -> Reserved`).
- `FAILED_AUTHORIZATION` reports every refusing `AuthorizationStatus`
(section 7.2): `Blocked`, `Expired` and `ConcurrentTx` alongside `Invalid`,
with the status named in the description.

The 15 conformance goldens are unchanged, so `contract-v1` still holds.
Equivalence with the toolkit was also checked directly: both engines return
identical failure-code sets on 97 probe traces covering every firmware and
authorization status and all 81 ordered connector-status pairs.

## [0.5.3] - 2026-07-22

### Fixed
Expand Down Expand Up @@ -90,7 +117,9 @@ S0–S5. Highlights:
- TLS (`wss://`) live capture, a menu-bar monitor, and interactive open
(dialog / drag-drop) are planned for later releases.

[Unreleased]: https://github.com/ocpp-debugkit/studio/compare/v0.5.2...HEAD
[Unreleased]: https://github.com/ocpp-debugkit/studio/compare/v0.5.4...HEAD
[0.5.4]: https://github.com/ocpp-debugkit/studio/compare/v0.5.3...v0.5.4
[0.5.3]: https://github.com/ocpp-debugkit/studio/compare/v0.5.2...v0.5.3
[0.5.2]: https://github.com/ocpp-debugkit/studio/compare/v0.5.1...v0.5.2
[0.5.1]: https://github.com/ocpp-debugkit/studio/compare/v0.5.0...v0.5.1
[0.5.0]: https://github.com/ocpp-debugkit/studio/releases/tag/v0.5.0
17 changes: 10 additions & 7 deletions CURRENT_STATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,16 @@

## Current version

`0.5.3` - detection correctness fix: `METER_VALUE_ANOMALY` and
`STATUS_TRANSITION_VIOLATION` are now per-connector / per-measurand (parity with
the toolkit fixes shiv3 found, toolkit#127/#128, published as toolkit 0.4.1 and
0.4.2). The 15 conformance goldens are unchanged (single-connector fixtures), so
the contract still holds; two regression tests added.
Earlier: `0.5.2` (one-line macOS installer), `0.5.1` (macOS app-bundle naming),
`0.5.0` (first public release).
`0.5.4` - OCPP 1.6 spec-conformance fixes to three detection rules (#92/#93,
parity with toolkit 0.4.5): the `FirmwareStatus` failure values, the section 4.9
transition table, and every refusing `AuthorizationStatus`. The 15 conformance
goldens are unchanged, so `contract-v1` still holds, and equivalence with the
toolkit was checked directly on 97 probe traces beyond the corpus; three tests
added.
Earlier: `0.5.3` (per-connector `METER_VALUE_ANOMALY` and
`STATUS_TRANSITION_VIOLATION`, parity with toolkit 0.4.1/0.4.2), `0.5.2`
(one-line macOS installer), `0.5.1` (macOS app-bundle naming), `0.5.0` (first
public release).

## Active milestone

Expand Down
2 changes: 1 addition & 1 deletion app.zon
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
.name = "studio",
.display_name = "OCPP DebugKit Studio",
.description = "Native desktop debugger for OCPP charging sessions.",
.version = "0.5.3",
.version = "0.5.4",
.icons = .{"assets/icon.png"},
.platforms = .{"macos"},
.permissions = .{ "view", "command", "notifications" },
Expand Down
Loading