{"id":"path-set-minimal-covering","version":"1.0.0","description":"Find the minimal covering set of paths by collapsing child paths when an ancestor path is already in the set.","supported_operations":["minimal covering set","collapse redundant paths","ancestor path filter"],"unsupported_operations":["stat file","filesystem access"],"semantics":"Remove any path that is a descendant of another path already in the set. covering: minimal subset such that every original path is either in covering or is a descendant of a path in covering. removed: count of removed redundant paths. Paths in covering maintain their relative input order.","limits":{"max_paths":10000,"max_path_bytes":4096},"pricing":{"status":"unpriced","charge_usd":null},"input_schema":{"type":"object","required":["paths"],"properties":{"paths":{"type":"array","items":{"type":"string"},"minItems":0,"maxItems":10000},"format":{"type":"string","enum":["posix","windows","auto"]}}},"output_schema":{"type":"object","properties":{"covering":{"type":"array","items":{"type":"string"}},"removed":{"type":"integer"},"format":{"type":"string"}}},"examples":[{"input":{"paths":["/app","/app/src","/app/src/index.ts","/other/file.ts"]},"output":{"covering":["/app","/other/file.ts"],"removed":2,"format":"posix"}},{"input":{"paths":["/a/b","/a/c"]},"output":{"covering":["/a/b","/a/c"],"removed":0,"format":"posix"}}],"execute_url":"/v1/tools/path-set-minimal-covering/versions/1.0.0/execute"}