Pasting long strings into chat inserts extra newline characters, corrupting the content
- 主要言語
- Shell
- スター
- 11.2k
- フォーク
- 1.9k
- 平均マージ
- 14時間 16分
- マージ済み PR(30日)
- 6
説明
### Describe the bug
_No response_
### Affected version
GitHub Copilot CLI v1.0.40
### Steps to reproduce the behavior
Steps to reproduce:
1. Ask Copilot CLI: "Generate a random 264-character base64 string and print it back"
OR paste a known string: eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6IlUxc1g4WUZIUzdaNlZsN1ZITEl6VGVqYnZqMCIsImtpZCI6IlUxc1g4WUZIUzdaNlZsN1ZITEl6VGVqYnZqMCJ9.eyJzdWIiOiJ0ZXN0LXVzZXIiLCJhdWQiOiJo
dHRwczovL2V4YW1wbGUuY29tLyIsImV4cCI6OTk5OTk5OTk5OX0.AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
2. Copy generated string and paste back to copilot
3. Ask to count length
4. Compare: original=264, returned=265
### Expected behavior
String returned unchanged, length = 264
### Additional context
OS: macOS
- Terminal: Terminal.app (confirmed: no tmux, echo $TMUX is empty)
- Shell: zsh
- CPU: Apple Silicon (ARM)
- The bug caused a real-world debugging loop: identical JWT Bearer token
worked in Postman (200 OK) but failed when pasted through Copilot CLI
chat (401 Unauthorized) because \n was silently inserted into the token,
corrupting the Authorization header.
- Workaround: save token to file via pbpaste > /tmp/token.txt and
read with $(cat /tmp/token.txt) instead of pasting through chat.
コントリビューションガイド
調査の方向性
まず、macOS Terminal.app と zsh を使って GitHub Copilot CLI v1.0.40 の貼り付けとカウントのフローを再現し、元の文字列と返された文字列の長さを比較します。貼り付けられた複数行または長い文字列に対する CLI のチャット入力処理を追跡します。264 文字の文字列が改変されず、挿入された改行もない状態で返されれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- shell, zsh
- 領域
- cli
- issue の種類
- バグ
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 活発さ
- 静か
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 48/100