@openapi-flow/core 0.3.8 → 0.3.9
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.
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Zod `^4.6.5` is a required peer, shared with the host rather than installed as a separately pinned runtime copy. Development tests use 4.6.5; the strict installed-consumer check also uses the host's 4.6.7. This preserves the public schema type boundary without casts or dependency overrides.
|
|
4
4
|
|
|
5
|
-
Version **0.3.
|
|
5
|
+
Version **0.3.9**. Canonical draft, clarification and runtime-input APIs described below are included in this release source. Requirement-edit schema descriptions distinguish explicit record editing from workflow behavior changes; runtime validation rules and typed human answers are unchanged. Original-choice follow-ups still derive their display and typed reply in Core. Ajv 8.20.0 does not correctly validate a declared `properties.__proto__`; generated validation may reject valid data or omit that property's constraints. This previously accepted limitation remains unchanged, without renaming data or skipping its failing regression. See the [release record](https://github.com/carefreelife98/openapi-flow/blob/main/docs/releases/0.3.9.md) for publication and host status.
|
|
6
6
|
|
|
7
7
|
Native and fixed-material connection planning accept the optional, existing `WorkflowEntryPointContract` as `entrypoint`. Core validates and snapshots this owner-provided start alongside the other inputs; it does not infer one when absent, add a selectable trigger or let model output modify it.
|
|
8
8
|
|
|
@@ -118,11 +118,15 @@ export function createWorkflowDraftEditProposalSchema(options, sources) {
|
|
|
118
118
|
}));
|
|
119
119
|
if (sources.requirementIds.length)
|
|
120
120
|
for (const kind of ['revise-requirement', 'remove-requirement'])
|
|
121
|
-
decisions.push(z
|
|
121
|
+
decisions.push(z
|
|
122
|
+
.strictObject({
|
|
122
123
|
kind: z.literal(kind),
|
|
123
124
|
requirementId: z.enum(sources.requirementIds),
|
|
124
125
|
...fields,
|
|
125
|
-
})
|
|
126
|
+
})
|
|
127
|
+
.describe(kind === 'revise-requirement'
|
|
128
|
+
? 'An explicit request to edit the existing requirement record itself: its stored statement, state or scope; not a request to change workflow behavior. API/native node, input, source and connection changes use their own decisions and do not require this bookkeeping edit. A later typed human answer supplies replacement fields.'
|
|
129
|
+
: 'An explicit request to withdraw this existing requirement record itself, not its API/native nodes or connections. Do not infer record withdrawal from workflow behavior changes.'));
|
|
126
130
|
if (sources.removedRequirementIds.length)
|
|
127
131
|
decisions.push(z.strictObject({
|
|
128
132
|
kind: z.literal('restore-requirement'),
|