InputErrorCode ​Contract 2.0.0 · package sha256
a857eca95b35921109faf997094bb4192f12527d9d0fcd4be7e97f06425bad6e· generated fromconfigurator-runtime.d.tsbyservices/onsite-scripter/scripts/build-contract-docs.mjs; edit the source, not this file.
Type · import type { InputErrorCode } from '@holostep-configurators/runtime-client/contract'; · stable · since 2.0.0 · section 3. Errors
What a HoloInputError reports. A code newer than the page's contract reaches it as 'other'
(spec section 3.6). Each code has a docs page.
| Code | Summary |
|---|---|
'invalid-input' |
A value or combination the member refuses, e.g. a zero PoseInput.scale component. |
'missing-node-id' |
A node without a nodeId (spec section 6.9, ID9). |
'duplicate-node-id' |
Two nodes share a nodeId (ID9); normalizeNodeIds repairs an old save. |
'rotation-twice' |
An untyped pose or patch with both rotations, rotationDeg and quaternion. |
'unknown-field' |
A field the spec or schema of the page's declared contract doesn't have, or an applyPatch node field path whose field the stored node format doesn't have and the node doesn't carry; didYouMean names close fields. |
'unknown-id' |
An id that names nothing the member takes, e.g. a select group that is no global-material GroupNode, a view not in camera.views, an ImageRef or ShapeRef that is not live, a { materialId } that names no material, an applyPatch defaultNodeId that names no child of its node, or a describe(node) id that names no ModelNode; didYouMean names known ids. |
'option-in-transaction' |
A commit option passed through a tx by an untyped call; always thrown at the call. |
'collection-role-mismatch' |
collection() on a live name with another role. |
'collection-options-mismatch' |
collection() on a live name with another attachTo. |
'duplicate-rule-id' |
Two rules of one apply() rules list share an id (spec section 6.10, R3). |
'checkpoint-rejected' |
Page state over 256 KB of canonical JSON (CheckpointOption). |
'capture-displayed-fixed' |
source: 'displayed' with a view, size, pixelRatio or a background other than 'scene'. |
'not-draggable' |
startDrag on a unit that no live registration names. |
The set is open: a code newer than your declared contract arrives as 'other'.
export type InputErrorCode = 'invalid-input' | 'missing-node-id' | 'duplicate-node-id' | 'rotation-twice' | 'unknown-field' | 'unknown-id' | 'option-in-transaction' | 'collection-role-mismatch' | 'collection-options-mismatch' | 'duplicate-rule-id' | 'checkpoint-rejected' | 'capture-displayed-fixed' | 'not-draggable' | 'other';
| Rule | Result |
|---|---|
| 1. Neutral name | pass: InputErrorCode names no product |
| 2. A precedent | not recorded: no ledger row (coverage.json) names this member or its owner |
| 3. Two apps, or labs | not recorded: no ledger row names this member or its owner |
| 4. The cheaper fix first | not recorded per member (Appendix B decides it per need) |