feat/repo-ux
main
repo_tree: GET /git/trees/{ref}?recursive=1 — full recursive file tree repo_topics_update: PUT /repos/{owner}/{repo}/topics — replace topic list file_read: detect array response and return descriptive error for dir paths