dagger/dagger · error

pointer elem: %w

Error message

pointer elem: %w

What it means

While converting an arbitrary Go value to a dagql Input for dynamic (schema-less) calls, building the element Input for a reflect.Ptr type failed. builtinOrInput recurses on a newly allocated element; the wrapped error identifies why the pointed-to type is not representable as an input.

Source

Thrown at dagql/builtins.go:269

			input, err := builtinOrInput(reflect.New(valT.Elem()).Elem().Interface())
			if err != nil {
				return nil, fmt.Errorf("slice elem: %w", err)
			}
			arr := DynamicArrayInput{
				Elem: input,
			}
			for i := range reflectVal.Len() {
				elem, err := builtinOrInput(reflectVal.Index(i).Interface())
				if err != nil {
					return nil, fmt.Errorf("slice elem val %d: %w", i, err)
				}
				arr.Values = append(arr.Values, elem)
			}
			return arr, nil
		case reflect.Ptr:
			input, err := builtinOrInput(reflect.New(valT.Elem()).Elem().Interface())
			if err != nil {
				return nil, fmt.Errorf("pointer elem: %w", err)
			}
			dynOpt := DynamicOptional{
				Elem: input,
			}
			if !reflectVal.IsNil() {
				dynOpt.Value, err = dynOpt.Elem.Decoder().DecodeInput(reflectVal.Elem().Interface())
				if err != nil {
					return nil, fmt.Errorf("pointer elem val: %w", err)
				}
				dynOpt.Valid = true
			}
			return dynOpt, nil
		default:
			return nil, fmt.Errorf("cannot convert %T to an Input value", val)
		}
	}
}

View on GitHub (pinned to 82ba2681db)

When it happens

Trigger: Thrown at dagql/builtins.go:269 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of dagger/dagger@82ba2681db (2026-09-05). Data as JSON: /api/errors/2ede1bceabbe5c47. Report an issue: GitHub.