{"id":"path-set-partition-directory","version":"1.0.0","description":"Partition an array of file paths into buckets grouped by parent directory or directory at a specified depth.","supported_operations":["partition paths by directory","group files by directory","partition path set"],"unsupported_operations":["stat file","filesystem access"],"semantics":"Group paths by their ancestor directory at the given depth level. Depth 1 = immediate parent directory of the file. Paths shallower than the requested depth are grouped under their own path as key. Keys are normalized directory paths. Order of paths within each group is input order. Partition keys use a null-prototype object to avoid prototype collision.","limits":{"max_paths":10000,"max_depth":32,"max_path_bytes":4096},"pricing":{"status":"unpriced","charge_usd":null},"input_schema":{"type":"object","required":["paths"],"properties":{"paths":{"type":"array","minItems":0,"maxItems":10000,"items":{"type":"string","minLength":1,"maxLength":4096}},"depth":{"type":"integer","minimum":1,"maximum":32},"format":{"type":"string","enum":["posix","windows","auto"]}}},"output_schema":{"type":"object","required":["partitions","format","total"],"properties":{"partitions":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}}},"format":{"type":"string"},"total":{"type":"integer"}}},"examples":[{"input":{"paths":["/a/b/c.ts","/a/b/d.ts","/a/e/f.ts"],"depth":2},"output":{"partitions":{"/a/b":["/a/b/c.ts","/a/b/d.ts"],"/a/e":["/a/e/f.ts"]},"format":"posix","total":3}},{"input":{"paths":["src/a.js","src/b.js","test/c.js"]},"output":{"partitions":{"src":["src/a.js","src/b.js"],"test":["test/c.js"]},"format":"posix","total":3}}],"execute_url":"/v1/tools/path-set-partition-directory/versions/1.0.0/execute"}