@almadar/core 10.129.0 → 11.0.0
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/dist/behavior-package.d.ts +49 -11
- package/dist/behavior-package.js +1 -1
- package/dist/{orbital-CkFdDS9f.d.ts → builders-BhnofAik.d.ts} +5966 -7116
- package/dist/builders.d.ts +6 -6
- package/dist/builders.js +7 -6
- package/dist/{bus-CcbB__oo.d.ts → bus-BrRFWDQK.d.ts} +270 -354
- package/dist/chunk-347APWFM.js +286 -0
- package/dist/chunk-347APWFM.js.map +1 -0
- package/dist/chunk-3URQAGD7.js +98 -0
- package/dist/chunk-3URQAGD7.js.map +1 -0
- package/dist/chunk-7GHJU5WI.js +39 -0
- package/dist/chunk-7GHJU5WI.js.map +1 -0
- package/dist/chunk-B4MNHGBP.js +8 -0
- package/dist/chunk-B4MNHGBP.js.map +1 -0
- package/dist/{chunk-KDMV222Q.js → chunk-F6KHUW7T.js} +304 -373
- package/dist/chunk-F6KHUW7T.js.map +1 -0
- package/dist/chunk-FGT5OS2Y.js +918 -0
- package/dist/chunk-FGT5OS2Y.js.map +1 -0
- package/dist/chunk-FQLEAMAB.js +24 -0
- package/dist/chunk-FQLEAMAB.js.map +1 -0
- package/dist/chunk-HEXOGHQ4.js +3264 -0
- package/dist/chunk-HEXOGHQ4.js.map +1 -0
- package/dist/chunk-JCD6GLBX.js +412 -0
- package/dist/chunk-JCD6GLBX.js.map +1 -0
- package/dist/{chunk-QUOTJULD.js → chunk-MGLG2XLD.js} +20 -219
- package/dist/chunk-MGLG2XLD.js.map +1 -0
- package/dist/chunk-MTBEBSNO.js +1293 -0
- package/dist/chunk-MTBEBSNO.js.map +1 -0
- package/dist/{chunk-X4SC7FGF.js → chunk-RGACZEYC.js} +99 -96
- package/dist/chunk-RGACZEYC.js.map +1 -0
- package/dist/{chunk-RYPVOI6H.js → chunk-UZPYYI37.js} +524 -26
- package/dist/{chunk-RYPVOI6H.js.map → chunk-UZPYYI37.js.map} +1 -1
- package/dist/chunk-VG7BRFUD.js +152 -0
- package/dist/chunk-VG7BRFUD.js.map +1 -0
- package/dist/chunk-Y2DYZPP5.js +2329 -0
- package/dist/chunk-Y2DYZPP5.js.map +1 -0
- package/dist/chunk-ZEI7C32D.js +1566 -0
- package/dist/chunk-ZEI7C32D.js.map +1 -0
- package/dist/{domain-Dz3jP-UM.d.ts → domain-CfKPpXCP.d.ts} +51 -51
- package/dist/{effect-result-Bebwu9yT.d.ts → effect-result-DPERsn_v.d.ts} +641 -851
- package/dist/{effect-CiEVLsZz.d.ts → effect-wP-IdRt2.d.ts} +236 -443
- package/dist/{expression-D0Fs0riG.d.ts → expression-DirYKz-f.d.ts} +5 -13
- package/dist/factory/index.d.ts +7 -144
- package/dist/factory/index.js +8 -8
- package/dist/factory-runtime/index.d.ts +7 -6
- package/dist/factory-runtime/index.js +527 -8
- package/dist/factory-runtime/index.js.map +1 -1
- package/dist/fixtures.d.ts +9 -11
- package/dist/fixtures.js +12 -8
- package/dist/fixtures.js.map +1 -1
- package/dist/i18n/index.d.ts +15 -19
- package/dist/i18n/index.js +2 -1
- package/dist/{index-BC-Jycqj.d.ts → index-DomgmRBG.d.ts} +29 -729
- package/dist/index.d.ts +69 -247
- package/dist/index.js +322 -986
- package/dist/index.js.map +1 -1
- package/dist/kernel-wire.d.ts +3 -3
- package/dist/kernel-wire.js +3 -79
- package/dist/kernel-wire.js.map +1 -1
- package/dist/language/constructs.json +22 -2
- package/dist/language/program-types.json +203 -22
- package/dist/language/protocols.json +46 -0
- package/dist/language/ui-vocabulary.json +1697 -0
- package/dist/language/validation-codes.json +1205 -1215
- package/dist/language/vocabulary.json +44 -8
- package/dist/language-data.d.ts +7 -4
- package/dist/language-data.js +20 -14
- package/dist/language-data.js.map +1 -1
- package/dist/patterns/component-mapping.json +11 -1
- package/dist/patterns/definitions.d.ts +2 -2
- package/dist/patterns/definitions.js +1 -1
- package/dist/patterns/event-contracts.json +1 -15
- package/dist/patterns/index.d.ts +24 -120
- package/dist/patterns/index.js +3 -3
- package/dist/patterns/patterns-registry.json +522 -24
- package/dist/patterns/registry.json +522 -24
- package/dist/trait-CzG9M89M.d.ts +3519 -0
- package/dist/types/index.d.ts +9 -10
- package/dist/types/index.js +11 -5
- package/dist/{types-DGwrltUF.d.ts → types-BHlTjwWd.d.ts} +3 -3
- package/fixtures/events-wire/client-effects-by-trait/response.json +0 -18
- package/fixtures/events-wire/client-effects-provenance/response.json +0 -18
- package/fixtures/events-wire/effect-results-every-kind/response.json +2 -27
- package/fixtures/events-wire/navigate-1/response.json +8 -5
- package/fixtures/events-wire/navigate-2/response.json +11 -8
- package/fixtures/events-wire/navigate-3/response.json +14 -11
- package/fixtures/events-wire/navigate-back/response.json +7 -4
- package/fixtures/events-wire/render-ui-3/response.json +12 -9
- package/fixtures/events-wire/render-ui-clear/response.json +0 -7
- package/fixtures/events-wire/sse-stream/response.json +0 -20
- package/fixtures/events-wire/sse-stream/stream.json +0 -20
- package/fixtures/events-wire/stateless-traits/response.json +14 -5
- package/fixtures/kernel-wire/golden/basic-entity.json +1687 -0
- package/fixtures/kernel-wire/golden/entity-rerender.json +743 -0
- package/fixtures/kernel-wire/golden/rollback.json +793 -0
- package/fixtures/kernel-wire/golden/tick-counter.json +1538 -0
- package/fixtures/kernel-wire/golden/two-orbital-chore.json +847 -0
- package/fixtures/kernel-wire/golden/two-orbital-task.json +457 -0
- package/fixtures/kernel-wire/played-step.json +136 -0
- package/fixtures/kernel-wire/scripts/basic-entity.json +28 -0
- package/fixtures/kernel-wire/scripts/entity-rerender.json +13 -0
- package/fixtures/kernel-wire/scripts/rollback.json +53 -0
- package/fixtures/kernel-wire/scripts/tick-counter.json +26 -0
- package/fixtures/kernel-wire/scripts/two-orbital-chore.json +9 -0
- package/fixtures/kernel-wire/scripts/two-orbital-task.json +9 -0
- package/package.json +28 -19
- package/dist/builders-DmZE5By0.d.ts +0 -2663
- package/dist/chunk-45I2O4SJ.js +0 -4646
- package/dist/chunk-45I2O4SJ.js.map +0 -1
- package/dist/chunk-6LR43Z5E.js +0 -3061
- package/dist/chunk-6LR43Z5E.js.map +0 -1
- package/dist/chunk-GIUA3NUJ.js +0 -809
- package/dist/chunk-GIUA3NUJ.js.map +0 -1
- package/dist/chunk-GTY53NS5.js +0 -1908
- package/dist/chunk-GTY53NS5.js.map +0 -1
- package/dist/chunk-JOHDVS6J.js +0 -1614
- package/dist/chunk-JOHDVS6J.js.map +0 -1
- package/dist/chunk-KDMV222Q.js.map +0 -1
- package/dist/chunk-QRHJUS3D.js +0 -23
- package/dist/chunk-QRHJUS3D.js.map +0 -1
- package/dist/chunk-QUOTJULD.js.map +0 -1
- package/dist/chunk-V5VNGRVU.js +0 -66
- package/dist/chunk-V5VNGRVU.js.map +0 -1
- package/dist/chunk-X4SC7FGF.js.map +0 -1
- package/dist/entityAccess-BPSz1i2n.d.ts +0 -80
- package/dist/mock/index.d.ts +0 -153
- package/dist/mock/index.js +0 -190
- package/dist/mock/index.js.map +0 -1
- package/dist/schema-T5RT5s6H.d.ts +0 -282
- package/dist/state-machine/index.d.ts +0 -359
- package/dist/state-machine/index.js +0 -3
- package/dist/state-machine/index.js.map +0 -1
|
@@ -1,2042 +1,2032 @@
|
|
|
1
1
|
[
|
|
2
2
|
{
|
|
3
|
-
"code": "
|
|
4
|
-
"category": "
|
|
5
|
-
"description": "
|
|
6
|
-
},
|
|
7
|
-
{
|
|
8
|
-
"code": "ORB_E_NO_FIELDS",
|
|
9
|
-
"category": "entity",
|
|
10
|
-
"description": "Entity has no fields defined"
|
|
11
|
-
},
|
|
12
|
-
{
|
|
13
|
-
"code": "ORB_E_INVALID_FIELD_TYPE",
|
|
14
|
-
"category": "entity",
|
|
15
|
-
"description": "Field has an invalid type"
|
|
16
|
-
},
|
|
17
|
-
{
|
|
18
|
-
"code": "ORB_E_DUPLICATE_FIELD",
|
|
19
|
-
"category": "entity",
|
|
20
|
-
"description": "Duplicate field name in entity"
|
|
21
|
-
},
|
|
22
|
-
{
|
|
23
|
-
"code": "ORB_E_INVALID_FIELD_NAME",
|
|
24
|
-
"category": "entity",
|
|
25
|
-
"description": "Field name doesn't match camelCase pattern"
|
|
26
|
-
},
|
|
27
|
-
{
|
|
28
|
-
"code": "ORB_E_MISSING_COLLECTION",
|
|
29
|
-
"category": "entity",
|
|
30
|
-
"description": "Persistent entity missing collection property"
|
|
31
|
-
},
|
|
32
|
-
{
|
|
33
|
-
"code": "ORB_E_LOCAL_REQUIRES_PERSISTENT",
|
|
34
|
-
"category": "entity",
|
|
35
|
-
"description": "`browser` on a non-persistent entity (ORB_E_LOCAL_REQUIRES_PERSISTENT)"
|
|
36
|
-
},
|
|
37
|
-
{
|
|
38
|
-
"code": "ORB_E_IDENTITY_LOCAL",
|
|
39
|
-
"category": "entity",
|
|
40
|
-
"description": "`[identity]` entity declared `browser` (ORB_E_IDENTITY_LOCAL)"
|
|
41
|
-
},
|
|
42
|
-
{
|
|
43
|
-
"code": "ORB_E_INSTANCE_INVALID",
|
|
44
|
-
"category": "entity",
|
|
45
|
-
"description": "A written-out row with an unknown field, a missing required field, or (local) no id (ORB_E_INSTANCE_INVALID)"
|
|
46
|
-
},
|
|
47
|
-
{
|
|
48
|
-
"code": "ORB_E_LOCALE_INSTANCES_NOT_LOCAL",
|
|
49
|
-
"category": "entity",
|
|
50
|
-
"description": "`instances <lang>` on an entity whose rows are not browser-stored (ORB_E_LOCALE_INSTANCES_NOT_LOCAL)"
|
|
51
|
-
},
|
|
52
|
-
{
|
|
53
|
-
"code": "ORB_E_LOCALE_INSTANCES_UNKNOWN_LOCALE",
|
|
54
|
-
"category": "entity",
|
|
55
|
-
"description": "`instances <lang>` for a locale the app does not declare, or for its default locale (ORB_E_LOCALE_INSTANCES_UNKNOWN_LOCALE)"
|
|
56
|
-
},
|
|
57
|
-
{
|
|
58
|
-
"code": "ORB_E_LOCALE_INSTANCES_INCOMPLETE",
|
|
59
|
-
"category": "entity",
|
|
60
|
-
"description": "Locale rows written without the default `instances`, or missing a declared locale (ORB_E_LOCALE_INSTANCES_INCOMPLETE)"
|
|
61
|
-
},
|
|
62
|
-
{
|
|
63
|
-
"code": "ORB_E_INVALID_RELATION",
|
|
64
|
-
"category": "entity",
|
|
65
|
-
"description": "Relation target entity doesn't exist"
|
|
3
|
+
"code": "ORB_T_MISSING_RENDER_UI",
|
|
4
|
+
"category": "trait",
|
|
5
|
+
"description": "Interaction trait missing render_ui effects"
|
|
66
6
|
},
|
|
67
7
|
{
|
|
68
|
-
"code": "
|
|
69
|
-
"category": "
|
|
70
|
-
"description": "
|
|
8
|
+
"code": "ORB_T_BEHAVIOR_REF_UNRESOLVED",
|
|
9
|
+
"category": "trait",
|
|
10
|
+
"description": "A trait-value literal (`<spec>.traits.<Trait>`) whose behavior or trait does not resolve against the installed behavior packages."
|
|
71
11
|
},
|
|
72
12
|
{
|
|
73
|
-
"code": "
|
|
74
|
-
"category": "
|
|
75
|
-
"description": "A
|
|
13
|
+
"code": "ORB_T_BEHAVIOR_REF_NOT_LITERAL",
|
|
14
|
+
"category": "trait",
|
|
15
|
+
"description": "A `behavior/ref` whose argument is computed at run time: a behavior from data must arrive as a `behavior` value, never re-parsed from text."
|
|
76
16
|
},
|
|
77
17
|
{
|
|
78
|
-
"code": "
|
|
79
|
-
"category": "
|
|
80
|
-
"description": "An
|
|
18
|
+
"code": "ORB_T_UNQUOTE_OUTSIDE_QUASIQUOTE",
|
|
19
|
+
"category": "trait",
|
|
20
|
+
"description": "An `[\"unquote\", …]` call outside a quasiquote body in an `.orb` input."
|
|
81
21
|
},
|
|
82
22
|
{
|
|
83
|
-
"code": "
|
|
84
|
-
"category": "
|
|
85
|
-
"description": "
|
|
23
|
+
"code": "ORB_T_EVENT_REF_UNRESOLVED",
|
|
24
|
+
"category": "trait",
|
|
25
|
+
"description": "An event-typed config value addresses a trait the program does not have."
|
|
86
26
|
},
|
|
87
27
|
{
|
|
88
|
-
"code": "
|
|
89
|
-
"category": "
|
|
90
|
-
"description": "An
|
|
28
|
+
"code": "ORB_T_EVENT_REF_NOT_EXTERNAL_INPUT",
|
|
29
|
+
"category": "trait",
|
|
30
|
+
"description": "An event-typed config value addresses an event its trait does not declare as an external input."
|
|
91
31
|
},
|
|
92
32
|
{
|
|
93
|
-
"code": "
|
|
33
|
+
"code": "ORB_T_CONFIG_SHAPE_MISMATCH",
|
|
94
34
|
"category": "trait",
|
|
95
|
-
"description": "
|
|
35
|
+
"description": "Config field's default value doesn't match its declared structural shape (array vs scalar, object vs string, missing required, etc.). Fires after the typed-config carriers (`items` / `properties` / `values`) make the declared shape concrete enough to check against."
|
|
96
36
|
},
|
|
97
37
|
{
|
|
98
|
-
"code": "
|
|
38
|
+
"code": "ORB_T_TYPE_UNKNOWN",
|
|
99
39
|
"category": "trait",
|
|
100
|
-
"description": "
|
|
40
|
+
"description": "A type reference names no declared type, entity or primitive"
|
|
101
41
|
},
|
|
102
42
|
{
|
|
103
|
-
"code": "
|
|
43
|
+
"code": "ORB_T_TYPE_CYCLE",
|
|
104
44
|
"category": "trait",
|
|
105
|
-
"description": "
|
|
45
|
+
"description": "A type composition chain refers back to itself"
|
|
106
46
|
},
|
|
107
47
|
{
|
|
108
|
-
"code": "
|
|
48
|
+
"code": "ORB_T_TYPE_KIND_MISMATCH",
|
|
109
49
|
"category": "trait",
|
|
110
|
-
"description": "
|
|
50
|
+
"description": "Composed types do not share a kind (all Entity, all Trait, …)"
|
|
111
51
|
},
|
|
112
52
|
{
|
|
113
|
-
"code": "
|
|
53
|
+
"code": "ORB_T_TYPE_COMPOSITION_CONFLICT",
|
|
114
54
|
"category": "trait",
|
|
115
|
-
"description": "
|
|
55
|
+
"description": "A field is declared in more than one composed entity"
|
|
116
56
|
},
|
|
117
57
|
{
|
|
118
|
-
"code": "
|
|
58
|
+
"code": "ORB_T_TYPE_ANNOTATION_MISMATCH",
|
|
119
59
|
"category": "trait",
|
|
120
|
-
"description": "
|
|
60
|
+
"description": "A type body does not match its `::` type annotation"
|
|
121
61
|
},
|
|
122
62
|
{
|
|
123
|
-
"code": "
|
|
63
|
+
"code": "ORB_T_TYPE_UNKNOWN_PARAM",
|
|
124
64
|
"category": "trait",
|
|
125
|
-
"description": "
|
|
65
|
+
"description": "A type alias body uses a type parameter the alias does not declare"
|
|
126
66
|
},
|
|
127
67
|
{
|
|
128
|
-
"code": "
|
|
68
|
+
"code": "ORB_T_TYPE_WRONG_ARG_COUNT",
|
|
129
69
|
"category": "trait",
|
|
130
|
-
"description": "
|
|
70
|
+
"description": "A type alias is applied with the wrong number of type arguments"
|
|
131
71
|
},
|
|
132
72
|
{
|
|
133
|
-
"code": "
|
|
73
|
+
"code": "ORB_T_EVENT_TYPE_WRONG_KIND",
|
|
134
74
|
"category": "trait",
|
|
135
|
-
"description": "
|
|
75
|
+
"description": "An `emits` entry names a declared type that is not an Event type"
|
|
136
76
|
},
|
|
137
77
|
{
|
|
138
|
-
"code": "
|
|
139
|
-
"category": "
|
|
140
|
-
"description": "A
|
|
78
|
+
"code": "ORB_P_UNKNOWN_PROTOCOL",
|
|
79
|
+
"category": "page",
|
|
80
|
+
"description": "A page names a protocol that is no row of the protocol table"
|
|
141
81
|
},
|
|
142
82
|
{
|
|
143
|
-
"code": "
|
|
144
|
-
"category": "
|
|
145
|
-
"description": "
|
|
83
|
+
"code": "ORB_P_ENDPOINT_GRANT_MISSING",
|
|
84
|
+
"category": "page",
|
|
85
|
+
"description": "An `http` endpoint has no covering `net` listen grant"
|
|
146
86
|
},
|
|
147
87
|
{
|
|
148
|
-
"code": "
|
|
149
|
-
"category": "
|
|
150
|
-
"description": "
|
|
88
|
+
"code": "ORB_P_ADDRESS_INVALID",
|
|
89
|
+
"category": "page",
|
|
90
|
+
"description": "A protocol page's address does not type-check against the protocol's address record"
|
|
151
91
|
},
|
|
152
92
|
{
|
|
153
|
-
"code": "
|
|
154
|
-
"category": "
|
|
155
|
-
"description": "
|
|
93
|
+
"code": "ORB_RUI_UNKNOWN_ITEM_ACTION_PROP",
|
|
94
|
+
"category": "render_ui",
|
|
95
|
+
"description": "Unknown itemAction prop (e.g., hallucinated 'condition')"
|
|
156
96
|
},
|
|
157
97
|
{
|
|
158
|
-
"code": "
|
|
159
|
-
"category": "
|
|
160
|
-
"description": "
|
|
98
|
+
"code": "ORB_RUI_BINDING_TYPE_MISMATCH",
|
|
99
|
+
"category": "render_ui",
|
|
100
|
+
"description": "L2.1 keystone: render-ui prop bound to a `@payload.X` / `@entity.X` / `@config.X` / SExpression operator whose resolved type doesn't match any of the prop's declared `types` in the patterns registry. Distinct from `RenderUIPropTypeMismatch` (literal-only); this rule uses the F3 binding resolver to walk through bindings and SExpression operator return types (sharpened by F2's `returnSemantics` for input-dependent operators). Gap #6 in `docs/Almadar_Std_Verification.md`."
|
|
161
101
|
},
|
|
162
102
|
{
|
|
163
|
-
"code": "
|
|
164
|
-
"category": "
|
|
165
|
-
"description": "
|
|
103
|
+
"code": "ORB_RUI_EVENT_BINDING_PAYLOAD_MISMATCH",
|
|
104
|
+
"category": "render_ui",
|
|
105
|
+
"description": "L2.2: render-ui prop with `kind: \"event-ref\"` or `kind: \"callback\"` bound to an event-name string whose declared payload schema in the trait's `emits {}` block doesn't match the component's documented bus emit shape (registry's `emitPayloadSchema` for event-ref props; `callbackArgs` for callback props). Gap #32 in `docs/Almadar_Std_Verification.md`."
|
|
166
106
|
},
|
|
167
107
|
{
|
|
168
|
-
"code": "
|
|
169
|
-
"category": "
|
|
170
|
-
"description": "
|
|
108
|
+
"code": "ORB_CANCEL_CALL_NO_KEYED_CALL",
|
|
109
|
+
"category": "effect",
|
|
110
|
+
"description": "the app runs `cancel-call` but no `call-service` anywhere carries a `key`"
|
|
171
111
|
},
|
|
172
112
|
{
|
|
173
|
-
"code": "
|
|
174
|
-
"category": "
|
|
175
|
-
"description": "
|
|
113
|
+
"code": "ORB_CANCEL_CALL_KEY_NEVER_CALLED",
|
|
114
|
+
"category": "effect",
|
|
115
|
+
"description": "`--final`: a `cancel-call` on a `CallKey` (or a list of them) in a finished program where no keyed call has a `CallKey`-typed `key:`, so nothing the program runs is named by a key made with `as`"
|
|
176
116
|
},
|
|
177
117
|
{
|
|
178
|
-
"code": "
|
|
179
|
-
"category": "
|
|
180
|
-
"description": "
|
|
118
|
+
"code": "ORB_PAGE_FACTS_UNREQUESTED_READ",
|
|
119
|
+
"category": "effect",
|
|
120
|
+
"description": "an event reads a page fact the `browser/page-facts` call did not request"
|
|
181
121
|
},
|
|
182
122
|
{
|
|
183
|
-
"code": "
|
|
184
|
-
"category": "
|
|
185
|
-
"description": "
|
|
123
|
+
"code": "ORB_TAB_REQUEST_REFUSED",
|
|
124
|
+
"category": "effect",
|
|
125
|
+
"description": "a literal `browser/tab-*` request whose keys the op declares but whose values the kernel's tab-call parser refuses"
|
|
186
126
|
},
|
|
187
127
|
{
|
|
188
|
-
"code": "
|
|
189
|
-
"category": "
|
|
190
|
-
"description": "
|
|
128
|
+
"code": "ORB_X_DISPATCH_MIXED_RESIDENCE",
|
|
129
|
+
"category": "effect",
|
|
130
|
+
"description": "one dispatch's delegated effects reach browser-stored rows and server work"
|
|
191
131
|
},
|
|
192
132
|
{
|
|
193
|
-
"code": "
|
|
194
|
-
"category": "
|
|
195
|
-
"description": "
|
|
133
|
+
"code": "ORB_EFF_SLOT_CONFLICT",
|
|
134
|
+
"category": "effect",
|
|
135
|
+
"description": "Multiple render_ui effects targeting same slot"
|
|
196
136
|
},
|
|
197
137
|
{
|
|
198
|
-
"code": "
|
|
199
|
-
"category": "
|
|
200
|
-
"description": "
|
|
138
|
+
"code": "ORB_EFF_NOTIFY_RETIRED",
|
|
139
|
+
"category": "effect",
|
|
140
|
+
"description": "`notify` is sugar for `render-ui toast { type: alert, … }`, desugared at `.lolo` lowering (owner ruling 2026-09-11) — the `.orb` IR never carries a `notify` effect kind. A `notify` tuple reaching L2 means a hand-authored `.orb` or a registry not yet re-emitted."
|
|
201
141
|
},
|
|
202
142
|
{
|
|
203
|
-
"code": "
|
|
204
|
-
"category": "
|
|
205
|
-
"description": "
|
|
143
|
+
"code": "ORB_EMIT_DECLARED_BUT_UNFIRED",
|
|
144
|
+
"category": "effect",
|
|
145
|
+
"description": "Trait declares an event in its `emits[]` block but no transition fires it via `(emit X)` or operator emit-config success/failure. Usually a copy-paste leftover or a stale declaration after a rename; gap #2 defense in `docs/Almadar_Std_Verification.md`."
|
|
206
146
|
},
|
|
207
147
|
{
|
|
208
|
-
"code": "
|
|
209
|
-
"category": "
|
|
210
|
-
"description": "
|
|
148
|
+
"code": "ORB_EFF_MISSING_REQUIRED_EMIT",
|
|
149
|
+
"category": "effect",
|
|
150
|
+
"description": "Operator declares `requiresEmitSuccess: true` in canonical-operators.json but the effect call site is missing the trailing options object or its `emit.success` event key. Applies to fetch / persist / call-service by default; any future operator can opt in via the same JSON flag."
|
|
211
151
|
},
|
|
212
152
|
{
|
|
213
|
-
"code": "
|
|
214
|
-
"category": "
|
|
215
|
-
"description": "
|
|
153
|
+
"code": "SEXPR_ARITY_MISMATCH",
|
|
154
|
+
"category": "sexpr",
|
|
155
|
+
"description": "Wrong number of arguments for operator"
|
|
216
156
|
},
|
|
217
157
|
{
|
|
218
|
-
"code": "
|
|
219
|
-
"category": "
|
|
220
|
-
"description": "
|
|
158
|
+
"code": "SEXPR_LAMBDA_ARG_POSITION",
|
|
159
|
+
"category": "sexpr",
|
|
160
|
+
"description": "A `(fn …)` form in an argument position the operator does not take its lambda in — decidable wrong argument order, e.g. `(array/reduce arr (fn …) init)`"
|
|
221
161
|
},
|
|
222
162
|
{
|
|
223
|
-
"code": "
|
|
224
|
-
"category": "
|
|
225
|
-
"description": "
|
|
163
|
+
"code": "SEXPR_EFFECT_IN_GUARD",
|
|
164
|
+
"category": "sexpr",
|
|
165
|
+
"description": "Effect operator used in guard context"
|
|
226
166
|
},
|
|
227
167
|
{
|
|
228
|
-
"code": "
|
|
229
|
-
"category": "
|
|
230
|
-
"description": "A
|
|
168
|
+
"code": "ORB_X_UNRESOLVED_PATTERN_FIELD_REF",
|
|
169
|
+
"category": "cross",
|
|
170
|
+
"description": "A pattern prop tagged `kind: 'field-ref'` (scalar) or `itemKind: 'field-ref'` (array element) carries a value that does not resolve to any field on the linked entity. Error severity. See Phase 3.2/3.3 in docs/Almadar_Agent_Behaviors_Plan.md."
|
|
231
171
|
},
|
|
232
172
|
{
|
|
233
|
-
"code": "
|
|
234
|
-
"category": "
|
|
235
|
-
"description": "
|
|
173
|
+
"code": "ORB_CONFIG_FIELD_REF_UNKNOWN",
|
|
174
|
+
"category": "binding",
|
|
175
|
+
"description": "A `field @entity` config knob names something that is not a field of the trait's bound entity"
|
|
236
176
|
},
|
|
237
177
|
{
|
|
238
|
-
"code": "
|
|
239
|
-
"category": "
|
|
240
|
-
"description": "
|
|
178
|
+
"code": "ORB_CONFIG_FIELD_REF_TYPE_MISMATCH",
|
|
179
|
+
"category": "binding",
|
|
180
|
+
"description": "A `field @entity T` config knob names a field whose type is not `T`"
|
|
241
181
|
},
|
|
242
182
|
{
|
|
243
|
-
"code": "
|
|
244
|
-
"category": "
|
|
245
|
-
"description": "
|
|
183
|
+
"code": "ORB_BINDING_INVALID_PATH",
|
|
184
|
+
"category": "binding",
|
|
185
|
+
"description": "Invalid binding path"
|
|
246
186
|
},
|
|
247
187
|
{
|
|
248
|
-
"code": "
|
|
249
|
-
"category": "
|
|
250
|
-
"description": "
|
|
188
|
+
"code": "ORB_X_SET_VALUE_TYPE_MISMATCH",
|
|
189
|
+
"category": "effect",
|
|
190
|
+
"description": "`(set @entity.X ?payloadField)` writes a payload field whose declared type does not match the target entity field's declared type. The lolo crate catches this at author time for `.lolo`; this is the raw-`.orb` defense-in-depth backstop. Payload field types are sourced from the trait's `emits[].payload_schema` and `listens` payload metadata."
|
|
251
191
|
},
|
|
252
192
|
{
|
|
253
|
-
"code": "
|
|
254
|
-
"category": "
|
|
255
|
-
"description": "
|
|
193
|
+
"code": "ORB_X_SET_RETURN_TYPE_MISMATCH",
|
|
194
|
+
"category": "effect",
|
|
195
|
+
"description": "`(set @entity.X (op …))` assigns an operator/expression value whose inferred result type is incompatible with the target field's declared type (e.g. `(set @entity.count (str/concat …))` into a `number` field). The value's type is inferred *through* the S-expression via the canonical operator `return_semantics` lattice; an unknowable result (`Json`) never rejects (Gap G-LOLO-SET-OP-RETURN)."
|
|
256
196
|
},
|
|
257
197
|
{
|
|
258
|
-
"code": "
|
|
259
|
-
"category": "
|
|
260
|
-
"description": "
|
|
198
|
+
"code": "ORB_X_COMPARISON_OPERAND_TYPE_MISMATCH",
|
|
199
|
+
"category": "effect",
|
|
200
|
+
"description": "An ordering comparison (`<`, `<=`, `>`, `>=`) whose operands infer to a number on one side and a string on the other. The JS runtime coerces, the compiled TypeScript does not typecheck, and Rust compares kinds — the paths disagree. Convert one side so both are the same kind."
|
|
261
201
|
},
|
|
262
202
|
{
|
|
263
|
-
"code": "
|
|
264
|
-
"category": "
|
|
265
|
-
"description": "
|
|
203
|
+
"code": "ORB_X_OPERATOR_ARG_TYPE_MISMATCH",
|
|
204
|
+
"category": "effect",
|
|
205
|
+
"description": "An operator argument whose static type contradicts the type the operator table declares for its position — `(str/upper @entity.count)` with `count: number`, `(+ \"a\" 1)`. Both evaluators raise the same typed mismatch at run time (D-12), so the program can never do what it says."
|
|
266
206
|
},
|
|
267
207
|
{
|
|
268
|
-
"code": "
|
|
269
|
-
"category": "
|
|
270
|
-
"description": "A type
|
|
208
|
+
"code": "ORB_X_OPERATOR_ARG_UNDETERMINED",
|
|
209
|
+
"category": "effect",
|
|
210
|
+
"description": "A value handed to an operator has no determined type — an unresolved expression, an expression value, json, a loose union, a list whose items share no type — so it cannot be checked against the type the operator declares (or, at a type variable, what the variable stands for and the type of the result are unknown). Narrow it with `(as value T)` (checked, null on a misfit), or give it a real type (a declared payload or entity shape, a named union alias for a list of differently-shaped items)."
|
|
271
211
|
},
|
|
272
212
|
{
|
|
273
|
-
"code": "
|
|
274
|
-
"category": "
|
|
275
|
-
"description": "
|
|
213
|
+
"code": "ORB_X_ORDERING_OPTIONAL_OPERAND",
|
|
214
|
+
"category": "effect",
|
|
215
|
+
"description": "An ordering comparison (`<`, `<=`, `>`, `>=`) over an operand that can be missing or null — an optional entity field with no default, an optional payload field — that the program neither guards with a presence check (`(and (validate/required x) (< x 3))`, an `if`/`when` on presence) nor declares a default for. Both evaluators read a missing value as below any number; every push-down store fails the comparison, so the meaning is the program's to state."
|
|
276
216
|
},
|
|
277
217
|
{
|
|
278
|
-
"code": "
|
|
279
|
-
"category": "
|
|
280
|
-
"description": "
|
|
218
|
+
"code": "ORB_X_OPERATOR_NULL_OPERAND",
|
|
219
|
+
"category": "effect",
|
|
220
|
+
"description": "An operand that can be missing or null — an optional entity field with no default, an optional payload field — handed to a position the kernel raises on when it is null (`rejectsNull` in the operator table), with no presence check or default in front of it. The program says what a missing value means: a guard, a default, or a required field."
|
|
281
221
|
},
|
|
282
222
|
{
|
|
283
|
-
"code": "
|
|
284
|
-
"category": "
|
|
285
|
-
"description": "
|
|
223
|
+
"code": "ORB_X_OPERATOR_OPTION_NEWER",
|
|
224
|
+
"category": "effect",
|
|
225
|
+
"description": "A call states an operator option that the installed operator table introduces in an orb release newer than the one running (`optionSince`), so this orb would refuse or ignore it at the host. Upgrade orb, or drop the option."
|
|
286
226
|
},
|
|
287
227
|
{
|
|
288
|
-
"code": "
|
|
289
|
-
"category": "
|
|
290
|
-
"description": "
|
|
228
|
+
"code": "ORB_X_SET_REQUIRED_FIELD_FROM_OPTIONAL_KNOB",
|
|
229
|
+
"category": "effect",
|
|
230
|
+
"description": "`(set @entity.X @config.<knob>)` where the value is STILL the literal `@config.<knob>` token post-inline (no default resolved it, no call-site override supplied one) and `X` is a REQUIRED entity field. The emitter has nothing honest to assign — a required TS slot gets `undefined`. Give the knob a default or make the field optional."
|
|
291
231
|
},
|
|
292
232
|
{
|
|
293
|
-
"code": "
|
|
294
|
-
"category": "
|
|
295
|
-
"description": "
|
|
233
|
+
"code": "ORB_EMIT_PAYLOAD_MISSING_REQUIRED",
|
|
234
|
+
"category": "binding",
|
|
235
|
+
"description": "`(emit EVT {...})` literal payload is missing a field the event's declared payload marks as required. Error severity."
|
|
296
236
|
},
|
|
297
237
|
{
|
|
298
|
-
"code": "
|
|
299
|
-
"category": "
|
|
300
|
-
"description": "
|
|
238
|
+
"code": "ORB_EMIT_PAYLOAD_EXTRA_FIELD",
|
|
239
|
+
"category": "binding",
|
|
240
|
+
"description": "`(emit EVT {...})` literal carries a field that is not declared on the event's payload schema. Error severity."
|
|
301
241
|
},
|
|
302
242
|
{
|
|
303
|
-
"code": "
|
|
304
|
-
"category": "
|
|
305
|
-
"description": "
|
|
243
|
+
"code": "ORB_EMIT_PAYLOAD_FIELD_TYPE_MISMATCH",
|
|
244
|
+
"category": "binding",
|
|
245
|
+
"description": "`(emit EVT {...})` literal provides a value whose primitive type does not match the declared `PayloadField.field_type`. Error severity."
|
|
306
246
|
},
|
|
307
247
|
{
|
|
308
|
-
"code": "
|
|
309
|
-
"category": "
|
|
310
|
-
"description": "
|
|
248
|
+
"code": "ORB_EMIT_REPEATS_IDENTICALLY",
|
|
249
|
+
"category": "binding",
|
|
250
|
+
"description": "An `emit` repeats an earlier one of the same transition identically: the dispatch loop collapses the second."
|
|
311
251
|
},
|
|
312
252
|
{
|
|
313
|
-
"code": "
|
|
314
|
-
"category": "
|
|
315
|
-
"description": "A
|
|
253
|
+
"code": "ORB_X_ENTITY_PROP_CONTRACT",
|
|
254
|
+
"category": "render_ui",
|
|
255
|
+
"description": "A render-ui pattern prop typed `EntityWith<K>` declares required entity fields (`requiredFields` in the registry), but the bound entity does not provide them and no remap/field-map supplies them. The component would render blank rows. Remap-aware (runs post-inline). Error severity."
|
|
316
256
|
},
|
|
317
257
|
{
|
|
318
|
-
"code": "
|
|
319
|
-
"category": "
|
|
320
|
-
"description": "
|
|
258
|
+
"code": "ORB_EMIT_PAYLOAD_NOT_PRODUCED",
|
|
259
|
+
"category": "binding",
|
|
260
|
+
"description": "**The payload invariant.** An event's declared payload type IS its access path: declaring `Survey` means the payload is the row (read `?name`); declaring `{ row : Survey }` means read `?row.name`. This fires when an event declares a field that the effect firing it does not actually emit — so every read of that field is `undefined` at runtime, even though `orb validate` and `orb verify` otherwise pass. Checked as width subtyping (`declared ⊆ produced`): declaring FEWER fields than are emitted is legal, declaring one that is never emitted is not. Replaces the narrower `EmitSuccessPayloadWrapped` (persist-only) and `EmitSuccessPayloadReturnMismatch` (empty-payload-only) checks. Error severity."
|
|
321
261
|
},
|
|
322
262
|
{
|
|
323
|
-
"code": "
|
|
324
|
-
"category": "
|
|
325
|
-
"description": "
|
|
263
|
+
"code": "ORB_EFFECT_IN_LAMBDA",
|
|
264
|
+
"category": "binding",
|
|
265
|
+
"description": "An effect (`emit`, `persist`, `set`, `notify`, …) inside the `fn` body of a collection operator: a lambda is evaluated for its value, an effect there never runs. Error severity."
|
|
326
266
|
},
|
|
327
267
|
{
|
|
328
|
-
"code": "
|
|
329
|
-
"category": "
|
|
330
|
-
"description": "
|
|
268
|
+
"code": "CIRCUIT_DEAD_END_COMPONENT",
|
|
269
|
+
"category": "circuit",
|
|
270
|
+
"description": "Interactive component missing itemActions"
|
|
331
271
|
},
|
|
332
272
|
{
|
|
333
|
-
"code": "
|
|
334
|
-
"category": "
|
|
335
|
-
"description": "
|
|
273
|
+
"code": "ORB_GEN_INVALID_REFERENCE",
|
|
274
|
+
"category": "generic",
|
|
275
|
+
"description": "Generic invalid reference format"
|
|
336
276
|
},
|
|
337
277
|
{
|
|
338
|
-
"code": "
|
|
339
|
-
"category": "
|
|
340
|
-
"description": "
|
|
278
|
+
"code": "ORB_GEN_MISSING_FIELD",
|
|
279
|
+
"category": "generic",
|
|
280
|
+
"description": "Generic missing required field"
|
|
341
281
|
},
|
|
342
282
|
{
|
|
343
|
-
"code": "
|
|
344
|
-
"category": "
|
|
345
|
-
"description": "
|
|
283
|
+
"code": "ORB_GEN_DUPLICATE",
|
|
284
|
+
"category": "generic",
|
|
285
|
+
"description": "Generic duplicate entity/item"
|
|
346
286
|
},
|
|
347
287
|
{
|
|
348
|
-
"code": "
|
|
349
|
-
"category": "
|
|
350
|
-
"description": "
|
|
288
|
+
"code": "CIRCUIT_ACTION_COMPONENT_MISMATCH",
|
|
289
|
+
"category": "circuit",
|
|
290
|
+
"description": "An item action is used on a component type that does not support that action"
|
|
351
291
|
},
|
|
352
292
|
{
|
|
353
|
-
"code": "
|
|
354
|
-
"category": "
|
|
355
|
-
"description": "A
|
|
293
|
+
"code": "CIRCUIT_DEAD_END_STATE",
|
|
294
|
+
"category": "circuit",
|
|
295
|
+
"description": "A state has no outgoing transitions, so it is a dead end"
|
|
356
296
|
},
|
|
357
297
|
{
|
|
358
|
-
"code": "
|
|
359
|
-
"category": "
|
|
360
|
-
"description": "
|
|
298
|
+
"code": "CIRCUIT_DEAD_HANDLER",
|
|
299
|
+
"category": "circuit",
|
|
300
|
+
"description": "An item action fires an event into a state where no transition handles that event"
|
|
361
301
|
},
|
|
362
302
|
{
|
|
363
|
-
"code": "
|
|
364
|
-
"category": "
|
|
365
|
-
"description": "
|
|
303
|
+
"code": "CIRCUIT_DUPLICATE_EVENT",
|
|
304
|
+
"category": "circuit",
|
|
305
|
+
"description": "The same event is emitted by more than one action within a single render-ui effect"
|
|
366
306
|
},
|
|
367
307
|
{
|
|
368
|
-
"code": "
|
|
369
|
-
"category": "
|
|
370
|
-
"description": "
|
|
308
|
+
"code": "CIRCUIT_MODAL_EXIT_INCOMPLETE",
|
|
309
|
+
"category": "circuit",
|
|
310
|
+
"description": "A transition leaving a modal state does not close the modal overlay it opened"
|
|
371
311
|
},
|
|
372
312
|
{
|
|
373
|
-
"code": "
|
|
374
|
-
"category": "
|
|
375
|
-
"description": "
|
|
313
|
+
"code": "CIRCUIT_NO_OVERLAY_EXIT",
|
|
314
|
+
"category": "circuit",
|
|
315
|
+
"description": "A state renders into an overlay slot but has no exit transition, leaving users stuck"
|
|
376
316
|
},
|
|
377
317
|
{
|
|
378
|
-
"code": "
|
|
379
|
-
"category": "
|
|
380
|
-
"description": "
|
|
318
|
+
"code": "CIRCUIT_ORPHAN_EVENT",
|
|
319
|
+
"category": "circuit",
|
|
320
|
+
"description": "An action or emit raises an event that has no transition handler"
|
|
381
321
|
},
|
|
382
322
|
{
|
|
383
|
-
"code": "
|
|
384
|
-
"category": "
|
|
385
|
-
"description": "
|
|
323
|
+
"code": "CIRCUIT_UNREACHABLE_STATE",
|
|
324
|
+
"category": "circuit",
|
|
325
|
+
"description": "A state has no incoming transitions and cannot be reached"
|
|
386
326
|
},
|
|
387
327
|
{
|
|
388
|
-
"code": "
|
|
389
|
-
"category": "
|
|
390
|
-
"description": "
|
|
328
|
+
"code": "LINT_NODE_UNCHECKED",
|
|
329
|
+
"category": "lint",
|
|
330
|
+
"description": "A lint rule met a schema node of an unexpected shape and could not check it"
|
|
391
331
|
},
|
|
392
332
|
{
|
|
393
|
-
"code": "
|
|
394
|
-
"category": "
|
|
395
|
-
"description": "
|
|
333
|
+
"code": "ORB_A11Y_UNNAMED",
|
|
334
|
+
"category": "a11y",
|
|
335
|
+
"description": "A render-ui control has no accessible name, so screen readers announce it as unlabeled"
|
|
396
336
|
},
|
|
397
337
|
{
|
|
398
|
-
"code": "
|
|
399
|
-
"category": "
|
|
400
|
-
"description": "A
|
|
338
|
+
"code": "ORB_ASSET_INLINE_URL",
|
|
339
|
+
"category": "asset",
|
|
340
|
+
"description": "A literal http(s) url sits in the config defaults or seed rows of an orbital that composes std-asset-pack."
|
|
401
341
|
},
|
|
402
342
|
{
|
|
403
|
-
"code": "
|
|
404
|
-
"category": "
|
|
405
|
-
"description": "A
|
|
343
|
+
"code": "ORB_AUTH_GUARD_CLIENT_ONLY",
|
|
344
|
+
"category": "auth",
|
|
345
|
+
"description": "A transition guards on @user but its trait dispatches client-only, so the UI transition advances before the server evaluates the guard"
|
|
406
346
|
},
|
|
407
347
|
{
|
|
408
|
-
"code": "
|
|
409
|
-
"category": "
|
|
410
|
-
"description": "
|
|
348
|
+
"code": "ORB_BEACON_OPTION_UNKNOWN",
|
|
349
|
+
"category": "beacon",
|
|
350
|
+
"description": "A browser beacon request carries an option key that is not a known beacon request key"
|
|
411
351
|
},
|
|
412
352
|
{
|
|
413
|
-
"code": "
|
|
414
|
-
"category": "
|
|
415
|
-
"description": "
|
|
353
|
+
"code": "ORB_BEACON_TEXT_REQUIRED",
|
|
354
|
+
"category": "browser",
|
|
355
|
+
"description": "browser/beacon needs a request carrying a text field"
|
|
416
356
|
},
|
|
417
357
|
{
|
|
418
|
-
"code": "
|
|
419
|
-
"category": "
|
|
420
|
-
"description": "
|
|
358
|
+
"code": "ORB_BEACON_URL_NOT_ABSOLUTE",
|
|
359
|
+
"category": "browser",
|
|
360
|
+
"description": "A browser beacon effect targets a URL that is not an absolute http(s) URL"
|
|
421
361
|
},
|
|
422
362
|
{
|
|
423
|
-
"code": "
|
|
424
|
-
"category": "
|
|
425
|
-
"description": "
|
|
363
|
+
"code": "ORB_BINDING_DISPATCH_ROOT_IN_TICK",
|
|
364
|
+
"category": "binding",
|
|
365
|
+
"description": "A dispatch-only binding root is read inside a tick, where a firing has no delivery"
|
|
426
366
|
},
|
|
427
367
|
{
|
|
428
|
-
"code": "
|
|
429
|
-
"category": "
|
|
430
|
-
"description": "
|
|
368
|
+
"code": "ORB_BINDING_EMBED_READS_ARM_WRITE",
|
|
369
|
+
"category": "binding",
|
|
370
|
+
"description": "A transition writes a value and renders a child that reads it on mount, so the child shows the stale value"
|
|
431
371
|
},
|
|
432
372
|
{
|
|
433
|
-
"code": "
|
|
434
|
-
"category": "
|
|
435
|
-
"description": "
|
|
373
|
+
"code": "ORB_BINDING_ENTITY_FIELD_NEVER_SET",
|
|
374
|
+
"category": "binding",
|
|
375
|
+
"description": "A trait reads an entity binding field but no transition ever sets it, so it stays undefined"
|
|
436
376
|
},
|
|
437
377
|
{
|
|
438
|
-
"code": "
|
|
439
|
-
"category": "
|
|
440
|
-
"description": "An
|
|
378
|
+
"code": "ORB_BINDING_ENTITY_FIELD_NOT_FOUND",
|
|
379
|
+
"category": "binding",
|
|
380
|
+
"description": "An @entity binding names a field that the linked entity does not declare"
|
|
441
381
|
},
|
|
442
382
|
{
|
|
443
|
-
"code": "
|
|
444
|
-
"category": "
|
|
445
|
-
"description": "An
|
|
383
|
+
"code": "ORB_BINDING_EVENT_INVALID_PATH",
|
|
384
|
+
"category": "binding",
|
|
385
|
+
"description": "An @event binding path does not follow the shape of the delivery record"
|
|
446
386
|
},
|
|
447
387
|
{
|
|
448
|
-
"code": "
|
|
449
|
-
"category": "
|
|
450
|
-
"description": "
|
|
388
|
+
"code": "ORB_BINDING_FROM_ENTITY_OUTSIDE_ENSURES",
|
|
389
|
+
"category": "binding",
|
|
390
|
+
"description": "@fromEntity is the row before a transition and may only be used inside an @ensures"
|
|
451
391
|
},
|
|
452
392
|
{
|
|
453
|
-
"code": "
|
|
454
|
-
"category": "
|
|
455
|
-
"description": "
|
|
393
|
+
"code": "ORB_BINDING_INVALID_FORMAT",
|
|
394
|
+
"category": "binding",
|
|
395
|
+
"description": "A binding string is not in a valid binding format"
|
|
456
396
|
},
|
|
457
397
|
{
|
|
458
|
-
"code": "
|
|
459
|
-
"category": "
|
|
460
|
-
"description": "
|
|
398
|
+
"code": "ORB_BINDING_NOW_NO_PATH",
|
|
399
|
+
"category": "binding",
|
|
400
|
+
"description": "The @now binding is given a path, but it returns the current timestamp directly"
|
|
461
401
|
},
|
|
462
402
|
{
|
|
463
|
-
"code": "
|
|
464
|
-
"category": "
|
|
465
|
-
"description": "A
|
|
403
|
+
"code": "ORB_BINDING_PAYLOAD_FIELD_UNDECLARED",
|
|
404
|
+
"category": "binding",
|
|
405
|
+
"description": "A @payload binding reads a field that the triggering event does not declare in its payload"
|
|
466
406
|
},
|
|
467
407
|
{
|
|
468
|
-
"code": "
|
|
469
|
-
"category": "
|
|
470
|
-
"description": "
|
|
408
|
+
"code": "ORB_BINDING_PAYLOAD_IN_TICK",
|
|
409
|
+
"category": "binding",
|
|
410
|
+
"description": "A binding reads @payload inside a tick, where a firing has no delivery"
|
|
471
411
|
},
|
|
472
412
|
{
|
|
473
|
-
"code": "
|
|
474
|
-
"category": "
|
|
475
|
-
"description": "
|
|
413
|
+
"code": "ORB_BINDING_PERSIST_ROW_ID_NEVER_SET",
|
|
414
|
+
"category": "binding",
|
|
415
|
+
"description": "A persist update or delete runs on an event but no transition sets the row id, so the write never touches a row"
|
|
476
416
|
},
|
|
477
417
|
{
|
|
478
|
-
"code": "
|
|
479
|
-
"category": "
|
|
480
|
-
"description": "
|
|
418
|
+
"code": "ORB_BINDING_ROOT_NO_PATH",
|
|
419
|
+
"category": "binding",
|
|
420
|
+
"description": "A binding root that takes no path is written with a path"
|
|
481
421
|
},
|
|
482
422
|
{
|
|
483
|
-
"code": "
|
|
484
|
-
"category": "
|
|
485
|
-
"description": "
|
|
423
|
+
"code": "ORB_BINDING_SET_TARGET_MISSING_PATH",
|
|
424
|
+
"category": "binding",
|
|
425
|
+
"description": "A set effect targets a binding root without a field path"
|
|
486
426
|
},
|
|
487
427
|
{
|
|
488
|
-
"code": "
|
|
489
|
-
"category": "
|
|
490
|
-
"description": "
|
|
428
|
+
"code": "ORB_BINDING_STATE_NO_PATH",
|
|
429
|
+
"category": "binding",
|
|
430
|
+
"description": "A binding root that returns a bare value, such as @state, is given a path"
|
|
491
431
|
},
|
|
492
432
|
{
|
|
493
|
-
"code": "
|
|
494
|
-
"category": "
|
|
495
|
-
"description": "
|
|
433
|
+
"code": "ORB_BINDING_TRAIT_CYCLE",
|
|
434
|
+
"category": "binding",
|
|
435
|
+
"description": "A cycle exists in @trait references"
|
|
496
436
|
},
|
|
497
437
|
{
|
|
498
|
-
"code": "
|
|
499
|
-
"category": "
|
|
500
|
-
"description": "A
|
|
438
|
+
"code": "ORB_BINDING_TRAIT_INVALID_FORMAT",
|
|
439
|
+
"category": "binding",
|
|
440
|
+
"description": "A trait binding or trait-typed config default is not a valid trait reference"
|
|
501
441
|
},
|
|
502
442
|
{
|
|
503
|
-
"code": "
|
|
504
|
-
"category": "
|
|
505
|
-
"description": "A
|
|
443
|
+
"code": "ORB_BINDING_TRAIT_INVALID_POSITION",
|
|
444
|
+
"category": "binding",
|
|
445
|
+
"description": "A @trait binding appears in a position other than a children array or a node-typed prop"
|
|
506
446
|
},
|
|
507
447
|
{
|
|
508
|
-
"code": "
|
|
509
|
-
"category": "
|
|
510
|
-
"description": "A
|
|
448
|
+
"code": "ORB_BINDING_TRAIT_MISSING_NAME",
|
|
449
|
+
"category": "binding",
|
|
450
|
+
"description": "A @trait binding does not name the trait it refers to"
|
|
511
451
|
},
|
|
512
452
|
{
|
|
513
|
-
"code": "
|
|
514
|
-
"category": "
|
|
515
|
-
"description": "
|
|
453
|
+
"code": "ORB_BINDING_TRAIT_OUTSIDE_RENDER_UI",
|
|
454
|
+
"category": "binding",
|
|
455
|
+
"description": "An @trait binding appears outside a render-ui effect, where it is the only place trait references are allowed"
|
|
516
456
|
},
|
|
517
457
|
{
|
|
518
|
-
"code": "
|
|
519
|
-
"category": "
|
|
520
|
-
"description": "
|
|
458
|
+
"code": "ORB_BINDING_TRAIT_SELF_REFERENCE",
|
|
459
|
+
"category": "binding",
|
|
460
|
+
"description": "A trait references itself through a trait binding"
|
|
521
461
|
},
|
|
522
462
|
{
|
|
523
|
-
"code": "
|
|
524
|
-
"category": "
|
|
525
|
-
"description": "A
|
|
463
|
+
"code": "ORB_BINDING_TRAIT_UNKNOWN",
|
|
464
|
+
"category": "binding",
|
|
465
|
+
"description": "A @trait binding references a trait that is not declared in this orbital"
|
|
526
466
|
},
|
|
527
467
|
{
|
|
528
|
-
"code": "
|
|
529
|
-
"category": "
|
|
530
|
-
"description": "A
|
|
468
|
+
"code": "ORB_BINDING_UNKNOWN_ENTITY",
|
|
469
|
+
"category": "binding",
|
|
470
|
+
"description": "A binding refers to an entity that is not declared in the program"
|
|
531
471
|
},
|
|
532
472
|
{
|
|
533
|
-
"code": "
|
|
534
|
-
"category": "
|
|
535
|
-
"description": "
|
|
473
|
+
"code": "ORB_BINDING_UNKNOWN_ROOT",
|
|
474
|
+
"category": "binding",
|
|
475
|
+
"description": "A binding names a root the context does not provide"
|
|
536
476
|
},
|
|
537
477
|
{
|
|
538
|
-
"code": "
|
|
539
|
-
"category": "
|
|
540
|
-
"description": "
|
|
478
|
+
"code": "ORB_CALL_KEY_UNUSED",
|
|
479
|
+
"category": "effect",
|
|
480
|
+
"description": "A literal (as 'k' CallKey) names a key that no keyed call in the program runs under"
|
|
541
481
|
},
|
|
542
482
|
{
|
|
543
|
-
"code": "
|
|
544
|
-
"category": "
|
|
545
|
-
"description": "
|
|
483
|
+
"code": "ORB_CALL_SERVICE_CANCELLED_WITHOUT_KEY",
|
|
484
|
+
"category": "call_service",
|
|
485
|
+
"description": "A call-service declares emit.cancelled but has no key, so nothing can cancel an unkeyed call"
|
|
546
486
|
},
|
|
547
487
|
{
|
|
548
|
-
"code": "
|
|
549
|
-
"category": "
|
|
550
|
-
"description": "
|
|
488
|
+
"code": "ORB_CALL_SERVICE_KEY_DUPLICATE",
|
|
489
|
+
"category": "effect",
|
|
490
|
+
"description": "Two call-service effects in one transition use the same key"
|
|
551
491
|
},
|
|
552
492
|
{
|
|
553
|
-
"code": "
|
|
554
|
-
"category": "
|
|
555
|
-
"description": "A
|
|
493
|
+
"code": "ORB_CALL_SERVICE_KEY_TYPE",
|
|
494
|
+
"category": "call_service",
|
|
495
|
+
"description": "A keyed call-service effect has a key that is not a non-empty string"
|
|
556
496
|
},
|
|
557
497
|
{
|
|
558
|
-
"code": "
|
|
559
|
-
"category": "
|
|
560
|
-
"description": "A
|
|
498
|
+
"code": "ORB_CALL_SERVICE_RESULT_HAS_KEY",
|
|
499
|
+
"category": "effect",
|
|
500
|
+
"description": "A keyed call-service returns a record that already has a key field, so the call key would collide with it"
|
|
561
501
|
},
|
|
562
502
|
{
|
|
563
|
-
"code": "
|
|
503
|
+
"code": "ORB_CIRCUIT_ASYNC_RESULT_DEAF_TARGET",
|
|
564
504
|
"category": "circuit",
|
|
565
|
-
"description": "A
|
|
505
|
+
"description": "A transition declares async result events but its target state has no arm handling them, so the requester cannot hear its own result"
|
|
566
506
|
},
|
|
567
507
|
{
|
|
568
|
-
"code": "
|
|
508
|
+
"code": "ORB_CIRCUIT_DEAD_BODILESS_ACTION",
|
|
569
509
|
"category": "circuit",
|
|
570
|
-
"description": "A
|
|
510
|
+
"description": "A transition changes state but carries no effects, so the screen keeps its paint and affordances routed to it are dead"
|
|
571
511
|
},
|
|
572
512
|
{
|
|
573
|
-
"code": "
|
|
513
|
+
"code": "ORB_CIRCUIT_FAILURE_ARM_MISSING",
|
|
574
514
|
"category": "circuit",
|
|
575
|
-
"description": "A
|
|
515
|
+
"description": "A transition starting an asynchronous client call has no failure arm to handle its error"
|
|
576
516
|
},
|
|
577
517
|
{
|
|
578
|
-
"code": "
|
|
579
|
-
"category": "
|
|
580
|
-
"description": "A
|
|
518
|
+
"code": "ORB_CIRCUIT_FAILURE_ARM_RENDERS_NOTHING",
|
|
519
|
+
"category": "circuit",
|
|
520
|
+
"description": "A state handles a failure event but its arm neither renders nor emits a declared event, so the failure reaches no one"
|
|
581
521
|
},
|
|
582
522
|
{
|
|
583
|
-
"code": "
|
|
584
|
-
"category": "
|
|
585
|
-
"description": "
|
|
523
|
+
"code": "ORB_CIRCUIT_INIT_UNCOVERED_STATE",
|
|
524
|
+
"category": "circuit",
|
|
525
|
+
"description": "A page trait handles INIT in its initial state but not in another reachable state, so revisiting the page from there does nothing"
|
|
586
526
|
},
|
|
587
527
|
{
|
|
588
|
-
"code": "
|
|
589
|
-
"category": "
|
|
590
|
-
"description": "
|
|
528
|
+
"code": "ORB_CIRCUIT_LIFECYCLE_EMIT_UNDELIVERED",
|
|
529
|
+
"category": "circuit",
|
|
530
|
+
"description": "A transition emits a lifecycle event that the event bus never delivers"
|
|
591
531
|
},
|
|
592
532
|
{
|
|
593
|
-
"code": "
|
|
594
|
-
"category": "
|
|
595
|
-
"description": "
|
|
533
|
+
"code": "ORB_CIRCUIT_MODAL_SHELL_CLOSE_DEAF",
|
|
534
|
+
"category": "circuit",
|
|
535
|
+
"description": "A state mounting an overlay-slot pattern has no CLOSE or CANCEL transition to dismiss it"
|
|
596
536
|
},
|
|
597
537
|
{
|
|
598
|
-
"code": "
|
|
599
|
-
"category": "
|
|
600
|
-
"description": "
|
|
538
|
+
"code": "ORB_CIRCUIT_OWN_EMIT_UNREACHABLE",
|
|
539
|
+
"category": "circuit",
|
|
540
|
+
"description": "A transition emits an event its own trait handles only from other states, so the same-trait cascade never delivers it from the target state"
|
|
601
541
|
},
|
|
602
542
|
{
|
|
603
|
-
"code": "
|
|
604
|
-
"category": "
|
|
605
|
-
"description": "
|
|
543
|
+
"code": "ORB_CIRCUIT_SELF_EMIT_LOOP",
|
|
544
|
+
"category": "circuit",
|
|
545
|
+
"description": "A transition re-emits its own trigger event with a constant payload and a same-event arm is reachable, so it loops forever"
|
|
606
546
|
},
|
|
607
547
|
{
|
|
608
|
-
"code": "
|
|
609
|
-
"category": "
|
|
610
|
-
"description": "
|
|
548
|
+
"code": "ORB_CIRCUIT_SELF_OVERLAY_IN_SHELL",
|
|
549
|
+
"category": "circuit",
|
|
550
|
+
"description": "A self-overlaying pattern is rendered inside an overlay slot payload, stacking two overlay chromes"
|
|
611
551
|
},
|
|
612
552
|
{
|
|
613
|
-
"code": "
|
|
614
|
-
"category": "
|
|
615
|
-
"description": "
|
|
553
|
+
"code": "ORB_CIRCUIT_VIEWER_STRANDED",
|
|
554
|
+
"category": "circuit",
|
|
555
|
+
"description": "A page's content owner repaints its region on a user-triggered event with a body that offers no way on"
|
|
616
556
|
},
|
|
617
557
|
{
|
|
618
|
-
"code": "
|
|
619
|
-
"category": "
|
|
620
|
-
"description": "
|
|
558
|
+
"code": "ORB_COMPOSED_STATE_UNREACHABLE",
|
|
559
|
+
"category": "circuit",
|
|
560
|
+
"description": "A composed trait can never enter some states because nothing in the program sends the events that enter them"
|
|
621
561
|
},
|
|
622
562
|
{
|
|
623
|
-
"code": "
|
|
624
|
-
"category": "
|
|
625
|
-
"description": "
|
|
563
|
+
"code": "ORB_COMPOSED_TRANSITION_UNREACHABLE",
|
|
564
|
+
"category": "composed",
|
|
565
|
+
"description": "A composed trait handles events that nothing in the program ever sends"
|
|
626
566
|
},
|
|
627
567
|
{
|
|
628
|
-
"code": "
|
|
629
|
-
"category": "
|
|
630
|
-
"description": "
|
|
568
|
+
"code": "ORB_CONFIG_DANGLING_REF",
|
|
569
|
+
"category": "binding",
|
|
570
|
+
"description": "An @config key is not declared by any config schema reachable from the trait chain"
|
|
631
571
|
},
|
|
632
572
|
{
|
|
633
|
-
"code": "
|
|
634
|
-
"category": "
|
|
635
|
-
"description": "
|
|
573
|
+
"code": "ORB_CONTROL_NO_CONSEQUENCE",
|
|
574
|
+
"category": "emit",
|
|
575
|
+
"description": "A rendered control fires an event whose handlers change nothing the app or the viewer can observe."
|
|
636
576
|
},
|
|
637
577
|
{
|
|
638
|
-
"code": "
|
|
639
|
-
"category": "
|
|
640
|
-
"description": "
|
|
578
|
+
"code": "ORB_CONTROL_VALUE_DISCARDED",
|
|
579
|
+
"category": "circuit",
|
|
580
|
+
"description": "A composed trait's rendered control fires an event carrying a value that no other trait hears and whose own handling reads none of it: the value the user entered is discarded (a form submission nothing keeps)."
|
|
641
581
|
},
|
|
642
582
|
{
|
|
643
|
-
"code": "
|
|
644
|
-
"category": "
|
|
645
|
-
"description": "
|
|
583
|
+
"code": "ORB_CREDENTIAL_REQUEST_INVALID",
|
|
584
|
+
"category": "credential",
|
|
585
|
+
"description": "A credential request host effect carries options other than the ones it declares"
|
|
646
586
|
},
|
|
647
587
|
{
|
|
648
|
-
"code": "
|
|
649
|
-
"category": "
|
|
650
|
-
"description": "
|
|
588
|
+
"code": "ORB_DERIVED_FIELD_WRITTEN",
|
|
589
|
+
"category": "entity_mutation",
|
|
590
|
+
"description": "A set or persist writes an @derived field that the kernel computes on every write"
|
|
651
591
|
},
|
|
652
592
|
{
|
|
653
|
-
"code": "
|
|
654
|
-
"category": "
|
|
655
|
-
"description": "
|
|
593
|
+
"code": "ORB_EFFECT_OPTION_DROPPED",
|
|
594
|
+
"category": "effect",
|
|
595
|
+
"description": "An effect carries options that depend on a key echo, but the effect has no key so the options are dropped"
|
|
656
596
|
},
|
|
657
597
|
{
|
|
658
|
-
"code": "
|
|
659
|
-
"category": "
|
|
660
|
-
"description": "
|
|
598
|
+
"code": "ORB_EFF_CALL_SERVICE_MISSING_ACTION",
|
|
599
|
+
"category": "effect",
|
|
600
|
+
"description": "A call-service effect has no string action"
|
|
661
601
|
},
|
|
662
602
|
{
|
|
663
|
-
"code": "
|
|
664
|
-
"category": "
|
|
665
|
-
"description": "A
|
|
603
|
+
"code": "ORB_EFF_CALL_SERVICE_MISSING_PARAM",
|
|
604
|
+
"category": "effect",
|
|
605
|
+
"description": "A call-service effect omits a parameter the service action requires"
|
|
666
606
|
},
|
|
667
607
|
{
|
|
668
|
-
"code": "
|
|
669
|
-
"category": "
|
|
670
|
-
"description": "
|
|
608
|
+
"code": "ORB_EFF_CALL_SERVICE_MISSING_SERVICE",
|
|
609
|
+
"category": "effect",
|
|
610
|
+
"description": "A call_service effect is missing its service name or action"
|
|
671
611
|
},
|
|
672
612
|
{
|
|
673
|
-
"code": "
|
|
674
|
-
"category": "
|
|
675
|
-
"description": "
|
|
613
|
+
"code": "ORB_EFF_CALL_SERVICE_PARAM_TYPE",
|
|
614
|
+
"category": "effect",
|
|
615
|
+
"description": "A call-service parameter has a value whose type does not match the type the service action declares"
|
|
676
616
|
},
|
|
677
617
|
{
|
|
678
|
-
"code": "
|
|
679
|
-
"category": "
|
|
680
|
-
"description": "
|
|
618
|
+
"code": "ORB_EFF_CALL_SERVICE_UNKNOWN_PARAM",
|
|
619
|
+
"category": "effect",
|
|
620
|
+
"description": "A call-service passes a param that the service action does not declare"
|
|
681
621
|
},
|
|
682
622
|
{
|
|
683
|
-
"code": "
|
|
684
|
-
"category": "
|
|
685
|
-
"description": "
|
|
623
|
+
"code": "ORB_EFF_CALL_SERVICE_UNKNOWN_SERVICE",
|
|
624
|
+
"category": "effect",
|
|
625
|
+
"description": "A call-service effect names a service that is not a registered integrator or declared service"
|
|
686
626
|
},
|
|
687
627
|
{
|
|
688
|
-
"code": "
|
|
689
|
-
"category": "
|
|
690
|
-
"description": "
|
|
628
|
+
"code": "ORB_EFF_EMIT_INVALID_NAME",
|
|
629
|
+
"category": "effect",
|
|
630
|
+
"description": "The event name inside an emit effect is not a valid string event name"
|
|
691
631
|
},
|
|
692
632
|
{
|
|
693
|
-
"code": "
|
|
694
|
-
"category": "
|
|
695
|
-
"description": "
|
|
633
|
+
"code": "ORB_EFF_EMIT_KEY_INVALID",
|
|
634
|
+
"category": "effect",
|
|
635
|
+
"description": "An emit config carries a key that the operator does not support"
|
|
696
636
|
},
|
|
697
637
|
{
|
|
698
|
-
"code": "
|
|
638
|
+
"code": "ORB_EFF_EMIT_UNDECLARED_EVENT",
|
|
699
639
|
"category": "effect",
|
|
700
|
-
"description": "
|
|
640
|
+
"description": "An event named in emit is not declared in the trait's emits array"
|
|
701
641
|
},
|
|
702
642
|
{
|
|
703
|
-
"code": "
|
|
643
|
+
"code": "ORB_EFF_FETCH_BY_ID_PAYLOAD_LIST",
|
|
704
644
|
"category": "effect",
|
|
705
|
-
"description": "
|
|
645
|
+
"description": "A fetch by id effect takes its id from a payload that is a list rather than a single value"
|
|
706
646
|
},
|
|
707
647
|
{
|
|
708
|
-
"code": "
|
|
648
|
+
"code": "ORB_EFF_FETCH_INVALID_ENTITY",
|
|
709
649
|
"category": "effect",
|
|
710
|
-
"description": "
|
|
650
|
+
"description": "A fetch effect is missing an entity name or references an invalid entity"
|
|
711
651
|
},
|
|
712
652
|
{
|
|
713
|
-
"code": "
|
|
653
|
+
"code": "ORB_EFF_FETCH_INVALID_INCLUDE",
|
|
714
654
|
"category": "effect",
|
|
715
|
-
"description": "
|
|
655
|
+
"description": "A fetch includes a relation that the fetched entity has no relation field for"
|
|
716
656
|
},
|
|
717
657
|
{
|
|
718
|
-
"code": "
|
|
658
|
+
"code": "ORB_EFF_FETCH_INVALID_OPTION",
|
|
719
659
|
"category": "effect",
|
|
720
|
-
"description": "
|
|
660
|
+
"description": "A fetch deliver option is not one of the allowed values rows or ids"
|
|
721
661
|
},
|
|
722
662
|
{
|
|
723
|
-
"code": "
|
|
663
|
+
"code": "ORB_EFF_MISSING_FETCH_FOR_ENTITY",
|
|
724
664
|
"category": "effect",
|
|
725
|
-
"description": "
|
|
665
|
+
"description": "A render-ui references an entity but no fetch effect for it exists in this or any predecessor transition"
|
|
726
666
|
},
|
|
727
667
|
{
|
|
728
|
-
"code": "
|
|
668
|
+
"code": "ORB_EFF_NAVIGATE_MISSING_PAYLOAD",
|
|
729
669
|
"category": "effect",
|
|
730
|
-
"description": "
|
|
670
|
+
"description": "A navigate effect omits a payload field the target page requires for its INIT event"
|
|
731
671
|
},
|
|
732
672
|
{
|
|
733
|
-
"code": "
|
|
673
|
+
"code": "ORB_EFF_NAVIGATE_TARGET_UNREACHABLE",
|
|
734
674
|
"category": "effect",
|
|
735
|
-
"description": "
|
|
675
|
+
"description": "A navigate target path does not resolve to any declared page"
|
|
736
676
|
},
|
|
737
677
|
{
|
|
738
|
-
"code": "
|
|
678
|
+
"code": "ORB_EFF_PROGRAM_EVAL_FAILURE_MISSING",
|
|
739
679
|
"category": "effect",
|
|
740
|
-
"description": "
|
|
680
|
+
"description": "program/eval carries no emit.failure event, so validator errors would be dropped"
|
|
741
681
|
},
|
|
742
682
|
{
|
|
743
|
-
"code": "
|
|
683
|
+
"code": "ORB_EFF_RETIRED_FORM",
|
|
744
684
|
"category": "effect",
|
|
745
|
-
"description": "
|
|
685
|
+
"description": "An effect is written in a retired object form instead of the array form"
|
|
746
686
|
},
|
|
747
687
|
{
|
|
748
|
-
"code": "
|
|
688
|
+
"code": "ORB_EFF_SET_INVALID_BINDING",
|
|
749
689
|
"category": "effect",
|
|
750
|
-
"description": "
|
|
690
|
+
"description": "A set effect is missing its binding or its value"
|
|
751
691
|
},
|
|
752
692
|
{
|
|
753
|
-
"code": "
|
|
693
|
+
"code": "ORB_EFF_SET_PAYLOAD_NOT_ALLOWED",
|
|
754
694
|
"category": "effect",
|
|
755
|
-
"description": "
|
|
695
|
+
"description": "A set effect targets @payload, which is read-only; it should target @entity"
|
|
756
696
|
},
|
|
757
697
|
{
|
|
758
|
-
"code": "
|
|
698
|
+
"code": "ORB_EFF_UNKNOWN_TYPE",
|
|
759
699
|
"category": "effect",
|
|
760
|
-
"description": "
|
|
700
|
+
"description": "An effect has an unknown type or is malformed"
|
|
761
701
|
},
|
|
762
702
|
{
|
|
763
|
-
"code": "
|
|
703
|
+
"code": "ORB_EFF_UNSIGNED_NOT_ENV_GUARDED",
|
|
764
704
|
"category": "effect",
|
|
765
|
-
"description": "
|
|
705
|
+
"description": "A jws/verify call with a literal allowUnsigned true sits in a transition that is not env-guarded"
|
|
766
706
|
},
|
|
767
707
|
{
|
|
768
|
-
"code": "
|
|
769
|
-
"category": "
|
|
770
|
-
"description": "
|
|
708
|
+
"code": "ORB_EMBED_CONFIG_FORWARD_MULTI_REFERRER",
|
|
709
|
+
"category": "embed",
|
|
710
|
+
"description": "A trait that forwards @config is embedded by more than one referrer, so the forwarded value is ambiguous"
|
|
771
711
|
},
|
|
772
712
|
{
|
|
773
|
-
"code": "
|
|
713
|
+
"code": "ORB_EMIT_CONFIG_REF_INVALID",
|
|
774
714
|
"category": "effect",
|
|
775
|
-
"description": "
|
|
715
|
+
"description": "An emit config reference is invalid"
|
|
776
716
|
},
|
|
777
717
|
{
|
|
778
|
-
"code": "
|
|
779
|
-
"category": "
|
|
780
|
-
"description": "an
|
|
718
|
+
"code": "ORB_EMIT_CONTROL_UNHANDLED",
|
|
719
|
+
"category": "emit",
|
|
720
|
+
"description": "A rendered control fires an event nothing handles or routes."
|
|
781
721
|
},
|
|
782
722
|
{
|
|
783
|
-
"code": "
|
|
784
|
-
"category": "
|
|
785
|
-
"description": "
|
|
723
|
+
"code": "ORB_EMIT_UNROUTED_TO_HANDLER",
|
|
724
|
+
"category": "trait_event",
|
|
725
|
+
"description": "A trait emits an event another trait has an arm for, but no declared listens route delivers it"
|
|
786
726
|
},
|
|
787
727
|
{
|
|
788
|
-
"code": "
|
|
789
|
-
"category": "
|
|
790
|
-
"description": "
|
|
728
|
+
"code": "ORB_ENTITY_INTRINSIC_FIELD_PERSISTED",
|
|
729
|
+
"category": "entity_mutation",
|
|
730
|
+
"description": "A persist data literal names an @intrinsic field, which is trait-owned view-state and never a persisted column"
|
|
791
731
|
},
|
|
792
732
|
{
|
|
793
|
-
"code": "
|
|
794
|
-
"category": "
|
|
795
|
-
"description": "
|
|
733
|
+
"code": "ORB_ENTITY_OWNER_COLUMN_UNSCOPED",
|
|
734
|
+
"category": "entity",
|
|
735
|
+
"description": "An entity declares owner columns but has no access policy scoping rows to the owner"
|
|
796
736
|
},
|
|
797
737
|
{
|
|
798
|
-
"code": "
|
|
799
|
-
"category": "
|
|
800
|
-
"description": "
|
|
738
|
+
"code": "ORB_ENTITY_SPLIT_MUTATION",
|
|
739
|
+
"category": "entity_mutation",
|
|
740
|
+
"description": "A runtime entity is mutated by several traits on isolated per-trait copies while another trait reads a field it never writes"
|
|
801
741
|
},
|
|
802
742
|
{
|
|
803
|
-
"code": "
|
|
804
|
-
"category": "
|
|
805
|
-
"description": "
|
|
743
|
+
"code": "ORB_E_DUPLICATE_FIELD",
|
|
744
|
+
"category": "entity",
|
|
745
|
+
"description": "An entity declares the same field name more than once"
|
|
806
746
|
},
|
|
807
747
|
{
|
|
808
|
-
"code": "
|
|
809
|
-
"category": "
|
|
810
|
-
"description": "
|
|
748
|
+
"code": "ORB_E_EMPTY_ENUM_VALUES",
|
|
749
|
+
"category": "entity",
|
|
750
|
+
"description": "An enum field declares no values"
|
|
811
751
|
},
|
|
812
752
|
{
|
|
813
|
-
"code": "
|
|
814
|
-
"category": "
|
|
815
|
-
"description": "
|
|
753
|
+
"code": "ORB_E_IDENTITY_LOCAL",
|
|
754
|
+
"category": "entity",
|
|
755
|
+
"description": "An identity entity is declared as browser-stored, but the viewer directory is never browser-resident"
|
|
816
756
|
},
|
|
817
757
|
{
|
|
818
|
-
"code": "
|
|
819
|
-
"category": "
|
|
820
|
-
"description": "
|
|
758
|
+
"code": "ORB_E_INSTANCE_INVALID",
|
|
759
|
+
"category": "entity",
|
|
760
|
+
"description": "An entity instance row sets a key that is not a field of the entity"
|
|
821
761
|
},
|
|
822
762
|
{
|
|
823
|
-
"code": "
|
|
824
|
-
"category": "
|
|
825
|
-
"description": "
|
|
763
|
+
"code": "ORB_E_INVALID_FIELD_NAME",
|
|
764
|
+
"category": "entity",
|
|
765
|
+
"description": "An entity field or entity name is empty or not in the required naming form"
|
|
826
766
|
},
|
|
827
767
|
{
|
|
828
|
-
"code": "
|
|
829
|
-
"category": "
|
|
830
|
-
"description": "a
|
|
768
|
+
"code": "ORB_E_INVALID_FIELD_TYPE",
|
|
769
|
+
"category": "entity",
|
|
770
|
+
"description": "An entity field declares a type that is not a valid field type"
|
|
831
771
|
},
|
|
832
772
|
{
|
|
833
|
-
"code": "
|
|
834
|
-
"category": "
|
|
835
|
-
"description": "
|
|
773
|
+
"code": "ORB_E_INVALID_RELATION",
|
|
774
|
+
"category": "entity",
|
|
775
|
+
"description": "A relation field is missing its relation configuration or points at an entity that does not exist"
|
|
836
776
|
},
|
|
837
777
|
{
|
|
838
|
-
"code": "
|
|
839
|
-
"category": "
|
|
840
|
-
"description": "
|
|
778
|
+
"code": "ORB_E_LITERAL_UNION_DEFAULT_MISMATCH",
|
|
779
|
+
"category": "entity",
|
|
780
|
+
"description": "A field default is not one of the values of its declared literal union"
|
|
841
781
|
},
|
|
842
782
|
{
|
|
843
|
-
"code": "
|
|
844
|
-
"category": "
|
|
845
|
-
"description": "
|
|
783
|
+
"code": "ORB_E_LOCALE_INSTANCES_INCOMPLETE",
|
|
784
|
+
"category": "entity",
|
|
785
|
+
"description": "An entity writes rows per locale but has no default instances block for its default locale"
|
|
846
786
|
},
|
|
847
787
|
{
|
|
848
|
-
"code": "
|
|
849
|
-
"category": "
|
|
850
|
-
"description": "
|
|
788
|
+
"code": "ORB_E_LOCALE_INSTANCES_NOT_LOCAL",
|
|
789
|
+
"category": "entity",
|
|
790
|
+
"description": "An entity writes rows per locale but its rows are not browser-stored, so every viewer shares them"
|
|
851
791
|
},
|
|
852
792
|
{
|
|
853
|
-
"code": "
|
|
854
|
-
"category": "
|
|
855
|
-
"description": "
|
|
793
|
+
"code": "ORB_E_LOCALE_INSTANCES_UNKNOWN_LOCALE",
|
|
794
|
+
"category": "entity",
|
|
795
|
+
"description": "An entity writes locale instances for a locale that is not among the declared locales"
|
|
856
796
|
},
|
|
857
797
|
{
|
|
858
|
-
"code": "
|
|
859
|
-
"category": "
|
|
860
|
-
"description": "
|
|
798
|
+
"code": "ORB_E_LOCAL_REQUIRES_PERSISTENT",
|
|
799
|
+
"category": "entity",
|
|
800
|
+
"description": "A runtime entity declares a browser storage location, which only applies to persistent entities"
|
|
861
801
|
},
|
|
862
802
|
{
|
|
863
|
-
"code": "
|
|
864
|
-
"category": "
|
|
865
|
-
"description": "an
|
|
803
|
+
"code": "ORB_E_MERGED_FIELD_UNREFERENCED",
|
|
804
|
+
"category": "entity",
|
|
805
|
+
"description": "A field merged into an entity is never read, written, fetch-included or persisted by any trait of the orbital"
|
|
866
806
|
},
|
|
867
807
|
{
|
|
868
|
-
"code": "
|
|
869
|
-
"category": "
|
|
870
|
-
"description": "
|
|
808
|
+
"code": "ORB_E_MISSING_COLLECTION",
|
|
809
|
+
"category": "entity",
|
|
810
|
+
"description": "A persistent entity does not declare a collection name"
|
|
871
811
|
},
|
|
872
812
|
{
|
|
873
|
-
"code": "
|
|
874
|
-
"category": "
|
|
875
|
-
"description": "
|
|
813
|
+
"code": "ORB_E_MISSING_NAME",
|
|
814
|
+
"category": "entity",
|
|
815
|
+
"description": "An entity is missing its required name"
|
|
876
816
|
},
|
|
877
817
|
{
|
|
878
|
-
"code": "
|
|
879
|
-
"category": "
|
|
880
|
-
"description": "
|
|
818
|
+
"code": "ORB_E_MOCK_NOT_IN_ENUM",
|
|
819
|
+
"category": "entity",
|
|
820
|
+
"description": "Mock candidate values are not values of the enum field they belong to"
|
|
881
821
|
},
|
|
882
822
|
{
|
|
883
|
-
"code": "
|
|
884
|
-
"category": "
|
|
885
|
-
"description": "
|
|
823
|
+
"code": "ORB_E_NO_FIELDS",
|
|
824
|
+
"category": "entity",
|
|
825
|
+
"description": "An entity declares no fields and must have at least one"
|
|
826
|
+
},
|
|
827
|
+
{
|
|
828
|
+
"code": "ORB_E_SEMANTIC_VALUE_INVALID",
|
|
829
|
+
"category": "entity",
|
|
830
|
+
"description": "A semantically typed field has a default value that is invalid for its kind, such as an empty string"
|
|
831
|
+
},
|
|
832
|
+
{
|
|
833
|
+
"code": "ORB_FETCH_DELIVER_IDS_ENTITY_REFS",
|
|
834
|
+
"category": "fetch",
|
|
835
|
+
"description": "A fetch using deliver ids also asks for included relations, but ids delivers no rows to carry them"
|
|
886
836
|
},
|
|
887
837
|
{
|
|
888
|
-
"code": "
|
|
838
|
+
"code": "ORB_FETCH_DELIVER_IDS_NO_SUCCESS",
|
|
889
839
|
"category": "effect",
|
|
890
|
-
"description": "
|
|
840
|
+
"description": "A fetch with deliver ids has no emit.success, so nothing carries the reference"
|
|
891
841
|
},
|
|
892
842
|
{
|
|
893
|
-
"code": "
|
|
843
|
+
"code": "ORB_FETCH_DELIVER_IDS_ROWS_READ",
|
|
894
844
|
"category": "effect",
|
|
895
|
-
"description": "
|
|
845
|
+
"description": "A fetch with deliver ids delivers a row-set reference as the success event's data; any use other than passing it whole as a render-ui prop value reads rows that were never delivered"
|
|
896
846
|
},
|
|
897
847
|
{
|
|
898
|
-
"code": "
|
|
848
|
+
"code": "ORB_FETCH_NEEDS_COMPOSITE_INDEX",
|
|
899
849
|
"category": "effect",
|
|
900
|
-
"description": "
|
|
850
|
+
"description": "A fetch query needs a composite index that the store driver does not create and no index declaration covers"
|
|
901
851
|
},
|
|
902
852
|
{
|
|
903
|
-
"code": "
|
|
853
|
+
"code": "ORB_FETCH_TOTAL_NONE_READ",
|
|
904
854
|
"category": "effect",
|
|
905
|
-
"description": "
|
|
855
|
+
"description": "A fetch with total none skips the count, so the success event's totalCount is never set and may not be read"
|
|
856
|
+
},
|
|
857
|
+
{
|
|
858
|
+
"code": "ORB_FETCH_UNINDEXED",
|
|
859
|
+
"category": "query",
|
|
860
|
+
"description": "A fetch filter cannot be pushed down by the store driver and no @index covers it, so the kernel scans every row"
|
|
861
|
+
},
|
|
862
|
+
{
|
|
863
|
+
"code": "ORB_GEN_INVALID_VALUE",
|
|
864
|
+
"category": "generic",
|
|
865
|
+
"description": "A value is invalid for the position it is written in"
|
|
866
|
+
},
|
|
867
|
+
{
|
|
868
|
+
"code": "ORB_GUARD_ON_FRAME_FIELD_AUTHORIZES",
|
|
869
|
+
"category": "guard",
|
|
870
|
+
"description": "A guard reads an intrinsic frame field of an entity to authorize, but intrinsic fields are not trustworthy for access"
|
|
871
|
+
},
|
|
872
|
+
{
|
|
873
|
+
"code": "ORB_GUEST_VIEW_NOT_CLIENT",
|
|
874
|
+
"category": "trait",
|
|
875
|
+
"description": "A trait that does not run on the client paints a guest-view, so the kernel cannot route a click inside the guest"
|
|
906
876
|
},
|
|
907
877
|
{
|
|
908
878
|
"code": "ORB_HOST_EFFECT_ARITY",
|
|
909
879
|
"category": "effect",
|
|
910
|
-
"description": "
|
|
880
|
+
"description": "A host effect is called with the wrong number of arguments"
|
|
881
|
+
},
|
|
882
|
+
{
|
|
883
|
+
"code": "ORB_HOST_EFFECT_OPTION_UNKNOWN",
|
|
884
|
+
"category": "host_effect",
|
|
885
|
+
"description": "A host effect is given an option outside the set of options it accepts"
|
|
886
|
+
},
|
|
887
|
+
{
|
|
888
|
+
"code": "ORB_HTTP_EGRESS_ENTRY_INVALID",
|
|
889
|
+
"category": "http",
|
|
890
|
+
"description": "An egress allowlist entry is not of the form scheme://host[:port]"
|
|
891
|
+
},
|
|
892
|
+
{
|
|
893
|
+
"code": "ORB_HTTP_EGRESS_UNDECLARED",
|
|
894
|
+
"category": "http",
|
|
895
|
+
"description": "An outbound request targets an origin that is not declared in the program egress list"
|
|
896
|
+
},
|
|
897
|
+
{
|
|
898
|
+
"code": "ORB_HTTP_ORIGIN_NOT_STATIC",
|
|
899
|
+
"category": "http",
|
|
900
|
+
"description": "An http origin is not a string literal or a url-typed config knob, so egress cannot be checked"
|
|
901
|
+
},
|
|
902
|
+
{
|
|
903
|
+
"code": "ORB_ID_AUTHORED_WITHOUT_LEDGER",
|
|
904
|
+
"category": "id",
|
|
905
|
+
"description": "An id is authored in source without a matching ledger entry, so it is replaced on load"
|
|
911
906
|
},
|
|
912
907
|
{
|
|
913
|
-
"code": "
|
|
914
|
-
"category": "
|
|
915
|
-
"description": "
|
|
908
|
+
"code": "ORB_ID_DUPLICATE_EVENT_ID",
|
|
909
|
+
"category": "id",
|
|
910
|
+
"description": "An event id is declared by more than one trait, but ids must be document-unique"
|
|
916
911
|
},
|
|
917
912
|
{
|
|
918
|
-
"code": "
|
|
919
|
-
"category": "
|
|
920
|
-
"description": "
|
|
913
|
+
"code": "ORB_ID_KIND_MISMATCH",
|
|
914
|
+
"category": "id",
|
|
915
|
+
"description": "An id of one kind is used in a position that requires an id of a different kind"
|
|
921
916
|
},
|
|
922
917
|
{
|
|
923
|
-
"code": "
|
|
924
|
-
"category": "
|
|
925
|
-
"description": "
|
|
918
|
+
"code": "ORB_ID_LEDGER_ORPHAN",
|
|
919
|
+
"category": "id",
|
|
920
|
+
"description": "An id ledger row is carried by no node in the schema and is stale"
|
|
926
921
|
},
|
|
927
922
|
{
|
|
928
|
-
"code": "
|
|
929
|
-
"category": "
|
|
930
|
-
"description": "
|
|
923
|
+
"code": "ORB_ID_NAME_MISMATCH",
|
|
924
|
+
"category": "id",
|
|
925
|
+
"description": "A name in the source disagrees with the current name the ledger records for the same id"
|
|
931
926
|
},
|
|
932
927
|
{
|
|
933
|
-
"code": "
|
|
934
|
-
"category": "
|
|
935
|
-
"description": "
|
|
928
|
+
"code": "ORB_ID_UNKNOWN_REF",
|
|
929
|
+
"category": "id",
|
|
930
|
+
"description": "An id reference matches no arena node or ledger entry"
|
|
936
931
|
},
|
|
937
932
|
{
|
|
938
|
-
"code": "
|
|
939
|
-
"category": "
|
|
940
|
-
"description": "
|
|
933
|
+
"code": "ORB_INBOUND_ANSWER_FOREIGN",
|
|
934
|
+
"category": "inbound",
|
|
935
|
+
"description": "A trait other than an inbound handler emits the handler's answer event, so the answer never reaches the caller"
|
|
941
936
|
},
|
|
942
937
|
{
|
|
943
|
-
"code": "
|
|
944
|
-
"category": "
|
|
945
|
-
"description": "
|
|
938
|
+
"code": "ORB_INBOUND_ANSWER_UNDECLARED",
|
|
939
|
+
"category": "inbound",
|
|
940
|
+
"description": "An inbound hook event answers with an event the trait does not declare in emits"
|
|
946
941
|
},
|
|
947
942
|
{
|
|
948
|
-
"code": "
|
|
949
|
-
"category": "
|
|
950
|
-
"description": "
|
|
943
|
+
"code": "ORB_INBOUND_DUPLICATE",
|
|
944
|
+
"category": "inbound",
|
|
945
|
+
"description": "An inbound hook has more than one handler"
|
|
951
946
|
},
|
|
952
947
|
{
|
|
953
|
-
"code": "
|
|
954
|
-
"category": "
|
|
955
|
-
"description": "
|
|
948
|
+
"code": "ORB_INBOUND_ENTRY_INVALID",
|
|
949
|
+
"category": "inbound",
|
|
950
|
+
"description": "An inbound entry is not a valid hook name"
|
|
956
951
|
},
|
|
957
952
|
{
|
|
958
|
-
"code": "
|
|
959
|
-
"category": "
|
|
960
|
-
"description": "
|
|
953
|
+
"code": "ORB_INBOUND_UNDECLARED",
|
|
954
|
+
"category": "inbound",
|
|
955
|
+
"description": "An event handles an inbound hook that the program's inbound block does not declare"
|
|
961
956
|
},
|
|
962
957
|
{
|
|
963
|
-
"code": "
|
|
964
|
-
"category": "
|
|
965
|
-
"description": "
|
|
958
|
+
"code": "ORB_INBOUND_VERIFY_INVALID",
|
|
959
|
+
"category": "inbound",
|
|
960
|
+
"description": "An inbound hook verifies a header against a credential, but the header is not a lower-case header name or the credential is not a credential name"
|
|
966
961
|
},
|
|
967
962
|
{
|
|
968
|
-
"code": "
|
|
969
|
-
"category": "
|
|
970
|
-
"description": "
|
|
963
|
+
"code": "ORB_INDEX_PATH_DUPLICATE",
|
|
964
|
+
"category": "index",
|
|
965
|
+
"description": "The same index path, with the same ordering, is declared more than once on an entity"
|
|
971
966
|
},
|
|
972
967
|
{
|
|
973
|
-
"code": "
|
|
974
|
-
"category": "
|
|
975
|
-
"description": "
|
|
968
|
+
"code": "ORB_INDEX_PATH_INVALID",
|
|
969
|
+
"category": "entity",
|
|
970
|
+
"description": "An index path names a field that the entity does not declare"
|
|
976
971
|
},
|
|
977
972
|
{
|
|
978
|
-
"code": "
|
|
979
|
-
"category": "
|
|
980
|
-
"description": "
|
|
973
|
+
"code": "ORB_JSON_ROUNDTRIP",
|
|
974
|
+
"category": "lint",
|
|
975
|
+
"description": "json/parse re-parses what json/stringify just serialized; a stringify→parse round trip launders a value's type past the checker (owner hard rule, CLAUDE.md). Narrow with `as`."
|
|
981
976
|
},
|
|
982
977
|
{
|
|
983
|
-
"code": "
|
|
984
|
-
"category": "
|
|
985
|
-
"description": "
|
|
978
|
+
"code": "ORB_LINT_FINDING_CODE_UNDECLARED",
|
|
979
|
+
"category": "lint",
|
|
980
|
+
"description": "A lint rule names a finding code that its declared codes record does not carry."
|
|
986
981
|
},
|
|
987
982
|
{
|
|
988
|
-
"code": "
|
|
989
|
-
"category": "
|
|
990
|
-
"description": "
|
|
983
|
+
"code": "ORB_LINT_INPUT_UNREAD",
|
|
984
|
+
"category": "lint",
|
|
985
|
+
"description": "A lint input file could not be read or lowered, so the lint rules did not run"
|
|
991
986
|
},
|
|
992
987
|
{
|
|
993
|
-
"code": "
|
|
994
|
-
"category": "
|
|
995
|
-
"description": "
|
|
988
|
+
"code": "ORB_LINT_LANGUAGE_FACTS_UNREAD",
|
|
989
|
+
"category": "lint",
|
|
990
|
+
"description": "The installed language facts could not be read, so the lint rule could not check what it needs"
|
|
996
991
|
},
|
|
997
992
|
{
|
|
998
|
-
"code": "
|
|
999
|
-
"category": "
|
|
1000
|
-
"description": "
|
|
993
|
+
"code": "ORB_LINT_OPERATOR_SHAPES_UNREAD",
|
|
994
|
+
"category": "lint",
|
|
995
|
+
"description": "The installed operator table could not be read or does not match the operator shape type, so a lint cannot run"
|
|
1001
996
|
},
|
|
1002
997
|
{
|
|
1003
|
-
"code": "
|
|
1004
|
-
"category": "
|
|
1005
|
-
"description": "
|
|
998
|
+
"code": "ORB_LINT_RULE_COUNT_MISMATCH",
|
|
999
|
+
"category": "lint",
|
|
1000
|
+
"description": "A lint engine's rules or programOnlyRules names differ from the rule names its routed rule traits answer LINT_FOUND with"
|
|
1006
1001
|
},
|
|
1007
1002
|
{
|
|
1008
|
-
"code": "
|
|
1009
|
-
"category": "
|
|
1010
|
-
"description": "
|
|
1003
|
+
"code": "ORB_LINT_RULE_FAILED",
|
|
1004
|
+
"category": "lint",
|
|
1005
|
+
"description": "A lint rule met an input its own preconditions exclude and could not check it"
|
|
1011
1006
|
},
|
|
1012
1007
|
{
|
|
1013
|
-
"code": "
|
|
1014
|
-
"category": "
|
|
1015
|
-
"description": "
|
|
1008
|
+
"code": "ORB_LINT_SERVICE_REGISTRY_UNREAD",
|
|
1009
|
+
"category": "lint",
|
|
1010
|
+
"description": "The installed services registry could not be read, so call-service services cannot be checked"
|
|
1016
1011
|
},
|
|
1017
1012
|
{
|
|
1018
|
-
"code": "
|
|
1019
|
-
"category": "
|
|
1020
|
-
"description": "
|
|
1013
|
+
"code": "ORB_LINT_UI_VOCAB_UNREAD",
|
|
1014
|
+
"category": "lint",
|
|
1015
|
+
"description": "The installed @almadar/core declares no readable UI vocabulary, so a UI lint check cannot run"
|
|
1021
1016
|
},
|
|
1022
1017
|
{
|
|
1023
|
-
"code": "
|
|
1024
|
-
"category": "
|
|
1025
|
-
"description": "
|
|
1018
|
+
"code": "ORB_LISTEN_REDUNDANT_EMBED_ROUTE",
|
|
1019
|
+
"category": "listen",
|
|
1020
|
+
"description": "A listens route is redundant because the embedded trait already receives that event"
|
|
1026
1021
|
},
|
|
1027
1022
|
{
|
|
1028
|
-
"code": "
|
|
1029
|
-
"category": "
|
|
1030
|
-
"description": "
|
|
1023
|
+
"code": "ORB_LISTEN_ROUTE_STARVES_REQUIRED_FIELD",
|
|
1024
|
+
"category": "trait_event",
|
|
1025
|
+
"description": "A listens route requires a payload field that the source event contract never produces"
|
|
1031
1026
|
},
|
|
1032
1027
|
{
|
|
1033
|
-
"code": "
|
|
1034
|
-
"category": "
|
|
1035
|
-
"description": "
|
|
1028
|
+
"code": "ORB_LISTEN_WILDCARD_UNKEYED",
|
|
1029
|
+
"category": "trait_event",
|
|
1030
|
+
"description": "A wildcard listens route hears every caller's event but its guard never reads the call key in the payload"
|
|
1036
1031
|
},
|
|
1037
1032
|
{
|
|
1038
|
-
"code": "
|
|
1039
|
-
"category": "
|
|
1040
|
-
"description": "
|
|
1033
|
+
"code": "ORB_MEM_ALIAS",
|
|
1034
|
+
"category": "mem",
|
|
1035
|
+
"description": "An exclusive borrow of a block while another borrow of it is live, or a borrow while an exclusive one is live"
|
|
1041
1036
|
},
|
|
1042
1037
|
{
|
|
1043
|
-
"code": "
|
|
1044
|
-
"category": "
|
|
1045
|
-
"description": "
|
|
1038
|
+
"code": "ORB_MEM_DOUBLE_FREE",
|
|
1039
|
+
"category": "mem",
|
|
1040
|
+
"description": "A handle is freed, dropped or released a second time on some path"
|
|
1046
1041
|
},
|
|
1047
1042
|
{
|
|
1048
|
-
"code": "
|
|
1049
|
-
"category": "
|
|
1050
|
-
"description": "
|
|
1043
|
+
"code": "ORB_MEM_LEAK",
|
|
1044
|
+
"category": "mem",
|
|
1045
|
+
"description": "An arena reaches a resting state on some path without being dropped"
|
|
1051
1046
|
},
|
|
1052
1047
|
{
|
|
1053
|
-
"code": "
|
|
1054
|
-
"category": "
|
|
1055
|
-
"description": "
|
|
1048
|
+
"code": "ORB_MEM_USE_AFTER_FREE",
|
|
1049
|
+
"category": "mem",
|
|
1050
|
+
"description": "A mem/ call takes a handle after it was freed, dropped or released on some path"
|
|
1056
1051
|
},
|
|
1057
1052
|
{
|
|
1058
|
-
"code": "
|
|
1059
|
-
"category": "
|
|
1060
|
-
"description": "
|
|
1053
|
+
"code": "ORB_NAV_TARGET_UNDECLARED",
|
|
1054
|
+
"category": "page",
|
|
1055
|
+
"description": "A navigation target stated as a literal path (a navigate effect, a navItems or link href, a navigatesTo) names no page the finished program declares"
|
|
1061
1056
|
},
|
|
1062
1057
|
{
|
|
1063
|
-
"code": "
|
|
1064
|
-
"category": "
|
|
1065
|
-
"description": "
|
|
1058
|
+
"code": "ORB_OAUTH_CLIENT_INVALID",
|
|
1059
|
+
"category": "oauth",
|
|
1060
|
+
"description": "An OAuth client block uses a key that is not a valid OAuth client key"
|
|
1066
1061
|
},
|
|
1067
1062
|
{
|
|
1068
|
-
"code": "
|
|
1069
|
-
"category": "
|
|
1070
|
-
"description": "
|
|
1063
|
+
"code": "ORB_OAUTH_OPTION_UNKNOWN",
|
|
1064
|
+
"category": "oauth",
|
|
1065
|
+
"description": "An oauth-authorize call passes an option that is not recognized"
|
|
1071
1066
|
},
|
|
1072
1067
|
{
|
|
1073
|
-
"code": "
|
|
1074
|
-
"category": "
|
|
1075
|
-
"description": "
|
|
1068
|
+
"code": "ORB_OAUTH_PROVIDER_UNKNOWN",
|
|
1069
|
+
"category": "oauth",
|
|
1070
|
+
"description": "The OAuth clients map is keyed by something other than a known provider tag"
|
|
1076
1071
|
},
|
|
1077
1072
|
{
|
|
1078
|
-
"code": "
|
|
1079
|
-
"category": "
|
|
1080
|
-
"description": "
|
|
1073
|
+
"code": "ORB_ON_DEVICE_EFFECT_ON_SERVER",
|
|
1074
|
+
"category": "browser",
|
|
1075
|
+
"description": "An on-device model effect runs in a background tick on the server, which has no on-device model"
|
|
1081
1076
|
},
|
|
1082
1077
|
{
|
|
1083
|
-
"code": "
|
|
1084
|
-
"category": "
|
|
1085
|
-
"description": "
|
|
1078
|
+
"code": "ORB_ON_DEVICE_SCHEMA_INVALID",
|
|
1079
|
+
"category": "browser",
|
|
1080
|
+
"description": "A browser prompt response schema is not valid JSON Schema text describing a JSON object"
|
|
1086
1081
|
},
|
|
1087
1082
|
{
|
|
1088
|
-
"code": "
|
|
1089
|
-
"category": "
|
|
1090
|
-
"description": "
|
|
1083
|
+
"code": "ORB_OP_INVALID_TIME_UNIT",
|
|
1084
|
+
"category": "operator",
|
|
1085
|
+
"description": "A time operator is given a unit that is not an accepted time unit"
|
|
1091
1086
|
},
|
|
1092
1087
|
{
|
|
1093
|
-
"code": "
|
|
1094
|
-
"category": "
|
|
1095
|
-
"description": "
|
|
1088
|
+
"code": "ORB_OS_EGRESS_SCHEME_UNUSED",
|
|
1089
|
+
"category": "os",
|
|
1090
|
+
"description": "An egress entry whose scheme (redis, rediss, postgres, postgresql) no operator or fetch uses since the TCP protocol-target grants were retired; its net-grant replacement is named"
|
|
1096
1091
|
},
|
|
1097
1092
|
{
|
|
1098
|
-
"code": "
|
|
1099
|
-
"category": "
|
|
1100
|
-
"description": "
|
|
1093
|
+
"code": "ORB_OS_GRANT_ENTRY_INVALID",
|
|
1094
|
+
"category": "os",
|
|
1095
|
+
"description": "A declared grant entry that can match nothing"
|
|
1101
1096
|
},
|
|
1102
1097
|
{
|
|
1103
|
-
"code": "
|
|
1104
|
-
"category": "
|
|
1105
|
-
"description": "
|
|
1098
|
+
"code": "ORB_OS_GRANT_MISSING",
|
|
1099
|
+
"category": "os",
|
|
1100
|
+
"description": "An os/ call that the grants of its orbital (app level plus its own) do not cover"
|
|
1106
1101
|
},
|
|
1107
1102
|
{
|
|
1108
|
-
"code": "
|
|
1109
|
-
"category": "
|
|
1110
|
-
"description": "
|
|
1103
|
+
"code": "ORB_OS_GRANT_UNUSED",
|
|
1104
|
+
"category": "os",
|
|
1105
|
+
"description": "A granted entry that no os/ call of the orbital (or of the program, at app level) uses; a warning"
|
|
1111
1106
|
},
|
|
1112
1107
|
{
|
|
1113
|
-
"code": "
|
|
1114
|
-
"category": "
|
|
1115
|
-
"description": "
|
|
1108
|
+
"code": "ORB_OS_TARGET_NOT_STATIC",
|
|
1109
|
+
"category": "os",
|
|
1110
|
+
"description": "An os/ call target that is computed, so its grant cannot be checked at build time"
|
|
1116
1111
|
},
|
|
1117
1112
|
{
|
|
1118
|
-
"code": "
|
|
1119
|
-
"category": "
|
|
1120
|
-
"description": "
|
|
1113
|
+
"code": "ORB_O_CONFIG_DEAD_KNOB",
|
|
1114
|
+
"category": "orbital",
|
|
1115
|
+
"description": "A declared app-level config knob is not forwarded by any trait config default, so it has no effect"
|
|
1121
1116
|
},
|
|
1122
1117
|
{
|
|
1123
|
-
"code": "
|
|
1124
|
-
"category": "
|
|
1125
|
-
"description": "
|
|
1118
|
+
"code": "ORB_O_CONFIG_UNKNOWN_KEY",
|
|
1119
|
+
"category": "orbital_ref",
|
|
1120
|
+
"description": "A call-site config key matches no config knob declared by the upstream orbital"
|
|
1126
1121
|
},
|
|
1127
1122
|
{
|
|
1128
|
-
"code": "
|
|
1129
|
-
"category": "
|
|
1130
|
-
"description": "
|
|
1123
|
+
"code": "ORB_O_DUPLICATE_NAME",
|
|
1124
|
+
"category": "orbital",
|
|
1125
|
+
"description": "Two or more orbitals in a program share the same name"
|
|
1131
1126
|
},
|
|
1132
1127
|
{
|
|
1133
|
-
"code": "
|
|
1134
|
-
"category": "
|
|
1135
|
-
"description": "
|
|
1128
|
+
"code": "ORB_O_DUPLICATE_USE_ALIAS",
|
|
1129
|
+
"category": "orbital",
|
|
1130
|
+
"description": "Two uses imports share the same alias"
|
|
1136
1131
|
},
|
|
1137
1132
|
{
|
|
1138
|
-
"code": "
|
|
1139
|
-
"category": "
|
|
1140
|
-
"description": "
|
|
1133
|
+
"code": "ORB_O_ENTITY_EXPECT_AMBIGUOUS",
|
|
1134
|
+
"category": "orbital_ref",
|
|
1135
|
+
"description": "An entity an imported orbital expects of a sibling is provided by several sibling imports and no entities entry binds it"
|
|
1141
1136
|
},
|
|
1142
1137
|
{
|
|
1143
|
-
"code": "
|
|
1144
|
-
"category": "
|
|
1145
|
-
"description": "
|
|
1138
|
+
"code": "ORB_O_ENTITY_PERSISTENCE_LOCKED",
|
|
1139
|
+
"category": "orbital",
|
|
1140
|
+
"description": "An entity persistence or collection override on an orbital reference has no effect because the primary entity locks it"
|
|
1146
1141
|
},
|
|
1147
1142
|
{
|
|
1148
|
-
"code": "
|
|
1149
|
-
"category": "
|
|
1150
|
-
"description": "
|
|
1143
|
+
"code": "ORB_O_ENTITY_TARGET_UNKNOWN",
|
|
1144
|
+
"category": "orbital_ref",
|
|
1145
|
+
"description": "An entities value names no entity the consumer schema declares"
|
|
1151
1146
|
},
|
|
1152
1147
|
{
|
|
1153
|
-
"code": "
|
|
1154
|
-
"category": "
|
|
1155
|
-
"description": "
|
|
1148
|
+
"code": "ORB_O_ENTITY_UNKNOWN_KEY",
|
|
1149
|
+
"category": "orbital_ref",
|
|
1150
|
+
"description": "An entities key names no entity in the upstream out-of-orbital closure"
|
|
1156
1151
|
},
|
|
1157
1152
|
{
|
|
1158
|
-
"code": "
|
|
1159
|
-
"category": "
|
|
1160
|
-
"description": "
|
|
1153
|
+
"code": "ORB_O_ENTITY_UNMAPPED",
|
|
1154
|
+
"category": "orbital_ref",
|
|
1155
|
+
"description": "A kept trait, relation or page references an out-of-orbital entity that entities {} never maps"
|
|
1161
1156
|
},
|
|
1162
1157
|
{
|
|
1163
|
-
"code": "
|
|
1164
|
-
"category": "
|
|
1165
|
-
"description": "
|
|
1158
|
+
"code": "ORB_O_EXTEND_FIELD_COLLISION",
|
|
1159
|
+
"category": "orbital_ref",
|
|
1160
|
+
"description": "An extend field collides with a field already declared on the upstream primary entity"
|
|
1166
1161
|
},
|
|
1167
1162
|
{
|
|
1168
|
-
"code": "
|
|
1169
|
-
"category": "
|
|
1170
|
-
"description": "A
|
|
1163
|
+
"code": "ORB_O_EXTEND_FIELD_UNREAD",
|
|
1164
|
+
"category": "orbital",
|
|
1165
|
+
"description": "A field added by an extend block is never read, set, rendered or forwarded by a config knob"
|
|
1171
1166
|
},
|
|
1172
1167
|
{
|
|
1173
|
-
"code": "
|
|
1174
|
-
"category": "
|
|
1175
|
-
"description": "
|
|
1168
|
+
"code": "ORB_O_FIELD_RENAME_UNAPPLIED",
|
|
1169
|
+
"category": "orbital_ref",
|
|
1170
|
+
"description": "A fields rename left the pre-rename field name in a config default position the rewrite does not reach"
|
|
1176
1171
|
},
|
|
1177
1172
|
{
|
|
1178
|
-
"code": "
|
|
1179
|
-
"category": "
|
|
1180
|
-
"description": "
|
|
1173
|
+
"code": "ORB_O_MOCK_UNKNOWN_FIELD",
|
|
1174
|
+
"category": "orbital",
|
|
1175
|
+
"description": "A mock block names a field the entity materialized from the referenced orbital does not declare"
|
|
1181
1176
|
},
|
|
1182
1177
|
{
|
|
1183
|
-
"code": "
|
|
1184
|
-
"category": "
|
|
1185
|
-
"description": "
|
|
1178
|
+
"code": "ORB_O_OMIT_EMBEDDED_TRAIT",
|
|
1179
|
+
"category": "orbital",
|
|
1180
|
+
"description": "An orbital reference omits a trait that another kept trait embeds"
|
|
1186
1181
|
},
|
|
1187
1182
|
{
|
|
1188
|
-
"code": "
|
|
1189
|
-
"category": "
|
|
1190
|
-
"description": "
|
|
1183
|
+
"code": "ORB_O_PAGE_UNKNOWN_PATH",
|
|
1184
|
+
"category": "orbital_ref",
|
|
1185
|
+
"description": "A pages or mounts key names a page path that the upstream orbital does not declare"
|
|
1191
1186
|
},
|
|
1192
1187
|
{
|
|
1193
|
-
"code": "
|
|
1194
|
-
"category": "
|
|
1195
|
-
"description": "
|
|
1188
|
+
"code": "ORB_O_RETYPE_FIELD_CONFLICT",
|
|
1189
|
+
"category": "orbital",
|
|
1190
|
+
"description": "A field is both retyped and added by extend in the same orbital reference"
|
|
1196
1191
|
},
|
|
1197
1192
|
{
|
|
1198
|
-
"code": "
|
|
1199
|
-
"category": "
|
|
1200
|
-
"description": "
|
|
1193
|
+
"code": "ORB_O_RETYPE_UNKNOWN_FIELD",
|
|
1194
|
+
"category": "orbital",
|
|
1195
|
+
"description": "A retype block names a field the entity materialized from the referenced orbital does not declare"
|
|
1201
1196
|
},
|
|
1202
1197
|
{
|
|
1203
|
-
"code": "
|
|
1204
|
-
"category": "
|
|
1205
|
-
"description": "
|
|
1198
|
+
"code": "ORB_O_ROLE_TARGET_NOT_MEMBER",
|
|
1199
|
+
"category": "orbital_ref",
|
|
1200
|
+
"description": "A roles target is not a member of the consumer roster field vocabulary"
|
|
1206
1201
|
},
|
|
1207
1202
|
{
|
|
1208
|
-
"code": "
|
|
1209
|
-
"category": "
|
|
1210
|
-
"description": "
|
|
1203
|
+
"code": "ORB_O_ROLE_UNKNOWN_UPSTREAM",
|
|
1204
|
+
"category": "orbital_ref",
|
|
1205
|
+
"description": "A roles key names no value in any upstream identity field vocabulary"
|
|
1211
1206
|
},
|
|
1212
1207
|
{
|
|
1213
|
-
"code": "
|
|
1214
|
-
"category": "
|
|
1215
|
-
"description": "
|
|
1208
|
+
"code": "ORB_O_TRAITS_OMITTED_TRAIT",
|
|
1209
|
+
"category": "orbital",
|
|
1210
|
+
"description": "A traits override names a trait that omit or only drops from the imported orbital"
|
|
1216
1211
|
},
|
|
1217
1212
|
{
|
|
1218
|
-
"code": "
|
|
1219
|
-
"category": "
|
|
1220
|
-
"description": "A
|
|
1213
|
+
"code": "ORB_O_TRAITS_UNKNOWN_TRAIT",
|
|
1214
|
+
"category": "orbital_ref",
|
|
1215
|
+
"description": "A traits key names a trait that the upstream orbital does not have"
|
|
1221
1216
|
},
|
|
1222
1217
|
{
|
|
1223
|
-
"code": "
|
|
1224
|
-
"category": "
|
|
1225
|
-
"description": "
|
|
1218
|
+
"code": "ORB_PAGE_AMBIGUOUS_CONTENT_OWNER",
|
|
1219
|
+
"category": "page",
|
|
1220
|
+
"description": "Several traits each render a content body into the main slot and none composes the others, so the page has no single content owner"
|
|
1226
1221
|
},
|
|
1227
1222
|
{
|
|
1228
|
-
"code": "
|
|
1229
|
-
"category": "
|
|
1230
|
-
"description": "
|
|
1223
|
+
"code": "ORB_PAGE_CONTROL_OUTSIDE_SHELL",
|
|
1224
|
+
"category": "page",
|
|
1225
|
+
"description": "A trait paints a control into the main slot of a page whose shell shows another trait as its content, and nothing there embeds it"
|
|
1231
1226
|
},
|
|
1232
1227
|
{
|
|
1233
|
-
"code": "
|
|
1234
|
-
"category": "
|
|
1235
|
-
"description": "
|
|
1228
|
+
"code": "ORB_PAGE_FACTS_FIELD_INVALID",
|
|
1229
|
+
"category": "page",
|
|
1230
|
+
"description": "A browser/page-facts effect declares no facts"
|
|
1236
1231
|
},
|
|
1237
1232
|
{
|
|
1238
|
-
"code": "
|
|
1239
|
-
"category": "
|
|
1240
|
-
"description": "
|
|
1233
|
+
"code": "ORB_PAGE_NOT_FOUND_DUPLICATE",
|
|
1234
|
+
"category": "page",
|
|
1235
|
+
"description": "A program declares more than one [notFound] page."
|
|
1241
1236
|
},
|
|
1242
1237
|
{
|
|
1243
|
-
"code": "
|
|
1244
|
-
"category": "
|
|
1245
|
-
"description": "
|
|
1238
|
+
"code": "ORB_PAGE_NOT_FOUND_MISSING",
|
|
1239
|
+
"category": "page",
|
|
1240
|
+
"description": "A program with route pages declares no [notFound] page."
|
|
1246
1241
|
},
|
|
1247
1242
|
{
|
|
1248
|
-
"code": "
|
|
1249
|
-
"category": "
|
|
1250
|
-
"description": "
|
|
1243
|
+
"code": "ORB_PAGE_SECOND_CONTENT_BODY",
|
|
1244
|
+
"category": "page",
|
|
1245
|
+
"description": "More than one trait on a page renders a content body into the main slot"
|
|
1251
1246
|
},
|
|
1252
1247
|
{
|
|
1253
|
-
"code": "
|
|
1254
|
-
"category": "
|
|
1255
|
-
"description": "A
|
|
1248
|
+
"code": "ORB_PAGE_UNREACHABLE",
|
|
1249
|
+
"category": "page",
|
|
1250
|
+
"description": "A page is declared but appears in no link, navItems entry or navigate effect"
|
|
1256
1251
|
},
|
|
1257
1252
|
{
|
|
1258
|
-
"code": "
|
|
1259
|
-
"category": "
|
|
1260
|
-
"description": "
|
|
1253
|
+
"code": "ORB_PERSIST_BATCH_BAD_OP",
|
|
1254
|
+
"category": "persist",
|
|
1255
|
+
"description": "A persist batch contains an operation that is not valid in a batch"
|
|
1261
1256
|
},
|
|
1262
1257
|
{
|
|
1263
|
-
"code": "
|
|
1264
|
-
"category": "
|
|
1265
|
-
"description": "A
|
|
1258
|
+
"code": "ORB_PERSIST_BATCH_MIXED_PLACEMENT",
|
|
1259
|
+
"category": "persist",
|
|
1260
|
+
"description": "A persist batch writes both browser-stored and server-stored entities in one effect, which no single executor can hold"
|
|
1266
1261
|
},
|
|
1267
1262
|
{
|
|
1268
|
-
"code": "
|
|
1269
|
-
"category": "
|
|
1270
|
-
"description": "A
|
|
1263
|
+
"code": "ORB_PERSIST_BATCH_OPS_NOT_ARRAY",
|
|
1264
|
+
"category": "persist",
|
|
1265
|
+
"description": "A persist batch operations expression is missing or not array-typed"
|
|
1271
1266
|
},
|
|
1272
1267
|
{
|
|
1273
|
-
"code": "
|
|
1274
|
-
"category": "
|
|
1275
|
-
"description": "A
|
|
1268
|
+
"code": "ORB_PERSIST_CREATE_LITERAL_ID",
|
|
1269
|
+
"category": "persist",
|
|
1270
|
+
"description": "A persist create names a literal id, so a second run fails with a duplicate id"
|
|
1276
1271
|
},
|
|
1277
1272
|
{
|
|
1278
|
-
"code": "
|
|
1279
|
-
"category": "
|
|
1280
|
-
"description": "A
|
|
1273
|
+
"code": "ORB_PERSIST_CREATE_MISSING_POLICY_FIELD",
|
|
1274
|
+
"category": "persist",
|
|
1275
|
+
"description": "A persist create data literal omits a field its entity's create access policy compares, so the row can never satisfy the policy"
|
|
1281
1276
|
},
|
|
1282
1277
|
{
|
|
1283
|
-
"code": "
|
|
1284
|
-
"category": "
|
|
1285
|
-
"description": "A
|
|
1278
|
+
"code": "ORB_PERSIST_ID_NOT_A_PATH",
|
|
1279
|
+
"category": "persist",
|
|
1280
|
+
"description": "A persist effect names its row id with an expression instead of a binding path or literal id, so no row key resolves"
|
|
1286
1281
|
},
|
|
1287
1282
|
{
|
|
1288
|
-
"code": "
|
|
1289
|
-
"category": "
|
|
1290
|
-
"description": "A
|
|
1283
|
+
"code": "ORB_PERSIST_WHERE_NOT_A_PREDICATE",
|
|
1284
|
+
"category": "persist",
|
|
1285
|
+
"description": "A persist where clause is not a valid row predicate"
|
|
1291
1286
|
},
|
|
1292
1287
|
{
|
|
1293
|
-
"code": "
|
|
1294
|
-
"category": "
|
|
1295
|
-
"description": "
|
|
1288
|
+
"code": "ORB_PLACEMENT_ORBITAL_DUPLICATE",
|
|
1289
|
+
"category": "placement",
|
|
1290
|
+
"description": "An orbital is placed more than once in the deployment"
|
|
1296
1291
|
},
|
|
1297
1292
|
{
|
|
1298
|
-
"code": "
|
|
1299
|
-
"category": "
|
|
1300
|
-
"description": "
|
|
1293
|
+
"code": "ORB_PLACEMENT_ORBITAL_UNKNOWN",
|
|
1294
|
+
"category": "placement",
|
|
1295
|
+
"description": "A deployment unit lists an orbital name that is not an orbital of the program"
|
|
1301
1296
|
},
|
|
1302
1297
|
{
|
|
1303
|
-
"code": "
|
|
1304
|
-
"category": "
|
|
1305
|
-
"description": "
|
|
1298
|
+
"code": "ORB_PLACEMENT_ORBITAL_UNPLACED",
|
|
1299
|
+
"category": "placement",
|
|
1300
|
+
"description": "A deployment is declared but an orbital belongs to none of its units"
|
|
1306
1301
|
},
|
|
1307
1302
|
{
|
|
1308
|
-
"code": "
|
|
1309
|
-
"category": "
|
|
1310
|
-
"description": "A
|
|
1303
|
+
"code": "ORB_PLACEMENT_UNIT_EMPTY",
|
|
1304
|
+
"category": "placement",
|
|
1305
|
+
"description": "A deployment unit lists no orbital"
|
|
1311
1306
|
},
|
|
1312
1307
|
{
|
|
1313
|
-
"code": "
|
|
1314
|
-
"category": "
|
|
1315
|
-
"description": "A
|
|
1308
|
+
"code": "ORB_P_AUTH_NO_SIGN_IN",
|
|
1309
|
+
"category": "page",
|
|
1310
|
+
"description": "A page requires authenticated access but the app declares no signIn route"
|
|
1316
1311
|
},
|
|
1317
1312
|
{
|
|
1318
|
-
"code": "
|
|
1319
|
-
"category": "
|
|
1320
|
-
"description": "
|
|
1313
|
+
"code": "ORB_P_DUPLICATE_PATH",
|
|
1314
|
+
"category": "page",
|
|
1315
|
+
"description": "Two pages declare the same path after normalization"
|
|
1321
1316
|
},
|
|
1322
1317
|
{
|
|
1323
|
-
"code": "
|
|
1324
|
-
"category": "
|
|
1325
|
-
"description": "
|
|
1318
|
+
"code": "ORB_P_EMPTY_TRAITS",
|
|
1319
|
+
"category": "page",
|
|
1320
|
+
"description": "A page declares an empty traits array"
|
|
1326
1321
|
},
|
|
1327
1322
|
{
|
|
1328
|
-
"code": "
|
|
1329
|
-
"category": "
|
|
1330
|
-
"description": "
|
|
1323
|
+
"code": "ORB_P_HOST_RESERVED_ROUTE",
|
|
1324
|
+
"category": "page",
|
|
1325
|
+
"description": "A page is declared on the host's reserved sign-in route"
|
|
1331
1326
|
},
|
|
1332
1327
|
{
|
|
1333
|
-
"code": "
|
|
1334
|
-
"category": "
|
|
1335
|
-
"description": "
|
|
1328
|
+
"code": "ORB_P_INDEX_PARAM_ROUTE",
|
|
1329
|
+
"category": "page",
|
|
1330
|
+
"description": "A parameter-route page is marked indexing index although its concrete URLs are not declared"
|
|
1336
1331
|
},
|
|
1337
1332
|
{
|
|
1338
|
-
"code": "
|
|
1339
|
-
"category": "
|
|
1340
|
-
"description": "
|
|
1333
|
+
"code": "ORB_P_INDEX_REQUIRES_PUBLIC",
|
|
1334
|
+
"category": "page",
|
|
1335
|
+
"description": "A page declares indexing: index but lacks the public access it requires"
|
|
1341
1336
|
},
|
|
1342
1337
|
{
|
|
1343
|
-
"code": "
|
|
1344
|
-
"category": "
|
|
1345
|
-
"description": "
|
|
1338
|
+
"code": "ORB_P_INVALID_PATH",
|
|
1339
|
+
"category": "page",
|
|
1340
|
+
"description": "A page or navigate path does not start with a slash"
|
|
1346
1341
|
},
|
|
1347
1342
|
{
|
|
1348
|
-
"code": "
|
|
1349
|
-
"category": "
|
|
1350
|
-
"description": "
|
|
1343
|
+
"code": "ORB_P_INVALID_TRAIT_REF",
|
|
1344
|
+
"category": "page",
|
|
1345
|
+
"description": "A page's inline trait reference has no name"
|
|
1351
1346
|
},
|
|
1352
1347
|
{
|
|
1353
|
-
"code": "
|
|
1354
|
-
"category": "
|
|
1355
|
-
"description": "
|
|
1348
|
+
"code": "ORB_P_INVALID_VIEW_TYPE",
|
|
1349
|
+
"category": "page",
|
|
1350
|
+
"description": "A page declares a view type that is not a valid view type"
|
|
1356
1351
|
},
|
|
1357
1352
|
{
|
|
1358
|
-
"code": "
|
|
1359
|
-
"category": "
|
|
1360
|
-
"description": "
|
|
1353
|
+
"code": "ORB_P_MISSING_NAME",
|
|
1354
|
+
"category": "page",
|
|
1355
|
+
"description": "A page does not declare a name"
|
|
1361
1356
|
},
|
|
1362
1357
|
{
|
|
1363
|
-
"code": "
|
|
1364
|
-
"category": "
|
|
1365
|
-
"description": "
|
|
1358
|
+
"code": "ORB_P_MISSING_PATH",
|
|
1359
|
+
"category": "page",
|
|
1360
|
+
"description": "A page is missing its required path"
|
|
1366
1361
|
},
|
|
1367
1362
|
{
|
|
1368
|
-
"code": "
|
|
1369
|
-
"category": "
|
|
1370
|
-
"description": "
|
|
1363
|
+
"code": "ORB_P_MISSING_TRAITS",
|
|
1364
|
+
"category": "page",
|
|
1365
|
+
"description": "A page has no traits array for trait-driven UI"
|
|
1371
1366
|
},
|
|
1372
1367
|
{
|
|
1373
|
-
"code": "
|
|
1374
|
-
"category": "
|
|
1375
|
-
"description": "
|
|
1368
|
+
"code": "ORB_P_SIGN_IN_UNKNOWN_ROUTE",
|
|
1369
|
+
"category": "page",
|
|
1370
|
+
"description": "The app's signIn route names a path that is no page of the app"
|
|
1376
1371
|
},
|
|
1377
1372
|
{
|
|
1378
|
-
"code": "
|
|
1379
|
-
"category": "
|
|
1380
|
-
"description": "
|
|
1373
|
+
"code": "ORB_P_TRANSLATION_DUPLICATE_LOCALE",
|
|
1374
|
+
"category": "page",
|
|
1375
|
+
"description": "A translation group holds more than one page in the same locale"
|
|
1381
1376
|
},
|
|
1382
1377
|
{
|
|
1383
|
-
"code": "
|
|
1384
|
-
"category": "
|
|
1385
|
-
"description": "
|
|
1378
|
+
"code": "ORB_RANDOM_BYTES_COUNT",
|
|
1379
|
+
"category": "random",
|
|
1380
|
+
"description": "A random-bytes count argument is outside the allowed integer range"
|
|
1386
1381
|
},
|
|
1387
1382
|
{
|
|
1388
|
-
"code": "
|
|
1389
|
-
"category": "
|
|
1390
|
-
"description": "
|
|
1383
|
+
"code": "ORB_RENDER_ACTION_LIFECYCLE_EVENT",
|
|
1384
|
+
"category": "render_ui",
|
|
1385
|
+
"description": "A rendered pattern prop targets a lifecycle event that the bus never delivers"
|
|
1391
1386
|
},
|
|
1392
1387
|
{
|
|
1393
|
-
"code": "
|
|
1394
|
-
"category": "
|
|
1395
|
-
"description": "
|
|
1388
|
+
"code": "ORB_RENDER_GROUPBY_ENUM_COLUMN_GAP",
|
|
1389
|
+
"category": "render_ui",
|
|
1390
|
+
"description": "A groupBy column set omits enum values of the field, so rows with those values match no column and disappear"
|
|
1396
1391
|
},
|
|
1397
1392
|
{
|
|
1398
|
-
"code": "
|
|
1399
|
-
"category": "
|
|
1400
|
-
"description": "
|
|
1393
|
+
"code": "ORB_RENDER_ORBITAL_VALUE_EMBEDDED",
|
|
1394
|
+
"category": "render_ui",
|
|
1395
|
+
"description": "A render-ui embeds an orbital value, but only trait values can be rendered"
|
|
1401
1396
|
},
|
|
1402
1397
|
{
|
|
1403
|
-
"code": "
|
|
1404
|
-
"category": "
|
|
1405
|
-
"description": "
|
|
1398
|
+
"code": "ORB_RENDER_UNBOUND_TRAIT_KNOB_EMBEDDED",
|
|
1399
|
+
"category": "render_ui",
|
|
1400
|
+
"description": "A render-ui embeds a trait-typed value that may be unbound without a guard, so it renders nothing"
|
|
1406
1401
|
},
|
|
1407
1402
|
{
|
|
1408
|
-
"code": "
|
|
1409
|
-
"category": "
|
|
1410
|
-
"description": "A
|
|
1403
|
+
"code": "ORB_RUI_CHILD_NOT_DRAWABLE",
|
|
1404
|
+
"category": "render_ui",
|
|
1405
|
+
"description": "A non-drawable child is composed under a canvas draw-host, which paints only neutral drawable descriptors"
|
|
1411
1406
|
},
|
|
1412
1407
|
{
|
|
1413
|
-
"code": "
|
|
1414
|
-
"category": "
|
|
1415
|
-
"description": "An
|
|
1408
|
+
"code": "ORB_RUI_ELEMENT_SHAPE_MISMATCH",
|
|
1409
|
+
"category": "render_ui",
|
|
1410
|
+
"description": "An element of a pattern prop is missing a field required by the pattern's element shape"
|
|
1416
1411
|
},
|
|
1417
1412
|
{
|
|
1418
|
-
"code": "
|
|
1419
|
-
"category": "
|
|
1420
|
-
"description": "
|
|
1413
|
+
"code": "ORB_RUI_FORM_FIELD_INTRINSIC",
|
|
1414
|
+
"category": "render_ui",
|
|
1415
|
+
"description": "A form pattern offers an input for an intrinsic entity field, which is never persisted so the input is discarded"
|
|
1421
1416
|
},
|
|
1422
1417
|
{
|
|
1423
|
-
"code": "
|
|
1424
|
-
"category": "
|
|
1425
|
-
"description": "
|
|
1418
|
+
"code": "ORB_RUI_INVALID_FIELD_PATH",
|
|
1419
|
+
"category": "render_ui",
|
|
1420
|
+
"description": "A nested field path references an invalid relation or field"
|
|
1426
1421
|
},
|
|
1427
1422
|
{
|
|
1428
|
-
"code": "
|
|
1429
|
-
"category": "
|
|
1430
|
-
"description": "
|
|
1423
|
+
"code": "ORB_RUI_INVALID_ITEM_ACTION",
|
|
1424
|
+
"category": "render_ui",
|
|
1425
|
+
"description": "An itemAction configuration on a rendered pattern is invalid"
|
|
1431
1426
|
},
|
|
1432
1427
|
{
|
|
1433
|
-
"code": "
|
|
1434
|
-
"category": "
|
|
1435
|
-
"description": "
|
|
1428
|
+
"code": "ORB_RUI_INVALID_PATTERN",
|
|
1429
|
+
"category": "render_ui",
|
|
1430
|
+
"description": "A render-ui pattern type is not in the pattern registry"
|
|
1436
1431
|
},
|
|
1437
1432
|
{
|
|
1438
|
-
"code": "
|
|
1439
|
-
"category": "
|
|
1440
|
-
"description": "
|
|
1433
|
+
"code": "ORB_RUI_INVALID_PROP",
|
|
1434
|
+
"category": "render_ui",
|
|
1435
|
+
"description": "A render-ui pattern is given a prop that the pattern does not define"
|
|
1441
1436
|
},
|
|
1442
1437
|
{
|
|
1443
|
-
"code": "
|
|
1444
|
-
"category": "
|
|
1445
|
-
"description": "
|
|
1438
|
+
"code": "ORB_RUI_INVALID_SLOT",
|
|
1439
|
+
"category": "render_ui",
|
|
1440
|
+
"description": "A render-ui effect targets an invalid slot"
|
|
1446
1441
|
},
|
|
1447
1442
|
{
|
|
1448
|
-
"code": "
|
|
1449
|
-
"category": "
|
|
1450
|
-
"description": "
|
|
1443
|
+
"code": "ORB_RUI_MISSING_ACTION",
|
|
1444
|
+
"category": "render_ui",
|
|
1445
|
+
"description": "A render-ui pattern that needs an interaction target has no action, onClick, event or href"
|
|
1451
1446
|
},
|
|
1452
1447
|
{
|
|
1453
|
-
"code": "
|
|
1454
|
-
"category": "
|
|
1455
|
-
"description": "
|
|
1448
|
+
"code": "ORB_RUI_MISSING_PATTERN_TYPE",
|
|
1449
|
+
"category": "render_ui",
|
|
1450
|
+
"description": "A render-ui pattern has no type property"
|
|
1456
1451
|
},
|
|
1457
1452
|
{
|
|
1458
|
-
"code": "
|
|
1459
|
-
"category": "
|
|
1460
|
-
"description": "
|
|
1453
|
+
"code": "ORB_RUI_MISSING_REQUIRED_PROP",
|
|
1454
|
+
"category": "render_ui",
|
|
1455
|
+
"description": "A render-ui pattern is missing a prop that the pattern requires"
|
|
1461
1456
|
},
|
|
1462
1457
|
{
|
|
1463
|
-
"code": "
|
|
1458
|
+
"code": "ORB_RUI_PROP_TYPE_MISMATCH",
|
|
1464
1459
|
"category": "render_ui",
|
|
1465
|
-
"description": "A render-ui pattern prop
|
|
1460
|
+
"description": "A render-ui pattern prop has a value that is not one of its allowed values"
|
|
1466
1461
|
},
|
|
1467
1462
|
{
|
|
1468
|
-
"code": "
|
|
1469
|
-
"category": "
|
|
1470
|
-
"description": "
|
|
1463
|
+
"code": "ORB_RUI_RENDERABLE_IN_GENERIC_FIELD",
|
|
1464
|
+
"category": "render_ui",
|
|
1465
|
+
"description": "A render-ui pattern literal is passed to a field not typed node, hiding renderable content from render-ui checks"
|
|
1471
1466
|
},
|
|
1472
1467
|
{
|
|
1473
|
-
"code": "
|
|
1474
|
-
"category": "
|
|
1475
|
-
"description": "
|
|
1468
|
+
"code": "ORB_SET_COLUMN_WITHOUT_ROW",
|
|
1469
|
+
"category": "entity_mutation",
|
|
1470
|
+
"description": "A set writes an entity column with no row in scope and no persist create or update that could land it"
|
|
1476
1471
|
},
|
|
1477
1472
|
{
|
|
1478
|
-
"code": "
|
|
1479
|
-
"category": "
|
|
1480
|
-
"description": "
|
|
1473
|
+
"code": "ORB_SHARED_ENTITY_FIELD_CONFLICT",
|
|
1474
|
+
"category": "entity_mutation",
|
|
1475
|
+
"description": "A field of a shared entity is written by more than one trait"
|
|
1481
1476
|
},
|
|
1482
1477
|
{
|
|
1483
|
-
"code": "
|
|
1484
|
-
"category": "
|
|
1485
|
-
"description": "
|
|
1478
|
+
"code": "ORB_SHARED_ENTITY_RENDER_AUTHORITY",
|
|
1479
|
+
"category": "entity_mutation",
|
|
1480
|
+
"description": "A shared entity is render-ui-read by more than one trait, but only one render authority is allowed per entity and slot"
|
|
1486
1481
|
},
|
|
1487
1482
|
{
|
|
1488
|
-
"code": "
|
|
1489
|
-
"category": "
|
|
1490
|
-
"description": "
|
|
1483
|
+
"code": "ORB_SLOT_CONTENTION",
|
|
1484
|
+
"category": "slot",
|
|
1485
|
+
"description": "Multiple traits on a page render into the same slot"
|
|
1491
1486
|
},
|
|
1492
1487
|
{
|
|
1493
|
-
"code": "
|
|
1494
|
-
"category": "
|
|
1495
|
-
"description": "
|
|
1488
|
+
"code": "ORB_SLOT_CONTENTION_RUNTIME",
|
|
1489
|
+
"category": "slot",
|
|
1490
|
+
"description": "Several traits render to the same slot in the same state, so they contend for it"
|
|
1496
1491
|
},
|
|
1497
1492
|
{
|
|
1498
|
-
"code": "
|
|
1499
|
-
"category": "
|
|
1500
|
-
"description": "
|
|
1493
|
+
"code": "ORB_SLOT_CONTENTION_TICK",
|
|
1494
|
+
"category": "slot",
|
|
1495
|
+
"description": "Several traits on a page render into the same slot from ticks, so their output contends"
|
|
1501
1496
|
},
|
|
1502
1497
|
{
|
|
1503
|
-
"code": "
|
|
1504
|
-
"category": "
|
|
1505
|
-
"description": "
|
|
1498
|
+
"code": "ORB_SLOT_INVALID_NESTING",
|
|
1499
|
+
"category": "slot",
|
|
1500
|
+
"description": "A slot is nested in an invalid way"
|
|
1506
1501
|
},
|
|
1507
1502
|
{
|
|
1508
|
-
"code": "
|
|
1509
|
-
"category": "
|
|
1510
|
-
"description": "
|
|
1503
|
+
"code": "ORB_SLOT_MAIN_NOT_COVERED",
|
|
1504
|
+
"category": "slot",
|
|
1505
|
+
"description": "No trait on a page renders anything into the main slot"
|
|
1511
1506
|
},
|
|
1512
1507
|
{
|
|
1513
|
-
"code": "
|
|
1514
|
-
"category": "
|
|
1515
|
-
"description": "
|
|
1508
|
+
"code": "ORB_STORE_DRIVER_CONTRACT",
|
|
1509
|
+
"category": "store",
|
|
1510
|
+
"description": "A store driver has no trait handling one or more verbs required by the row-store driver contract"
|
|
1516
1511
|
},
|
|
1517
1512
|
{
|
|
1518
|
-
"code": "
|
|
1519
|
-
"category": "
|
|
1520
|
-
"description": "
|
|
1513
|
+
"code": "ORB_STORE_DRIVER_NOT_CONDITIONAL",
|
|
1514
|
+
"category": "store",
|
|
1515
|
+
"description": "A conditional persist op is bound to a store driver that cannot execute conditional writes"
|
|
1521
1516
|
},
|
|
1522
1517
|
{
|
|
1523
|
-
"code": "
|
|
1524
|
-
"category": "
|
|
1525
|
-
"description": "
|
|
1518
|
+
"code": "ORB_STORE_ON_NON_PERSISTENT",
|
|
1519
|
+
"category": "store",
|
|
1520
|
+
"description": "An entity binds a store but its rows live in no store"
|
|
1526
1521
|
},
|
|
1527
1522
|
{
|
|
1528
|
-
"code": "
|
|
1529
|
-
"category": "
|
|
1530
|
-
"description": "
|
|
1523
|
+
"code": "ORB_STORE_UNKNOWN_ORBITAL",
|
|
1524
|
+
"category": "store",
|
|
1525
|
+
"description": "A store binding names an orbital that is not part of the program"
|
|
1531
1526
|
},
|
|
1532
1527
|
{
|
|
1533
|
-
"code": "
|
|
1534
|
-
"category": "
|
|
1535
|
-
"description": "
|
|
1528
|
+
"code": "ORB_STORE_VERB_OUTSIDE_SEAM",
|
|
1529
|
+
"category": "store",
|
|
1530
|
+
"description": "A trait emits a row-store verb directly, but a store driver may be asked only by the store seam"
|
|
1536
1531
|
},
|
|
1537
1532
|
{
|
|
1538
|
-
"code": "
|
|
1539
|
-
"category": "
|
|
1540
|
-
"description": "
|
|
1533
|
+
"code": "ORB_S_ACCESS_POLICY_INVALID_BINDING",
|
|
1534
|
+
"category": "schema",
|
|
1535
|
+
"description": "An access directive uses a binding other than the ones legal there"
|
|
1541
1536
|
},
|
|
1542
1537
|
{
|
|
1543
|
-
"code": "
|
|
1544
|
-
"category": "
|
|
1545
|
-
"description": "
|
|
1538
|
+
"code": "ORB_S_ACCESS_POLICY_REQUIRES_IDENTITY",
|
|
1539
|
+
"category": "schema",
|
|
1540
|
+
"description": "An access directive reads @user but the program declares no identity entity"
|
|
1546
1541
|
},
|
|
1547
1542
|
{
|
|
1548
|
-
"code": "
|
|
1549
|
-
"category": "
|
|
1550
|
-
"description": "
|
|
1543
|
+
"code": "ORB_S_ACCESS_POLICY_UNKNOWN_ENTITY_FIELD",
|
|
1544
|
+
"category": "schema",
|
|
1545
|
+
"description": "An access policy references a name that is not a field of its entity, so it resolves to null and denies everyone"
|
|
1551
1546
|
},
|
|
1552
1547
|
{
|
|
1553
|
-
"code": "
|
|
1554
|
-
"category": "
|
|
1555
|
-
"description": "
|
|
1548
|
+
"code": "ORB_S_COLLECTION_POLICY_CONFLICT",
|
|
1549
|
+
"category": "schema",
|
|
1550
|
+
"description": "Entities bound to the same collection declare different access directives"
|
|
1556
1551
|
},
|
|
1557
1552
|
{
|
|
1558
|
-
"code": "
|
|
1559
|
-
"category": "
|
|
1560
|
-
"description": "
|
|
1553
|
+
"code": "ORB_S_EMPTY_VERSION",
|
|
1554
|
+
"category": "schema",
|
|
1555
|
+
"description": "The schema version is empty"
|
|
1561
1556
|
},
|
|
1562
1557
|
{
|
|
1563
|
-
"code": "
|
|
1564
|
-
"category": "
|
|
1565
|
-
"description": "
|
|
1558
|
+
"code": "ORB_S_EXPECTATION_FIELD_UNDECLARED",
|
|
1559
|
+
"category": "schema",
|
|
1560
|
+
"description": "An effect persists a field that the orbital's expects entity shape does not declare"
|
|
1566
1561
|
},
|
|
1567
1562
|
{
|
|
1568
|
-
"code": "
|
|
1569
|
-
"category": "
|
|
1570
|
-
"description": "
|
|
1563
|
+
"code": "ORB_S_EXPECTATION_PROVIDER_MISMATCH",
|
|
1564
|
+
"category": "schema",
|
|
1565
|
+
"description": "An expectation requires a field to be marked as a key but the providing entity declares it without that mark"
|
|
1571
1566
|
},
|
|
1572
1567
|
{
|
|
1573
|
-
"code": "
|
|
1574
|
-
"category": "
|
|
1575
|
-
"description": "
|
|
1568
|
+
"code": "ORB_S_EXPECTATION_UNSATISFIED",
|
|
1569
|
+
"category": "schema",
|
|
1570
|
+
"description": "An orbital expects an entity, trait, event, or config default that nothing in the program provides"
|
|
1576
1571
|
},
|
|
1577
1572
|
{
|
|
1578
|
-
"code": "
|
|
1579
|
-
"category": "
|
|
1580
|
-
"description": "A
|
|
1573
|
+
"code": "ORB_S_EXPECTED_FIELD_NOT_PROVIDED",
|
|
1574
|
+
"category": "schema",
|
|
1575
|
+
"description": "A rebound entity does not provide a field that the trait expects it to have"
|
|
1581
1576
|
},
|
|
1582
1577
|
{
|
|
1583
|
-
"code": "
|
|
1584
|
-
"category": "
|
|
1585
|
-
"description": "
|
|
1578
|
+
"code": "ORB_S_EXPECTED_FIELD_TYPE_MISMATCH",
|
|
1579
|
+
"category": "schema",
|
|
1580
|
+
"description": "The provider has the expected field or knob but with an incompatible type"
|
|
1586
1581
|
},
|
|
1587
1582
|
{
|
|
1588
|
-
"code": "
|
|
1589
|
-
"category": "
|
|
1590
|
-
"description": "
|
|
1583
|
+
"code": "ORB_S_IDENTITY_NOT_UNIQUE",
|
|
1584
|
+
"category": "schema",
|
|
1585
|
+
"description": "More than one entity is tagged identity, making every @user field reference ambiguous"
|
|
1591
1586
|
},
|
|
1592
1587
|
{
|
|
1593
|
-
"code": "
|
|
1594
|
-
"category": "
|
|
1595
|
-
"description": "A
|
|
1588
|
+
"code": "ORB_S_INVARIANT_UNPROVED",
|
|
1589
|
+
"category": "spec",
|
|
1590
|
+
"description": "A spec proposition the prover cannot decide, so the program is not shown to keep it"
|
|
1596
1591
|
},
|
|
1597
1592
|
{
|
|
1598
|
-
"code": "
|
|
1599
|
-
"category": "
|
|
1600
|
-
"description": "A
|
|
1593
|
+
"code": "ORB_S_INVARIANT_VIOLATED",
|
|
1594
|
+
"category": "spec",
|
|
1595
|
+
"description": "A spec proposition (invariant, holds, ensures) is broken by a write, with a counterexample the evaluator confirms"
|
|
1601
1596
|
},
|
|
1602
1597
|
{
|
|
1603
|
-
"code": "
|
|
1604
|
-
"category": "
|
|
1605
|
-
"description": "
|
|
1598
|
+
"code": "ORB_S_MISSING_NAME",
|
|
1599
|
+
"category": "schema",
|
|
1600
|
+
"description": "The schema does not declare a name"
|
|
1606
1601
|
},
|
|
1607
1602
|
{
|
|
1608
|
-
"code": "
|
|
1609
|
-
"category": "
|
|
1610
|
-
"description": "
|
|
1603
|
+
"code": "ORB_S_NO_ORBITALS",
|
|
1604
|
+
"category": "schema",
|
|
1605
|
+
"description": "The schema declares no orbitals"
|
|
1611
1606
|
},
|
|
1612
1607
|
{
|
|
1613
|
-
"code": "
|
|
1614
|
-
"category": "
|
|
1615
|
-
"description": "
|
|
1608
|
+
"code": "ORB_S_OWNER_FIELD_NOT_IDENTITY_TYPED",
|
|
1609
|
+
"category": "schema",
|
|
1610
|
+
"description": "An access directive compares a field to @user.id but the field is not a relation to the identity entity"
|
|
1616
1611
|
},
|
|
1617
1612
|
{
|
|
1618
|
-
"code": "
|
|
1619
|
-
"category": "
|
|
1620
|
-
"description": "A
|
|
1613
|
+
"code": "ORB_S_ROLE_LITERAL_NOT_MEMBER",
|
|
1614
|
+
"category": "schema",
|
|
1615
|
+
"description": "A literal compared against an @user field with a closed vocabulary is not a member of that vocabulary, so the branch can never be taken"
|
|
1621
1616
|
},
|
|
1622
1617
|
{
|
|
1623
|
-
"code": "
|
|
1624
|
-
"category": "
|
|
1625
|
-
"description": "
|
|
1618
|
+
"code": "ORB_S_SHARED_WITHOUT_PERSISTENCE_MODE",
|
|
1619
|
+
"category": "schema",
|
|
1620
|
+
"description": "A shared entity declares no persistence mode, and none may be inferred"
|
|
1626
1621
|
},
|
|
1627
1622
|
{
|
|
1628
|
-
"code": "
|
|
1629
|
-
"category": "
|
|
1630
|
-
"description": "
|
|
1623
|
+
"code": "ORB_S_UNKNOWN_IDENTITY_FIELD",
|
|
1624
|
+
"category": "schema",
|
|
1625
|
+
"description": "A read of a field of the signed-in user names a field the declared identity entity does not have"
|
|
1631
1626
|
},
|
|
1632
1627
|
{
|
|
1633
|
-
"code": "
|
|
1634
|
-
"category": "
|
|
1635
|
-
"description": "
|
|
1628
|
+
"code": "ORB_TAB_EFFECT_ON_SERVER",
|
|
1629
|
+
"category": "tab",
|
|
1630
|
+
"description": "A browser tab effect is used in a transition that runs on the server, which holds no tabs"
|
|
1636
1631
|
},
|
|
1637
1632
|
{
|
|
1638
|
-
"code": "
|
|
1639
|
-
"category": "
|
|
1640
|
-
"description": "
|
|
1633
|
+
"code": "ORB_TAB_REQUEST_INVALID",
|
|
1634
|
+
"category": "browser",
|
|
1635
|
+
"description": "A browser/tab request is not an object of the operation's closed keys or has refused literal values"
|
|
1641
1636
|
},
|
|
1642
1637
|
{
|
|
1643
|
-
"code": "
|
|
1644
|
-
"category": "
|
|
1645
|
-
"description": "
|
|
1638
|
+
"code": "ORB_THEME_PIN_CONTRADICTS_APP",
|
|
1639
|
+
"category": "theme",
|
|
1640
|
+
"description": "An orbital pins a theme that differs from the theme the app declares at app level"
|
|
1646
1641
|
},
|
|
1647
1642
|
{
|
|
1648
|
-
"code": "
|
|
1649
|
-
"category": "
|
|
1650
|
-
"description": "
|
|
1643
|
+
"code": "ORB_THEME_UNDECLARED",
|
|
1644
|
+
"category": "theme",
|
|
1645
|
+
"description": "A frame is shown in a literal theme that the program does not declare, so no stylesheet ships for it"
|
|
1651
1646
|
},
|
|
1652
1647
|
{
|
|
1653
|
-
"code": "
|
|
1654
|
-
"category": "
|
|
1655
|
-
"description": "
|
|
1648
|
+
"code": "ORB_TICK_ASYNC_EFFECT",
|
|
1649
|
+
"category": "tick",
|
|
1650
|
+
"description": "A tick calls a server-async operator, which ticks cannot run"
|
|
1656
1651
|
},
|
|
1657
1652
|
{
|
|
1658
|
-
"code": "
|
|
1659
|
-
"category": "
|
|
1660
|
-
"description": "
|
|
1653
|
+
"code": "ORB_TICK_REQUIRES_RUNTIME",
|
|
1654
|
+
"category": "trait",
|
|
1655
|
+
"description": "A non-cron tick mutates a persistent entity, which should usually be runtime"
|
|
1661
1656
|
},
|
|
1662
1657
|
{
|
|
1663
|
-
"code": "
|
|
1664
|
-
"category": "
|
|
1665
|
-
"description": "
|
|
1658
|
+
"code": "ORB_T_CLIENT_TICK_NOT_LOCAL",
|
|
1659
|
+
"category": "trait",
|
|
1660
|
+
"description": "A trait writes a frame entity ticked on the client but declares no dispatch mode, so a server step overwrites the live frame"
|
|
1666
1661
|
},
|
|
1667
1662
|
{
|
|
1668
|
-
"code": "
|
|
1669
|
-
"category": "
|
|
1670
|
-
"description": "
|
|
1663
|
+
"code": "ORB_T_CLIENT_TICK_SERVER_EFFECT",
|
|
1664
|
+
"category": "trait",
|
|
1665
|
+
"description": "A tick that runs in the browser has effects that reach the server, and nothing replays a tick there"
|
|
1671
1666
|
},
|
|
1672
1667
|
{
|
|
1673
|
-
"code": "
|
|
1674
|
-
"category": "
|
|
1675
|
-
"description": "
|
|
1668
|
+
"code": "ORB_T_CONFIG_MISSING_REQUIRED_KEY",
|
|
1669
|
+
"category": "trait",
|
|
1670
|
+
"description": "A trait reference does not supply a config knob that the referenced trait declares as required"
|
|
1676
1671
|
},
|
|
1677
1672
|
{
|
|
1678
|
-
"code": "
|
|
1679
|
-
"category": "
|
|
1680
|
-
"description": "
|
|
1673
|
+
"code": "ORB_T_CONFIG_OBJECT_ARRAY_FORBIDDEN",
|
|
1674
|
+
"category": "trait",
|
|
1675
|
+
"description": "A config field uses a banned bare object or array type instead of a named struct alias"
|
|
1681
1676
|
},
|
|
1682
1677
|
{
|
|
1683
|
-
"code": "
|
|
1684
|
-
"category": "
|
|
1685
|
-
"description": "A
|
|
1678
|
+
"code": "ORB_T_CONFIG_TIER_INVALID",
|
|
1679
|
+
"category": "trait",
|
|
1680
|
+
"description": "A config field declares a tier value outside domain, policy, infra, presentation and internal"
|
|
1686
1681
|
},
|
|
1687
1682
|
{
|
|
1688
|
-
"code": "
|
|
1689
|
-
"category": "
|
|
1690
|
-
"description": "A
|
|
1683
|
+
"code": "ORB_T_CONFIG_UNKNOWN_CALL_SITE_KEY",
|
|
1684
|
+
"category": "trait",
|
|
1685
|
+
"description": "A call-site config key matches no config knob declared on the referenced trait"
|
|
1691
1686
|
},
|
|
1692
1687
|
{
|
|
1693
|
-
"code": "
|
|
1694
|
-
"category": "
|
|
1695
|
-
"description": "The
|
|
1688
|
+
"code": "ORB_T_DUPLICATE_NAME",
|
|
1689
|
+
"category": "trait",
|
|
1690
|
+
"description": "The same trait name is defined in more than one orbital"
|
|
1696
1691
|
},
|
|
1697
1692
|
{
|
|
1698
|
-
"code": "
|
|
1699
|
-
"category": "
|
|
1700
|
-
"description": "A
|
|
1693
|
+
"code": "ORB_T_DUPLICATE_STATE",
|
|
1694
|
+
"category": "trait",
|
|
1695
|
+
"description": "A trait declares the same state name more than once"
|
|
1701
1696
|
},
|
|
1702
1697
|
{
|
|
1703
|
-
"code": "
|
|
1704
|
-
"category": "
|
|
1705
|
-
"description": "
|
|
1698
|
+
"code": "ORB_T_DUPLICATE_TRANSITION",
|
|
1699
|
+
"category": "trait",
|
|
1700
|
+
"description": "Two transitions share the same source state and event without guards"
|
|
1706
1701
|
},
|
|
1707
1702
|
{
|
|
1708
|
-
"code": "
|
|
1709
|
-
"category": "
|
|
1710
|
-
"description": "
|
|
1703
|
+
"code": "ORB_T_EMPTY_EVENT_NAME",
|
|
1704
|
+
"category": "trait",
|
|
1705
|
+
"description": "An event name is empty"
|
|
1711
1706
|
},
|
|
1712
1707
|
{
|
|
1713
|
-
"code": "
|
|
1714
|
-
"category": "
|
|
1715
|
-
"description": "A
|
|
1708
|
+
"code": "ORB_T_ENDPOINT_TRAIT_RENDERS",
|
|
1709
|
+
"category": "trait",
|
|
1710
|
+
"description": "A trait mounted only on protocol endpoints renders UI, which endpoints cannot show"
|
|
1716
1711
|
},
|
|
1717
1712
|
{
|
|
1718
|
-
"code": "
|
|
1719
|
-
"category": "
|
|
1720
|
-
"description": "
|
|
1713
|
+
"code": "ORB_T_ENTITY_NAME_SHADOWS_TRAIT_UNION",
|
|
1714
|
+
"category": "trait",
|
|
1715
|
+
"description": "An entity name collides with a trait's generated state union type"
|
|
1721
1716
|
},
|
|
1722
1717
|
{
|
|
1723
|
-
"code": "
|
|
1724
|
-
"category": "
|
|
1725
|
-
"description": "A
|
|
1718
|
+
"code": "ORB_T_ENTITY_NOT_REBINDABLE",
|
|
1719
|
+
"category": "trait",
|
|
1720
|
+
"description": "A trait is bound to an entity it cannot be rebound to"
|
|
1726
1721
|
},
|
|
1727
1722
|
{
|
|
1728
|
-
"code": "
|
|
1729
|
-
"category": "
|
|
1730
|
-
"description": "
|
|
1723
|
+
"code": "ORB_T_EVENT_RENAME_UNKNOWN_KEY",
|
|
1724
|
+
"category": "trait",
|
|
1725
|
+
"description": "An events rename key names no event declared by the referenced trait"
|
|
1731
1726
|
},
|
|
1732
1727
|
{
|
|
1733
|
-
"code": "
|
|
1734
|
-
"category": "
|
|
1735
|
-
"description": "
|
|
1728
|
+
"code": "ORB_T_EVT_EXTERNAL_MISSING_PAYLOAD",
|
|
1729
|
+
"category": "trait",
|
|
1730
|
+
"description": "An external event does not declare a typed payload"
|
|
1736
1731
|
},
|
|
1737
1732
|
{
|
|
1738
|
-
"code": "
|
|
1739
|
-
"category": "
|
|
1740
|
-
"description": "
|
|
1733
|
+
"code": "ORB_T_EVT_INVALID_NAME",
|
|
1734
|
+
"category": "trait",
|
|
1735
|
+
"description": "An event name is not a valid UPPER_SNAKE_CASE identifier"
|
|
1741
1736
|
},
|
|
1742
1737
|
{
|
|
1743
|
-
"code": "
|
|
1744
|
-
"category": "
|
|
1745
|
-
"description": "
|
|
1738
|
+
"code": "ORB_T_EVT_UNDECLARED",
|
|
1739
|
+
"category": "trait",
|
|
1740
|
+
"description": "An event is emitted but not declared in the trait's emits array"
|
|
1746
1741
|
},
|
|
1747
1742
|
{
|
|
1748
|
-
"code": "
|
|
1749
|
-
"category": "
|
|
1750
|
-
"description": "
|
|
1743
|
+
"code": "ORB_T_EXTERNAL_INPUT_NOT_RESTING",
|
|
1744
|
+
"category": "trait",
|
|
1745
|
+
"description": "An external input is not accepted from the trait's initial state"
|
|
1751
1746
|
},
|
|
1752
1747
|
{
|
|
1753
|
-
"code": "
|
|
1754
|
-
"category": "
|
|
1755
|
-
"description": "A
|
|
1748
|
+
"code": "ORB_T_GENERIC_TYPE_DEPRECATED",
|
|
1749
|
+
"category": "trait",
|
|
1750
|
+
"description": "A declaration uses a generic type such as bare json, object without properties, or any, which the language no longer allows"
|
|
1756
1751
|
},
|
|
1757
1752
|
{
|
|
1758
|
-
"code": "
|
|
1759
|
-
"category": "
|
|
1760
|
-
"description": "
|
|
1753
|
+
"code": "ORB_T_INIT_MISSING_FETCH",
|
|
1754
|
+
"category": "trait",
|
|
1755
|
+
"description": "No trait fetches a persistent entity on INIT, so interaction traits read data nothing loads"
|
|
1761
1756
|
},
|
|
1762
1757
|
{
|
|
1763
|
-
"code": "
|
|
1764
|
-
"category": "
|
|
1765
|
-
"description": "
|
|
1758
|
+
"code": "ORB_T_INVALID_EVENT_DEFAULT",
|
|
1759
|
+
"category": "trait",
|
|
1760
|
+
"description": "A config field typed event holds a value that is not a valid event name or member of the trait's event set"
|
|
1766
1761
|
},
|
|
1767
1762
|
{
|
|
1768
|
-
"code": "
|
|
1769
|
-
"category": "
|
|
1770
|
-
"description": "
|
|
1763
|
+
"code": "ORB_T_INVALID_FORMAT",
|
|
1764
|
+
"category": "trait",
|
|
1765
|
+
"description": "A trait reference has neither a ref nor a name property"
|
|
1771
1766
|
},
|
|
1772
1767
|
{
|
|
1773
|
-
"code": "
|
|
1774
|
-
"category": "
|
|
1775
|
-
"description": "
|
|
1768
|
+
"code": "ORB_T_INVALID_PATTERN_DEFAULT",
|
|
1769
|
+
"category": "trait",
|
|
1770
|
+
"description": "A pattern-typed config knob has a default that is not a known pattern type"
|
|
1776
1771
|
},
|
|
1777
1772
|
{
|
|
1778
|
-
"code": "
|
|
1779
|
-
"category": "
|
|
1780
|
-
"description": "
|
|
1773
|
+
"code": "ORB_T_INVALID_SLOT_DEFAULT",
|
|
1774
|
+
"category": "trait",
|
|
1775
|
+
"description": "A slot-typed config field has a default that is not a valid slot"
|
|
1781
1776
|
},
|
|
1782
1777
|
{
|
|
1783
|
-
"code": "
|
|
1784
|
-
"category": "
|
|
1785
|
-
"description": "
|
|
1778
|
+
"code": "ORB_T_INVALID_TRANSITION",
|
|
1779
|
+
"category": "trait",
|
|
1780
|
+
"description": "A transition references a source or target state that does not exist"
|
|
1786
1781
|
},
|
|
1787
1782
|
{
|
|
1788
|
-
"code": "
|
|
1789
|
-
"category": "
|
|
1790
|
-
"description": "
|
|
1783
|
+
"code": "ORB_T_LOCAL_ON_NON_SHARED_PERSISTENT",
|
|
1784
|
+
"category": "trait",
|
|
1785
|
+
"description": "A client-dispatch trait is linked to an entity that is neither shared nor client-resident, hiding server-gated writes behind optimism"
|
|
1791
1786
|
},
|
|
1792
1787
|
{
|
|
1793
|
-
"code": "
|
|
1794
|
-
"category": "
|
|
1795
|
-
"description": "
|
|
1788
|
+
"code": "ORB_T_LOCAL_TRAIT_TOUCHES_SERVER",
|
|
1789
|
+
"category": "trait",
|
|
1790
|
+
"description": "A client trait transition guards on or touches server-only state"
|
|
1796
1791
|
},
|
|
1797
1792
|
{
|
|
1798
|
-
"code": "
|
|
1799
|
-
"category": "
|
|
1800
|
-
"description": "
|
|
1793
|
+
"code": "ORB_T_MISSING_INIT_TRANSITION",
|
|
1794
|
+
"category": "trait",
|
|
1795
|
+
"description": "A route trait has no INIT transition on its initial state"
|
|
1801
1796
|
},
|
|
1802
1797
|
{
|
|
1803
|
-
"code": "
|
|
1804
|
-
"category": "
|
|
1805
|
-
"description": "
|
|
1798
|
+
"code": "ORB_T_MULTIPLE_INITIAL_STATES",
|
|
1799
|
+
"category": "trait",
|
|
1800
|
+
"description": "A trait state machine declares more than one initial state"
|
|
1806
1801
|
},
|
|
1807
1802
|
{
|
|
1808
|
-
"code": "
|
|
1809
|
-
"category": "
|
|
1810
|
-
"description": "
|
|
1803
|
+
"code": "ORB_T_NO_INITIAL_STATE",
|
|
1804
|
+
"category": "trait",
|
|
1805
|
+
"description": "A state machine declares no states and so has no initial state"
|
|
1811
1806
|
},
|
|
1812
1807
|
{
|
|
1813
|
-
"code": "
|
|
1814
|
-
"category": "
|
|
1815
|
-
"description": "
|
|
1808
|
+
"code": "ORB_T_REBIND_MISSING_FIELDS",
|
|
1809
|
+
"category": "trait",
|
|
1810
|
+
"description": "A trait is rebound to an entity that lacks fields the trait requires"
|
|
1816
1811
|
},
|
|
1817
1812
|
{
|
|
1818
|
-
"code": "
|
|
1819
|
-
"category": "
|
|
1820
|
-
"description": "
|
|
1813
|
+
"code": "ORB_T_REBIND_TARGET_UNRESOLVED",
|
|
1814
|
+
"category": "trait",
|
|
1815
|
+
"description": "A trait rebind target cannot be resolved"
|
|
1821
1816
|
},
|
|
1822
1817
|
{
|
|
1823
|
-
"code": "
|
|
1824
|
-
"category": "
|
|
1825
|
-
"description": "
|
|
1818
|
+
"code": "ORB_T_SECRET_DEFAULT_NOT_STRING",
|
|
1819
|
+
"category": "trait",
|
|
1820
|
+
"description": "A config field typed secret does not default to a string credential reference"
|
|
1826
1821
|
},
|
|
1827
1822
|
{
|
|
1828
|
-
"code": "
|
|
1829
|
-
"category": "
|
|
1830
|
-
"description": "A
|
|
1823
|
+
"code": "ORB_T_STATE_UNREACHABLE",
|
|
1824
|
+
"category": "trait",
|
|
1825
|
+
"description": "A state is unreachable from the initial state through any transition path"
|
|
1831
1826
|
},
|
|
1832
1827
|
{
|
|
1833
|
-
"code": "
|
|
1834
|
-
"category": "
|
|
1835
|
-
"description": "
|
|
1828
|
+
"code": "ORB_T_TRAIT_ON_ROUTE_AND_ENDPOINT",
|
|
1829
|
+
"category": "trait",
|
|
1830
|
+
"description": "A trait is mounted on both a route page and a protocol endpoint"
|
|
1836
1831
|
},
|
|
1837
1832
|
{
|
|
1838
|
-
"code": "
|
|
1839
|
-
"category": "
|
|
1840
|
-
"description": "
|
|
1833
|
+
"code": "ORB_T_TRAIT_UNMOUNTED",
|
|
1834
|
+
"category": "trait",
|
|
1835
|
+
"description": "A trait owns a state machine but is listed on no page and reached by no embed"
|
|
1841
1836
|
},
|
|
1842
1837
|
{
|
|
1843
|
-
"code": "
|
|
1844
|
-
"category": "
|
|
1845
|
-
"description": "
|
|
1838
|
+
"code": "ORB_T_UNDEFINED_EVENT",
|
|
1839
|
+
"category": "trait",
|
|
1840
|
+
"description": "A transition uses an event that is not defined in the trait's events array"
|
|
1846
1841
|
},
|
|
1847
1842
|
{
|
|
1848
|
-
"code": "
|
|
1849
|
-
"category": "
|
|
1850
|
-
"description": "
|
|
1843
|
+
"code": "ORB_T_UNDEFINED_TRAIT",
|
|
1844
|
+
"category": "trait",
|
|
1845
|
+
"description": "A trait reference does not give a trait name"
|
|
1851
1846
|
},
|
|
1852
1847
|
{
|
|
1853
|
-
"code": "
|
|
1854
|
-
"category": "
|
|
1855
|
-
"description": "
|
|
1848
|
+
"code": "ORB_T_UNRESOLVED_TYPE_PARAM",
|
|
1849
|
+
"category": "trait",
|
|
1850
|
+
"description": "A declaration uses a type variable that no trait parameter binds"
|
|
1856
1851
|
},
|
|
1857
1852
|
{
|
|
1858
|
-
"code": "
|
|
1859
|
-
"category": "
|
|
1860
|
-
"description": "
|
|
1853
|
+
"code": "ORB_UI_ICON_EMPTY",
|
|
1854
|
+
"category": "icon",
|
|
1855
|
+
"description": "An icon name is empty"
|
|
1861
1856
|
},
|
|
1862
1857
|
{
|
|
1863
|
-
"code": "
|
|
1864
|
-
"category": "
|
|
1865
|
-
"description": "
|
|
1858
|
+
"code": "ORB_UI_ICON_INVALID_FORMAT",
|
|
1859
|
+
"category": "icon",
|
|
1860
|
+
"description": "An icon name has an invalid format"
|
|
1866
1861
|
},
|
|
1867
1862
|
{
|
|
1868
|
-
"code": "
|
|
1869
|
-
"category": "
|
|
1870
|
-
"description": "
|
|
1863
|
+
"code": "ORB_UI_ICON_NOT_FOUND",
|
|
1864
|
+
"category": "icon",
|
|
1865
|
+
"description": "An icon name does not exist in the icon set"
|
|
1871
1866
|
},
|
|
1872
1867
|
{
|
|
1873
|
-
"code": "
|
|
1874
|
-
"category": "
|
|
1875
|
-
"description": "A
|
|
1868
|
+
"code": "ORB_U_CONFIG_UNKNOWN_KEY",
|
|
1869
|
+
"category": "uses",
|
|
1870
|
+
"description": "A uses config override names a knob the imported behavior app-level config never declared"
|
|
1876
1871
|
},
|
|
1877
1872
|
{
|
|
1878
|
-
"code": "
|
|
1879
|
-
"category": "
|
|
1880
|
-
"description": "A
|
|
1873
|
+
"code": "ORB_W_LOOP_INVARIANT_PARSE",
|
|
1874
|
+
"category": "lint",
|
|
1875
|
+
"description": "A parse inside a lambda re-parses the same value for every element and should be bound once outside"
|
|
1881
1876
|
},
|
|
1882
1877
|
{
|
|
1883
|
-
"code": "
|
|
1878
|
+
"code": "ORB_X_CIRCULAR_DEPENDENCY",
|
|
1884
1879
|
"category": "cross",
|
|
1885
|
-
"description": "
|
|
1886
|
-
},
|
|
1887
|
-
{
|
|
1888
|
-
"code": "ORB_THEME_PIN_CONTRADICTS_APP",
|
|
1889
|
-
"category": "schema",
|
|
1890
|
-
"description": "A trait pins `config.theme` to a non-empty literal that isn't a binding (`@…`) and doesn't match the schema's app-level `theme` declaration. `\"\"` and bindings are unpinned — an orbital riding the ambient default is silent. L3 port of the app-level branch of JS `app-theme-divergent`; the dominant-vote branch is a name/plurality heuristic and is retired, not ported."
|
|
1880
|
+
"description": "Traits form a circular event dependency"
|
|
1891
1881
|
},
|
|
1892
1882
|
{
|
|
1893
|
-
"code": "
|
|
1894
|
-
"category": "
|
|
1895
|
-
"description": "
|
|
1883
|
+
"code": "ORB_X_CROSS_EMITTER_DECLARED_PAYLOAD_MISMATCH",
|
|
1884
|
+
"category": "cross",
|
|
1885
|
+
"description": "An event declared by several emitters has conflicting payload fields across them"
|
|
1896
1886
|
},
|
|
1897
1887
|
{
|
|
1898
|
-
"code": "
|
|
1899
|
-
"category": "
|
|
1900
|
-
"description": "
|
|
1888
|
+
"code": "ORB_X_DUPLICATE_ENTITY",
|
|
1889
|
+
"category": "cross",
|
|
1890
|
+
"description": "The same entity name is defined in more than one orbital"
|
|
1901
1891
|
},
|
|
1902
1892
|
{
|
|
1903
|
-
"code": "
|
|
1904
|
-
"category": "
|
|
1905
|
-
"description": "
|
|
1893
|
+
"code": "ORB_X_DUPLICATE_TRAIT_ID",
|
|
1894
|
+
"category": "cross",
|
|
1895
|
+
"description": "Two or more traits carry the same trait id, so listens match each other's emits"
|
|
1906
1896
|
},
|
|
1907
1897
|
{
|
|
1908
|
-
"code": "
|
|
1909
|
-
"category": "
|
|
1910
|
-
"description": "
|
|
1898
|
+
"code": "ORB_X_ENUM_VALUE_NOT_MEMBER",
|
|
1899
|
+
"category": "cross",
|
|
1900
|
+
"description": "A set effect assigns a string literal that is not a declared member of the target field's enum"
|
|
1911
1901
|
},
|
|
1912
1902
|
{
|
|
1913
|
-
"code": "
|
|
1914
|
-
"category": "
|
|
1915
|
-
"description": "
|
|
1903
|
+
"code": "ORB_X_FILTER_FIELD_NEVER_WRITTEN",
|
|
1904
|
+
"category": "cross",
|
|
1905
|
+
"description": "A fetch filters on a field that no persist create or update of that entity supplies, so it always returns empty"
|
|
1916
1906
|
},
|
|
1917
1907
|
{
|
|
1918
|
-
"code": "
|
|
1919
|
-
"category": "
|
|
1920
|
-
"description": "
|
|
1908
|
+
"code": "ORB_X_LISTEN_PER_ENTITY",
|
|
1909
|
+
"category": "trait_event",
|
|
1910
|
+
"description": "A trait that listens per a key does not link a [runtime] entity declaring an id : string field"
|
|
1921
1911
|
},
|
|
1922
1912
|
{
|
|
1923
|
-
"code": "
|
|
1924
|
-
"category": "
|
|
1925
|
-
"description": "
|
|
1913
|
+
"code": "ORB_X_LISTEN_PER_ROUTED_PAGE",
|
|
1914
|
+
"category": "trait_event",
|
|
1915
|
+
"description": "A trait that listens per a key is placed on a route page"
|
|
1926
1916
|
},
|
|
1927
1917
|
{
|
|
1928
|
-
"code": "
|
|
1929
|
-
"category": "
|
|
1930
|
-
"description": "
|
|
1918
|
+
"code": "ORB_X_LISTEN_SOURCE_NEVER_PRODUCES",
|
|
1919
|
+
"category": "cross",
|
|
1920
|
+
"description": "A listens route names a source whose emits contract never produces the listened event"
|
|
1931
1921
|
},
|
|
1932
1922
|
{
|
|
1933
|
-
"code": "
|
|
1934
|
-
"category": "
|
|
1935
|
-
"description": "
|
|
1923
|
+
"code": "ORB_X_LISTEN_SOURCE_UNRESOLVED",
|
|
1924
|
+
"category": "cross",
|
|
1925
|
+
"description": "A listen entry references a source trait event that the source does not declare"
|
|
1936
1926
|
},
|
|
1937
1927
|
{
|
|
1938
|
-
"code": "
|
|
1939
|
-
"category": "
|
|
1940
|
-
"description": "A
|
|
1928
|
+
"code": "ORB_X_LISTEN_TRIGGER_UNMATCHED",
|
|
1929
|
+
"category": "cross",
|
|
1930
|
+
"description": "A listens entry triggers an event that no transition in the same trait reacts to"
|
|
1941
1931
|
},
|
|
1942
1932
|
{
|
|
1943
|
-
"code": "
|
|
1944
|
-
"category": "
|
|
1945
|
-
"description": "A
|
|
1933
|
+
"code": "ORB_X_LLM_WIRE_UNROUTED",
|
|
1934
|
+
"category": "cross",
|
|
1935
|
+
"description": "A composed std-llm trait can emit a wire event that no trait in the program listens to"
|
|
1946
1936
|
},
|
|
1947
1937
|
{
|
|
1948
|
-
"code": "
|
|
1949
|
-
"category": "
|
|
1950
|
-
"description": "
|
|
1938
|
+
"code": "ORB_X_MISSING_ORBITAL_NAME",
|
|
1939
|
+
"category": "cross",
|
|
1940
|
+
"description": "An orbital does not declare a name"
|
|
1951
1941
|
},
|
|
1952
1942
|
{
|
|
1953
|
-
"code": "
|
|
1954
|
-
"category": "
|
|
1955
|
-
"description": "
|
|
1943
|
+
"code": "ORB_X_ORPHAN_LISTENER",
|
|
1944
|
+
"category": "cross",
|
|
1945
|
+
"description": "A trait listens for an event that no trait emits"
|
|
1956
1946
|
},
|
|
1957
1947
|
{
|
|
1958
|
-
"code": "
|
|
1959
|
-
"category": "
|
|
1960
|
-
"description": "
|
|
1948
|
+
"code": "ORB_X_PARALLEL_LAMBDA_IMPURE",
|
|
1949
|
+
"category": "parallel",
|
|
1950
|
+
"description": "The lambda of array/pmap or array/preduce is not a literal fn or is not provably pure"
|
|
1961
1951
|
},
|
|
1962
1952
|
{
|
|
1963
|
-
"code": "
|
|
1964
|
-
"category": "
|
|
1965
|
-
"description": "
|
|
1953
|
+
"code": "ORB_X_PAYLOAD_FIELD_NAME",
|
|
1954
|
+
"category": "cross",
|
|
1955
|
+
"description": "A payload field name is not a valid TypeScript identifier"
|
|
1966
1956
|
},
|
|
1967
1957
|
{
|
|
1968
|
-
"code": "
|
|
1969
|
-
"category": "
|
|
1970
|
-
"description": "An
|
|
1958
|
+
"code": "ORB_X_PAYLOAD_MISMATCH",
|
|
1959
|
+
"category": "cross",
|
|
1960
|
+
"description": "An external emit is missing a payload field required by the event's declaration"
|
|
1971
1961
|
},
|
|
1972
1962
|
{
|
|
1973
|
-
"code": "
|
|
1974
|
-
"category": "
|
|
1975
|
-
"description": "A
|
|
1963
|
+
"code": "ORB_X_RENDER_UI_EVENT_LITERAL_STALE",
|
|
1964
|
+
"category": "cross",
|
|
1965
|
+
"description": "A render-ui prop references an event literal that no longer matches a declared event"
|
|
1976
1966
|
},
|
|
1977
1967
|
{
|
|
1978
|
-
"code": "
|
|
1979
|
-
"category": "
|
|
1980
|
-
"description": "
|
|
1968
|
+
"code": "ORB_X_ROW_LITERAL_FIELD_TYPE_MISMATCH",
|
|
1969
|
+
"category": "effect",
|
|
1970
|
+
"description": "A record literal written into an entity carries a value whose type the declared field does not admit."
|
|
1981
1971
|
},
|
|
1982
1972
|
{
|
|
1983
|
-
"code": "
|
|
1984
|
-
"category": "
|
|
1985
|
-
"description": "A
|
|
1973
|
+
"code": "ORB_X_ROW_LITERAL_MISSING_REQUIRED",
|
|
1974
|
+
"category": "effect",
|
|
1975
|
+
"description": "A `persist create` data literal omits a column the entity requires (no default, not framework-stamped)."
|
|
1986
1976
|
},
|
|
1987
1977
|
{
|
|
1988
|
-
"code": "
|
|
1989
|
-
"category": "
|
|
1990
|
-
"description": "
|
|
1978
|
+
"code": "ORB_X_ROW_LITERAL_UNKNOWN_FIELD",
|
|
1979
|
+
"category": "effect",
|
|
1980
|
+
"description": "A record literal written into an entity (a `persist` data literal, or a `set` into a relation field) names a key the entity does not declare."
|
|
1991
1981
|
},
|
|
1992
1982
|
{
|
|
1993
|
-
"code": "
|
|
1994
|
-
"category": "
|
|
1995
|
-
"description": "
|
|
1983
|
+
"code": "ORB_X_UNKNOWN_THEME",
|
|
1984
|
+
"category": "cross",
|
|
1985
|
+
"description": "A theme reference is neither a built-in theme key nor an orbital-declared inline theme"
|
|
1996
1986
|
},
|
|
1997
1987
|
{
|
|
1998
|
-
"code": "
|
|
1999
|
-
"category": "
|
|
2000
|
-
"description": "
|
|
1988
|
+
"code": "ORB_X_UNRESOLVED_RELATION_TARGET",
|
|
1989
|
+
"category": "cross",
|
|
1990
|
+
"description": "A relation field points at an entity that is not declared in the schema"
|
|
2001
1991
|
},
|
|
2002
1992
|
{
|
|
2003
|
-
"code": "
|
|
2004
|
-
"category": "
|
|
2005
|
-
"description": "
|
|
1993
|
+
"code": "ORB_X_UNTYPED_ARRAY",
|
|
1994
|
+
"category": "cross",
|
|
1995
|
+
"description": "An array field declares no element type"
|
|
2006
1996
|
},
|
|
2007
1997
|
{
|
|
2008
|
-
"code": "
|
|
2009
|
-
"category": "
|
|
2010
|
-
"description": "A
|
|
1998
|
+
"code": "ORB_X_UNUSED_EMISSION",
|
|
1999
|
+
"category": "cross",
|
|
2000
|
+
"description": "A trait emits an event that no trait listens for"
|
|
2011
2001
|
},
|
|
2012
2002
|
{
|
|
2013
|
-
"code": "
|
|
2014
|
-
"category": "
|
|
2015
|
-
"description": "An
|
|
2003
|
+
"code": "SEXPR_INVALID_BINDING",
|
|
2004
|
+
"category": "sexpr",
|
|
2005
|
+
"description": "An s-expression contains an invalid binding"
|
|
2016
2006
|
},
|
|
2017
2007
|
{
|
|
2018
|
-
"code": "
|
|
2019
|
-
"category": "
|
|
2020
|
-
"description": "
|
|
2008
|
+
"code": "SEXPR_INVALID_OPERATOR",
|
|
2009
|
+
"category": "sexpr",
|
|
2010
|
+
"description": "An S-expression uses an operator that is not in the operator registry"
|
|
2021
2011
|
},
|
|
2022
2012
|
{
|
|
2023
|
-
"code": "
|
|
2024
|
-
"category": "
|
|
2025
|
-
"description": "
|
|
2013
|
+
"code": "SEXPR_UNKNOWN_ENTITY",
|
|
2014
|
+
"category": "sexpr",
|
|
2015
|
+
"description": "An entity named in a binding may not exist in the program"
|
|
2026
2016
|
},
|
|
2027
2017
|
{
|
|
2028
|
-
"code": "
|
|
2029
|
-
"category": "
|
|
2030
|
-
"description": "
|
|
2018
|
+
"code": "inbound-hook-duplicate",
|
|
2019
|
+
"category": "lint",
|
|
2020
|
+
"description": "Two cli hooks declare the same inbound name"
|
|
2031
2021
|
},
|
|
2032
2022
|
{
|
|
2033
|
-
"code": "
|
|
2034
|
-
"category": "
|
|
2035
|
-
"description": "
|
|
2023
|
+
"code": "shared-type-drift",
|
|
2024
|
+
"category": "lint",
|
|
2025
|
+
"description": "A type shared between behaviors has drifted from its canonical declaration"
|
|
2036
2026
|
},
|
|
2037
2027
|
{
|
|
2038
|
-
"code": "
|
|
2039
|
-
"category": "
|
|
2040
|
-
"description": "
|
|
2028
|
+
"code": "unread",
|
|
2029
|
+
"category": "lint",
|
|
2030
|
+
"description": "The file the rule reads could not be read or listed"
|
|
2041
2031
|
}
|
|
2042
2032
|
]
|