Skip to content

docs: add Strangler Fig migration skill for Python extraction#466

Merged
torlando-tech merged 1 commit intomainfrom
claude/strangler-fig-migration-skill
Feb 15, 2026
Merged

docs: add Strangler Fig migration skill for Python extraction#466
torlando-tech merged 1 commit intomainfrom
claude/strangler-fig-migration-skill

Conversation

@torlando-tech
Copy link
Copy Markdown
Owner

Summary

  • Adds .claude/skills/columba-python-migration/SKILL.md — a Claude Code skill that gives future sessions automatic awareness of the 9-phase plan to extract ~4,380 lines of business logic from reticulum_wrapper.py into Kotlin
  • Un-ignores .claude/skills/ in .gitignore so skills can be version-controlled (rest of .claude/ stays ignored)

No code changes — documentation only.

Context

reticulum_wrapper.py is 8,032 lines. ~70% is business logic (delivery state machines, telemetry, health monitoring, RMSP, event routing) that only needs to call RNS/LXMF APIs. The Strangler Fig migration will create a thin Python API (~250-400 lines) and move all orchestration to testable Kotlin, phase by phase, without touching the existing wrapper until final cleanup.

Test plan

  • Verify .claude/skills/columba-python-migration/SKILL.md contains no PII
  • Verify other .claude/ files (settings, memory.db, etc.) remain gitignored
  • Verify skill loads in new Claude Code sessions

🤖 Generated with Claude Code

…action

Track the 9-phase plan to extract ~4,380 lines of business logic from
reticulum_wrapper.py (8,032 lines) into Kotlin, leaving a thin ~250-400
line Python API for raw RNS/LXMF operations. The skill file gives future
Claude sessions automatic awareness of the migration plan, phase
dependencies, thin API surface, and anti-patterns.

Also un-ignores .claude/skills/ in .gitignore so skills can be
version-controlled while the rest of .claude/ stays ignored.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@torlando-tech torlando-tech force-pushed the claude/strangler-fig-migration-skill branch from bdede17 to 0474aa0 Compare February 15, 2026 06:50
@greptile-apps
Copy link
Copy Markdown
Contributor

greptile-apps bot commented Feb 15, 2026

Greptile Summary

Adds a comprehensive Claude Code skill documenting the Strangler Fig migration strategy to extract ~4,380 lines of business logic from reticulum_wrapper.py into Kotlin. The skill provides future sessions with automatic awareness of the 9-phase plan, dependency graph, thin API surface, and anti-patterns to avoid.

Key changes:

  • Created .claude/skills/columba-python-migration/SKILL.md with detailed migration plan
  • Modified .gitignore pattern from .claude/ to .claude/* with !.claude/skills/ to version-control skills while keeping other Claude data (settings, memory.db) ignored
  • Documentation-only, no code changes
  • No PII detected

Confidence Score: 5/5

  • This PR is safe to merge with no risk
  • Documentation-only PR with no code changes. The .gitignore pattern correctly un-ignores the skills directory while keeping other .claude/ files private. The skill documentation contains no PII and provides valuable context for future development work. Both changes are low-risk and beneficial.
  • No files require special attention

Important Files Changed

Filename Overview
.gitignore Updated to un-ignore .claude/skills/ while keeping other .claude/ files ignored
.claude/skills/columba-python-migration/SKILL.md New 267-line Claude Code skill documenting 9-phase Strangler Fig migration plan for extracting ~4,380 lines from reticulum_wrapper.py to Kotlin

Last reviewed commit: 0474aa0

@sentry
Copy link
Copy Markdown
Contributor

sentry bot commented Feb 15, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

Comment on lines +106 to +109
.claude/*
!.claude/skills/
.claude/skills/*
!.claude/skills/columba-python-migration/
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Bug: The current .gitignore pattern will cause new files in the .claude/skills/columba-python-migration/ directory to be silently ignored by git.
Severity: MEDIUM

Suggested Fix

To ensure future files within the skill directory are tracked, add !.claude/skills/columba-python-migration/** to the .gitignore file. This will correctly un-ignore the directory and all of its contents.

Prompt for AI Agent
Review the code at the location below. A potential bug has been identified by an AI
agent.
Verify if this is a real issue. If it is, propose a fix; if not, explain why it's not
valid.

Location: .gitignore#L106-L109

Potential issue: The `.gitignore` rules are configured incorrectly. The pattern
`.claude/skills/*` ignores all contents within the `.claude/skills/` directory. The
subsequent negation `!.claude/skills/columba-python-migration/` only un-ignores the
directory itself, not its contents. As a result, any new files added to the
`.claude/skills/columba-python-migration/` directory in the future will be silently
ignored by git, which contradicts the pull request's goal of version-controlling skill
files.

Did we get this right? 👍 / 👎 to inform future reviews.

@torlando-tech torlando-tech merged commit 7d4b6b4 into main Feb 15, 2026
10 checks passed
@torlando-tech torlando-tech deleted the claude/strangler-fig-migration-skill branch February 15, 2026 18:04
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