larksuite/cli · error

%s.Fields[%d].Name is required

Error message

%s.Fields[%d].Name is required

What it means

Shape validation guard: a typed object shape's field at the given index has an empty Name. Every object field must be named.

Source

Thrown at shortcuts/common/typed_compile_data.go:304

			return fmt.Errorf("%s const is not JSON-encodable: %w", path, err)
		}
	case typedArrayShape:
		if value.Items == nil {
			return fmt.Errorf("%s.Items is required", path)
		}
		if value.MinItems != nil && *value.MinItems < 0 || value.MaxItems != nil && *value.MaxItems < 0 {
			return fmt.Errorf("%s item lengths must be nonnegative", path)
		}
		if value.MinItems != nil && value.MaxItems != nil && *value.MinItems > *value.MaxItems {
			return fmt.Errorf("%s minItems exceeds maxItems", path)
		}
		return validateShape(value.Items, path+".Items")
	case typedObjectShape:
		seen := make(map[string]struct{})
		for i := range value.Fields {
			field := &value.Fields[i]
			if field.Name == "" {
				return fmt.Errorf("%s.Fields[%d].Name is required", path, i)
			}
			if _, duplicate := seen[field.Name]; duplicate {
				return fmt.Errorf("%s contains duplicate field %q", path, field.Name)
			}
			seen[field.Name] = struct{}{}
			if strings.TrimSpace(field.Description) == "" {
				return fmt.Errorf("%s field %q Description is required", path, field.Name)
			}
			if err := validateShape(field.Shape, path+"/"+field.Name); err != nil {
				return err
			}
		}
		if value.AdditionalPropertiesShape != nil && !value.AdditionalProperties {
			return fmt.Errorf("%s AdditionalPropertiesShape requires AdditionalProperties", path)
		}
		if value.AdditionalPropertiesShape != nil {
			return validateShape(value.AdditionalPropertiesShape, path+".AdditionalPropertiesShape")
		}

View on GitHub (pinned to 7fd6ef3c07)

Solutions

  1. Give every Fields entry a non-empty Name
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at shortcuts/common/typed_compile_data.go:304 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of larksuite/cli@7fd6ef3c07 (2026-09-04). Data as JSON: /api/errors/0aa0fb6f316201eb. Report an issue: GitHub.