Ограничения и валидаторы в JetBrains MPS

★ 7.9 · vibe-coding

mps-aspect-constraints is a Claude Code skill that covers authoring and editing the constraints aspect of JetBrains MPS languages: property validators (propertyValidator), setters and getters, AST placement rules (canBeChild / canBeParent / canBeAncestor / canBeRoot), referentSetHandler side effects, and reference scope logic. It handles both imperative scopes via ConstraintFunction_ReferentSearchScope_Scope and inherited scopes through ScopeProvider.getScope, along with scope helpers such as SimpleRoleScope, ListScope, CompositeScope, and HidingByNameScope. All edits are performed exclusively through MPS MCP tools — mps_mcp_insert_root_node_from_json, mps_mcp_update_node, mps_mcp_check_root_node_problems — direct modification of .mps files is not allowed. The skill targets DSL authors and MPS language engineers who need to control node validation rules, reference scopes, and structural placement constraints inside the <lang>/languageModels/constraints.mps model.