tree fd8ffb967e3d5c04f3ecf9546b197f497d7f155f
parent fe5b25ea2a2e21ab37bf91c9d4a0c83665bcf988
author Loïc Sharma <737941+loic-sharma@users.noreply.github.com> 1751510406 -0700
committer GitHub <noreply@github.com> 1751510406 +0000
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsFcBAABCAAQBQJoZe2GCRC1aQ7uu5UhlAAAC0QQACEU2DqjmCkqhvvGPCRvgw+l
 ewBTfvBY6cw1/zJtYAGVuDh3Q7CT1LwhKvD0V8C9aVWnoxmmVMDT1DEQaFliNnsp
 iqxBe8OxUdIbFUxJUbi1DMmAFc4ZV8LtS3v3F8vLGSBvg0g+4mQPJ5Cwoo2dNsmw
 +oh0weCd1ouItmJCvcLeUzbwfJZLc74OEdaQ3oIMtE5oUeK5zQwVTqkqgG85MgGg
 sO2w0nPRh7WI11DFzOs8xb1dojAoha7ehqsJcHco2zUIu62pUPMvKTD7UY8aremK
 tW1QvP31/moaJT3kF6rGyZUNhkN4pmJe50+bSG6YPZ09gQ6/E7wubiL7JqVjzQol
 dt4ABcm/yDSG4ueJHsXqF1l7GMxXLltZEfbbegouvhnSwuEyODWPyo+jZqOZVt0R
 zp5wXbeodFoBw3eGPoQVUr58Cuu1awaEL1keT3qMxOw2TAxOPAMtOOlnKAymU9pp
 KJoSVaNet5Lt4s3X/3lUBsSQ+cKDoHQHSFVwC5zsUPjUDQeteuRmjEYLR9BDofdF
 ooDGJcK0XtsyonovrOkhNYj6vavJybqYHNrLzrtYUZnFPPVarSNFcHkvY8quYcE4
 uWGCHXguhm1MG1P2ap+znh+eqF/qm9mQ/9rLfUmkiTNASwG2iN6KQC2udtRcerjN
 erXGLjo2ROSbZg8NaFX0
 =I9EF
 -----END PGP SIGNATURE-----
 

[go_router] Add TODOs for meta migration (#9535)

Prepares for: https://github.com/flutter/flutter/issues/171410

I created a calendar event for January 30, 2026. Hopefully I'll still employed then 🤞 

**Version change exemption reason**, **CHANGELOG exemption reason**, **Test exemption reason**: This only adds comments. No semantic changes.

## Pre-Review Checklist

[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.