fix(coding-agent): fork writes to new session file, not parent (fixes #1242)

- Store previousSessionFile before creating branched session
- Update sessionFile after writing new branch file
- Pass parentSession when forking from first message
- Add --local to git config in tests to prevent repo escape
This commit is contained in:
Mario Zechner 2026-02-04 13:22:43 +01:00
parent b1c2c95f23
commit 13ac63c3cd
3 changed files with 9 additions and 6 deletions

View file

@ -88,15 +88,15 @@ describe("DefaultPackageManager git update", () => {
// Create "remote" repository
mkdirSync(remoteDir, { recursive: true });
git(["init"], remoteDir);
git(["config", "user.email", "test@test.com"], remoteDir);
git(["config", "user.name", "Test"], remoteDir);
git(["config", "--local", "user.email", "test@test.com"], remoteDir);
git(["config", "--local", "user.name", "Test"], remoteDir);
createCommit(remoteDir, "extension.ts", "// v1", "Initial commit");
// Clone to installed directory (simulating what install() does)
mkdirSync(join(agentDir, "git", "github.com", "test"), { recursive: true });
git(["clone", remoteDir, installedDir], tempDir);
git(["config", "user.email", "test@test.com"], installedDir);
git(["config", "user.name", "Test"], installedDir);
git(["config", "--local", "user.email", "test@test.com"], installedDir);
git(["config", "--local", "user.name", "Test"], installedDir);
// Add to global packages so update() processes this source
settingsManager.setPackages([gitSource]);