Skip to content

charlie: reconcile main with next/v3 #379

@shellscape

Description

@shellscape

Goal

  1. Compare origin/main vs origin/next/v3, anchored at their merge-base.
  2. Produce ONE thorough Markdown report (ready to paste into a GitHub comment).
  3. Create EXACTLY 5 new GitHub issues that drive next/v3 alignment work.

Non-negotiable constraints (do not violate)

  • email check must stay powered by caniemail. Do NOT switch to @jsx-email/doiuse-email (legacy).
  • Do NOT propose any Node/React engine/peer range changes. Treat next/v3’s version/range choices as correct.
  • Keep the create-mail package/binary name. Only port applicable fixes from main’s create-jsx-email into create-mail.
  • Do NOT create work items about “ESM/CJS friction” or plugin packaging changes justified only by that concern (outdated on Node 20.19.0).
  • You may use raw git output for your own analysis, but do NOT dump large diffs/logs into the final report—only concise evidence (commit SHA(s), file paths, brief notes).

Required repo analysis steps

  • git fetch origin main next/v3
  • BASE=$(git merge-base origin/main origin/next/v3) (record merge-base SHA + date/tag if easy)
  • Use:
    • git diff --name-status $BASE..origin/main
    • git diff --name-status $BASE..origin/next/v3
    • Targeted git log / git blame on important files to attribute fixes/features to exact commits.

Output A — ONE Markdown report (use these headings)

  1. High-level branch comparison
    • Merge-base SHA (+ date/tag if easy)
    • What next/v3 is trying to do differently (intentional divergence)
    • Major architectural differences (renderer, CLI, scaffolder, preview/web, tooling)
  2. Fixes from main that are missing or incomplete in next/v3
    • Per item: what’s fixed on main, what’s missing/broken on next/v3, evidence (commit SHA(s) + file paths), suggested port/adaptation approach, integration risk (low/medium/high)
  3. Features from main that are missing in next/v3
    • Same per-item fields as section 2
  4. Features present in both branches but partial/conflicting
    • Explain the divergence and what “done” should look like in next/v3
    • Evidence: commit SHA(s) + file paths
  5. Intentional divergences in next/v3 (do not change)
    • Explicitly include: caniemail choice, Node/React version ranges, keeping create-mail, any v3-only refactors that should remain
    • Evidence: commit SHA(s) + file paths
  6. Tooling/CI drift notes (only what’s real and evidenced)
    • Summarize meaningful drift in .github/workflows/**, .github/actions/**, moon.yml + **/moon.yml, and shared/vitest.config.*
    • Explicitly answer: “What are the differences around FORCE_COLOR?”
      • Where it’s set (Moon task env vs workflow-step env)
      • What scope it affects on each branch

Output B — Create EXACTLY 5 GitHub issues (actually create them)

  • Create 5 issues in shellscape/jsx-email (use gh issue create or equivalent).
  • Titles must start with charlie: and issues must be assigned to @CharlieHelps .
  • Choose 5 buckets intelligently from what you found (no pre-baked bucket list), covering the highest-impact next/v3 alignment work implied by the report.
  • Each issue body MUST include:
  • Target branch: “All PRs must branch from next/v3 and target base next/v3 (not main).”
  • Context: how this bucket maps to items in the report
  • Scope: explicit files/areas + step-by-step tasks
  • Acceptance criteria (“done when”)
  • Verification: exact commands/tests to run
  • After creating them, output the 5 issue links.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions