dagger/dagger · error
unknown config key %q
Error message
unknown config key %q
What it means
setConfigValue dispatch fell through its switch on the key's first segment: the dotted key names a field that exists in no recognized section (modules/env/ports/ignore). Pure validation of an unknown user-supplied config key.
Source
Thrown at core/workspace/config.go:1267
}
switch parts[2] {
case "up":
entry.Up.Skip = skip
case "generate":
entry.Generate.Skip = skip
case "check":
entry.Check.Skip = skip
}
case "as-sdk":
if len(parts) != 4 || parts[3] != "name" {
return fmt.Errorf("invalid key %q; expected modules.%s.as-sdk.name", strings.Join(parts, "."), moduleName)
}
if entry.AsSDK == nil {
entry.AsSDK = &ModuleAsSDK{}
}
entry.AsSDK.Name = fmt.Sprint(value)
default:
return fmt.Errorf("unknown config key %q", strings.Join(parts, "."))
}
cfg.Modules[moduleName] = entry
return nil
case "env":
if len(parts) < 5 || parts[2] != "modules" {
return fmt.Errorf("unknown config key %q", strings.Join(parts, "."))
}
if cfg.Env == nil {
cfg.Env = map[string]EnvOverlay{}
}
envName := parts[1]
env := cfg.Env[envName]
if env.Modules == nil {
env.Modules = map[string]EnvModuleOverlay{}
}
moduleName := parts[3]
module := env.Modules[moduleName]
switch {View on GitHub (pinned to 82ba2681db)
Solutions
- Check the key spelling against the config schema
- Use a supported section prefix (modules, env, ports, ignore)
- Quote module names containing dots
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at core/workspace/config.go:1267 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/e3f310734c6cca6e.
Report an issue: GitHub.