aws / aws/amazon-q-developer-cli
bug:
- Lingua principale
- Rust
- Stelle
- 2k
- Fork
- 439
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
### Checks
- [x] I have searched [github.com/aws/amazon-q-developer-cli/issues](https://github.com/aws/amazon-q-developer-cli/issues?q=) and there are no duplicates of my issue
- [x] I have run `q doctor` in the affected terminal session
- [x] I have run `q restart` and replicated the issue again
### Operating system
macos
### Expected behaviour
The /checkpoint command in q chat should initialize and create a checkpoint commit successfully, regardless of the user’s global Git GPG signing settings. Ideally, Q CLI should ignore global commit.gpgSign for its internal checkpoint commits or configure a local repo that does not require GPG signing.
### Actual behaviour
Running /checkpoint fails when global GPG signing is enabled, because the Q CLI uses the author Q which has no corresponding secret key. Git then fails to write the commit object.
Error output:
```
!> /checkpoint init
Failed to execute command: Checkpoints could not be initialized: Checkpoint operation failed: error: gpg failed to sign the data:
gpg: skipped "Q ": No secret key
[GNUPG:] INV_SGNR 9 Q
[GNUPG:] FAILURE sign 17
gpg: signing failed: No secret key
fatal: failed to write commit object
```
Additional notes:
- Workaround: Scope commit.gpgSign so it applies only to specific paths/repos, avoiding the Q CLI checkpoint repo.
- Suggestion: To prevent this class of issues, Q CLI could bundle its own Git binary and configuration, or ensure its internal checkpoint commits explicitly disable GPG signing (e.g., local repo config or -c commit.gpgSign=false when committing).
References:
- [aws/amazon-q-developer-cli issues](https://github.com/aws/amazon-q-developer-cli/issues)
### Steps to reproduce
1) Ensure the following global Git config exists:
```ini
[commit]
gpgSign = true
```
2) Open q chat.
3) Run /checkpoint.
4) Observe the failure with GPG signing and the “No secret key” error.
### Environment
```yaml
- OS: Darwin 24.6.0 (macOS)
- Shell: /bin/zsh
- Q CLI version: Unknown (not collected)
- Install method: Unknown (not collected)
- q diagnostic: Not collected
```
Guida per i contributori
Apri la guida per i contributori
Direzione di ricerca
Inizia dall’implementazione del comando /checkpoint e segui il percorso interno del commit Git di checkpoint, concentrandoti su come commit.gpgSign viene ereditato dalla configurazione globale. Riproduci il problema con commit.gpgSign=true globale su macOS e verifica che /checkpoint inizializzi e crei il proprio commit senza richiedere la chiave segreta GPG dell’autore di Q CLI. Il payload non nomina file sorgente né test.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- git, rust
- Ambito
- cli
- Tipo di issue
- Bug
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 45/100