Skip to content

Expose transfers as tools and check them in doctor - #143

Merged
rajeeja merged 1 commit into
mainfrom
rajeeja/globus-transfer-tools
Sep 11, 2026
Merged

rajeeja merged 1 commit into
mainfrom
rajeeja/globus-transfer-tools

Conversation

@rajeeja

@rajeeja rajeeja commented Sep 11, 2026

Copy link
Copy Markdown
Collaborator

Adds transfer_ls, transfer_put, transfer_get and transfer_status to the deferred pool, leaving the core surface at 33; three verbs rather than one dispatcher because a model picks better from schemas that name their own arguments, plus a status tool because the other two return a task_id that nothing could otherwise read back. They register only when some endpoint declares a globus_transfer block, so an install that moves no files shows no sign of them, and the namespace-coverage check excuses exactly those four names rather than whatever happens to be unregistered. doctor gains a transfer check that passes when nothing is configured and fails on a configured transfer that cannot work, which is how the write root turned out not to be readable — somewhere you may put a file is somewhere you may look at one, fixed here. Reopened against main after #142 auto-closed when its base branch was deleted; suite 1114 passed.

Adds transfer_ls, transfer_put, transfer_get and transfer_status to the
deferred pool, so the core surface stays at 33. They register only when
some endpoint declares a globus_transfer block: a tool whose only
possible answer is "not configured" is still a tool a model can call, so
an unconfigured install shows no sign of them, and the coverage check
excuses those four names rather than whatever happens to be missing.
A refused path returns a result with its reason instead of a traceback,
and nothing submits before the paths are checked.

doctor gains a transfer check that passes when nothing is configured and
fails on a configured transfer that cannot work. Probing it found a real
gap: the write root was not readable, so a download of what had just
been uploaded would have failed. Somewhere you may put a file is
somewhere you may look at one.
@rajeeja
rajeeja merged commit ef0f844 into main Sep 11, 2026
12 checks passed
@rajeeja
rajeeja deleted the rajeeja/globus-transfer-tools branch September 11, 2026 16:26
rajeeja added a commit that referenced this pull request Sep 12, 2026
Adds transfer_ls, transfer_put, transfer_get and transfer_status to the
deferred pool, so the core surface stays at 33. They register only when
some endpoint declares a globus_transfer block: a tool whose only
possible answer is "not configured" is still a tool a model can call, so
an unconfigured install shows no sign of them, and the coverage check
excuses those four names rather than whatever happens to be missing.
A refused path returns a result with its reason instead of a traceback,
and nothing submits before the paths are checked.

doctor gains a transfer check that passes when nothing is configured and
fails on a configured transfer that cannot work. Probing it found a real
gap: the write root was not readable, so a download of what had just
been uploaded would have failed. Somewhere you may put a file is
somewhere you may look at one.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant