When updating types in the Weekly Report Builder, follow this sequence:
Modify the type definition:
- Edit
client/src/types.ts(orsrc/types.ts) - Add/modify the field with proper typing
- Add JSDoc comments for complex fields
- Edit
Update initialization:
- Check
src/App.tsxorclient/src/App.tsxforemptyReportinitialization - Ensure new fields have sensible default values
- Example:
newField: ''ornewField: []
- Check
Check update handlers:
- Review
src/components/ReportEditor.tsxgeneric update handlers - Ensure they can handle the new field type
- Review
Update any serialization:
- Check
data/directory for JSON schemas - Update any API endpoints that use the type
- Check
Verify:
- Run
npm run buildto catch type errors - Search for usages of the modified type to ensure compatibility
- Run