diff --git a/.changeset/error-code-ledger-stored-type-not-canonical-two-producers.md b/.changeset/error-code-ledger-stored-type-not-canonical-two-producers.md new file mode 100644 index 0000000000..e2fbf83209 --- /dev/null +++ b/.changeset/error-code-ledger-stored-type-not-canonical-two-producers.md @@ -0,0 +1,17 @@ +--- +"@objectstack/spec": patch +--- + +docs(spec): `STORED_TYPE_NOT_CANONICAL` ledger comment names both producers and their atomicity (#9361) + +The ledger entry at `error-code-ledger.zod.ts:381` described `STORED_TYPE_NOT_CANONICAL`'s +only producer as the publish pre-flight ("refused at the publish pre-flight, batch-atomic"). +PR #9360 (#9174) added a second producer — `revertCommit`'s restore limb, which refuses +per-item on its existing `failed[]` channel and is explicitly NOT batch-atomic — leaving the +comment naming one of two producers, with the wrong atomicity for the one it omitted. + +The comment now names both: the publish pre-flight (batch-atomic, `#8908`) and +`revertCommit`'s restore limb (per-item on `failed[]`, NOT batch-atomic, `#9174`). + +Text-only change — accept/reject behavior, the error code, and its envelope are all +unchanged. diff --git a/packages/spec/src/api/error-code-ledger.zod.ts b/packages/spec/src/api/error-code-ledger.zod.ts index 0d00a89ad0..4f5be7854d 100644 --- a/packages/spec/src/api/error-code-ledger.zod.ts +++ b/packages/spec/src/api/error-code-ledger.zod.ts @@ -378,7 +378,7 @@ export const ERROR_CODE_LEDGER = { 'QUERY_OBJECT_MISMATCH', 'REGISTRY_TYPE_NOT_CANONICAL', // [#9111] a SchemaRegistry overlay entry was offered a non-canonical metadata `type` — the mint door asserts, the caller folds 'ROLLED_BACK', // atomic data-batch row was written, then undone by the batch rollback (#4793) - 'STORED_TYPE_NOT_CANONICAL', // [#8908] a package draft is stored under a non-canonical metadata type (pre-#7894 second-namespace residue) — refused at the publish pre-flight, batch-atomic + 'STORED_TYPE_NOT_CANONICAL', // [#8908] a package draft is stored under a non-canonical metadata type (pre-#7894 second-namespace residue) — refused at the publish pre-flight, batch-atomic; [#9174] also refused on `revertCommit`'s restore limb, per-item on `failed[]`, NOT batch-atomic 'TENANT_SCOPE_REQUIRED', // [#7780] destructive call named neither an organization nor an explicit cross-tenant intent; needs an explicit opt-in 'UNSUPPORTED_QUERY_PARAM', 'VALIDATION_FAILED',