Skip to content

docs: upstream backport analysis — cherry-pickable fixes vs Effect rebase#15

Merged
e6qu merged 2 commits intodevfrom
plan/upstream-backport
Mar 18, 2026
Merged

docs: upstream backport analysis — cherry-pickable fixes vs Effect rebase#15
e6qu merged 2 commits intodevfrom
plan/upstream-backport

Conversation

@e6qu
Copy link
Copy Markdown
Owner

@e6qu e6qu commented Mar 17, 2026

Summary

Analyzed all ~50 upstream commits from anomalyco/opencode and categorized them into:

A. Cherry-pickable bug fixes (9 items, B1-B9)

Isolated fixes that don't depend on the Effect service infrastructure:

  • context_length_exceeded error detection, compaction message transforms, permission tool enables, VCS bugs, ZodError logging, question wrapping, dialog escape handler

B. Effect-ification (7 commits, full rebase required)

A dependency chain that must be taken as a unit: Instance LayerMap → FileWatcher → FileTime → VCS → Format → File → Skill

C. Informational (no action needed)

Zen pricing, docs, Windows fixes, UI tweaks

D. Frankencode-only features (ours, not upstream)

Clarified that upstream diffs show our additions as "deletions" — these are features we added (CAS, edit graph, context editing, side threads, etc.), not upstream removals. Listed all files with their expected rebase action (keep vs conflict).

Recommended approach

  1. Phase 1: Cherry-pick B1-B9 bug fixes (low risk, immediate value)
  2. Phase 2: Full rebase onto upstream/dev (high risk, expect conflicts in skill.ts, prompt.ts, message-v2.ts, instance.ts)

Test plan

  • Docs-only change — no source code modified
  • Pre-commit hooks pass (typecheck + tests: 1401 pass)

Adrian Mârza added 2 commits March 18, 2026 02:38
…pickable fixes vs Effect rebase

Identified 9 cherry-pickable bug fixes (B1-B9) that don't depend on Effect
infrastructure, and 7 Effect-ification commits that require a full rebase.
Recommended two-phase approach: backport fixes first, full rebase second.
…rebase plan

Clarify that upstream diffs show our additions as "deletions" because upstream
never had them. List all Frankencode files and their rebase action (keep vs conflict).
@e6qu e6qu force-pushed the plan/upstream-backport branch from 40996d0 to 666094d Compare March 18, 2026 00:38
@e6qu e6qu merged commit 35d6175 into dev Mar 18, 2026
1 check passed
@e6qu e6qu deleted the plan/upstream-backport branch March 18, 2026 00:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant