feat(inkless:sync): add upstream sync tooling and documentation#498
feat(inkless:sync): add upstream sync tooling and documentation#498
Conversation
0bbe1c1 to
4feb56d
Compare
68c8d12 to
e8347fc
Compare
b5d6af4 to
560ce45
Compare
560ce45 to
8568092
Compare
8568092 to
360b1ca
Compare
360b1ca to
3c298ce
Compare
3c298ce to
0da6651
Compare
ab609cf to
74428ed
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 20 out of 21 changed files in this pull request and generated 1 comment.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
74428ed to
b537dd9
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 20 out of 21 changed files in this pull request and generated 6 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
b537dd9 to
df39889
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 20 out of 21 changed files in this pull request and generated 2 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
df39889 to
ac43854
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 20 out of 21 changed files in this pull request and generated 3 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Update CI workflow to run on inkless-4.* release branches in addition to the main inkless branch. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add inkless-sync directory to RAT license exclusions since it contains tooling scripts and documentation that don't require Apache license headers. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
ac43854 to
35d51f1
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 20 out of 21 changed files in this pull request and generated 1 comment.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Add main-sync.sh script for syncing the inkless main branch with upstream Apache Kafka trunk. Features: - Phase-based workflow (prepare, merge, review, resolve, finalize) - Automatic conflict detection and protected file handling - Worktree isolation via --worktree flag - Dry-run mode for previewing sync operations (truly non-mutating) - Clean worktree check before branching/merging - Session state management for resume capability - Shared utility functions in lib/common.sh Documentation: - MAIN-SYNC-ACTION-PLAN.md: Step-by-step sync procedure - MAIN-SYNC-PROMPT.md: AI assistant prompt for sync guidance - MAIN-SYNC-SESSION-TEMPLATE.md: Session documentation template - CONFLICT-RESOLUTION-STRATEGY.md: Conflict resolution guidelines Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add release-sync.sh script for syncing inkless release branches (e.g., inkless-4.0, inkless-4.1) with upstream Apache Kafka release tags. Features: - Tag discovery with --list-tags option - Sync to specific tag (--to-tag) or branch HEAD (--to-head) - Dry-run mode for conflict preview (uses detached HEAD, non-mutating) - Custom working branch support (--branch) - Non-interactive mode with --yes flag for automation - Clean worktree check before operations - Automatic version file updates (gradle.properties only) - Release candidate filtering with --include-rc Documentation: - RELEASE-SYNC-GUIDE.md: Comprehensive release sync documentation - RELEASE-SYNC-ACTION-PLAN.md: Step-by-step procedure - RELEASE-SYNC-PROMPT.md: AI assistant prompt - RELEASE-SYNC-SESSION-TEMPLATE.md: Session template Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add utility scripts for managing inkless branches: - branch-consistency.sh: Check if commits from main exist on release branches - Supports --all to check all release branches - Shows missing commits with --missing flag - Verbose mode for detailed output - cherry-pick-to-release.sh: Cherry-pick commits to release branches - Supports single commit, range, or list of commits - Automatic branch checkout and handling - Clean worktree check before starting - Error handling for failed cherry-picks - create-release-branch.sh: Create new inkless release branches - Validates main is at correct version level - Finds appropriate branch point in history - Clean worktree check before branching - Dry-run mode for preview - sync-status.sh: Report sync status for inkless branches - Shows commits behind upstream - Supports --all for all branches - Verbose mode for commit details - Handles non-tag base versions (--to-head syncs) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add inkless-sync directory README with overview of all sync tooling and update main inkless documentation. - inkless-sync/README.md: Directory overview and script index - inkless-sync/SYNC-PROMPT.md: General sync prompt for AI assistants - docs/inkless/README.md: Add sync tooling section Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
35d51f1 to
482a954
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 20 out of 21 changed files in this pull request and generated no new comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Summary
Add comprehensive sync tooling for maintaining inkless branches in sync with upstream Apache Kafka.
AI-Assisted Sync
Start with SYNC-PROMPT.md - a simple entry point that guides you to the right workflow.
Scripts Added
main-sync.shrelease-sync.shsync-status.shbranch-consistency.shcreate-release-branch.shcherry-pick-to-release.shDocumentation Added
Entry Point
SYNC-PROMPT.mdMain Sync
MAIN-SYNC-PROMPT.mdMAIN-SYNC-SESSION-TEMPLATE.mdMAIN-SYNC-ACTION-PLAN.mdRelease Sync
RELEASE-SYNC-GUIDE.mdRELEASE-SYNC-PROMPT.mdRELEASE-SYNC-SESSION-TEMPLATE.mdRELEASE-SYNC-ACTION-PLAN.mdShared
README.mdCONFLICT-RESOLUTION-STRATEGY.mdBuild/CI Changes
inkless-sync/directory from RAT license checkinkless-4.*release branches (push and PRs)Test plan
🤖 Generated with Claude Code