Migration to Governed SDK 0.4.2
Why Governed Execution SDK 0.4.0 rejected valid HITL bundles, what 0.4.1 and 0.4.2 corrected, and the regression cases to run before upgrading production.
0.4.0 issue
Native validation required concrete parents to equal all possible contracted topology parents. Valid bundles, such as HITL routes, failed with MISSING_CONTRACTED_PARENT.
0.4.1
- Concrete parents may be a subset of legal topology candidates.
- Illegal selected edges remain invalid.
- Causal checks remain enforced.
0.4.2
- Permits cycles and self-edges in static topology.
- Preserves acyclic concrete execution.
- Enforces concrete-edge legality against supplied topology in the generic profile.
- Uses the shared contracted-edge resolver for generic and native paths.
- Does not change certificate identity, canonicalisation, schemas or the public API.
Install
npm install --save-exact @nexart/governed-execution@0.4.2Pin the exact version so every verifier evaluates the same rules.
Regression checklist
| Case | Expect |
|---|---|
| Cyclic static topology, acyclic execution | OK |
| Static self-edge, repeated node | OK |
| HITL legal parent subset | OK |
| Omitted-node contraction | OK |
| No topology supplied | OK, not-supplied |
| Edge outside legal candidates | ILLEGAL_EXECUTED_EDGE |
| Unrecorded-only cycle | UNRESOLVABLE_CONTRACTION_CYCLE |
| Self, forward or dangling parent | CAUSAL_ERROR |
| Malformed stateHash | SCHEMA_ERROR |
| Previously sealed CERs | Same certificateHash as before upgrade |