Keep hook-call contracts aligned with report/dashboard validator module exports and payload shapes.
Use this skill when:
Not for: Report creation (use report-api-development-framework), dashboard design (use sfdc-dashboard-designer agent), or general deployment validation (use deployment-validation-framework).
Hooks call validator modules via Node.js require(). The contract defines:
| Module Export | Input Shape | Output Shape | Called By |
|---|
validateReport(metadata) | {reportName, reportType, columns[], filters[]} | {valid: bool, errors: []} | Pre-deploy hook |
validateDashboard(metadata) | {dashboardName, components[], folder} | {valid: bool, errors: []} | Pre-deploy hook |
checkReportType(typeName, org) | string, string | {exists: bool, fields: []} | Report builder agent |
{valid: false, errors: [...]} (never throw on bad input)