openclaw / src /schema /report.schema.js
getzero11's picture
Upload 2 files
a832eac verified
export function validateReport(r) {
if (!r) throw new Error("report_view missing");
if (!r.marketTitle) {
throw new Error("report_view.marketTitle missing");
}
if (!r.marketOverview) {
throw new Error("report_view.marketOverview missing");
}
const mo = r.marketOverview;
if (typeof mo.pastYear_2023 !== 'number') throw new Error("pastYear_2023 must be number");
if (typeof mo.currentYear_2025 !== 'number') throw new Error("currentYear_2025 must be number");
// Basic validation only
if (!Array.isArray(r.marketSegments)) {
throw new Error("report_view.marketSegments must be array");
}
}