Skip to content

Re-exported public helpers lose docstrings/arglists (result-*, convert-mcp-call-tool-result, approve-all) #119

@krukow

Description

@krukow

Generated via Copilot on behalf of @krukow

Summary

Several public helpers re-exported by the top-level github.copilot-sdk namespace lose their docstrings and/or :arglists, so editor tooltips and codox show no signature or documentation for them.

Detail

The re-exports in src/github/copilot_sdk.clj use bare def aliases:

(def result-success  tools/result-success)   ; no :doc, no :arglists
(def result-failure  tools/result-failure)   ; no :doc, no :arglists
(def result-denied   tools/result-denied)    ; no :doc, no :arglists
(def result-rejected tools/result-rejected)  ; no :doc, no :arglists
  • result-success / result-failure / result-denied / result-rejected ship on the public surface with no docstring and no :arglists (their source defs in tools.clj are fully documented — only the alias drops the metadata).
  • convert-mcp-call-tool-result, approve-all, and default-join-session-permission-handler carry an explicit docstring on the alias but still lose :arglists.

Net effect: these public functions show no signature in editors or generated API docs.

Proposed fix

Re-export while preserving the source var's metadata — either a small metadata-copying re-export helper/macro, or thin defn wrappers consistent with the other re-exports in the namespace (most of which are already defn wrappers and correctly preserve signatures).

Severity

ga-nice-to-have — public API documentation quality; small and safe (Phase 4 / docs pass).

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentationga-nice-to-haveDesirable before 1.0.0 GA, not blocking

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions