Add YouTube search command#650
Conversation
Implements `gog youtube search ls <query>` backed by the YouTube Data API v3 search.list endpoint. Supports --type (video, channel, playlist), --order (relevance, date, rating, title, viewCount), --channel-id filtering, pagination, and both JSON and table output. Uses OAuth when --account is provided, falls back to API key otherwise. Validates --type values individually (comma-separated) and --order via kong enum tag.
|
Codex review: needs maintainer review before merge. Reviewed May 28, 2026, 4:10 AM ET / 08:10 UTC. Summary Reproducibility: not applicable. this is a new command feature rather than a bug report. The current-main check confirms the command is absent, and the PR proof shows the proposed behavior running against YouTube. Review metrics: 2 noteworthy metrics.
Merge readiness Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch. Rank-up moves:
Risk before merge
Maintainer options:
Next step before merge
Security Review detailsBest possible solution: Land the focused search command after maintainer approval of the new YouTube surface and normal CI/test verification. Do we have a high-confidence way to reproduce the issue? Not applicable: this is a new command feature rather than a bug report. The current-main check confirms the command is absent, and the PR proof shows the proposed behavior running against YouTube. Is this the best way to solve the issue? Yes, subject to maintainer product approval: the PR follows the existing YouTube command patterns, uses existing API-key/OAuth helpers, preserves parseable stdout, and keeps docs/tests in the expected generated-command flow. AGENTS.md: found and applied where relevant. Codex review notes: model gpt-5.5, reasoning high; reviewed against 9987f8b2f053. Label changesLabel justifications:
Evidence reviewedWhat I checked:
Likely related people:
What the crustacean ranks mean
Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics. How this review workflow works
|
|
@clawsweeper re-review here's the live proof: docs also regenerated in the second commit |
|
🦞🧹 I asked ClawSweeper to review this item again. Re-review progress:
|
Summary
gog youtube search ls <query>(aliases:gog yt search ls,gog yt find ls) backed by YouTube Data API v3search.listendpoint--type(video, channel, playlist — comma-separated),--order(relevance, date, rating, title, viewCount),--channel-idfiltering,--max,--pagepagination--accountis provided, falls back to API key otherwise--typevalues individually and--ordervia kongenumtagmake docs-commandsLive proof
Basic search:
With
--type,--orderflags:Validation (invalid
--type):Test plan
TestYouTubeSearchWithAPIKey— verifies query param, table output fieldsTestYouTubeSearchWithOAuth— verifies OAuth path passes account throughTestYouTubeSearchTypeValidation— verifies invalid type rejected before API callmake docs-commands)