multica-ai/multica · error
%s %q resolved to %s, which is not a regular file
Error message
%s %q resolved to %s, which is not a regular file
What it means
Error "%s %q resolved to %s, which is not a regular file" thrown in multica-ai/multica.
Source
Thrown at server/internal/daemon/execenv/codex_home.go:931
if err != nil {
return err
}
info, err := os.Stat(src)
if os.IsNotExist(err) {
return fmt.Errorf("%s %q resolved to missing file %s: %w", key, referencedPath, src, err)
}
if err != nil {
// Not a confident absence — a permission or IO failure must not be
// reported as "the file isn't there", which sends operators looking for
// the wrong problem.
return fmt.Errorf("%s %q: cannot stat source %s: %w", key, referencedPath, src, err)
}
if filepath.IsAbs(referencedPath) || strings.HasPrefix(referencedPath, "~") {
return nil
}
if !info.Mode().IsRegular() {
return fmt.Errorf("%s %q resolved to %s, which is not a regular file", key, referencedPath, src)
}
cleanReferencedPath := filepath.Clean(referencedPath)
if !filepath.IsLocal(cleanReferencedPath) {
return fmt.Errorf("%s %q must be a local relative path or an absolute path", key, referencedPath)
}
return materialiseInCodexHome(codexHome, cleanReferencedPath, src, key)
}
// openVerifiedCodexHomeRoot opens codexHome as a confinement root and only
// returns it once the opened directory is proven to still BE codexHome.
//
// Checking the path first and opening it second is not enough: os.OpenRoot
// resolves the path it is given, so a directory swapped for a link to somewhere
// else between the check and the open yields a root that is happily confined —
// to the wrong tree. Every subsequent root-scoped write would then land outside
// the task home without ever "escaping" its root.
//
// That window is not hypothetical here. Task homes are reused, and on WindowsView on GitHub (pinned to 2c0912b6ec)
Solutions
- Point the reference at a regular file, not a directory or special file.
When it happens
Trigger: Thrown at server/internal/daemon/execenv/codex_home.go:931 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of multica-ai/multica@2c0912b6ec (2026-08-15).
Data as JSON: /api/errors/f6ad5b38ac86e745.
Report an issue: GitHub.