str_starts_with($path, '/') ? $path : rtrim($root, '/') . '/' . $path; $config = $raw; foreach (['database','jobs','runtime','catalog'] as $key) $config[$key] = $resolve($raw['storage'][$key]); $config['project_root'] = $project; $config['storage_root'] = $root; $config['runtime_lock'] = rtrim($root, '/') . '/.runtime.lock'; $config['storage']['root'] = $root; $config['python'] = str_starts_with($raw['python'], '/') ? $raw['python'] : $project . '/' . $raw['python']; return $config; }