From e754fe023ed26cb6ec71f17e1df3e20e8a37a1e5 Mon Sep 17 00:00:00 2001 From: jawwad-ali Date: Wed, 22 Jul 2026 21:09:01 +0500 Subject: [PATCH] fix(integrations): declare LingmaIntegration multi_install_safe MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit LingmaIntegration writes only to its isolated, static root .lingma/skills, disjoint from every other integration, yet never declared multi_install_safe — inheriting the IntegrationBase default False and leaving `specify integration status` in a permanent unsafe-multi-install ERROR state when lingma is co-installed alongside another agent. Add `multi_install_safe = True`, mirroring the structurally-identical trae/zcode SkillsIntegrations and the kiro-cli #3471 fix. The parametrized registry isolation contracts auto-include lingma and pass. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.8 (1M context) --- src/specify_cli/integrations/lingma/__init__.py | 1 + tests/integrations/test_integration_lingma.py | 8 ++++++++ 2 files changed, 9 insertions(+) diff --git a/src/specify_cli/integrations/lingma/__init__.py b/src/specify_cli/integrations/lingma/__init__.py index 2cb74b2192..0d2fa824aa 100644 --- a/src/specify_cli/integrations/lingma/__init__.py +++ b/src/specify_cli/integrations/lingma/__init__.py @@ -27,6 +27,7 @@ class LingmaIntegration(SkillsIntegration): "args": "$ARGUMENTS", "extension": "/SKILL.md", } + multi_install_safe = True @classmethod def options(cls) -> list[IntegrationOption]: diff --git a/tests/integrations/test_integration_lingma.py b/tests/integrations/test_integration_lingma.py index e3d338d540..f2c92365b2 100644 --- a/tests/integrations/test_integration_lingma.py +++ b/tests/integrations/test_integration_lingma.py @@ -1,5 +1,7 @@ """Tests for LingmaIntegration.""" +from specify_cli.integrations import get_integration + from .test_integration_base_skills import SkillsIntegrationTests @@ -8,3 +10,9 @@ class TestLingmaIntegration(SkillsIntegrationTests): FOLDER = ".lingma/" COMMANDS_SUBDIR = "skills" REGISTRAR_DIR = ".lingma/skills" + + def test_multi_install_safe(self): + # Lingma writes only to its isolated, static root .lingma/skills, + # disjoint from every other integration, so it must be co-install safe + # (mirrors trae/zcode and the kiro-cli #3471 precedent). + assert get_integration(self.KEY).multi_install_safe is True