from pathlib import Path import shutil,os folder=Path(__file__).parent old=folder.parent/'review-badges-20260917' for name in ('build_release.ps1','verify_frozen_release.py','run_frozen_regressions.py','finalize_release.ps1','verify_nsis_payload.py'): s=(old/name).read_text(encoding='utf-8-sig').replace('review-badges-20260917','skip-sessions-20260917').replace('1.4.19','1.4.20') if name=='build_release.ps1': s=s.replace("'review_policy.py','review_state.py'", "'review_policy.py','review_state.py','reply_session_policy.py','wxwork_db.py'") if name=='run_frozen_regressions.py': s=s.replace("'review_policy', 'review_state'}", "'review_policy', 'review_state', 'reply_session_policy'}") # Add new class integration tests after the implementation is complete. s=s.replace("'test_review_badges',", "'test_reply_session_policy', 'test_protocol_session_filter', 'test_visual_session_filter', 'test_review_badges',") (folder/name).write_text(s,encoding='utf-8-sig' if name.endswith('.ps1') else 'utf-8') version=Path('C:/wechat_rpa/app_version.py') s=version.read_text(encoding='utf-8-sig');assert '1.4.19' in s and '1.4.20' not in s backup=version.parent/'backups/skip-sessions-20260917/app_version.py';backup.parent.mkdir(parents=True,exist_ok=True) if not backup.exists():shutil.copy2(version,backup) tmp=version.with_name(version.name+'.edit');tmp.write_text(s.replace('1.4.19','1.4.20'),encoding='utf-8');os.replace(tmp,version) print('Prepared v1.4.20; source build not started.')