{"record":{"id":"8fdf481bca805366","repo":"multica-ai/multica","slug":"prepare-dsh-session-root-w","errorCode":null,"errorMessage":"prepare dsh session root: %w","messagePattern":"prepare dsh session root: %w","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"server/internal/daemon/daemon.go","lineNumber":6781,"sourceCode":"\t// Bedrock). These are set per-agent via the agent settings UI.\n\t// Critical internal variables are blocklisted to prevent accidental or\n\t// malicious override of daemon-set values.\n\tvar agentCustomEnv map[string]string\n\tif task.Agent != nil {\n\t\tagentCustomEnv = task.Agent.CustomEnv\n\t}\n\tlayerCustomEnvAndHermesHome(agentEnv, agentCustomEnv, env.HermesHome, d.logger)\n\tif provider == \"reasonix\" {\n\t\treasonixStateHome, err := prepareReasonixTaskStateHome(d.cfg.Profile, task.RuntimeID, task.AgentID)\n\t\tif err != nil {\n\t\t\treturn TaskResult{}, fmt.Errorf(\"prepare reasonix state home: %w\", err)\n\t\t}\n\t\tagentEnv[\"REASONIX_STATE_HOME\"] = reasonixStateHome\n\t}\n\tif provider == \"dsh\" {\n\t\tdshSessionRoot, err := prepareDshTaskSessionRoot(d.cfg.Profile, task.RuntimeID, task.AgentID)\n\t\tif err != nil {\n\t\t\treturn TaskResult{}, fmt.Errorf(\"prepare dsh session root: %w\", err)\n\t\t}\n\t\tagentEnv[\"MULTICA_DSH_SESSION_ROOT\"] = dshSessionRoot\n\t\tagentEnv[\"DSH_TELEMETRY_DISABLED\"] = \"1\"\n\t}\n\tif err := configureCodexTaskShellEnvironment(provider, env.CodexHome, os.Environ(), agentEnv, agentCustomEnv, d.logger); err != nil {\n\t\treturn TaskResult{}, err\n\t}\n\t// Resolve the backend through the unified runtime resolver: built-in\n\t// runtime identities (e.g. \"omp\") dispatch through NewRuntime, protocol\n\t// families go through New. This is the single production boundary — the\n\t// daemon never calls agent.New or agent.NewRuntime directly, so the two\n\t// factories stay meaning exactly one thing each.\n\tbackend, err := agent.ResolveBackend(provider, agent.Config{\n\t\tExecutablePath: entry.Path,\n\t\tCLIVersion:     resolvedVersion,\n\t\tEnv:            agentEnv,\n\t\tLogger:         d.logger,\n\t\tTaskID:         task.ID,","sourceCodeStart":6763,"sourceCodeEnd":6799,"githubUrl":"https://github.com/multica-ai/multica/blob/2c0912b6ec764b373d44eeea1e80f0d9f11ab417/server/internal/daemon/daemon.go#L6763-L6799","documentation":"Error \"prepare dsh session root: %w\" thrown in multica-ai/multica.","triggerScenarios":"Thrown at server/internal/daemon/daemon.go:6781 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Check permissions for the dsh session root directory."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"2c0912b6ec764b373d44eeea1e80f0d9f11ab417","analyzedAt":"2026-08-15T13:25:18.241Z","schemaVersion":2},"datasetVersion":"2026-08-15T17:31:12.345Z"}