multica-ai/multica · error

create daemon directory: %w

Error message

create daemon directory: %w

What it means

Error "create daemon directory: %w" thrown in multica-ai/multica.

Source

Thrown at server/cmd/multica/cmd_daemon.go:593

	}

	if err := requireDaemonAuth(profile); err != nil {
		return err
	}

	// Resolve current executable so the foreground child reuses this binary.
	exePath, err := daemonExecutable()
	if err != nil {
		return fmt.Errorf("resolve executable path: %w", err)
	}

	// Build child args: daemon start --foreground + forwarded flags.
	args := buildDaemonStartArgs(cmd)

	// Ensure daemon directory exists.
	dir := daemonDirForProfile(profile)
	if err := os.MkdirAll(dir, 0o755); err != nil {
		return fmt.Errorf("create daemon directory: %w", err)
	}

	// The child (foreground daemon) writes daemon.log itself through a
	// rotating writer; its inherited stdout/stderr only need to catch raw
	// crash output, which goes to a separate, non-rotated sink so it never
	// holds daemon.log open (see daemonStderrLogPathForProfile).
	errLogPath := daemonStderrLogPathForProfile(profile)
	logFile, err := openBoundedErrLog(errLogPath)
	if err != nil {
		return fmt.Errorf("open log file %s: %w", errLogPath, err)
	}
	// Where the daemon's structured logs actually land (rotated), for the
	// user-facing hints below.
	logPath := daemonLogPathForProfile(profile)

	// Remember where both logs end now so an early-death report below can show
	// only what THIS startup attempt wrote, not stale history. The err-log
	// offset is taken after openBoundedErrLog, which may have rolled the file.

View on GitHub (pinned to 2c0912b6ec)

Solutions

  1. Check filesystem permissions for the daemon directory.

When it happens

Trigger: Thrown at server/cmd/multica/cmd_daemon.go:593 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/b9640954767d3682. Report an issue: GitHub.