<commit_before>ngapp.service('errorResolutionFactory', function(pluginErrorHelpers, xelibService, navmeshHelpers) {
    // PRIVATE
    let withErrorElement = pluginErrorHelpers.withErrorElement;

    let ignoreResolution = {
        label: 'Ignore',
        class: 'neutral',
        description: 'This resolution will leave the error in the plugin.'
    };

    let removeRecordResolution = {
        label: 'Delete',
        class: 'negative',
        description: 'This resolution will remove the record from the plugin.',
        execute: function(error) {
            xelib.RemoveElement(error.handle);
        }
    };

    let tweakEdidResolution = {
        label: 'Tweak EDID',
        class: 'positive',
        description: 'This resolution will adjusted the EditorID of the record so it is no longer an ITM.',
        available: function(error) {
            return xelib.HasElement(error.handle, 'EDID');
        },
        execute: function(error, tweak) {
            if (!tweak) tweak = '-Intended';
            let oldEdid = xelib.GetValue(error.handle, 'EDID');
            xelib.SetValue(error.handle, 'EDID', oldEdid + tweak);
        }
    };

    let tweakPositionResolution = {<commit_msg>the tweak EDID option is no longer available for CELL records<commit_after>ngapp.service('errorResolutionFactory', function(pluginErrorHelpers, xelibService, navmeshHelpers) {
    // PRIVATE
    let withErrorElement = pluginErrorHelpers.withErrorElement;

    let ignoreResolution = {
        label: 'Ignore',
        class: 'neutral',
        description: 'This resolution will leave the error in the plugin.'
    };

    let removeRecordResolution = {
        label: 'Delete',
        class: 'negative',
        description: 'This resolution will remove the record from the plugin.',
        execute: function(error) {
            xelib.RemoveElement(error.handle);
        }
    };

    let tweakEdidResolution = {
        label: 'Tweak EDID',
        class: 'positive',
        description: 'This resolution will adjusted the EditorID of the record so it is no longer an ITM.',
        available: function(error) {
            return xelib.HasElement(error.handle, 'EDID') &&
                error.signature !== 'CELL';
        },
        execute: function(error, tweak) {
            if (!tweak) tweak = '-Intended';
            let oldEdid = xelib.GetValue(error.handle, 'EDID');
            xelib.SetValue(error.handle, 'EDID', oldEdid + tweak);
        }
    };

    let tweakPositionResolution = {
{'fraction_non_alphanumeric': 0.10405083399523431, 'fraction_numerical': 0.0, 'mean_word_length': 2.4696969696969697, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2397480', 'n_tokens_mistral': 700, 'n_tokens_neox': 679, 'n_words': 190}