Skip to content

feat(dale): enable KB linting and add undefined-acronyms rule#745

Merged
hilram7 merged 7 commits intodevfrom
feature/dale-kb-updates
Apr 11, 2026
Merged

feat(dale): enable KB linting and add undefined-acronyms rule#745
hilram7 merged 7 commits intodevfrom
feature/dale-kb-updates

Conversation

@hilram7
Copy link
Copy Markdown
Collaborator

@hilram7 hilram7 commented Apr 11, 2026

Summary

  • Removes the KB skip from the post-edit-dale hook so KB articles are linted in local Claude Code sessions alongside regular docs.
  • Adds a new undefined-acronyms dale rule that flags product-specific acronyms used without definition on first use (e.g. FSAA, AIC, SPAA, CAP, NPR) while excluding well-known IT standards.
  • Fixes a tense and wordiness issue found during testing in connection-profile-credential-selection.md.

Rule behavior

The undefined-acronyms rule follows the style guide pattern: "File System Access Audit (FSAA)" on first use, then "FSAA" thereafter.

Does not flag:

  • Well-known IT/Windows standards: DNS, AD, SSL, TLS, LDAP, SAML, MFA, ACL, DACL, SACL, OU, GPO, SID, UID, and similar
  • Code literals in backticks
  • Netwrix product short names when the full product name has already appeared in the article
  • Acronyms that appear only in headings or titles

Does flag:

  • Product-specific acronyms (e.g., FSAA, SPAA, AIC, CEE, AMQP, CAP, NPR) used in body prose without prior definition

Testing

  • Validated across 23 files spanning 10 products.
  • Files marked with † were tested during rule calibration.
  • Some terms were subsequently added to the exclusion list.

KB articles (13):

  • docs/kb/accessanalyzer/connection-profiles-and-credentials/connection-profile-credential-selection.md
    No issues ✓

  • docs/kb/accessanalyzer/connection-profiles-and-credentials/determining_which_access_analyzer_collectors_ support_gmsa.md
    passive-voice: 3 · wordiness: 1 · undefined-acronyms: 2 (FSAA, SPAA)

  • docs/kb/accessanalyzer/installation-and-upgrades/access-analyzer-upgrade-workflow-aic.md
    passive-voice: 1 · wordiness: 1

  • docs/kb/accessanalyzer/troubleshooting-and-errors/error-removed-host-name-in-aic-andor-fsaa-host-table.md
    passive-voice: 3 · wordiness: 3

  • docs/kb/accessanalyzer/troubleshooting-and-errors/fsaa-registry-key-error.md
    passive-voice: 1 · undefined-acronyms: 1 (FSAA)

  • docs/kb/activitymonitor/integrations-and-data-sources/manually-setting-up-sharepoint-online-auditing.md
    passive-voice: 7 · wordiness: 3 · positional-references: 1 · undefined-acronyms: 4 (SPAA/SPSEEK, SPAC, NAM, UNC)

  • docs/kb/activitymonitor/monitoring-platforms-and-storage/recommended-performance-counters-for-sam.md
    passive-voice: 4 · wordiness: 1 · positional-references: 1 · undefined-acronyms: 3 (SAM, CEE, AMQP)

  • docs/kb/dataclassification/authentication-and-security/service-account-password-reset-for-netwrix-data-classification.md
    misplaced-modifiers: 1 · wordiness: 2 · positional-references: 2

  • docs/kb/dataclassification/features-and-operations/what-usage-and-license-data-is-sent-to-netwrix-by-netwrix-data-classification.md
    passive-voice: 3 · wordiness: 1

  • docs/kb/general/cloud-and-permissions/permission-scanning-errors-and-issues.md
    passive-voice: 4 · misplaced-modifiers: 1 · wordiness: 2 · positional-references: 1 · undefined-acronyms: 1 (FSAA)

  • docs/kb/general/troubleshooting-and-errors/spac-bulk-import-error.md
    passive-voice: 4 · wordiness: 1 · positional-references: 1 · undefined-acronyms: 3 (SPAC, SPAA, SPSEEK)

  • docs/kb/privilegesecure/authentication-and-mfa/add-active-directory-federation-services-ad-fs-as-an-authentication-connector-saml.md
    passive-voice: 6 · wordiness: 2 · undefined-acronyms: 2 (SAML — now excluded, CORS)

  • docs/kb/privilegesecurediscovery/authentication-and-access/saml-assertion-not-yet-valid.md
    wordiness: 1

Docs articles (10):

  • docs/accessanalyzer/12.0/requirements/filesystem/filesystems/netappcmode/activity/configurefpolicy.md
    passive-voice: 8 · minimizing-difficulty: 1 · positional-references: 2 · wordiness: 4 · undefined-acronyms: 1 (SVM)

  • docs/auditor/10.8/requirements/supporteddatasources/supporteddatasources.md
    passive-voice: 13 · wordiness: 3 · undefined-acronyms: 4 (CIFS, DSM, WAF, NS)

  • docs/changetracker/8.1/admin/devicediscoveryregistration/devicediscoveryregistration.md
    passive-voice: 8 · idioms: 2

  • docs/directorymanager/11.0/managementshell/scheduling/overview.md
    No issues ✓

  • docs/endpointprotector/gettingstarted.md
    passive-voice: 1 · wordiness: 1 · misplaced-modifiers: 1 · undefined-acronyms: 1 (CAP)

  • docs/passwordreset/3.3/administration/securing_password_reset.md
    passive-voice: 2 · positional-references: 1 · wordiness: 1 · undefined-acronyms: 2 (NPR; DACL — now excluded)

  • docs/privilegesecure/4.2/admin/configuration/integrationconnector/integrationbyov/byovconnectorconfig.md
    passive-voice: 7 · wordiness: 2

  • docs/threatmanager/3.0/threats/overview.md
    passive-voice: 2 · wordiness: 2

  • docs/threatmanager/3.1/administration/configuration/integrations/activedirectorysync.md
    passive-voice: 4 · wordiness: 1 · undefined-acronyms: 1 (USN)

  • docs/threatmanager/3.1/administration/configuration/systemsettings/useraccess.md
    passive-voice: 7 · wordiness: 4 · undefined-acronyms: 1 (RADIUS)

No false positives on AD, LDAP, SSL, IIS, ACL, DACL, OU, or other well-known terms across any tested file.

Notes

  • Dale auto-fix in CI (via vale-autofix.yml) does not yet run on KB articles — that requires additional workflow changes planned for a follow-up PR.

hilram7 added 7 commits April 10, 2026 16:26
Narrow scope to product-specific and non-standard acronyms per KB style
guide guidance. Exclude well-known IT standards (SID, UID, DNS, SQL, etc.)
and code literals in backticks.
…le-credential-selection

Corrected future tense to present tense and reduced wordiness; verifies
the undefined-acronyms dale rule produces clean output on a well-written
KB article with no false positives.
@hilram7 hilram7 marked this pull request as ready for review April 11, 2026 00:55
@hilram7 hilram7 requested a review from a team as a code owner April 11, 2026 00:55
@hilram7 hilram7 merged commit 1f998ce into dev Apr 11, 2026
7 checks passed
@hilram7 hilram7 deleted the feature/dale-kb-updates branch April 11, 2026 01:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant