You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
| `replace` | **No** (custom) | Complete replacement of target (no merging) |
120
133
121
134
The `rename` action copies the entire property definition to a new key and removes the old key. This is useful when states use different terminology for the same concept without having to duplicate the property definition.
122
135
136
+
The `replace` action completely replaces the target value (unlike `update` which merges objects). It supports `$ref` to load replacement schemas from separate files in the `replacements/` directory. This is useful when a state needs a fundamentally different structure that can't be achieved through property updates.
137
+
123
138
---
124
139
125
140
## Options Considered
@@ -260,12 +275,12 @@ openapi/
260
275
261
276
| File | Change |
262
277
|------|--------|
263
-
| `src/overlay/overlay-resolver.js` | Core overlay resolution logic with custom `rename` action support |
278
+
| `src/overlay/overlay-resolver.js` | Core overlay resolution logic with `rename` and `replace` action support |
264
279
| `scripts/resolve-overlay.js` | CLI script to apply overlays with target validation |
265
280
| `scripts/validate-state.js` | New script to resolve and validate state specs |
266
281
| `scripts/validate-patterns.js` | Updated to support `--dir` argument |
267
-
| `openapi/overlays/california.overlay.yaml` | California state overlay |
268
-
| `openapi/overlays/colorado.overlay.yaml` | Colorado state overlay |
0 commit comments