js/restricting-issue-visibility/block-changes-to-visibility-group-for-reported-issues.js (16 lines of code) (raw):

// This rule assumes that issue visibility is set to a specific group // at the moment when an issue becomes reported. // Each project has its own visibility group. var entities = require('@jetbrains/youtrack-scripting-api/entities'); var workflow = require('@jetbrains/youtrack-scripting-api/workflow'); exports.rule = entities.Issue.onChange({ title: 'Block changes to visibility group for reported issues', guard: function(ctx) { var issue = ctx.issue; return issue.isReported && !issue.becomesReported && issue.isChanged('permittedGroups'); }, action: function(ctx) { workflow.check(false, 'You cannot change group visibility restrictions for reported issues. ' + 'Instead, you can add single users to the "visible to" list.'); }, requirements: {} });