feat: Google Docs full API coverage + tab support#140
Conversation
Add multi-tab support across all docs commands with --tab persistent flag, plus 28 new API operations: tab management (add/delete/rename), images, table row/col/merge/pin, page/section breaks, headers/footers, named ranges, footnotes, object deletion, image replacement, style updates. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
Summary What Looks Good
Issues Found
Tests not run (not requested). If you want, I can help wire tab support into the table/style commands and add the missing httptest coverage. |
…n, columnCount - Wire --tab through table ops (merge/unmerge/pin/insert/delete row/col), table style commands (cell style, col properties, row style), and section style via TabId on Location - Fix runDocsUpdateSectionStyle: properly size columnProperties slice from --column-count instead of hardcoding single entry - Add explicit validation: --from >= 1, --to > --from for add-named-range; --at >= 1 for add-footnote; --count >= 0 for pin-rows Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
Summary What looks good
Issues found Warning
Suggestion
If you want, I can outline a minimal test matrix for the new commands to satisfy the httptest requirement. |
All table ops (insert/delete row/col, merge/unmerge, pin-rows), style commands (cell style, col properties, row style, section style), and add-named-range now use resolveTabQueryToID() to properly resolve tab titles to IDs via API fetch, consistent with read/append/insert. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
I couldn’t compute the PR diff because there’s no merge base with
How should I proceed?
|
Summary
--tabflag (ID or title) and--tab-indexon readadd-tab,delete-tab,rename-tabflattenTabs,resolveTabID,getTabBody,resolveTabFromFlagsbuildTextRequeststo accepttabIDparameter (richformat rejects --tab with clear error)Closes #139
Test plan
go test ./cmd/... -run TestDocs— all tests passmake release-check— fmt/vet/test passgws docs info <doc-id>→ shows tabs arraygws docs read <doc-id> --tab "Tab 2"→ reads specific tabgws docs add-tab <doc-id> --title "New Tab"→ creates tab🤖 Generated with Claude Code