Skip to content

Merge upstream PR #179 updates (Claude adapter + storage refactor)#4

Open
dafzthomas wants to merge 4 commits intomainfrom
havenCode/merge-upstream-pr179-update
Open

Merge upstream PR #179 updates (Claude adapter + storage refactor)#4
dafzthomas wants to merge 4 commits intomainfrom
havenCode/merge-upstream-pr179-update

Conversation

@dafzthomas
Copy link
Owner

Summary

  • Merges latest commits from upstream pingdotgg/t3code#179 (codething/648ca884-claude)
  • Storage refactor, test fixture cleanup, upstream main merge (terminal context, sidebar fixes, git text gen config), button overflow fix
  • 8 conflicts resolved preserving Haven Code fork identity (Bedrock settings, enableCodexProvider, claude-haiku-4-5 default, Bedrock badge)

Conflict Resolution

File Resolution
appSettings.ts Kept Bedrock/Codex settings
ChatView.tsx Took upstream (removed stale comment)
ClaudeTraitsPicker.browser.tsx Took upstream setState refactor
CodexTraitsPicker.browser.tsx Same refactor
CompactComposerControlsMenu.browser.tsx Took upstream deduplicated draft setup
ProviderModelPicker.tsx Upstream CSS + our Bedrock badge
composerDraftStore.ts Upstream resolveModelOptions + our Object.freeze
model.ts Kept claude-haiku-4-5 as default git text gen model

Verification

  • Typecheck: 7/7 packages pass
  • Tests: 451/452 pass (1 flaky timeout in new upstream test — passes in isolation)

🤖 Generated with Claude Code

UtkarshUsername and others added 4 commits March 18, 2026 09:46
Merges latest commits from pingdotgg#179 including:
- Storage refactor (composerDraftStore extracted resolveModelOptions)
- setState pattern refactored in browser test fixtures
- Upstream main merged in (terminal context, sidebar fixes, git text gen)
- Button overflow fix

Conflict resolution:
- Keep Haven Code fork identity (Bedrock settings, enableCodexProvider,
  claude-haiku-4-5 as default git text gen model, Bedrock badge in picker)
- Accept upstream refactors (draftsByThreadId variable pattern,
  resolveModelOptions callback, CSS improvements)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@github-actions github-actions bot added size:XL vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. labels Mar 18, 2026
Copy link

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

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: 25b28e3a9c

ℹ️ 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".

Comment on lines +783 to +784
if (!persisted || persisted.version !== COMPOSER_DRAFT_STORAGE_VERSION) {
return [];

Choose a reason for hiding this comment

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

P1 Badge Preserve attachments from older draft storage versions

This version gate returns an empty attachment set for any persisted draft blob not already on the current version, which bypasses migration in readPersistedAttachmentIdsFromStorage. In upgrade scenarios (e.g., users with older localStorage drafts containing image attachments), syncPersistedAttachments will treat all images as not persisted and can then overwrite local draft state with persistedAttachments: [], silently dropping previously saved attachments. The previous code path migrated old payloads before reading IDs, so this is a behavioral regression for existing user data.

Useful? React with 👍 / 👎.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XL 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.

3 participants