Summary
spec/api-gaps/dock-tool-visible-to-clients.md records that BC3 #12386 ("Honor create-time visible_to_clients on dock tool creates", bee714c74, merged 2026-07-23) added an optional top-level visible_to_clients boolean to the dock-tool create endpoint (POST /buckets/:bucket_id/dock/tools.json, modeled as CreateTool). The entry was registered but not absorbed.
Contract (narrower than the six content creates)
- The flag is honored only for tool types that manage their own client visibility —
Chat::Transcript and Kanban::Board, which otherwise start hidden. Pass true to create one already client-visible.
- All other tool types ignore it and inherit the project default.
- It applies only at create time; re-enabling an existing tool keeps its current visibility.
Absorption (this issue's PR)
Part of the post-#401 follow-up program (PR-1).
- Smithy: add
visible_to_clients: Boolean (tri-state) to CreateToolInput, documenting the two-tool-type honoring rule.
- Go:
CreateToolOptions.VisibleToClients *bool + tri-state pass-through in ToolsService.Create.
- Tests: Go tri-state transport test + one body-encoding test in each of TS/Ruby/Python/Kotlin/Swift asserting explicit
false reaches the wire.
- Flip the gap entry to
absorbed-in-sdk with the smithy_ref; update the api-gaps README row.
Coordination record for the registry scheme; the code ships in the linked PR.
Summary
spec/api-gaps/dock-tool-visible-to-clients.mdrecords that BC3 #12386 ("Honor create-time visible_to_clients on dock tool creates",bee714c74, merged 2026-07-23) added an optional top-levelvisible_to_clientsboolean to the dock-tool create endpoint (POST /buckets/:bucket_id/dock/tools.json, modeled asCreateTool). The entry was registered but not absorbed.Contract (narrower than the six content creates)
Chat::TranscriptandKanban::Board, which otherwise start hidden. Passtrueto create one already client-visible.Absorption (this issue's PR)
Part of the post-#401 follow-up program (PR-1).
visible_to_clients: Boolean(tri-state) toCreateToolInput, documenting the two-tool-type honoring rule.CreateToolOptions.VisibleToClients *bool+ tri-state pass-through inToolsService.Create.falsereaches the wire.absorbed-in-sdkwith the smithy_ref; update the api-gaps README row.Coordination record for the registry scheme; the code ships in the linked PR.