Kindly note, the SBB Community is not an official support channel by SBB. Here, we can give you some guidance only. Any decision on refund and/or compensation is the sole responsibility of the SBB Contact Center; requests must be made in written form.
In what concerns the information available on the SBB website, me being a marathon runner myself, I would say SBB is doing an excellent job as all information is available in multiple languages. So is the information concerning the refund & compensation policy well available in German, French, Italian, and English and made transparently accessible on this website: Refunds and compensation | SBB help & contact. Usually, timetable changes due to engineering work are announced in advance and the online timetable adapted accordingly.
Keep in mind that SBB will never take any liability for missed flights and therefore not pay any compensation in that regard. Your rights as a passenger in case of misconnections and delays are stated in the passenger rights: Delays in Switzerland: national passenger rights
For any compensation, please fill in the form provided on the SBB website: Compensation for delay - PARE (swisspass.ch). Change the language to English in the website’s header should the form be displayed in German.