mdsmith
Esc
    v0.52.0 GitHub
    MDS056 prose ready

    MDS056: forbidden-text

    Paragraphs must not contain any configured substring.

    For each paragraph in the document, the rule scans the plain text for every entry in contains: and emits one diagnostic per match, anchored at the paragraph’s start line. Tables (paragraphs whose first line starts with |) are skipped. Empty substrings are ignored.

    Under a schema scope override , the per-scope filter keeps only diagnostics inside the scope’s range. The same code applies to a single section.

    # Settings

    SettingTypeDefaultDescription
    containslist[]Substrings forbidden in any paragraph. Match is case-sensitive.

    # Config

    Document-wide:

    rules:
      forbidden-text:
        contains: ["should", "may", "might"]

    Per-section (via schema scope):

    kinds:
      runbook:
        schema:
          sections:
            - heading: "Diagnosis"
              rules:
                forbidden-text:
                  contains: ["should", "may"]

    Disable:

    rules:
      forbidden-text: false

    # Examples

    # Good

    # Title
    
    The platform must investigate the failure before acting.
    
    Operators escalate the alert when the timer expires.

    # Bad

    # Title
    
    We should investigate the failure before acting.

    # Meta-Information

    • ID: MDS056
    • Name: forbidden-text
    • Status: ready
    • Default: disabled
    • Fixable: no
    • Implementation: source
    • Category: prose