router-for-me/CLIProxyAPI · error
%s.weight: weight must be an integer
Error message
%s.weight: weight must be an integer
What it means
Error "%s.weight: weight must be an integer" thrown in router-for-me/CLIProxyAPI.
Source
Thrown at internal/config/weight.go:75
for index, item := range sequence.Content {
if errValidate := validateWeightMappingNode(item, fmt.Sprintf("%s[%d]", path, index)); errValidate != nil {
return errValidate
}
}
return nil
}
func validateWeightMappingNode(mapping *yaml.Node, path string) error {
if mapping == nil || mapping.Kind != yaml.MappingNode {
return nil
}
for index := 0; index+1 < len(mapping.Content); index += 2 {
if mapping.Content[index].Value != "weight" {
continue
}
value := mapping.Content[index+1]
if value.Kind != yaml.ScalarNode || value.Tag != "!!int" {
return fmt.Errorf("%s.weight: weight must be an integer", path)
}
var weight int64
if errDecode := value.Decode(&weight); errDecode != nil {
return fmt.Errorf("%s.weight: weight must be an integer", path)
}
if _, errNormalize := credentialweight.Normalize(weight); errNormalize != nil {
return fmt.Errorf("%s.weight: %w", path, errNormalize)
}
}
return nil
}
func validateOpenAICompatibilityWeightNodes(sequence *yaml.Node) error {
if sequence == nil || sequence.Kind != yaml.SequenceNode {
return nil
}
for providerIndex, provider := range sequence.Content {
if provider == nil || provider.Kind != yaml.MappingNode {View on GitHub (pinned to 78f0c4079e)
Solutions
- Set the weight for the named entry to an integer value.
- Fix the weight field type in config.yaml for the reported key.
When it happens
Trigger: Thrown at internal/config/weight.go:75 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of router-for-me/CLIProxyAPI@78f0c4079e (2026-08-15).
Data as JSON: /api/errors/a762f26366b99de0.
Report an issue: GitHub.