Skip to content

Flatten Git service layer and switch server paths to base dir#1255

Open
juliusmarminge wants to merge 1 commit intomainfrom
t3code/flatten-git-service-layer
Open

Flatten Git service layer and switch server paths to base dir#1255
juliusmarminge wants to merge 1 commit intomainfrom
t3code/flatten-git-service-layer

Conversation

@juliusmarminge
Copy link
Member

@juliusmarminge juliusmarminge commented Mar 20, 2026

Summary

  • Flattened the git service abstraction into GitCore, removing the separate GitService layer and updating downstream consumers and tests.
  • Introduced base-directory driven path derivation so state, logs, worktrees, and attachments are resolved from T3CODE_HOME / --base-dir.
  • Updated desktop and server bootstrapping, docs, and integration tests to use the new derived path layout.
  • Adjusted attachment resolution to work from an explicit attachments directory instead of the full state directory.

Testing

  • Not run (PR content only).
  • Existing test coverage was updated across git, orchestration, attachment, and server config layers.
  • Project checks expected before merge: bun fmt, bun lint, bun typecheck, and bun run test.

Note

Flatten Git service layer by merging GitService execution into GitCore

  • Removes GitService as a dependency layer; GitCore now owns git process execution directly via an internal execute(input) method built with ChildProcessSpawner
  • Default execution applies a 30s timeout and 1MB output cap per stream; both are configurable per-call via ExecuteGitInput
  • CheckpointStoreLive no longer auto-provides a Git implementation — callers must explicitly wire a GitCore layer when composing the environment
  • Server wiring in serverLayers.ts, test harnesses, and integration fixtures are updated to provide GitCoreLive directly
  • Risk: CheckpointStoreLive is a breaking change for any caller that previously relied on it bundling GitServiceLive internally

Macroscope summarized d100711.

- remove the GitService layer and wire callers to GitCore directly
- update checkpointing and orchestration wiring to provide GitCore
- adjust git layer tests and harnesses for the new structure
@coderabbitai
Copy link

coderabbitai bot commented Mar 20, 2026

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: 9f7d3ee4-8bf2-49b1-87b2-fa92fe2467a2

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch t3code/flatten-git-service-layer

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions github-actions bot added size:XL 500-999 changed lines (additions + deletions). vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. labels Mar 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XL 500-999 changed lines (additions + deletions). vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant