[Bug]: Server git tests sign fixture commits with the developer's key when run from the repo root
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 2/5
- 見積もり時間
- 1〜3時間
- 初心者へのやさしさ
- 78/100
- issue の種類
- バグ
- 明瞭さ
- 明確に書かれている
- 活発さ
- 活発
- 技術スタック
- git, typescript, vite
- 領域
- testing
調査の方向性
修正は設定の変更です。ルートの vite.config.ts の setupFiles には apps/server/src/testUtils/gitConfig.setup.ts が含まれていませんが、apps/server/vite.config.ts はすでにそれを読み込んでいます。まず2つの setupFiles 配列を比較してください。次に、リポジトリのルートから、commit.gpgsign=true を設定した設定ファイルを GIT_CONFIG_GLOBAL で指定した状態で apps/server/src/git/GitManager.test.ts を実行し、問題を再現してください。gpg の呼び出しなしでスイートが通り、他のスイートが変更なしで引き続き実行されれば完了です。
索引モデルが issue の本文から書いたものです。
説明
Before submitting
- I searched existing issues and did not find a duplicate.
- I included enough detail to reproduce or investigate the problem.
Area
apps/server
Steps to reproduce
- Set
commit.gpgsign = truein~/.gitconfig(any GPG or SSH signer; mine is a YubiKey through gpg-agent). - From the repo root, run a server git suite the way AGENTS.md describes:
vp test run apps/server/src/git/GitManager.test.ts
Expected behavior
Fixture repositories ignore the developer's signing config. apps/server/src/testUtils/gitConfig.setup.ts exists to pin commit.gpgsign=false and tag.gpgsign=false for exactly this reason.
Actual behavior
Every fixture commit calls gpg. With a hardware key, that's a PIN/touch prompt every few seconds for the whole run. Without a usable signer, most of the suite fails.
The setup file is only registered in apps/server/vite.config.ts (setupFiles). Running from the repo root loads the root vite.config.ts instead, and its setupFiles only contains packages/shared/src/testing/longTempDir.ts. Agents running inside T3 Code run tests from the root, so an agent running server tests on a machine with signing enabled keeps prompting the user.
Measured with GIT_CONFIG_GLOBAL pointing at a config with commit.gpgsign=true and a gpg.program that logs and exits 1:
| Tests | gpg calls | |
|---|---|---|
| root config as is | 107 failed, 13 passed | 107 |
setup file added to root setupFiles |
120 passed | 0 |
Adding ./apps/server/src/testUtils/gitConfig.setup.ts to the root setupFiles fixes it. It only sets GIT_CONFIG_* variables, so other suites are unaffected. Happy to send the 3-line PR.
Impact
Major degradation or frequent failure
Version or commit
101f8b2f55
Environment
macOS 26 (Darwin 25.6), git 2.56, GnuPG (MacGPG2) with a YubiKey
Workaround
Run from apps/server (cd apps/server && vp test run src/git/GitManager.test.ts), or export GIT_CONFIG_COUNT=1 GIT_CONFIG_KEY_0=commit.gpgsign GIT_CONFIG_VALUE_0=false.
- 主要言語
- TypeScript
- スター
- 24.8k
- フォーク
- 6.4k
- 平均マージ
- 8時間 58分
- マージ済み PR(30日)
- 278
環境構築
このプロジェクトの開発コンテナを、あなたの GitHub アカウントでブラウザ上に起動します。
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
pingdotgg/t3code のほかの issue
-
難易度 2/5 半日 初心者へのやさしさ 72/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
pingdotgg/t3code#17402 · リアクション 1 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
メンテナーはふだん 1 日以内に返信
-
[Bug]: Side-by-side diff squeezes the "N unmodified lines" divider into the line-number column対応中かも このイシューにリンクされたプルリクエストがオープン中、またはマージ済みです。 オープンbug via-triage
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
pingdotgg/t3code#17157 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
pingdotgg/t3code の issue をすべて見る
似ている issue
-
community first-timers-only good first issue hacktoberfest help wanted low hanging fruit up-for-grabs
難易度 1/5 1時間未満 初心者へのやさしさ 75/100
lingdojo/kana-dojo#32018 · コメント 1 件 · リアクション 5 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
paperclipai/paperclip#15751 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
BuilderIO/agent-native#7275 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
メンテナーはふだん 1 日以内に返信