TFD-0003: Automated Terminology Enforcement via PreToolUse Hook

TFD-0003: Automated Terminology Enforcement via PreToolUse Hook

Date: 2026-03-18 Status: Accepted Decided by: Board of Directors Facilitated by: Oscar (CEO) Consulted: Nora, Clara, Quinn

Context

During production line restructure, a banned term was used instead of "digital talent" in file content and a directory name. The violation was caught manually by the board. CLAUDE.md instructions alone are insufficient — the model doesn't always follow them.

Options Considered

Option Description Result
A: Prompt hook LLM checks each write semantically Rejected — too slow, fires on every write
B: Command hook + rules file Node grep against Nora's rules Accepted
C: Prompt hook + rules file LLM + Nora's rules Rejected — unnecessary LLM cost
D: CLAUDE.md only Rely on instruction-following Rejected — already failed

Decision

  • Nora maintains terminology-rules.md with banned→preferred term pairs
  • Command hook on Write|Edit reads stdin, checks content against rules, blocks with clear message
  • CLAUDE.md also references the rules (belt-and-suspenders)
  • /name-audit command for Quinn to scan existing files (TBD)

Implementation

  • Rules file: departments/methodology/nomenclature-specialist-nora/standards/terminology-rules.md
  • Hook: .claude/settings.json PreToolUse on Write|Edit
  • CLAUDE.md: Terminology line added to Conventions section

Consequences

  • Every file write is checked (~5ms overhead, no LLM cost)
  • Nora owns the rules — adding a new term is one line in a markdown file
  • Hook proved itself immediately by blocking a violation during its own setup