# Flutter SDK

Fixes of mine are merged into `flutter/flutter`, the Flutter SDK itself. Each one is a signed commit in the official repository. This page is the record, and every line on it links back to the thing it claims.

Framework work is slow and public. A fix starts as an issue somebody else filed, sometimes years earlier, and ends as a signed commit in a repository that ships to millions of apps. The highlight is 26 August 2026, when one of these commits was the newest on `master`.

## Merged

Newest first, as recorded on 28 August 2026. The release named is the first tagged Flutter release that carried it.

| Commit | Change | Pull request | Fixes | First release |
| --- | --- | --- | --- | --- |
| `e6aa89e` | Tolerate floating-point rounding in the paintImage centerSlice assertion | #185789 | #27827, filed February 2019 | master, not yet tagged |
| `abb7f63` | Fix the NestedScrollView example crash when switching tabs on desktop | #186993 | #183199 | 3.48 beta |
| `6ebcc81` | Support custom BoxBorder animation in BoxDecoration | #186348 | #180297 | 3.48 beta |
| `fb4c80b` | Treat the package:stack_trace async-gap marker as an asynchronous suspension | #185791 | #179018 | 3.48 beta |
| `0b0a153` | Prevent the Cubic transform from looping on out-of-range input | #185875 | #171364 | 3.47.0 stable |
| `1d139c1` | Disable spell check for obscured text | #186329 | #185843 | 3.47.0 stable |
| `f9af233` | Fix the owner-mismatch crash for OverlayPortal inside a deferred-mount parent | #185793 | #174133 | 3.47.0 stable |
| `987d8c5` | Fix nested Text.rich semantics order | #186116 | #176570 | 3.47.0 stable |

Every commit is at `https://github.com/flutter/flutter/commit/<sha>`, every pull request at `https://github.com/flutter/flutter/pull/<number>`, and every issue at `https://github.com/flutter/flutter/issues/<number>`.

Live lists:

- Merged pull requests: https://github.com/flutter/flutter/pulls?q=is%3Apr+author%3Agabrimatic+is%3Amerged
- Authored commits: https://github.com/flutter/flutter/commits/master/?author=gabrimatic

## The window

On 26 August 2026 commit `e6aa89e` merged at 15:10:17 UTC and stayed the newest commit on `master` until the Skia roll landed at 18:10:03 UTC. For that span the repository homepage listed `gabrimatic` in the latest-commit row, and archives I do not run recorded it. In order:

| UTC | Moment | Record |
| --- | --- | --- |
| 15:10:17 | Merged | [`e6aa89e`](https://github.com/flutter/flutter/commit/e6aa89eea34850cb1fd25d9f4d0b2fad379b00bf) through pull request #185789. The commit lands on `master`, closing an issue open since February 2019. From this moment the repository homepage lists `gabrimatic` in the latest-commit row. |
| 17:46:12 | archive.today | [archive.ph/2s6VE](https://archive.ph/2s6VE). The homepage, captured. It answers `429` to automated clients, so open it in a browser rather than fetching it. |
| 17:59:20 | Arquivo.pt | [arquivo.pt/wayback/20260826175920/https://github.com/flutter/flutter](https://arquivo.pt/wayback/20260826175920/https://github.com/flutter/flutter). The homepage recording responds. Its deep links for the commit, the pull request and the author history return `404` until the crawl is indexed. |
| 18:01:09 | Ghostarchive | [ghostarchive.org/archive/dF1bK](https://ghostarchive.org/archive/dF1bK). The homepage, nine minutes before the window closed. The replay shows `gabrimatic` in the latest-commit row with the commit title and `e6aa89e`. A WARC copy is kept in the record repository. |
| 18:03:38 | Software Heritage | [`swh:1:snp:b8d0cfb296a79c4f93256d694fb77d8e0bd604da`](https://archive.softwareheritage.org/swh:1:snp:b8d0cfb296a79c4f93256d694fb77d8e0bd604da/). The repository itself, not the homepage: a full snapshot of the source tree, with the commit reachable as a revision record. |
| 18:10:03 | Overtaken | [Pull request #191810](https://github.com/flutter/flutter/pull/191810), the Skia roll. The next commit lands and becomes the newest on `master`. The window closes. |

Internet Archive: no capture. Save Page Now refused with "This host has been already captured 10,000 times today." No Wayback record is claimed here.

## Verify

None of this has to be taken on trust. The commits are in a repository I do not control, signed by a key that is not mine.

Fetch a commit from the official repository, import GitHub's `web-flow` public key, and run `git show --show-signature`. It reports a good signature from `GitHub <noreply@github.com>` over the parent and tree it records.

```sh
git fetch https://github.com/flutter/flutter.git e6aa89eea34850cb1fd25d9f4d0b2fad379b00bf
curl -s https://github.com/web-flow.gpg | gpg --import
git show --show-signature --format=fuller FETCH_HEAD
```

The record repository keeps the raw commit object of the milestone, its patch, a copy of the Ghostarchive WARC, and `verify.sh`. Running `sh verify.sh` fetches every commit listed above from `flutter/flutter`, checks the author on each, confirms the milestone commit carries the recorded parent and tree, proves the stored object is byte-identical to the fetched one, and matches every kept file against its SHA-256. `sh verify.sh --offline` checks the stored files with no network at all.

```sh
git clone https://github.com/gabrimatic/flutter-sdk-contributions.git
cd flutter-sdk-contributions
sh verify.sh
```

- The record repository and its verification script: https://github.com/gabrimatic/flutter-sdk-contributions
- Authored commits in flutter/flutter: https://github.com/flutter/flutter/commits/master/?author=gabrimatic
- The rest of the open-source work: https://www.gabrimatic.info/opensource
