feat(spec): command forms, views and lens endpoints (0.65.0) #19
Loading…
Reference in a new issue
No description provided.
Delete branch "feat/spec-command-form"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The spec side of command forms (toilville-design#177). It pairs with spel#1085, which is live, and ritual-engine#903.
Scope
openapi.yaml0.65.0 and the CHANGELOG:formon available commands: a newCommandForm {type, variant}, onAvailableCommand(wishes) andAvailableParlayCommand.GET /api/v1/views(getView, which returns aResolvedView), plusGET,PUTandDELETE /api/v1/lens(Lens). These have been live since #1041 and #870 but were never in the spec. Aformpoints at/api/v1/views, so leaving them out would point at an undocumented endpoint.headerandinputblocks are added to the OpenAPIForgeBlockmirror, generated fromschemas/forge_block.json1.2 rather than hand-copied:HeaderBlock,HeadingLevel,InputBlock,InputElementand its six element types,ChoiceOption,ChoiceStyle.image,fact_set,video,column_setandcarousel. That is unchanged and noted in the CHANGELOG.Testing
openapi-spec-validator: valid (OpenAPI 3.1.0).Live responses, taken read-only from the forge, against the new schemas:
command_formviews asResolvedView;AvailableCommand;AvailableParlayCommand.0 errors, against 38 before the block mirror.
Controls, all rejected:
formwith a malformed type and the wrong variant;action_id;tools/check_schema_registry.py: consistent.pytest: 18 passed, 1 xfailed, the same asmain.Impact Statement
formand four live operations;ForgeBlockunion gains two variants that the canonical schema already had.openapi.yaml0.64.0 → 0.65.0. No JSON Schema file changes.action_idmaps to itsinputskey, andcommand:<command>maps toPOST …/commands {command}.Docs
The CHANGELOG entry under Unreleased.
form {type, variant} on available wish and parlay commands; GET /api/v1/views and /api/v1/lens documented; header and input blocks mirrored from forge_block.json 1.2 into the OpenAPI ForgeBlock union.