Skip to content

[Upstream Sync] Merge conflict with v1.0.131 #83

Closed

Description

@github-actions

Upstream Sync Conflict Report

Trigger: Upstream sync at 2025-12-04T04:13:33.382Z
Upstream Tag: v1.0.131
Upstream SHA: adf7681

Conflicting Files

AGENTS.md
bun.lock
packages/console/app/package.json
packages/console/app/src/routes/workspace/[id]/graph-section.tsx
packages/console/core/package.json
packages/console/function/package.json
packages/console/mail/package.json
packages/desktop/package.json
packages/enterprise/package.json
packages/extensions/zed/extension.toml
packages/function/package.json
packages/opencode/package.json
packages/opencode/script/build.ts
packages/opencode/src/session/index.ts
packages/opencode/src/session/processor.ts
packages/opencode/src/tool/task.ts
packages/plugin/package.json
packages/sdk/js/package.json
packages/slack/package.json
packages/tauri/package.json
packages/ui/package.json
packages/util/package.json
packages/web/package.json
sdks/vscode/package.json

Recommended Actions

  1. Checkout integration branch locally
  2. Run: git fetch upstream && git merge v1.0.131
  3. Resolve conflicts manually
  4. Run validation: bun install && bun turbo typecheck && bun turbo test
  5. Push resolved integration branch
  6. Close this issue

Manual Sync Commands

git remote add upstream https://github.com/sst/opencode.git 2>/dev/null || true
git fetch upstream --tags
git checkout integration
git merge v1.0.131
# Resolve conflicts...
bun install
bun turbo typecheck
bun turbo test
git push origin integration

Activity

  1. shuv1337 commented on Dec 4, 2025

    @shuv1337
    Owner

    /opencode

    Task: Resolve Upstream Merge Conflicts

    Sync the shuvcode fork from upstream sst/opencode tag v1.0.131, resolve all merge conflicts, and complete the integration.

    Repository Context

    • Upstream: sst/opencode (original project)
    • Fork: Latitudes-Dev/shuvcode (customized downstream fork)
    • Integration branch: integration (where we merge upstream changes)

    Conflicting Files

    AGENTS.md
    bun.lock
    packages/console/app/package.json
    packages/console/app/src/routes/workspace/[id]/graph-section.tsx
    packages/console/core/package.json
    packages/console/function/package.json
    packages/console/mail/package.json
    packages/desktop/package.json
    packages/enterprise/package.json
    packages/extensions/zed/extension.toml
    packages/function/package.json
    packages/opencode/package.json
    packages/opencode/script/build.ts
    packages/opencode/src/session/index.ts
    packages/opencode/src/session/processor.ts
    packages/opencode/src/tool/task.ts
    packages/plugin/package.json
    packages/sdk/js/package.json
    packages/slack/package.json
    packages/tauri/package.json
    packages/ui/package.json
    packages/util/package.json
    packages/web/package.json
    sdks/vscode/package.json
    

    Conflict Resolution Strategy

    Follow these resolution patterns for each file type:

    File Pattern Resolution
    STATS.md, nix/hashes.json Accept upstream (git checkout --theirs)
    bun.lock Delete and regenerate with bun install
    packages/opencode/script/publish.ts Keep ours (fork-specific publishing)
    packages/opencode/script/build.ts Keep ours (shuvcode naming)
    packages/opencode/bin/opencode Keep ours (shuvcode binary lookup)
    packages/script/src/index.ts Keep ours (version logic)
    .github/* workflow configs Keep ours (fork-specific workflows)
    *.tsx with our features Merge both - preserve our customizations AND upstream improvements

    Step-by-Step Instructions

    1. Setup upstream remote and fetch:

      git remote add upstream https://github.com/sst/opencode.git 2>/dev/null || true
      git fetch upstream --tags
    2. Start the merge:

      git merge v1.0.131 --no-commit --no-ff
    3. List and resolve each conflict using the strategy table above:

      git diff --name-only --diff-filter=U
    4. For each resolved file:

      git add <file>
    5. Verify no conflicts remain:

      git diff --name-only --diff-filter=U  # Should be empty
    6. Regenerate lockfile (if bun.lock was conflicted):

      rm -f bun.lock
      bun install
      git add bun.lock
    7. Commit the merge:

      git commit -m "sync: merge upstream v1.0.131 into integration
      
      Resolved conflicts:
      - <list each file and resolution used>"
    8. Update sync marker:

      echo "v1.0.131" > .github/last-synced-tag
      git add .github/last-synced-tag
      git commit -m "sync: record last synced tag v1.0.131"
    9. Run validation:

      bun install
      bun turbo typecheck
      bun turbo test
    10. Push branch to origin:

      git push origin HEAD
    11. Create or find existing PR:

      # Check if PR already exists for this branch
      EXISTING_PR=$(gh pr list --head "$(git branch --show-current)" --json number --jq '.[0].number' --repo Latitudes-Dev/shuvcode 2>/dev/null || echo "")
      if [ -n "$EXISTING_PR" ]; then
        echo "PR #$EXISTING_PR already exists"
        PR_NUMBER=$EXISTING_PR
      else
        # Create PR targeting integration branch
        PR_URL=$(gh pr create --title "sync: merge upstream v1.0.131" --body "Resolves conflicts from upstream v1.0.131 merge. Closes #83" --base integration --repo Latitudes-Dev/shuvcode)
        PR_NUMBER=$(echo "$PR_URL" | grep -oE '[0-9]+$')
        echo "Created PR #$PR_NUMBER"
      fi
    12. Wait for CI checks to pass, then merge the PR:

      # Wait for checks and merge (auto-merge when checks pass)
      gh pr merge "$PR_NUMBER" --squash --auto --delete-branch --repo Latitudes-Dev/shuvcode
    13. Close this issue after PR is merged:

      gh issue close 83 --comment "Resolved - merged upstream v1.0.131 via PR #$PR_NUMBER" --repo Latitudes-Dev/shuvcode

    Important Notes

    • Never force-push to integration branch
    • Always preserve fork-specific changes in publish.ts, build.ts, bin/opencode
    • If validation fails, fix the issues before pushing
    • The PR will be auto-merged once CI checks pass, triggering the snapshot workflow
  2. opencode-agent commented on Dec 4, 2025

    @opencode-agent

    $ bun turbo typecheck
    To https://github.com/Latitudes-Dev/shuvcode
    ! [rejected] opencode/issue83-20251204041504 -> opencode/issue83-20251204041504 (fetch first)
    error: failed to push some refs to 'https://github.com/Latitudes-Dev/shuvcode'
    hint: Updates were rejected because the remote contains work that you do not
    hint: have locally. This is usually caused by another repository pushing to
    hint: the same ref. If you want to integrate the remote changes, use
    hint: 'git pull' before pushing again.
    hint: See the 'Note about fast-forwards' in 'git push --help' for details.

    opencode session  |  github run

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

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions