GCWing / GCWing/OpenBitFun

[Bug]: opencode-adapter instruction and tool source tests depend on the host git environment

Aperta Adatta ai principianti
#2,648 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
Rust
Stelle
2.2k
Fork
229
Merge medio
2h 46m
PR unite (30g)
577

Descrizione

## Summary

These tests build tempdir workspaces without a git boundary, so on hosts whose own environment is inside a git checkout (e.g. a user home that is a repository) find_project_root can leak the host repository into the resolution and reclassify explicit global config dirs as workspace-local, flipping test outcomes by environment.

Each test now anchors the project boundary by creating a .git directory in the workspace.

## Area

src/crates/adapters/opencode-adapter/src/instruction_source.rs (tests module) + tests/tool_source_contracts.rs. Crate: bitfun-opencode-adapter.

## Reproduction or evidence

At 32f2427697 the tests create workspace tempdirs with no .git anchor (Grep zero hits for workspace .git anchoring in both files); running the suite on a host where the home directory is a git checkout reclassifies explicit global directories as workspace-local. find_project_root production semantics are untouched.

## Environment

Any host with a surrounding git repository (CI runners where $HOME is a checkout); baseline 32f2427697. Test-only change; no production diff.

---
AI-assisted change. Testing: verified locally (`cargo check -p bitfun-opencode-adapter` exit 0; instruction_source filter 15 passed; `--test tool_source_contracts` 9 passed, 0 failed).

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Start with the tests module in src/crates/adapters/opencode-adapter/src/instruction_source.rs and tests/tool_source_contracts.rs, then run the listed cargo checks and filtered tests. Ensure the temporary workspaces establish a project boundary and verify the instruction-source and tool-source tests pass on hosts inside another Git checkout.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
git, rust
Ambito
devtools, testing-qa
Tipo di issue
Bug
Difficoltà
2/5
Tempo stimato
1-3 ore
Stato di attività
Attiva
Chiarezza
Specificata chiaramente
Idoneità per principianti
86/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.