INNER CODE UNIT · Go
inside
cli/cli · .github/skills/cli-exercise/tool/internal/evidence/main.go:109
func inside(directory, candidate string) bool {
relative, err := filepath.Rel(directory, candidate)
return err == nil && relative != ".." && !strings.HasPrefix(relative, ".."+string(os.PathSeparator)) && !filepath.IsAbs(relative)
}
func guardWorkspace(workspace, skillRoot string) (string, error) {
absolute, err := filepath.Abs(workspace)
if err != nil {
return "", err
}
root, err := filepath.EvalSymlinks(absolute)
if err != nil {
return "", err
}
if filepath.Dir(root) == root {
return "", fmt.Errorf("evidence requires a dedicated private workspace")
}
protected := []string{}