Skip to content

Studio: add guarded Git review, checkpoints, and owned worktrees - #10594

Closed
PhilipJohnBasile wants to merge 13 commits into
unslothai:mainfrom
PhilipJohnBasile:codex/git-worktrees-review-20260909
Closed

PhilipJohnBasile wants to merge 13 commits into
unslothai:mainfrom
PhilipJohnBasile:codex/git-worktrees-review-20260909

Conversation

@PhilipJohnBasile

@PhilipJohnBasile PhilipJohnBasile commented Sep 9, 2026 •

Copy link
Copy Markdown

Studio projects gain bounded Git status/diffs, selected-file checkpoints, owned worktrees, prepared commit refs, and an explicitly confirmed GitHub handoff. Prepared commits preserve the active branch and staging index; uncertain publication retains recovery evidence.

This split excludes mcp_client.py and chat_history.py changes. Project lifecycle support is reviewed in #10633; one-shot MCP configuration checks are in #10632. A false or raising configuration check intentionally denies MCP dispatch, including one-shot transports. The 28 focused configuration/one-shot tests pass in that separate MCP branch. Here, Git mutations refuse before workspace access without lifecycle support, and OAuth handoff refuses without the MCP capability. Read-only Git review remains available independently.

Current repair head: 9d86e2547b9ce03b89910912e095c80aae23e719. Preparing the first commit on a new attached branch now creates a parentless commit under a prepared ref. It includes only selected reviewed files and leaves HEAD, the index, and unrelated staged files unchanged. A first commit created externally after preview invalidates confirmation. Broken existing refs remain errors. The UI labels the no-commit state. Worktrees and checkpoints retain their committed-HEAD requirement.

Earlier review fixes retain staged rename sources, expose carriage-return-only changes, reconcile interrupted marker cleanup, expire abandoned confirmations without candidate SHAs, and report the actual workspace revision. Optional task ownership guards prevent cleanup/merge while a task physically owns the checkout. The private owned-worktree proof lets already-fenced task commands validate ownership without nested-lock deadlocks.

Local validation on macOS arm64 / Python 3.11: 68 backend tests passed with lifecycle commit 10eec87e411ee03fed1999fd3df3971bf0c8d632 composed; 99 focused frontend tests, application/test typechecks, production build, and bundle checks passed. Startup transfer remains 7.1 KB below the unchanged ceiling. The missing continuation-test filesystem import already on upstream main is included so test typechecking runs on this source branch. Python lint/format and diff checks pass; the touched UI passes Biome error checks.

Current native matrix: run 34433421808. It qualifies Linux/macOS/Windows with lifecycle-only and secure-command/edit compositions pinned to the current review commits. All six jobs pass at 9d86e2547b9ce03b89910912e095c80aae23e719; earlier six-job success at 016da2365 remains historical evidence.

Review and reproduction details: studio/GIT_WORKTREES_REVIEW.md. Real model/provider loops, packaged desktop behavior, existing-folder grants, and authenticated connector submission remain separate qualification gates. Upstream approval and merge remain pending.

@PhilipJohnBasile
PhilipJohnBasile marked this pull request as ready for review September 9, 2026 07:23
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 9, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-09-09T07:39:28.792532Z fc82fdb Draft marked ready
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: fc82fdb534

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@danielhanchen

Copy link
Copy Markdown
Member

This also changes call_tool_sync in studio/backend/core/inference/mcp_client.py so a failing config_check now denies dispatch on every MCP tool call, which affects a path that works today. Could you confirm that behaviour and split the mcp_client and chat_history changes out so the Git and worktrees surface stands on its own?

@PhilipJohnBasile
PhilipJohnBasile deleted the codex/git-worktrees-review-20260909 branch September 12, 2026 02:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants