Summary
The DbtModelDocumentationAssessor in src/agentready/assessors/dbt.py has a placeholder detection bug that causes legitimate model descriptions to be incorrectly flagged as placeholders.
Root Cause
dbt.py:372-388 — the word "description" is included in the placeholder_texts set:
placeholder_texts = {"todo", "tbd", "fixme", "placeholder", "description"}
The check uses substring matching:
if description and not any(
placeholder in description for placeholder in placeholder_texts
):
documented_models.add(model_name)
A model with description: "Customer description field" is rejected because "description" in "customer description field" is True.
Impact
- Models with the word "description" anywhere in their description text are counted as undocumented
- This deflates documentation coverage scores, potentially causing false
fail results
Suggested Fix
Remove "description" from placeholder_texts, or switch to exact match:
# Option A: Remove "description"
placeholder_texts = {"todo", "tbd", "fixme", "placeholder"}
# Option B: Exact match
if description and description not in placeholder_texts:
Found in
PR #334 — Feature/add dbt support
🤖 Generated with Claude Code
Summary
The
DbtModelDocumentationAssessorinsrc/agentready/assessors/dbt.pyhas a placeholder detection bug that causes legitimate model descriptions to be incorrectly flagged as placeholders.Root Cause
dbt.py:372-388— the word"description"is included in theplaceholder_textsset:The check uses substring matching:
A model with
description: "Customer description field"is rejected because"description" in "customer description field"isTrue.Impact
failresultsSuggested Fix
Remove
"description"fromplaceholder_texts, or switch to exact match:Found in
PR #334 — Feature/add dbt support
🤖 Generated with Claude Code