@springfield/ham-radio-utils 4.15.3 → 4.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -213,9 +213,34 @@
213
213
  "items": {
214
214
  "$ref": "#/definitions/protocolStep"
215
215
  }
216
+ },
217
+ "onError": {
218
+ "$ref": "#/definitions/onError",
219
+ "description": "Optional cleanup exchanges run after a read or write failure (or cancel)"
216
220
  }
217
221
  },
218
222
  "definitions": {
223
+ "onError": {
224
+ "type": "object",
225
+ "description": "Per-operation cleanup steps. Items are send/expect exchanges only; no chunked read/write or CAT loops.",
226
+ "additionalProperties": false,
227
+ "properties": {
228
+ "readMemory": {
229
+ "type": "array",
230
+ "description": "Cleanup exchanges after a failed or cancelled readMemory",
231
+ "items": {
232
+ "$ref": "#/definitions/exchangeStep"
233
+ }
234
+ },
235
+ "writeMemory": {
236
+ "type": "array",
237
+ "description": "Cleanup exchanges after a failed or cancelled writeMemory",
238
+ "items": {
239
+ "$ref": "#/definitions/exchangeStep"
240
+ }
241
+ }
242
+ }
243
+ },
219
244
  "protocolStep": {
220
245
  "description": "A single protocol step: an exchange, a chunked read, a chunked write, or a live CAT memory loop",
221
246
  "oneOf": [
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@springfield/ham-radio-utils",
3
- "version": "4.15.3",
3
+ "version": "4.16.0",
4
4
  "author": "Bryan Hunt",
5
5
  "license": "MIT",
6
6
  "readme": "README.md",
@@ -30,7 +30,7 @@
30
30
  "test:unit": "vitest run test/unit"
31
31
  },
32
32
  "dependencies": {
33
- "@springfield/ham-radio-api": "^18.0.1",
33
+ "@springfield/ham-radio-api": "^18.0.2",
34
34
  "ajv": "^8.20.0",
35
35
  "ajv-formats": "^3.0.1",
36
36
  "fishery": "^2.4.0",
@@ -44,15 +44,15 @@
44
44
  "@semantic-release/git": "11.0.1",
45
45
  "@semantic-release/github": "12.0.10",
46
46
  "@semantic-release/npm": "13.2.0",
47
- "@types/node": "26.6.4",
47
+ "@types/node": "26.6.5",
48
48
  "@types/sprintf-js": "1.1.4",
49
49
  "husky": "9.1.7",
50
- "oxfmt": "^0.71.0",
51
- "oxlint": "1.86.0",
50
+ "oxfmt": "^0.73.0",
51
+ "oxlint": "1.88.0",
52
52
  "semantic-release": "25.0.9",
53
53
  "typescript": "7.0.2",
54
- "vite": "^8.3.2",
55
- "vitest": "^5.0.3"
54
+ "vite": "^8.3.4",
55
+ "vitest": "^5.0.5"
56
56
  },
57
57
  "resolutions": {
58
58
  "conventional-changelog-conventionalcommits": "9.3.1"
@@ -213,9 +213,34 @@
213
213
  "items": {
214
214
  "$ref": "#/definitions/protocolStep"
215
215
  }
216
+ },
217
+ "onError": {
218
+ "$ref": "#/definitions/onError",
219
+ "description": "Optional cleanup exchanges run after a read or write failure (or cancel)"
216
220
  }
217
221
  },
218
222
  "definitions": {
223
+ "onError": {
224
+ "type": "object",
225
+ "description": "Per-operation cleanup steps. Items are send/expect exchanges only; no chunked read/write or CAT loops.",
226
+ "additionalProperties": false,
227
+ "properties": {
228
+ "readMemory": {
229
+ "type": "array",
230
+ "description": "Cleanup exchanges after a failed or cancelled readMemory",
231
+ "items": {
232
+ "$ref": "#/definitions/exchangeStep"
233
+ }
234
+ },
235
+ "writeMemory": {
236
+ "type": "array",
237
+ "description": "Cleanup exchanges after a failed or cancelled writeMemory",
238
+ "items": {
239
+ "$ref": "#/definitions/exchangeStep"
240
+ }
241
+ }
242
+ }
243
+ },
219
244
  "protocolStep": {
220
245
  "description": "A single protocol step: an exchange, a chunked read, a chunked write, or a live CAT memory loop",
221
246
  "oneOf": [