GmLintCode
What is wrong, at the granularity a developer would fix. One code per distinguishable remedy: a missing fn: target and a missing timer target are both an unresolved name and are kept apart because the second one arms successfully and fails minutes later somewhere else.
enum GmLintCode {
CONTAINER_TYPE_UNDEFINED
APP_HAS_NO_CONTAINER_TYPES
FUNCTION_NOT_DEFINED
PROPERTY_NOT_DECLARED
PARAM_NOT_DECLARED
TIMER_TARGET_MISSING
TIMER_TARGET_NOT_AUTONOMOUS
PERMISSION_KEY_UNKNOWN
GRID_LITERAL_INVALID
AUTOMATION_TRIGGER_UNMATCHABLE
NOTIFICATION_CHANNEL_FOREIGN
NOTIFICATION_CHANNEL_UNKNOWN
FUNCTION_UNCOMPILABLE
}
Values
GmLintCode.CONTAINER_TYPE_UNDEFINED
A container names a type this app has not defined. The client cannot bind it, and the only symptom is "no container bound for entity" in the game's own log.
GmLintCode.APP_HAS_NO_CONTAINER_TYPES
The app holds containers and declares no types at all — the shape an app takes when it is recreated or moved between organizations, because containers are made on demand by the client and schema is not carried with them.
GmLintCode.FUNCTION_NOT_DEFINED
A fn: call names a function this app does not define.
GmLintCode.PROPERTY_NOT_DECLARED
self.<key> is not in the property definitions for the function's container type.
GmLintCode.PARAM_NOT_DECLARED
An expression references a $param the function does not declare.
GmLintCode.TIMER_TARGET_MISSING
A timer's target function does not exist.
GmLintCode.TIMER_TARGET_NOT_AUTONOMOUS
A timer's target exists but is not autonomousInvocable, so the timer arms and then fails when it fires.
GmLintCode.PERMISSION_KEY_UNKNOWN
A permission-key literal is not in the runtime_permissions catalog.
GmLintCode.GRID_LITERAL_INVALID
A grid builtin was given a mode or axis literal outside its allowed set.
GmLintCode.AUTOMATION_TRIGGER_UNMATCHABLE
An automation trigger's filter cannot match, so it will never dispatch.
GmLintCode.NOTIFICATION_CHANNEL_FOREIGN
A channel notification names a channel that belongs to a different app. Membership is scoped to the app, so the datagram reaches nobody no matter how healthy delivery is — the shape a model takes when it is copied out of the app it was authored against. Repoint it, or name the channel with channel_name so it cannot go stale again.
GmLintCode.NOTIFICATION_CHANNEL_UNKNOWN
A channel notification names a channel id, or a channel name, that this app does not have. A warning rather than an error because the channel may simply not exist yet.
GmLintCode.FUNCTION_UNCOMPILABLE
A stored function definition no longer compiles, so it is inert. Only possible for a row written before a validation the compiler enforces now; re-upsert it.
Member Of
GmLintFindingType object