export declare const GIT_MASTER_REBASE_WORKFLOW_SECTION = "## REBASE MODE (Phase R1-R4)\n\n## PHASE R1: Rebase Context Analysis\n\n<rebase_context>\n### R1.1 Parallel Information Gathering\n\n```bash\n# Execute ALL in parallel\ngit branch --show-current\ngit log --oneline -20\ngit merge-base HEAD main 2>/dev/null || git merge-base HEAD master\ngit rev-parse --abbrev-ref @{upstream} 2>/dev/null || echo \"NO_UPSTREAM\"\ngit status --porcelain\ngit stash list\n```\n\n### R1.2 Safety Assessment\n\n| Condition | Risk Level | Action |\n|-----------|------------|--------|\n| On main/master | CRITICAL | **ABORT** - never rebase main |\n| Dirty working directory | WARNING | Stash first: `git stash push -m \"pre-rebase\"` |\n| Pushed commits exist | WARNING | Will require force-push; confirm with user |\n| All commits local | SAFE | Proceed freely |\n| Upstream diverged | WARNING | May need `--onto` strategy |\n\n### R1.3 Determine Rebase Strategy\n\n```\nUSER REQUEST -> STRATEGY:\n\n\"squash commits\" intent in any language (e.g., \"cleanup\", \"\uC815\uB9AC\", \"\u5C65\u6B74\u6574\u7406\")\n  -> INTERACTIVE_SQUASH\n\n\"rebase on main\" intent in any language (e.g., \"update branch\", \"\uBA54\uC778\uC5D0 \uB9AC\uBCA0\uC774\uC2A4\", \"main\u306B\u30EA\u30D9\u30FC\u30B9\")\n  -> REBASE_ONTO_BASE\n\n\"autosquash\" / \"apply fixups\"\n  -> AUTOSQUASH\n\n\"reorder commits\" intent in any language (e.g., \"\uCEE4\uBC0B \uC21C\uC11C\", \"\u30B3\u30DF\u30C3\u30C8\u9806\u3092\u4E26\u3079\u66FF\u3048\")\n  -> INTERACTIVE_REORDER\n\n\"split commit\" intent in any language (e.g., \"\uCEE4\uBC0B \uBD84\uB9AC\", \"\u30B3\u30DF\u30C3\u30C8\u5206\u5272\")\n  -> INTERACTIVE_EDIT\n```\n</rebase_context>\n\n---\n\n## PHASE R2: Rebase Execution\n\n<rebase_execution>\n### R2.1 Interactive Rebase (Squash/Reorder)\n\n```bash\n# Find merge-base\nMERGE_BASE=$(git merge-base HEAD main 2>/dev/null || git merge-base HEAD master)\n\n# Start interactive rebase\n# NOTE: Cannot use -i interactively. Use GIT_SEQUENCE_EDITOR for automation.\n\n# For SQUASH (combine all into one):\ngit reset --soft $MERGE_BASE\ngit commit -m \"Combined: <summarize all changes>\"\n\n# For SELECTIVE SQUASH (keep some, squash others):\n# Use fixup approach - mark commits to squash, then autosquash\n```\n\n### R2.2 Autosquash Workflow\n\n```bash\n# When you have fixup! or squash! commits:\nMERGE_BASE=$(git merge-base HEAD main 2>/dev/null || git merge-base HEAD master)\nGIT_SEQUENCE_EDITOR=: git rebase -i --autosquash $MERGE_BASE\n\n# The GIT_SEQUENCE_EDITOR=: trick auto-accepts the rebase todo\n# Fixup commits automatically merge into their targets\n```\n\n### R2.3 Rebase Onto (Branch Update)\n\n```bash\n# Scenario: Your branch is behind main, need to update\n\n# Simple rebase onto main:\ngit fetch origin\ngit rebase origin/main\n\n# Complex: Move commits to different base\n# git rebase --onto <newbase> <oldbase> <branch>\ngit rebase --onto origin/main $(git merge-base HEAD origin/main) HEAD\n```\n\n### R2.4 Handling Conflicts\n\n```\nCONFLICT DETECTED -> WORKFLOW:\n\n1. Identify conflicting files:\n   git status | grep \"both modified\"\n\n2. For each conflict:\n   - Read the file\n   - Understand both versions (HEAD vs incoming)\n   - Resolve by editing file\n   - Remove conflict markers (<<<<, ====, >>>>)\n\n3. Stage resolved files:\n   git add <resolved-file>\n\n4. Continue rebase:\n   git rebase --continue\n\n5. If stuck or confused:\n   git rebase --abort  # Safe rollback\n```\n\n### R2.5 Recovery Procedures\n\n| Situation | Command | Notes |\n|-----------|---------|-------|\n| Rebase going wrong | `git rebase --abort` | Returns to pre-rebase state |\n| Need original commits | `git reflog` -> `git reset --hard <hash>` | Reflog keeps 90 days |\n| Accidentally force-pushed | `git reflog` -> coordinate with team | May need to notify others |\n| Lost commits after rebase | `git fsck --lost-found` | Nuclear option |\n</rebase_execution>\n\n---\n\n## PHASE R3: Post-Rebase Verification\n\n<rebase_verify>\n```bash\n# Verify clean state\ngit status\n\n# Check new history\ngit log --oneline $(git merge-base HEAD main 2>/dev/null || git merge-base HEAD master)..HEAD\n\n# Verify code still works (if tests exist)\n# Run project-specific test command\n\n# Compare with pre-rebase if needed\ngit diff ORIG_HEAD..HEAD --stat\n```\n\n### Push Strategy\n\n```\nIF branch never pushed:\n  -> git push -u origin <branch>\n\nIF branch already pushed:\n  -> git push --force-with-lease origin <branch>\n  -> ALWAYS use --force-with-lease (not --force)\n  -> Prevents overwriting others' work\n```\n</rebase_verify>\n\n---\n\n## PHASE R4: Rebase Report\n\n```\nREBASE SUMMARY:\n  Strategy: <SQUASH | AUTOSQUASH | ONTO | REORDER>\n  Commits before: N\n  Commits after: M\n  Conflicts resolved: K\n  \nHISTORY (after rebase):\n  <hash1> <message1>\n  <hash2> <message2>\n\nNEXT STEPS:\n  - git push --force-with-lease origin <branch>\n  - Review changes before merge\n```";
