Add port-from-upstream agent skill#13
Merged
richardwooding merged 1 commit intomainfrom Apr 28, 2026
Merged
Conversation
Captures the workflow for syncing features and bug fixes from upstream cel2sql Go (the canonical source) and cross-referencing cel2sql4j Java. The recent v3.7.0/v3.7.1 sync (PR #8: Spark dialect + observe-fork options + BigQuery COALESCE fix) followed this exact shape. Layout under .claude/skills/port-from-upstream/: - SKILL.md (~120 lines) — quick start, two-upstream model, pre-port verification (grep first), out-of-scope concerns mirrored from cel2sql4j's same decisions, per-commit workflow, when-to-split-PRs trade-off, verification. - references/go-to-python-idioms.md — Go-to-Python mapping table (closures, errors, struct-and-interface → ABC + dataclass, generics, strings, maps, time/duration, reflection). Distilled from the actual edits in PR #8. - references/java-to-python-cross-refs.md — places where cel2sql4j's Java solution was a closer template than the Go original (per-dialect writeFormat, ConvertOptions shape, single-functional-interface lambda vs Go closure, dual-message exception base, shared skipped concerns). - scripts/list_upstream_changes.sh — lists upstream cel2sql commits and tags, plus cel2sql4j commits in the same time window. Auto-detects since-sha from the most recent "Port" / "backport" commit on pycel2sql main. Falls clearly when either sibling repo isn't checked out. Lints clean against .claude/skills/skill-authoring/scripts/lint_skill.py. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
3 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Third of four maintenance skills. Captures the workflow for syncing features and bug fixes from upstream cel2sql Go (the canonical source) and cross-referencing cel2sql4j Java into pycel2sql. The recent v3.7.0/v3.7.1 sync (PR #8) followed this exact shape.
Mirrors cel2sql4j's same skill (cel2sql4j PR #11) — pycel2sql is more relevant than cel2sql Go for this skill, since pycel2sql tracks two upstreams and benefits from cel2sql4j as a cross-reference.
Layout
Lint
```
$ python .claude/skills/skill-authoring/scripts/lint_skill.py .claude/skills/port-from-upstream/
0 error(s), 0 warning(s)
```
Test plan
🤖 Generated with Claude Code