Power BI Audit
Use this when the task is to audit a local Power BI project in the current
working directory. The audit covers model structure, relationships, naming,
performance, security, DAX quality, metadata, and hidden-field anti-patterns.
Scope
- Audit the local PBIP or TMDL project only.
- Ignore Power BI Service-only concerns unless they are represented in local
files.
- Work autonomously from the available files; ask questions only if the local
project is missing or unreadable.
Startup
- Ensure
AUDIT-TODO.md exists in the current working directory. If it does
not, copy assets/AUDIT-TODO.md before starting.
- Read
AUDIT-TODO.md and AUDIT-REPORT.md if present.
- Treat checked
[x] items as completed work from a previous run.
- Resume from the first unchecked
[ ] item without redoing completed phases.
Load References
- Load
references/workflow.md for audit sequencing, inventory scope, report
structure, and incremental write rules.
- Load
references/rule-catalog-core.md for Structure, Modeling,
Performance, and Security rules.
- Load
references/rule-catalog-quality.md for DAX Quality, Metadata,
Anti-Patterns, and scoring.
- If the audit turns into a code fix, also load the sibling
powerbi skill
and only the narrow references needed for the affected artifact.
Non-Negotiable Rules
- Read every relevant local project file methodically; do not sample.
- Ground every finding in observed evidence. Quote or point to the file
content that triggered the finding.
- If a rule is not applicable, state that briefly and still mark it complete.
- Update
AUDIT-TODO.md incrementally after each completed phase or domain.
- Write
AUDIT-REPORT.md incrementally. Do not wait until the end to save
findings.
- Preserve existing report content on resume and append or insert only the
missing sections.
Finding Format
For each finding, record:
- Rule ID
- Severity 1-5
- Domain
- Object(s) affected
- Evidence
- Impact
- Recommendation
If a domain has no findings, write No issues detected.
Audit Flow
- Build the inventory of model, report, theme, image, and custom-visual
artifacts.
- Evaluate each rule across the seven domains.
- Append domain findings to
AUDIT-REPORT.md as each domain completes.
- Compute weighted results and letter grade after all applicable rules are
evaluated.
- Finish the report with the executive summary, score card, consolidated
findings table, priority action plan, and confidence or gap notes.
- End with a brief user-facing confirmation that includes the grade and top
risks.
Deliverables
AUDIT-TODO.md kept current throughout the audit
AUDIT-REPORT.md written progressively and complete at handoff
References
references/workflow.md
references/rule-catalog-core.md
references/rule-catalog-quality.md
assets/AUDIT-TODO.md
1---2name: powerbi-audit3description: Use when auditing a local Power BI PBIP or TMDL project and producing or resuming an evidence-based `AUDIT-REPORT.md` with matching `AUDIT-TODO.md` progress tracking.4---56# Power BI Audit78Use this when the task is to audit a local Power BI project in the current9working directory. The audit covers model structure, relationships, naming,10performance, security, DAX quality, metadata, and hidden-field anti-patterns.1112## Scope1314- Audit the local PBIP or TMDL project only.15- Ignore Power BI Service-only concerns unless they are represented in local16 files.17- Work autonomously from the available files; ask questions only if the local18 project is missing or unreadable.1920## Startup21221. Ensure `AUDIT-TODO.md` exists in the current working directory. If it does23 not, copy `assets/AUDIT-TODO.md` before starting.242. Read `AUDIT-TODO.md` and `AUDIT-REPORT.md` if present.253. Treat checked `[x]` items as completed work from a previous run.264. Resume from the first unchecked `[ ]` item without redoing completed phases.2728## Load References2930- Load `references/workflow.md` for audit sequencing, inventory scope, report31 structure, and incremental write rules.32- Load `references/rule-catalog-core.md` for Structure, Modeling,33 Performance, and Security rules.34- Load `references/rule-catalog-quality.md` for DAX Quality, Metadata,35 Anti-Patterns, and scoring.36- If the audit turns into a code fix, also load the sibling `powerbi` skill37 and only the narrow references needed for the affected artifact.3839## Non-Negotiable Rules4041- Read every relevant local project file methodically; do not sample.42- Ground every finding in observed evidence. Quote or point to the file43 content that triggered the finding.44- If a rule is not applicable, state that briefly and still mark it complete.45- Update `AUDIT-TODO.md` incrementally after each completed phase or domain.46- Write `AUDIT-REPORT.md` incrementally. Do not wait until the end to save47 findings.48- Preserve existing report content on resume and append or insert only the49 missing sections.5051## Finding Format5253For each finding, record:5455- Rule ID56- Severity 1-557- Domain58- Object(s) affected59- Evidence60- Impact61- Recommendation6263If a domain has no findings, write `No issues detected.`6465## Audit Flow66671. Build the inventory of model, report, theme, image, and custom-visual68 artifacts.692. Evaluate each rule across the seven domains.703. Append domain findings to `AUDIT-REPORT.md` as each domain completes.714. Compute weighted results and letter grade after all applicable rules are72 evaluated.735. Finish the report with the executive summary, score card, consolidated74 findings table, priority action plan, and confidence or gap notes.756. End with a brief user-facing confirmation that includes the grade and top76 risks.7778## Deliverables7980- `AUDIT-TODO.md` kept current throughout the audit81- `AUDIT-REPORT.md` written progressively and complete at handoff8283## References8485- `references/workflow.md`86- `references/rule-catalog-core.md`87- `references/rule-catalog-quality.md`88- `assets/AUDIT-TODO.md`