# Extract branch sanitization to shared contracts module · screen/t3code-personal

[View on GitCafe](https://git.cafe/screen/t3code-personal/commit/b1608f41adff7ac9670c5a762624e13984d820c8)

Repository: [screen/t3code-personal](https://git.cafe/screen/t3code-personal)

Visibility: public

Requested revision: b1608f41adff7ac9670c5a762624e13984d820c8

Requested commit: b1608f41adff7ac9670c5a762624e13984d820c8

Commit: b1608f41adff7ac9670c5a762624e13984d820c8

Tree: c50db3f5a0ad95881d7978a17dc215ce7cfd3806

Author: Julius Marminge

Committer: Julius Marminge

## Message

```
Extract branch sanitization to shared contracts module

Move sanitizeBranchFragment and sanitizeFeatureBranchName from three
duplicate definitions (CodexTextGeneration, GitManager, GitActionsControl)
into packages/contracts/src/git.ts. Remove the redundant double-sanitization
of branch names between the TextGeneration and GitManager layers —
CodexTextGeneration now owns sanitization of model output while GitManager
trusts the result and only sanitizes the custom commit message path.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

```

## Parents

- [78d89e3d353a9ce7770b34f3546e39f415cddc37](https://git.cafe/screen/t3code-personal/commit/78d89e3d353a9ce7770b34f3546e39f415cddc37?format=markdown)

[Source at this commit](https://git.cafe/screen/t3code-personal/tree/b1608f41adff7ac9670c5a762624e13984d820c8?format=markdown)
