agent/taskresource/asmsecret/asmsecretstatus.go
func (as *ASMSecretStatus) UnmarshalJSON(b []byte) error {
	if strings.ToLower(string(b)) == "null" {
		*as = ASMSecretStatusNone
		return nil
	}

	if b[0] != '"' || b[len(b)-1] != '"' {
		*as = ASMSecretStatusNone
		return errors.New("resource status unmarshal: status must be a string or null; Got " + string(b))
	}

	strStatus := string(b[1 : len(b)-1])
	stat, ok := asmSecretStatusMap[strStatus]
	if !ok {
		*as = ASMSecretStatusNone
		return errors.New("resource status unmarshal: unrecognized status")
	}
	*as = stat
	return nil
}
func (as *ASMSecretStatus) UnmarshalJSON(b []byte) error {
	if strings.ToLower(string(b)) == "null" {
		*as = ASMSecretStatusNone
		return nil
	}

	if b[0] != '"' || b[len(b)-1] != '"' {
		*as = ASMSecretStatusNone
		return errors.New("resource status unmarshal: status must be a string or null; Got " + string(b))
	}

	strStatus := string(b[1 : len(b)-1])
	stat, ok := asmSecretStatusMap[strStatus]
	if !ok {
		*as = ASMSecretStatusNone
		return errors.New("resource status unmarshal: unrecognized status")
	}
	*as = stat
	return nil
}
// UnmarshalJSON overrides the logic for parsing the JSON-encoded ResourceStatus data