owasp-amass/amass · error
zero transformation matches in the session config
Error message
zero transformation matches in the session config
What it means
CheckTransformations builds a set of results by matching transformations relevant to the current session/state, and this error means the match set came back empty. The config may pass Validate but contain no transformation applicable to the query, so the library cannot proceed and returns this error instead of an empty result.
Source
Thrown at config/transform.go:232
}
results.to[transform.To] = struct {
ttl int
confidence int
}{ttl: ttl, confidence: confidence}
} else {
results.to[transform.To] = struct {
ttl int
confidence int
}{ttl: transform.checkTTL(transform.To, c), confidence: transform.Confidence}
}
}
}
}
if len(results.to) == 0 {
return nil, fmt.Errorf("zero transformation matches in the session config")
}
return results, nil
}
// checkTTl checks the TTL value for the given 'To' type in the given Config.
// if the 'To' is a data source, it will return the TTL value from the data source config.
// otherwise, it will return the default TTL value from the transformation config.
func (t *Transformation) checkTTL(to string, c *Config) int {
if c != nil {
if c.DataSrcConfigs != nil {
ds := c.GetDataSourceConfig(to)
if ds != nil && ds.TTL > 0 {
return ds.TTL
}
}
}
return t.TTL
}View on GitHub (pinned to 79299dce87)
Solutions
- Add transformation entries covering the From/To types being queried
- Verify the session config was loaded correctly (check the file path and contents)
- Check TTLStartTime/CheckTransformations arguments against the types present in the config
Example fix
// before
// config has no transformations for the queried type
// after
transformations:
- from: workloadType
to: deployment Defensive patterns
Strategy: validation
Validate before calling
if len(cfg.Transformations) == 0 { return errors.New("config has no transformations; nothing will match") } Try / catch
results, err := cfg.CheckTransformations(...)
if err != nil {
if strings.Contains(err.Error(), "zero transformation matches") {
// fall back to default config or report a clear user-facing message
}
return err
} Prevention
- Confirm the intended config file is loaded before running workflows
- Ensure transformation entries cover all From/To types your workflow queries
- Log the loaded config summary (counts per type) at startup
When it happens
Trigger: Calling CheckTransformations (directly or via TTLStartTime) when no transformation entries in the session config match the requested From/To types.
Common situations: Querying a config loaded from an unrelated or minimal config file; forgetting to define transformations before running the workflow; filtering by a type that has no rules.
Understand the failure class
Background: EmptyResultError / "no results found": when an API or scraper succeeds but returns zero rows — this error's family across 9 libraries.
Related errors
- error when splitting the key: %w
- no resolver keys were found in the resolvers section
- brute forcing cannot be performed without DNS resolution
- active enumeration cannot be performed without DNS resolutio
- resolvers section is not a list
AI-assisted analysis of owasp-amass/amass@79299dce87 (2026-09-06).
Data as JSON: /api/errors/62f81f9ddeb13069.
Report an issue: GitHub.