--- /dev/null
+# Investigation Report: Faculty Glyphic
+
+## Summary
+
+| Field | Value |
+|---|---|
+| **Family Name** | Faculty Glyphic |
+| **Designer** | Koto Studio |
+| **License** | OFL |
+| **Repository URL** | https://github.com/DylanYoungKoto/FacultyGlyphic |
+| **Commit** | `0f609bebfae8490a140feebfd3faacf3dfa87d62` |
+| **Branch** | main |
+| **Config YAML** | `sources/config.yaml` |
+| **Status** | complete |
+| **Confidence** | HIGH |
+
+## METADATA.pb Source Block (current)
+
+```
+source {
+ repository_url: "https://github.com/DylanYoungKoto/FacultyGlyphic"
+ commit: "0f609bebfae8490a140feebfd3faacf3dfa87d62"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "fonts/ttf/FacultyGlyphic-Regular.ttf"
+ dest_file: "FacultyGlyphic-Regular.ttf"
+ }
+ branch: "main"
+ config_yaml: "sources/config.yaml"
+}
+```
+
+## Investigation Details
+
+### Upstream Repository
+
+- **URL**: https://github.com/DylanYoungKoto/FacultyGlyphic
+- **Owner**: DylanYoungKoto (Dylan Young)
+- **Created**: 2024-08-09
+- **Last push**: 2024-10-29
+- **Default branch**: main
+- **Status**: Active, accessible
+
+### Repository Structure (at commit `0f609be`)
+
+```
+AUTHORS.txt
+CONTRIBUTORS.txt
+documentation/
+fonts/
+ otf/
+ ttf/
+ FacultyGlyphic-Regular.ttf
+Makefile
+OFL.txt
+README.md
+requirements.in
+requirements.txt
+requirements-test.in
+requirements-test.txt
+scripts/
+sources/
+ config.yaml
+ FacultyGlyphic .glyphspackage/
+ fontinfo.plist
+ glyphs/
+ order.plist
+```
+
+### config.yaml Contents
+
+```yaml
+ sources:
+ - FacultyGlyphic .glyphspackage
+ familyName: "Faculty Glyphic"
+ cleanUp: true
+```
+
+The config.yaml is present in the upstream repo at `sources/config.yaml`, as referenced in METADATA.pb.
+
+### Commit History in google/fonts
+
+1. **`007f15f3`** (2024-10-17) by Emma Marichal: "Faculty Glyphic: Version 1.003; ttfautohint (v1.8.4.7-5d5b) added"
+ - Initial onboarding, merged via PR #8344 on 2024-10-18
+ - Referenced upstream commit `54ab4ddfac95147ffb344c83756e999f60d5e409` ("Merge pull request #2 from emmamarichal/main", 2024-10-17)
+
+2. **`9a17b498`** (2024-10-23) by Emma Marichal: "Faculty Glyphic: Version 1.004; ttfautohint (v1.8.4.7-5d5b) added"
+ - Updated font version, merged via PR #8413 on 2024-10-23
+ - Referenced upstream commit `217893d53b5e77627f997b41e75e45d5818bc0e2` ("Merge pull request #4 from emmamarichal/main", 2024-10-23)
+ - Updated METADATA.pb commit hash from `54ab4dd` to `217893d`
+
+3. **`e946eb4a`** (2024-10-23) by Emma Marichal: "Update METADATA.pb (designer)"
+ - Changed designer from "Dylan Young" to "Koto Studio"
+
+4. **`fd06e54a`** / **`adfbb1c9`** (2024-10-31/11-01): Article additions
+
+5. **`19cdcec5`** (2025-03-31) by Felipe Sanches: "[Batch 1/4] port info from fontc_crater targets list"
+ - Updated commit hash from `217893d` to `0f609be` and added `config_yaml: "sources/config.yaml"`
+
+### Commit Hash Analysis
+
+The current METADATA.pb references commit `0f609be` ("Update README.md", 2024-10-29), which is the latest commit on the upstream main branch. This commit only modified `README.md` -- no source files or config.yaml were changed. The font sources are identical between:
+
+- `217893d` (the last commit referenced by the onboarding engineer, PR #8413)
+- `0f609be` (the current HEAD, set by fontc_crater batch import)
+
+The difference is a single README.md edit. Using the HEAD commit is acceptable since the binary font files and build sources are unchanged.
+
+### Binary File Verification
+
+The TTF file in google/fonts matches the upstream repo exactly:
+- **SHA-256**: `27010aebf4430da073b75b8877bc3d3e35bd24d2e4f9403d34418abe94c3d31f`
+- Both `ofl/facultyglyphic/FacultyGlyphic-Regular.ttf` and `fonts/ttf/FacultyGlyphic-Regular.ttf` in upstream produce identical hashes.
+
+### Upstream Repository Notes
+
+- The local clone at `upstream_repos/fontc_crater_cache/DylanYoungKoto/FacultyGlyphic` is a **shallow clone** (depth 1), which is why only the HEAD commit (`0f609be`) is visible locally. The full history (30+ commits) is available via the GitHub API.
+- The upstream repo was created by Dylan Young on 2024-08-09. Emma Marichal (emmamarichal) contributed fixes and handled the Google Fonts onboarding via PRs #1, #2, and #4 to the upstream repo.
+- The font is a single-weight Regular, sourced from a `.glyphspackage` file.
+
+## Conclusion
+
+The source metadata for Faculty Glyphic is **complete and correct**. The repository URL, commit hash, branch, and config_yaml path are all valid and verified. The binary font file in google/fonts matches the upstream repo. No changes are needed.
--- /dev/null
+# Investigation Report: Fahkwang
+
+## Summary
+
+| Field | Value |
+|---|---|
+| **Family Name** | Fahkwang |
+| **Designer** | Cadson Demak |
+| **License** | OFL |
+| **Category** | Sans Serif |
+| **Primary Script** | Thai |
+| **Date Added** | 2018-08-22 |
+| **Repository URL** | https://github.com/cadsondemak/Fah-Kwang |
+| **Commit** | `7b16186dadf959e79ded967a7620bfb05600fcaf` |
+| **Config** | Override config.yaml in google/fonts |
+| **Status** | Complete |
+| **Confidence** | HIGH |
+
+## METADATA.pb Source Block (Current)
+
+```
+source {
+ repository_url: "https://github.com/cadsondemak/Fah-Kwang"
+ commit: "7b16186dadf959e79ded967a7620bfb05600fcaf"
+}
+```
+
+The `config_yaml` field is intentionally omitted because an override `config.yaml` exists in the google/fonts family directory.
+
+## Repository Analysis
+
+### Upstream Repository: cadsondemak/Fah-Kwang
+
+- **Remote URL**: https://github.com/cadsondemak/Fah-Kwang
+- **Default branch**: master
+- **Repo status**: Clean, up to date with origin
+- **Source files**: `source/Fahkwang.glyphs` (single Glyphs source)
+- **No config.yaml in upstream repo**: The upstream repo does not contain a gftools-builder `config.yaml`
+
+### Font Files in google/fonts
+
+12 static TTF files (6 weights x 2 styles):
+- Fahkwang-ExtraLight.ttf, Fahkwang-ExtraLightItalic.ttf (weight 200)
+- Fahkwang-Light.ttf, Fahkwang-LightItalic.ttf (weight 300)
+- Fahkwang-Regular.ttf, Fahkwang-Italic.ttf (weight 400)
+- Fahkwang-Medium.ttf, Fahkwang-MediumItalic.ttf (weight 500)
+- Fahkwang-SemiBold.ttf, Fahkwang-SemiBoldItalic.ttf (weight 600)
+- Fahkwang-Bold.ttf, Fahkwang-BoldItalic.ttf (weight 700)
+
+## Onboarding History
+
+### Initial onboarding: PR #1657
+
+- **PR**: https://github.com/google/fonts/pull/1657
+- **Author**: Marc Foley (m4rc1e)
+- **Merged by**: Rod Sheeter (rsheeter)
+- **Merged**: 2018-09-10
+
+The PR contained three commits modifying `ofl/fahkwang/`:
+
+1. **`a9695abb` (2018-08-22)** -- "fahkwang: v1.000 added"
+ - Commit message: "Taken from the upstream repo https://github.com/cadsondemak/Fah-Kwang at commit https://github.com/cadsondemak/Fah-Kwang/commit/9024b9fc1094b68c90bc4cfab7086232619bc341"
+ - This was the initial add, taken from upstream commit `9024b9f` (Merge PR #5 from m4rc1e/gf-mastering, 2018-08-22)
+
+2. **`c83e68fb` (2018-08-24)** -- "fahkwang: Updated fonts to avoid clipping."
+ - Commit message: "Taken from the upstream repo https://github.com/cadsondemak/fah-kwang at commit https://github.com/cadsondemak/fah-kwang/commit/7b16186dadf959e79ded967a7620bfb05600fcaf"
+ - Updated to upstream commit `7b16186` (Merge PR #6 from m4rc1e/metrics, 2018-08-24) which fixed vertical metrics clipping
+
+3. **`df66d8a0` (2018-09-07)** -- "fahkwang: unhinted fonts."
+ - No upstream commit reference; "In the future, we plan to release this family as an unhinted variable font."
+ - This was a local recompilation by Marc Foley to produce unhinted versions, significantly reducing file sizes (e.g., Regular from 122,888 to 88,168 bytes)
+
+### Commit Hash Verification
+
+The commit hash `7b16186dadf959e79ded967a7620bfb05600fcaf` in METADATA.pb corresponds to the second commit in the onboarding sequence. This is the correct reference because:
+
+1. The original onboarding started with upstream commit `9024b9f` (merge of PR #5, "gf-mastering")
+2. Marc Foley then made an additional upstream fix for vertical metrics in PR #6, which was merged as `7b16186`
+3. The second google/fonts commit (`c83e68fb`) explicitly references `7b16186` as the source
+4. The third commit (`df66d8a0`) was a local unhinting operation that did not change the source -- it just recompiled with different build settings
+
+Therefore `7b16186` represents the last upstream commit whose source changes were incorporated into google/fonts. The unhinting was a build-time modification, not a source change.
+
+### Post-Onboarding Upstream Activity
+
+Two commits exist in the upstream repo after `7b16186`, both from October 2024:
+- `9948992` (2024-10-04) -- "Fix t caron" (recompiled fonts, changed binary sizes)
+- `d68a0d8` (2024-10-04) -- "Update Fahkwang.glyphs" (removed 6 lines from source)
+
+These changes have NOT been incorporated into google/fonts and would need separate review/QA if desired.
+
+## Override config.yaml
+
+An override `config.yaml` exists in `ofl/fahkwang/config.yaml` in google/fonts:
+
+```yaml
+buildVariable: false
+sources:
+ - source/Fahkwang.glyphs
+```
+
+This was added in commit `5da715e0` (2025-11-10) by Felipe Sanches. The config references `source/Fahkwang.glyphs`, which exists at the referenced upstream commit `7b16186`. The `buildVariable: false` flag is appropriate since the family was onboarded as static instances (12 individual TTF files).
+
+## Previous Source Metadata Work
+
+Commit `5da715e0` (2025-11-10, by Felipe Sanches) added both the commit hash to METADATA.pb and the override config.yaml. The repository_url was previously populated by commit `f7455d788` ("Populate source.repository_url").
+
+## Designer Information
+
+Fahkwang was designed by **Cadson Demak**, a Thai type foundry. The primary contributors in the upstream repo are:
+- **Suppakit** (suppakit@katatrad.com / suppakit.cadsondemak@gmail.com) -- primary designer
+- **Pongsatorn81** -- contributor (GitHub page, text updates)
+- **Marc Foley** (m4rc1e) -- Google Fonts engineer who handled onboarding, fontbakery fixes, and metrics corrections
+
+## Conclusion
+
+This family's source metadata is **complete**. The repository URL, commit hash, and override config.yaml are all correctly set. The commit hash `7b16186` accurately represents the last upstream source state used for the fonts in google/fonts (with the subsequent unhinting being a build-time change only). No further action is needed.
--- /dev/null
+# Investigation: Familjen Grotesk
+
+## Summary
+
+| Field | Value |
+|---|---|
+| **Family Name** | Familjen Grotesk |
+| **Designer** | Familjen STHLM AB |
+| **License** | OFL |
+| **Repository URL** | https://github.com/Familjen-Sthlm/Familjen-Grotesk |
+| **Commit (in METADATA.pb)** | `de7dfe09f6014e43bfad3724ac4a07b95972763c` |
+| **Correct Onboarding Commit** | `3db181c2b39766045aff4a99663f515d3247512a` |
+| **Branch** | master |
+| **Config YAML** | `sources/config.yaml` (in upstream repo) |
+| **Status** | needs_correction |
+| **Confidence** | HIGH |
+
+## METADATA.pb Analysis
+
+The METADATA.pb already has a complete source block with repository URL, commit hash, branch, config_yaml, and file mappings. The source block was built up incrementally:
+
+1. **PR #4338** (2022-03-03): Initial onboarding of Version 2.000 by Emma Marichal
+2. **PR #4738** (2022-06-02): Updated to Version 2.001 by Emma Marichal
+3. **PR #4799** (2022-06-16): Updated to Version 2.002 by Emma Marichal (last font binary update)
+4. **upstream.yaml merge** (2024-04-03): Simon Cozens merged upstream.yaml data into METADATA.pb, adding file mappings and branch info, with commit `3db181c` (from gftools-packager Version 2.002 message)
+5. **Batch 1/4** (2025-03-31): Felipe Sanches ported fontc_crater targets data, changing commit from `3db181c` to `de7dfe0` and adding `config_yaml: "sources/config.yaml"`
+
+## Commit Hash Analysis
+
+### Commits Referenced in google/fonts History
+
+| Version | Upstream Commit | Upstream Date | google/fonts PR | Merge Date |
+|---|---|---|---|---|
+| 2.000 | `2bd3741f` (Merge PR #2 from emmamarichal) | 2022-02-24 | [#4338](https://github.com/google/fonts/pull/4338) | 2022-03-03 |
+| 2.001 | `58b0bedd` (Merge PR #5 from emmamarichal) | 2022-06-02 | [#4738](https://github.com/google/fonts/pull/4738) | 2022-06-02 |
+| 2.002 | `3db181c2` (Merge PR #6 from emmamarichal) | 2022-06-16 | [#4799](https://github.com/google/fonts/pull/4799) | 2022-06-16 |
+
+### Current METADATA.pb Commit
+
+The current METADATA.pb references `de7dfe09f6014e43bfad3724ac4a07b95972763c` (2023-06-17, "Version 1.000; Beta; Release 3; Build 23"), which is the HEAD of the master branch. This commit was made by Kristian Moeller one year after the last google/fonts update, and it only added static font exports in a new `fonts/fonts 13.03.40/` directory. It did NOT change the source files, config.yaml, or variable font binaries.
+
+### Correct Commit
+
+The correct commit should be `3db181c2b39766045aff4a99663f515d3247512a` (2022-06-16, "Merge pull request #6 from emmamarichal/master"). This is the commit explicitly referenced in the gftools-packager message for the last binary update (Version 2.002, PR #4799).
+
+### Verification
+
+- Binary files in google/fonts are **byte-identical** to `fonts/variable/` at both `3db181c` and `de7dfe0`
+- Source files (`sources/FamiljenGrotesk.glyphs`, `sources/FamiljenGrotesk-Italic.glyphs`) are **identical** at both commits
+- `sources/config.yaml` is **identical** at both commits
+- The only difference at `de7dfe0` is the addition of `fonts/fonts 13.03.40/` directory with static and variable font exports
+
+While using `de7dfe0` would produce identical build results (since sources are unchanged), `3db181c` is the historically accurate commit and should be preferred.
+
+## Upstream Repository
+
+- **URL**: https://github.com/Familjen-Sthlm/Familjen-Grotesk (verified, accessible)
+- **Default branch**: master
+- **Created**: 2020-08-26
+- **Last pushed**: 2023-06-17
+- **Total commits**: 30 (full history, repo was previously a shallow clone)
+- **Status**: Clean, up to date with origin
+
+### Source Files at `3db181c`
+
+- `sources/FamiljenGrotesk.glyphs` (Glyphs source)
+- `sources/FamiljenGrotesk-Italic.glyphs` (Glyphs source)
+- `sources/config.yaml` (gftools-builder configuration)
+
+### config.yaml Content
+
+```yaml
+ sources:
+ - FamiljenGrotesk.glyphs
+ - FamiljenGrotesk-Italic.glyphs
+ axisOrder:
+ - wght
+ - ital
+ familyName: "Familjen Grotesk"
+```
+
+## Font Files
+
+| File | Source in Upstream |
+|---|---|
+| `FamiljenGrotesk[wght].ttf` | `fonts/variable/FamiljenGrotesk[wght].ttf` |
+| `FamiljenGrotesk-Italic[wght].ttf` | `fonts/variable/FamiljenGrotesk-Italic[wght].ttf` |
+| `OFL.txt` | `OFL.txt` |
+
+Binary comparison (MD5):
+- `FamiljenGrotesk[wght].ttf`: `d09a3a1a2e40790267115507817c8d8c` (google/fonts = upstream at both `3db181c` and `de7dfe0`)
+- `FamiljenGrotesk-Italic[wght].ttf`: `ca5821d684da76b509c3135fb7a13733` (google/fonts = upstream at both `3db181c` and `de7dfe0`)
+- `OFL.txt`: Identical between google/fonts and upstream
+
+## Onboarding History
+
+The font was contributed by Kristian Moeller of Familjen STHLM AB via [issue #4144](https://github.com/google/fonts/issues/4144). All three updates (Version 2.000, 2.001, 2.002) were handled by Emma Marichal using gftools-packager. The upstream repository shows Emma Marichal submitted pull requests (#2, #5, #6) to the upstream repo to prepare sources before each onboarding.
+
+### Key People
+
+- **Kristian Moeller** (@ktkm): Lead designer, repository owner
+- **Emma Marichal** (@emmamarichal): Font engineer who handled all three onboarding updates
+
+## Recommended Correction
+
+The commit hash in METADATA.pb should be corrected from `de7dfe09f6014e43bfad3724ac4a07b95972763c` to `3db181c2b39766045aff4a99663f515d3247512a` to reflect the actual commit used for the last google/fonts update (Version 2.002). All other fields in the source block are correct.
+
+**Note**: This is a low-impact correction since sources are identical at both commits, but it improves historical accuracy.
--- /dev/null
+# Investigation Report: Fanwood Text
+
+## Family Details
+- **Family Name**: Fanwood Text
+- **Designer**: Barry Schwartz
+- **License**: OFL
+- **Category**: Serif
+- **Date Added**: 2011-08-31
+- **Path in google/fonts**: `ofl/fanwoodtext/`
+
+## Source Repository
+- **Repository URL**: https://github.com/theleagueof/fanwood
+- **Commit**: `cbaaed9704e7d37d3dcdbdf0b472e9efd0e39432`
+- **Branch**: master
+- **Status**: complete
+- **Confidence**: HIGH
+
+## Investigation Process
+
+### METADATA.pb Analysis
+
+The METADATA.pb already contains a source block with:
+- `repository_url`: `https://github.com/theleagueof/fanwood`
+- `commit`: `cbaaed9704e7d37d3dcdbdf0b472e9efd0e39432`
+
+The source block was added in two stages:
+1. Simon Cozens added the `repository_url` field on 2024-01-14 in commit `c8a4f8556` ("More upstreams (e,f)")
+2. Felipe Sanches added the `commit` hash and override `config.yaml` on 2025-11-21 in commit `47ac77b7e` ("sources info for Fanwood Text")
+
+### Binary File History
+
+The binary font files (`FanwoodText-Regular.ttf` and `FanwoodText-Italic.ttf`) were added in the initial commit of google/fonts (`90abd17b4f97671435798b6147b698aa9087612f`, authored by Dave Crossland on 2015-03-07, "Initial commit"). The font files have never been updated since.
+
+### Upstream Repository Analysis
+
+The upstream repository at `https://github.com/theleagueof/fanwood` (The League of Moveable Type) contains a single commit:
+
+- **Commit**: `cbaaed9704e7d37d3dcdbdf0b472e9efd0e39432`
+- **Date**: 2011-05-25
+- **Author**: micah rich
+- **Message**: "Initial commit with readme and licenses"
+
+Since there is only one commit in the entire repository, the commit hash is unambiguous and definitively correct.
+
+The repository contains UFO sources for **two distinct font families**:
+1. **Fanwood**: `source/Fanwood.ufo` (familyName: "Fanwood") + `source/Fanwood Italic.ufo` (familyName: "Fanwood")
+2. **Fanwood Text**: `source/Fanwood Text.ufo` (familyName: "Fanwood Text") + `source/Fanwood Text Italic.ufo` (familyName: "Fanwood Text")
+
+According to the readme, "Fanwood Text roman and italic are the same as Fanwood but slightly darker and reduced in contrast; I tailored it to increase readability on my Amazon Kindle 3 e-book reader." Only "Fanwood Text" is in the Google Fonts catalog; there is no separate "Fanwood" family in google/fonts.
+
+The repository is clean (no local modifications) and on the master branch, up to date with origin.
+
+### Config.yaml Analysis
+
+There is no `config.yaml` in the upstream repository.
+
+An override `config.yaml` exists in the google/fonts family directory (`ofl/fanwoodtext/config.yaml`), created by Felipe Sanches on 2025-11-21. Its contents:
+
+```yaml
+buildVariable: false
+sources:
+ - source/Fanwood.ufo
+ - source/Fanwood Text.ufo
+ - source/Fanwood Italic.ufo
+ - source/Fanwood Text Italic.ufo
+```
+
+**Issue**: The config.yaml lists all 4 UFOs from the upstream repo, but this family directory is specifically for "Fanwood Text". The `source/Fanwood.ufo` and `source/Fanwood Italic.ufo` belong to a different family ("Fanwood") and should not be included. The config.yaml for this family should ideally only reference:
+- `source/Fanwood Text.ufo`
+- `source/Fanwood Text Italic.ufo`
+
+Since the override config exists locally, the `config_yaml` field is correctly omitted from the METADATA.pb source block (google-fonts-sources auto-detects local overrides).
+
+### Historical Context
+
+The original DESCRIPTION.en_us.html references two older source locations:
+- Bitbucket: `https://bitbucket.org/sortsmill/sortsmill-fonts` (Barry Schwartz's Sorts Mill foundry)
+- The League of Moveable Type: `https://www.theleagueofmoveabletype.com/fanwood`
+
+The font was originally designed by Barry Schwartz as part of his Sorts Mill type foundry. It is a revival of Fairfield, the typeface first published in 1940 by Czech-American type designer Rudolph Ruzicka.
+
+The copyright in the upstream license file uses the email `site-chieftain@crudfactory.com` with Reserved Font Name "Fanwood", while the google/fonts OFL.txt uses `chemoelectric@chemoelectric.org` without the Reserved Font Name clause.
+
+## Summary
+
+| Field | Value |
+|-------|-------|
+| Repository URL | https://github.com/theleagueof/fanwood |
+| Commit Hash | `cbaaed9704e7d37d3dcdbdf0b472e9efd0e39432` |
+| Config | Override config.yaml in google/fonts |
+| Status | complete |
+| Confidence | HIGH |
+| Note | Config.yaml includes all 4 UFOs but should only include the 2 Fanwood Text UFOs |
+
+## Recommended Action
+
+The override `config.yaml` should be corrected to only reference the Fanwood Text sources:
+
+```yaml
+buildVariable: false
+sources:
+ - source/Fanwood Text.ufo
+ - source/Fanwood Text Italic.ufo
+```
+
+This is a minor issue since gftools-builder may handle the multi-family output correctly by filtering based on family name, but it would be cleaner to only reference the relevant sources.
--- /dev/null
+# Investigation Report: Farro
+
+## Family Details
+- **Family name**: Farro
+- **Designer**: Grayscale (Aceler Chua)
+- **Category**: Sans-Serif
+- **Date added**: 2019-07-17
+- **Weights**: Light (300), Regular (400), Medium (500), Bold (700)
+- **License**: OFL
+- **Subsets**: latin, latin-ext, menu
+
+## Upstream Repository
+- **URL**: https://github.com/grayscaleltd/farro
+- **Status**: Active, public
+- **Owner**: Grayscale Limited (grayscaleltd)
+- **Primary contributor**: Aceler Chua <hi@aclr.co>
+- **Source files**: `sources/farro.glyphs` (Glyphs format)
+- **Pre-compiled binaries**: `fonts/ttf/` (4 TTF files)
+
+## Commit Hash Verification
+- **Commit in METADATA.pb**: `fa80aadd0c61b6e76d95870579d0650f9d91df76`
+- **Commit message**: "updated copyright notices according to #2, added AUTHOR and CONTRIBUTORS"
+- **Commit date**: 2019-07-17 10:07:35 +0800
+- **Commit author**: Aceler Chua
+- **Is HEAD of master**: Yes (this is the latest commit on the only branch)
+
+### Verification Evidence
+
+1. **PR #2069** in google/fonts titled "farro: v1.101 added" by Marc Foley explicitly states:
+ > Taken from the upstream https://github.com/grayscaleltd/farro at commit https://github.com/grayscaleltd/farro/commit/fa80aadd0c61b6e76d95870579d0650f9d91df76
+
+2. **PR merged**: 2019-07-17 at 08:34 UTC, the same day the upstream commit was made (02:07 UTC).
+
+3. **File size match**: All four TTF files in google/fonts have identical sizes to those in the upstream repo at this commit:
+ - Farro-Bold.ttf: 68,004 bytes
+ - Farro-Light.ttf: 68,252 bytes
+ - Farro-Medium.ttf: 68,928 bytes
+ - Farro-Regular.ttf: 68,588 bytes
+
+4. **Version strings match**: Both google/fonts and upstream binaries report "Version 1.101".
+
+5. **No subsequent upstream commits**: `fa80aad` is the HEAD of the master branch. No additional work has been done in the upstream repo since onboarding.
+
+**Confidence**: HIGH -- The commit hash is explicitly documented in the onboarding PR body, file sizes match perfectly, and the commit is the latest in the repo.
+
+## Build Configuration
+- **config.yaml in upstream**: No
+- **config.yaml in google/fonts**: Yes (override)
+ ```yaml
+ buildVariable: false
+ sources:
+ - sources/farro.glyphs
+ ```
+- **config_yaml in METADATA.pb**: Not set (correctly omitted since local override exists)
+
+The override config.yaml was added in commit `e997cf9` (2025-10-30) by Felipe Sanches as part of the source metadata enrichment project. It references `sources/farro.glyphs`, the only source file in the upstream repo at the referenced commit.
+
+## History in google/fonts
+
+| Date | Commit | Author | Description |
+|------|--------|--------|-------------|
+| 2019-07-17 | `57a48fbb` | Marc Foley | Initial onboarding: "farro: v1.101 added" (PR #2069) |
+| 2021-04-26 | `d0623a23` | Bruno Arueira | Fix incorrect file permissions |
+| 2023-08-15 | `f7455d78` | Simon Cozens | Added `source.repository_url` to METADATA.pb |
+| 2023-12-14 | `2423d2ae` | Simon Cozens | Same change re-applied in "Update upstreams" |
+| 2025-10-30 | `e997cf9f` | Felipe Sanches | Added commit hash and override config.yaml |
+
+## Request History
+- **Issue #1533**: "Add Farro" opened by Dave Crossland, linking to the upstream repo and cc'ing @chakler (Aceler Chua's GitHub handle).
+
+## Current METADATA.pb Source Block
+```
+source {
+ repository_url: "https://github.com/grayscaleltd/farro"
+ commit: "fa80aadd0c61b6e76d95870579d0650f9d91df76"
+}
+```
+
+## Status
+- **Status**: complete
+- **Repository URL**: Verified correct
+- **Commit hash**: Verified correct (HEAD of master, explicitly referenced in PR #2069)
+- **Config**: Override config.yaml present in google/fonts family directory
+- **Confidence**: HIGH
--- /dev/null
+# Faster One - Investigation Report
+
+## Family Overview
+- **Family name**: Faster One
+- **Designer**: Eduardo Tunni (Eduardo Rodriguez Tunni)
+- **License**: OFL
+- **Category**: Display
+- **Date added to Google Fonts**: 2012-10-26
+- **Path in google/fonts**: `ofl/fasterone/`
+
+## Source Repository
+- **Repository URL**: https://github.com/etunni/faster
+- **Branch**: master
+- **Commit**: `c1eb445af08bcc5ce66380f65e56d9d3135cca3c`
+- **Commit date**: 2023-02-08
+- **Commit message**: "Merge pull request #1 from emmamarichal/master"
+- **Commit author**: Eduardo Rodriguez Tunni
+
+## Source Files at Referenced Commit
+- `sources/FasterOne.glyphs` (Glyphs format, appVersion 3151, formatVersion 3)
+- `fonts/ttf/FasterOne-Regular.ttf` (pre-compiled binary)
+- `fonts/otf/FasterOne-Regular.otf`
+- `fonts/webfonts/FasterOne-Regular.woff2`
+- `OFL.txt`
+- `README.md`
+- `requirements.txt`
+- `AUTHOR.txt`
+- `CONTRIBUTORS.txt`
+- `documentation/image1.png`, `documentation/image2.png`
+
+## Upstream Repository Analysis
+
+The upstream repo at https://github.com/etunni/faster has a total of 12 commits. The original commit by Eduardo Tunni dates to 2013-12-30 ("Adobe Latin 3 encoding"). On 2023-02-08, Emma Marichal submitted PR #1 which restructured the repository, adding Glyphs sources, documentation, and updated font binaries. All of Emma's commits (10 commits) and the merge commit happened on the same day. The referenced commit `c1eb445` is the merge commit of that PR, and it remains the HEAD of the master branch -- no additional commits have been made since.
+
+There is **no config.yaml** in the upstream repository.
+
+## Google Fonts History
+
+### Initial onboarding (2015-03-07)
+- Commit `90abd17b4`: "Initial commit" by Dave Crossland -- bulk import of the entire Google Fonts library.
+
+### Metadata update (2015-09-21)
+- Commit `b72ae9adc`: "fasterone: Update to correct internal metadata" by Dave Crossland. Updated description, fontlog, and recompiled the TTF.
+
+### Version 1.003 update (2023-02-08)
+- Commit `6bdf99d21`: "[gftools-packager] Faster One: Version 1.003; ttfautohint (v1.8.4.7-5d5b);gftools[0.9.23] added" by Emma Marichal.
+- PR #5872 (https://github.com/google/fonts/pull/5872), merged 2023-02-08. Reviewed and approved by Marc Foley (@m4rc1e).
+- The commit body explicitly states: "Faster One Version 1.003 taken from the upstream repo https://github.com/etunni/faster at commit c1eb445af08bcc5ce66380f65e56d9d3135cca3c."
+- The METADATA.pb source block was added as part of this update (via upstream.yaml, later merged into METADATA.pb).
+
+### Override config.yaml (2025-03-10)
+- Commit `3b645f8db`: "Adding 119 automatically generated config.yaml files" by Felipe Sanches. This auto-generated a `config.yaml` for fasterone as part of a batch for repos with `.glyphs` files in their `sources/` directory.
+
+### Sources info update (2025-10-07)
+- Commit `3a3d5e034`: "sources info for Faster One: Version 1.003 (PR #5872)" by Felipe Sanches. Updated the override config.yaml.
+
+## Commit Hash Verification
+
+**Confidence: HIGH**
+
+The commit hash `c1eb445af08bcc5ce66380f65e56d9d3135cca3c` is verified correct:
+
+1. **Explicitly referenced in google/fonts**: The gftools-packager commit `6bdf99d21` body states the font was taken from this exact commit.
+2. **Binary file match**: The SHA256 hash of `fonts/ttf/FasterOne-Regular.ttf` in the upstream repo at `c1eb445` matches identically with the TTF in `ofl/fasterone/FasterOne-Regular.ttf` in google/fonts (SHA256: `382877a3a497c42bfeadfbb6e1b939d5b0f3f5cfd6c1a566c0c0d3d1f9b4bcb5`).
+3. **Timeline consistent**: Both the upstream merge and the google/fonts PR #5872 occurred on 2023-02-08, with the google/fonts PR merged just hours after the upstream merge.
+4. **HEAD of master**: The commit is the latest on the upstream master branch, with no subsequent commits.
+
+## Config Assessment
+
+- **Upstream config.yaml**: Not present in the upstream repository.
+- **Override config.yaml**: Present in google/fonts at `ofl/fasterone/config.yaml`, containing:
+ ```yaml
+ buildVariable: false
+ sources:
+ - sources/FasterOne.glyphs
+ ```
+- **Source file**: `sources/FasterOne.glyphs` exists at the referenced commit and is a valid Glyphs 3 format file.
+
+The override config.yaml correctly references the Glyphs source file and sets `buildVariable: false` (appropriate for this single-weight display font).
+
+## METADATA.pb Source Block
+
+The current METADATA.pb source block is:
+```
+source {
+ repository_url: "https://github.com/etunni/faster"
+ commit: "c1eb445af08bcc5ce66380f65e56d9d3135cca3c"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "fonts/ttf/FasterOne-Regular.ttf"
+ dest_file: "FasterOne-Regular.ttf"
+ }
+ branch: "master"
+}
+```
+
+Note: No `config_yaml` field is set in the source block, which is correct because the override `config.yaml` in the google/fonts family directory is auto-detected by google-fonts-sources.
+
+## Status
+
+- **Status**: COMPLETE
+- **Repository URL**: Verified (https://github.com/etunni/faster)
+- **Commit hash**: Verified (`c1eb445af08bcc5ce66380f65e56d9d3135cca3c`)
+- **Config**: Override config.yaml in google/fonts (upstream has no config.yaml)
+- **Source block**: Present and correct in METADATA.pb
+- **No action needed**: All metadata is complete and verified.
--- /dev/null
+# Fasthand - Investigation Report
+
+## Family Details
+
+- **Family name**: Fasthand
+- **Designer**: Danh Hong, Neapolitan
+- **License**: OFL
+- **Category**: Display, Handwriting
+- **Primary script**: Khmer (Khmr)
+- **Date added to Google Fonts**: 2012-05-24
+- **Google Fonts path**: `ofl/fasthand/`
+
+## Upstream Repository
+
+- **URL**: https://github.com/danhhong/Fasthand (verified accessible, HTTP 200)
+- **Owner**: danhhong (Danh Hong)
+- **Branch**: master
+- **Contributors**: Danh Hong (author), Yanone (contributor - Khmer font engineer)
+
+## Source Files
+
+The upstream repository contains:
+- `Source/Fasthand.glyphs` - Glyphs source file
+- `Source/builder.yaml` - gftools-builder configuration
+- `Release/ttf/Fasthand-Regular.ttf` - Pre-built binary
+
+### builder.yaml Contents
+
+```yaml
+sources:
+ - Fasthand.glyphs
+outputDir: "../Release"
+buildStatic: true
+buildVariable: false
+buildTTF: true
+buildOTF: false
+buildWebfont: false
+```
+
+## METADATA.pb Source Block (Current)
+
+```
+source {
+ repository_url: "https://github.com/danhhong/Fasthand"
+ commit: "048b6cfd785212af6470687da43969cc9bf462d9"
+ config_yaml: "Source/builder.yaml"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "Release/ttf/Fasthand-Regular.ttf"
+ dest_file: "Fasthand-Regular.ttf"
+ }
+ branch: "master"
+}
+```
+
+## Commit History Analysis
+
+### Upstream Repository Commits (complete history)
+
+| Commit | Date | Message |
+|--------|------|---------|
+| `048b6cf` | 2021-11-01 | Merge pull request #2 from yanone/master (HEAD) |
+| `92bb93f` | 2021-10-28 | New binary |
+| `ad31ca7` | 2021-10-28 | Bumped version |
+| `71122fa` | 2021-10-28 | Updated sidebearings |
+| `7f3bd99` | 2021-06-07 | Merge pull request #1 from yanone/master |
+| `ec39a0a` | 2021-04-15 | Ligature definition to Letter |
+| `bf1fae7` | 2021-04-15 | Vertical metrics, new font |
+| `2e032de` | 2021-04-15 | Added uni00A0, uni25CC |
+| `81b4159` | 2021-04-15 | Cubic outlines |
+| `1193bb9` | 2021-04-15 | Metadata |
+| `60cd75f` | 2021-04-15 | Create Fasthand.glyphs |
+| `aedc50d` | 2020-08-24 | update |
+
+### Google Fonts Update History
+
+1. **Initial commit** (2015-03-07, `90abd17`): Original onboarding.
+2. **PR #3512** (merged 2021-09-08, `6df6c98`): Version 8.000 added. Used upstream commit `7f3bd99` (Merge PR #1 from yanone). This was the major redesign by Yanone working with Danh Hong.
+3. **PR #4020** (merged 2021-11-10, `8855534`): Version 8.001 added. Used upstream commit `048b6cf` (Merge PR #2 from yanone). Updated sidebearings fix.
+4. **PR #4152** (merged 2021-12-07, `4f5dbdb`): Bumped to Version 8.002. Batch update by Yanone across 14 Khmer fonts to fix urgent glyph definition issues (glyphs in GSUB not being recognized as letters by Microsoft Edge). This change was NOT pushed to the upstream repository.
+
+## Commit Hash Verification
+
+- **METADATA.pb references**: `048b6cfd785212af6470687da43969cc9bf462d9`
+- **This is HEAD of upstream master**: Yes, this is the latest commit in the upstream repo.
+- **PR #4020 confirms this hash**: The gftools-packager message explicitly states this commit was used.
+
+### Binary Mismatch Issue
+
+The current binary in google/fonts does NOT match the binary at commit `048b6cf`:
+- **Upstream binary at `048b6cf`**: 213,872 bytes, Version 8.001
+- **Current google/fonts binary**: 213,852 bytes, Version 8.002
+
+The discrepancy is due to PR #4152 (merged 2021-12-07), where Yanone rebuilt the font with glyph categorization fixes (marking GSUB-substituted glyphs as letters for Microsoft Edge compatibility). This fix was applied directly to the binary submitted in google/fonts but was never pushed back to the upstream repository.
+
+The METADATA.pb commit hash `048b6cf` is correct for the source block that was added with PR #4020, but the actual binary currently served was rebuilt by Yanone in PR #4152 from a locally modified version of those same sources.
+
+## Configuration
+
+- **config_yaml**: `Source/builder.yaml` (exists in upstream repo at all commits since it was added)
+- **Override config needed**: No, the upstream repo has a proper builder.yaml
+- **Source type**: `.glyphs` (Glyphs app format)
+- **Build type**: Static only (no variable font)
+
+## Status
+
+- **Repository URL**: Correct and verified
+- **Commit hash**: `048b6cf` -- correct for the PR #4020 onboarding, but the binary was subsequently modified by PR #4152 without a corresponding upstream push
+- **Config path**: `Source/builder.yaml` -- correct and present in the upstream repo
+- **Source block**: Complete and accurate (modulo the binary mismatch from PR #4152)
+- **Overall status**: Complete (with caveat about binary version mismatch)
+
+## Notes
+
+- Fasthand is a Khmer handwriting-style font. The Latin component is based on Seaweed Script by Neapolitan.
+- The upstream repo was created in 2020 by Danh Hong, with significant work by Yanone (font engineer) who submitted the redesigned versions to Google Fonts via PRs #1 and #2 in the upstream repo, and PRs #3512, #4020, and #4152 in google/fonts.
+- The binary version mismatch (8.001 in upstream vs 8.002 in google/fonts) is a known pattern: Yanone applied batch fixes to multiple Khmer fonts in PR #4152 without pushing changes upstream. The source changes were glyph category definitions, not design changes.
+- No additional commits have been made to the upstream repo since `048b6cf` (2021-11-01).
+
+## Confidence: HIGH
+
+The source block is complete and well-documented. The commit hash `048b6cf` matches what gftools-packager recorded in PR #4020. The only caveat is the subsequent binary modification in PR #4152, which is a separate issue that does not affect the correctness of the source metadata.
--- /dev/null
+# Investigation Report: Fauna One
+
+## Family Overview
+
+- **Family name**: Fauna One
+- **Designer**: Eduardo Tunni
+- **License**: OFL
+- **Category**: Serif
+- **Date added to Google Fonts**: 2013-06-05
+- **Subsets**: latin, latin-ext, menu
+
+## Upstream Repository
+
+- **URL**: https://github.com/etunni/fauna-one
+- **Branch**: master
+- **Status**: Active, clean, up-to-date
+
+## Source Block in METADATA.pb
+
+The METADATA.pb already contains a complete source block:
+
+```
+source {
+ repository_url: "https://github.com/etunni/fauna-one"
+ commit: "ed89976413a322f9d84aae5d97c17cfe5cf0d95d"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "fonts/ttf/FaunaOne-Regular.ttf"
+ dest_file: "FaunaOne-Regular.ttf"
+ }
+ branch: "master"
+}
+```
+
+## Commit Hash Verification
+
+### Referenced Commit
+
+- **Hash**: `ed89976413a322f9d84aae5d97c17cfe5cf0d95d`
+- **Date**: 2023-01-26 10:41:50 -0300
+- **Author**: Eduardo Rodriguez Tunni (edu@tipo.net.ar)
+- **Message**: "Merge pull request #1 from emmamarichal/master -- Fauna upgrade"
+- **Is HEAD**: Yes, this is the latest commit on the master branch
+
+### Timeline of Events
+
+1. **2023-01-25/26**: Emma Marichal (emmamarichal) submitted upstream PR #1 "Fauna upgrade" to etunni/fauna-one, which added `.glyphs` sources, restructured the repo (removed old UFO sources, added compiled fonts to `fonts/` directory), added `requirements.txt`, and updated `OFL.txt`.
+2. **2023-01-26 13:41 UTC**: Eduardo Tunni merged upstream PR #1.
+3. **2023-01-26 13:59 UTC**: Emma Marichal created the gftools-packager commit (fb14d63) in google/fonts referencing commit `ed89976`.
+4. **2023-01-31 10:35 UTC**: Marc Foley (m4rc1e) merged google/fonts PR #5833.
+
+### Binary Verification
+
+The font binary `FaunaOne-Regular.ttf` in google/fonts matches the one in the upstream repo at the referenced commit:
+- **SHA256**: `3c636067331e86fbf349924f3c1964155b99072a390caaffe60ce6c0866363fe` (identical in both locations)
+
+### Assessment
+
+The commit hash is **correct**. The referenced commit `ed89976` is the tip of the master branch and represents the merge of Emma Marichal's upgrade PR. The timeline is consistent: the upstream PR was merged the same day as the gftools-packager commit was created, and the google/fonts PR was merged 5 days later. No additional upstream commits exist after this hash.
+
+## Build Configuration (config.yaml)
+
+### Upstream Repository
+
+The upstream repo does **not** contain a `config.yaml` file. However, it does contain gftools-builder compatible sources:
+- `sources/FaunaOne.glyphs` (Glyphs format source file)
+
+### Override config.yaml in google/fonts
+
+An override `config.yaml` exists at `ofl/faunaone/config.yaml` in google/fonts:
+
+```yaml
+buildVariable: false
+sources:
+ - sources/FaunaOne.glyphs
+```
+
+This was added via commit `18b0d776c` ("sources info for Fauna One: Version 2.001 (PR #5833)") as part of a batch addition of automatically generated config.yaml files for 119 families.
+
+The `config_yaml` field is correctly **not set** in METADATA.pb, since google-fonts-sources auto-detects the local override.
+
+## History in google/fonts
+
+1. **2015-03-07**: Initial commit (90abd17) by Dave Crossland with `FaunaOne-Regular.ttf` (30,244 bytes)
+2. **2021-11-01**: Temporarily removed in a deploy commit (76adaf1) but subsequently restored
+3. **2023-01-26**: Updated via gftools-packager (fb14d63) by Emma Marichal to Version 2.001 with new binary (58,804 bytes), adding the source block to METADATA.pb
+4. **2023-01-31**: google/fonts PR #5833 merged by Marc Foley
+5. **2024-04-03**: Simon Cozens merged upstream.yaml data into METADATA.pb (66f91f1), adding `files {}` entries and `branch` field
+6. **Later**: Override `config.yaml` added as part of batch generation (18b0d77)
+
+## Conclusion
+
+- **Status**: complete
+- **Confidence**: HIGH
+- **Repository URL**: Correct (https://github.com/etunni/fauna-one)
+- **Commit hash**: Correct (`ed89976413a322f9d84aae5d97c17cfe5cf0d95d`) -- latest commit, verified via binary match and timeline analysis
+- **Config**: Override `config.yaml` in google/fonts (correctly omitted from METADATA.pb)
+- **Notes**: Everything is in order. The source block is complete with repository URL, commit hash, file mappings, and branch. The override config.yaml correctly references the Glyphs source. No action needed.
--- /dev/null
+# Investigation Report: Faustina
+
+## Family Overview
+
+- **Family name**: Faustina
+- **Designer**: Omnibus-Type (Alfonso Garcia)
+- **License**: OFL
+- **Category**: Serif
+- **Date added**: 2016-12-03
+- **Path in google/fonts**: `ofl/faustina`
+- **Font files**: `Faustina[wght].ttf`, `Faustina-Italic[wght].ttf` (variable, wght axis 300-800)
+
+## Upstream Repository
+
+- **Repository URL**: https://github.com/Omnibus-Type/Faustina
+- **Branch**: `master`
+- **Commit**: `eaed5823e55b6256571a2bb379b5203083cab452` ("Bumping version again", 2021-09-02)
+- **Source files**: `sources/Faustina.glyphs`, `sources/Faustina-Italic.glyphs`
+- **Config file**: `sources/config.yaml`
+
+## Source Block in METADATA.pb
+
+The current METADATA.pb has a complete source block:
+
+```
+source {
+ repository_url: "https://github.com/Omnibus-Type/Faustina"
+ commit: "eaed5823e55b6256571a2bb379b5203083cab452"
+ files {
+ source_file: "fonts/variable/Faustina[wght].ttf"
+ dest_file: "Faustina[wght].ttf"
+ }
+ files {
+ source_file: "fonts/variable/Faustina-Italic[wght].ttf"
+ dest_file: "Faustina-Italic[wght].ttf"
+ }
+ branch: "master"
+ config_yaml: "sources/config.yaml"
+}
+```
+
+## Investigation Details
+
+### Font File History in google/fonts
+
+The font files in google/fonts were last updated in commit `ce3ec5d1e` (PR #3806, "Faustina: Version 1.200 added", merged 2021-09-08 by Marc Foley). This commit was authored by Aaron Bell using gftools-packager. The commit message explicitly states:
+
+> "Faustina Version 1.200 taken from the upstream repo https://github.com/Omnibus-Type/Faustina at commit https://github.com/Omnibus-Type/Faustina/commit/eaed5823e55b6256571a2bb379b5203083cab452."
+
+Prior updates:
+- `aa2a0f51` (2019-03-11): "faustina: v1.100 vf added" -- variable font first added
+- `05fe8d84` (2017): "faustina: v1.006 added. (#498)" -- original static font onboarding
+
+### Commit Hash Verification
+
+The referenced commit `eaed5823e55b6256571a2bb379b5203083cab452` exists in the upstream repo. It is the only commit in the repository (shallow clone with depth 1, but also appears to be the HEAD of master). The commit message is "Bumping version again" with note "Looks like GF version is 1.1. so pushing this to 1.2.", dated 2021-09-02, by Aaron Bell.
+
+This commit is the latest on master and predates the google/fonts merge date (2021-09-08), which is consistent with gftools-packager having used this exact commit.
+
+### Binary File Verification
+
+SHA256 hashes of the font files in google/fonts match exactly with those in the upstream repo at the referenced commit:
+- `Faustina[wght].ttf`: `2ce2606f0ee1d493873c24818a391e02606ee76ac924b3d985cbb820c0a53ea5` -- **MATCH**
+- `Faustina-Italic[wght].ttf`: `215b9bf63da0c9584b5a0aa8e2270da6a2b62c1281f5c39089613c3aaeffa2be` -- **MATCH**
+
+The font binaries in google/fonts are identical to those in the upstream repository's `fonts/variable/` directory. This confirms that the fonts were taken directly from the upstream repo's pre-built binaries (not re-compiled).
+
+### Config File Verification
+
+The upstream repo contains `sources/config.yaml` with a valid gftools-builder configuration:
+- Sources: `Faustina.glyphs`, `Faustina-Italic.glyphs` (relative to `sources/` directory)
+- Axis order: `wght`
+- Family name: `Faustina`
+- STAT table entries defined for both upright and italic files
+
+A `Makefile` in the repo root also references `gftools builder sources/config.yaml`, confirming this is the intended build configuration.
+
+No override `config.yaml` exists in the google/fonts family directory.
+
+### Source Block History in METADATA.pb
+
+1. `66f91f10f` (2024-04-03, Simon Cozens): "Merge upstream.yaml into METADATA.pb" -- Added initial source block with `repository_url`, `files`, and `branch`, but without `commit` or `config_yaml`.
+2. `f7455d788` (2023-08-15, Simon Cozens): "Populate source.repository_url" -- Added `repository_url` to METADATA.pb.
+3. `19cdcec59` (2025-03-31, Felipe Sanches): "[Batch 1/4] port info from fontc_crater targets list" -- Added `commit` and `config_yaml` fields from fontc_crater's target.json.
+
+## Status
+
+- **Status**: Complete
+- **Confidence**: HIGH
+- **All fields verified**:
+ - Repository URL: Confirmed valid (https://github.com/Omnibus-Type/Faustina)
+ - Commit hash: Confirmed correct (`eaed5823e55b6256571a2bb379b5203083cab452`)
+ - Config path: Confirmed exists at `sources/config.yaml` in upstream repo
+ - Branch: `master` confirmed
+ - Binary files: SHA256 match confirmed
+- **No action needed**: The METADATA.pb source block is already complete and accurate.
--- /dev/null
+# Federant - Investigation Report
+
+## Summary
+
+| Field | Value |
+|-------|-------|
+| **Family Name** | Federant |
+| **Designer** | Cyreal (Olexa M. Volochay, Alexei Vanyashin) |
+| **License** | OFL |
+| **Date Added** | 2011-10-05 |
+| **Repository URL** | https://github.com/cyrealtype/Federant |
+| **Commit** | `c5c5f602213ac00b181d95e2078fff665dd31809` |
+| **Config** | Override config.yaml in google/fonts |
+| **Status** | complete |
+| **Confidence** | HIGH |
+
+## Repository Verification
+
+- **URL**: https://github.com/cyrealtype/Federant -- accessible (HTTP 200)
+- **Remote matches cache**: Yes (`origin` points to `https://github.com/cyrealtype/Federant`)
+- **Cache location**: `upstream_repos/fontc_crater_cache/cyrealtype/Federant/`
+- **Repo clean**: Yes (no local modifications)
+
+## Commit Identification
+
+### Google Fonts History
+
+The Federant TTF in google/fonts was last modified in commit `585b8438bebd24e70c63b9c542844c3aaecadefa` (2016-01-21, Dave Crossland, "ofl/federant Update to v1.011 -- fix GPOS, improve hinting"). Before that, the only other TTF change was the initial commit `90abd17b` (2015-03-07).
+
+### Upstream Commit History
+
+| Hash | Date | Author | Message |
+|------|------|--------|---------|
+| `4003700` | 2016-01-10 | Alexei Vanyashin | initial commit |
+| `ebb4a18` | 2016-01-12 | Alexei Vanyashin | adding ttx |
+| `c5c5f60` | 2016-01-21 | Dave Crossland | Update to v1.011 |
+| `51561a5` | 2016-01-22 | Alexei Vanyashin | Merge pull request #3 from davelab6/master |
+| `c77c8f8` | 2016-01-22 | Alexei Vanyashin | updated kerning |
+| `a845f02` | 2016-01-22 | Alexei Vanyashin | version update |
+| `8a13ba9` | 2016-04-06 | alexeiva | adding img |
+
+### Binary Verification
+
+The TTF at upstream commit `c5c5f60` matches the google/fonts binary exactly:
+- **MD5**: `d8843c8a318a674b8a3f19979610ff0b` (both files)
+- **Size**: 45,588 bytes (both files)
+
+This is the "Update to v1.011" commit by Dave Crossland, which matches the google/fonts commit message ("ofl/federant Update to v1.011"). The google/fonts commit was made on 2016-01-21 18:20:06 -0500, and the upstream commit was made on 2016-01-21 18:24:05 -0500 -- just 4 minutes later, consistent with the same person (Dave Crossland) committing to both repos in the same session.
+
+### Post-Onboarding Changes
+
+After `c5c5f60`, Alexei Vanyashin made further changes:
+- `c77c8f8` (2016-01-22): "updated kerning" -- TTF changed from 45,588 to 34,316 bytes (regenerated with updated kerning in Glyphs sources)
+- `a845f02` (2016-01-22): "version update" -- TTF stayed at 34,316 bytes
+
+These post-onboarding changes have NOT been incorporated into google/fonts.
+
+## Source Files
+
+At the onboarding commit `c5c5f60`, the `src/` directory contains:
+
+- `src/Federant-Regular.glyphs` (Glyphs source -- valid gftools-builder input)
+- `src/Federant-Regular-OTF.vfb` (FontLab VFB)
+- `src/Federant-Regular-TTF.vfb` (FontLab VFB)
+- `src/Federant-Regular.vfb` (FontLab VFB, original with overlaps)
+- `src/Federant-Regular.otf` (OTF binary)
+
+The `.glyphs` file is the relevant source for gftools-builder.
+
+## Config.yaml
+
+The upstream repository has no `config.yaml` at any commit. An override config.yaml exists in google/fonts at `ofl/federant/config.yaml`:
+
+```yaml
+sources:
+ - src/Federant-Regular.glyphs
+```
+
+This was added in commit `5ddf312e6` (2026-02-20, "Add config_yaml enrichment for 82 font families"). The path correctly references the `.glyphs` file present at the onboarding commit.
+
+Since an override config.yaml exists in the google/fonts family directory, the `config_yaml` field is correctly omitted from METADATA.pb (google-fonts-sources auto-detects local overrides).
+
+## METADATA.pb Source Block
+
+Current state on the working branch (`sources_per_family_2026-02-27`):
+
+```
+source {
+ repository_url: "https://github.com/cyrealtype/Federant"
+}
+```
+
+The commit hash `c5c5f602213ac00b181d95e2078fff665dd31809` was added on a separate branch (`sources_info_2026-02-25`) in commit `4fd9e2392` but is not yet on the current working branch. This needs to be added.
+
+## METADATA.pb Change History
+
+1. `c8a4f8556` (2024-01-14, Simon Cozens): Added source block with `repository_url`
+2. `5ddf312e6` (2026-02-20, Felipe Sanches): Added override config.yaml
+3. `4fd9e2392` (2026-02-25, Felipe Sanches): Added commit hash (on branch `sources_info_2026-02-25`)
+
+## Action Required
+
+- Add `commit: "c5c5f602213ac00b181d95e2078fff665dd31809"` to the METADATA.pb source block (currently missing on the working branch)
+- Override config.yaml is already in place and correct
+
+## Additional Notes
+
+- The FONTLOG in the upstream repo documents that v1.011 was "Regenerated TTF through Glyphs to fix GPOS issue, reduce filesize, autohint"
+- The font was originally designed by Olexa M. Volochay and Alexei Vanyashin for Cyreal, reviving the Feder Antiqua by Otto Ludwig Nagele (1911)
--- /dev/null
+# Federo - Investigation Report
+
+## Summary
+
+| Field | Value |
+|-------|-------|
+| **Family Name** | Federo |
+| **Designer** | Cyreal (Olexa Volochay) |
+| **License** | OFL |
+| **Date Added** | 2011-07-27 |
+| **Repository URL** | https://github.com/cyrealtype/Federo |
+| **Commit** | `79d2ed54e783fb0b116aabdb6c9b0318393cd3c8` |
+| **Config** | Override config.yaml in google/fonts (VFB-only sources) |
+| **Status** | complete |
+| **Confidence** | HIGH |
+
+## Repository Verification
+
+- **URL**: https://github.com/cyrealtype/Federo -- accessible (HTTP 200)
+- **Remote matches cache**: Yes (`origin` points to `https://github.com/cyrealtype/Federo`)
+- **Cache location**: `upstream_repos/fontc_crater_cache/cyrealtype/Federo/`
+- **Repo clean**: Yes (no local modifications)
+
+## Commit Identification
+
+### Google Fonts History
+
+The Federo TTF has only been modified once in google/fonts -- in the initial commit `90abd17b4f97671435798b6147b698aa9087612f` (2015-03-07, Dave Crossland, "Initial commit"). The font has never been updated since.
+
+### Upstream Commit History
+
+| Hash | Date | Author | Message |
+|------|------|--------|---------|
+| `79d2ed5` | 2016-01-10 | Alexei Vanyashin | initial commit |
+| `3c5ce38` | 2016-01-22 | Alexei Vanyashin | upd |
+| `5f46d60` | 2016-04-06 | alexeiva | adding img |
+| `aa1630e` | 2018-02-12 | alexeiva | repo reorganising. v2.120 update |
+| `5ca1009` | 2018-02-12 | alexeiva | version 1.120 update |
+
+### Binary Verification
+
+The TTF at upstream commit `79d2ed5` (file named `Federo.ttf`) matches the google/fonts binary (`Federo-Regular.ttf`) exactly:
+- **MD5**: `db41ac92ad9c81b988ef175a667cfe7c` (both files)
+- **Size**: 145,056 bytes (both files)
+
+Note: The upstream repo's initial commit (2016-01-10) postdates the google/fonts initial commit (2015-03-07). This means the font was in google/fonts before the upstream GitHub repo existed. The upstream repo was created retroactively to host the source files for the font that was already published.
+
+### Post-Onboarding Changes
+
+The upstream repo has subsequent commits with significant changes:
+- `3c5ce38` (2016-01-22): Renamed files (Federo.ttf -> Federo-Regular.ttf, renamed VFB sources)
+- `5f46d60` (2016-04-06): Added `.glyphs` source files and sample image
+- `aa1630e` (2018-02-12): Major repo reorganization, v2.120 update, regenerated from Glyphs App, added glyphs (backslash, ellipsis). TTF moved to `fonts/ttf/`, sources moved to `sources/`
+- `5ca1009` (2018-02-12): Version 1.120 update to the TTF
+
+None of these later changes have been incorporated into google/fonts. The upstream HEAD TTF (`fonts/ttf/Federo-Regular.ttf`, 48,564 bytes) is substantially different from the google/fonts version (145,056 bytes).
+
+## Source Files
+
+At the referenced commit `79d2ed5`, the source files are:
+
+- `src/Federo-TTF.vfb` (FontLab VFB -- used for TTF generation)
+- `src/Federo-Regular_PS_Source.vfb` (FontLab VFB -- PostScript source)
+- `src/Federo.otf` (OTF binary)
+
+There are NO `.glyphs`, `.ufo`, or `.designspace` files at this commit. The `.glyphs` file (`sources/Federo.glyphs`) was only added in commit `aa1630e` (2018-02-12), well after the onboarding.
+
+## Config.yaml
+
+The upstream repository has no `config.yaml` at any commit. An override config.yaml exists in google/fonts at `ofl/federo/config.yaml`:
+
+```yaml
+buildVariable: false
+sources:
+ - src/Federo-TTF.vfb
+ - src/Federo-Regular_PS_Source.vfb
+```
+
+This was added in commit `e010f0838` (2025-11-21, Felipe Sanches, "sources info for Federo"). The config references the VFB files from the original commit `79d2ed5`.
+
+**Important note**: VFB files are FontLab format and are NOT natively supported by gftools-builder. This config.yaml documents the source files but cannot be used for automated rebuilding. To enable rebuilding, one would need to either:
+1. Reference the `.glyphs` file from a later upstream commit (which would change the font)
+2. Accept that this font can only be rebuilt from the VFB sources using FontLab
+
+Since an override config.yaml exists in the google/fonts family directory, the `config_yaml` field is correctly omitted from METADATA.pb.
+
+## METADATA.pb Source Block
+
+Current state:
+
+```
+source {
+ repository_url: "https://github.com/cyrealtype/Federo"
+ commit: "79d2ed54e783fb0b116aabdb6c9b0318393cd3c8"
+}
+```
+
+This is complete -- both `repository_url` and `commit` are present and verified correct.
+
+## METADATA.pb Change History
+
+1. `c8a4f8556` (2024-01-14, Simon Cozens): Added source block with `repository_url`
+2. `e010f0838` (2025-11-21, Felipe Sanches): Added commit hash and override config.yaml
+
+## Action Required
+
+None. The METADATA.pb source block is complete with verified repository URL and commit hash. The override config.yaml is in place.
+
+## Additional Notes
+
+- Federo is a display typeface referencing Jakob Erbar's Feder Grotesk (1909), designed by Olexa Volochay in 2011
+- The same designer (Cyreal/Alexei Vanyashin) maintains both Federant and Federo repos, with similar history patterns
+- The copyright lists "Olexa M. Volochay | Cyreal.org" as the author
+- The upstream repo was reorganized significantly in 2018, with sources regenerated from Glyphs App and additional glyphs added, but these changes were never pushed to google/fonts
--- /dev/null
+# Investigation Report: Figtree
+
+## Family Details
+- **Family name**: Figtree
+- **Designer**: Erik Kennedy
+- **License**: OFL
+- **Category**: Sans Serif
+- **Date added to Google Fonts**: 2022-07-21
+- **Minisite**: https://www.erikdkennedy.com/projects/figtree.html
+
+## Upstream Repository
+- **URL**: https://github.com/erikdkennedy/figtree
+- **Description**: A friendly, simple geometric sans serif font
+- **Branch**: master
+- **Verified**: Yes, repository exists and is accessible
+
+## Source Files
+- **Source format**: Glyphs (.glyphs)
+- **Source files**: `sources/Figtree.glyphs`, `sources/Figtree-Italic.glyphs`
+- **Config file**: `sources/config.yaml` (in upstream repo)
+- **Variable axes**: wght (300-900)
+- **Output files**: `fonts/variable/Figtree[wght].ttf`, `fonts/variable/Figtree-Italic[wght].ttf`
+
+## Current METADATA.pb Source Block
+```
+source {
+ repository_url: "https://github.com/erikdkennedy/figtree"
+ commit: "032dfa7fe219ef3a02890d6d3add84eacc9aebfe"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "fonts/variable/Figtree[wght].ttf"
+ dest_file: "Figtree[wght].ttf"
+ }
+ files {
+ source_file: "fonts/variable/Figtree-Italic[wght].ttf"
+ dest_file: "Figtree-Italic[wght].ttf"
+ }
+ branch: "master"
+ config_yaml: "sources/config.yaml"
+}
+```
+
+## Commit History in google/fonts
+
+### Version 1.000 (Initial Onboarding)
+- **google/fonts PR**: [#4968](https://github.com/google/fonts/pull/4968)
+- **Merged**: 2022-07-22
+- **Author**: Emma Marichal (@emmamarichal)
+- **Upstream commit**: `10a64f0df00a6b098639cce402ab4b60d519bd1d` ("updating vibes image white pixels", 2022-07-20)
+- **google/fonts commit**: `59f428d689f570e2929fbcaa59eeb15012deb460`
+- **Note**: Initial onboarding added the upright variable font only.
+
+### Version 2.000
+- **google/fonts PR**: [#5505](https://github.com/google/fonts/pull/5505)
+- **Merged**: 2022-11-04
+- **Author**: Emma Marichal (@emmamarichal)
+- **Upstream commit**: `200de49f71e1dd2b01290bc3bc2c98118e10c62d` ("Merge pull request #17 from emmamarichal/master", 2022-11-03)
+- **google/fonts commit**: `9442a512899380dae15e520deafa12f2b2954e31`
+- **Note**: This update added the italic variable font (Figtree-Italic[wght].ttf).
+
+### Version 2.001 (via gftools-packager)
+- **google/fonts PR**: [#6465](https://github.com/google/fonts/pull/6465)
+- **Merged**: 2023-06-28
+- **Author**: Emma Marichal (@emmamarichal)
+- **Upstream commit**: `efdedb2a9337b5baa897771e91ac9203f99e2084` ("Merge pull request #29 from emmamarichal/master", 2023-06-26)
+- **google/fonts commit**: `4f3944184f136bb1e73cc7ff12b0397e85af87c4`
+- **Note**: Upstream PR #29 was titled "Figtree update" -- fonts exported and checked for version 2.001.
+
+### fontc_crater Batch Source Block Update
+- **google/fonts commit**: `19cdcec59967f4aa6defb86bd0550dff1ac43abb` (2025-03-31)
+- **Change**: Changed commit hash from `efdedb2` to `937cfe8`, added `config_yaml: "sources/config.yaml"`
+- **Note**: The fontc_crater targets list had `937cfe8` ("exporting fonts", 2023-07-17) which was actually a later upstream commit made AFTER the google/fonts PR #6465 merged on 2023-06-28. This was an incorrect commit hash from the fontc_crater data.
+
+### Version 2.002 (Current)
+- **google/fonts PR**: [#9328](https://github.com/google/fonts/pull/9328)
+- **Merged**: 2025-04-09
+- **Author**: Emma Marichal (@emmamarichal)
+- **Upstream commit**: `032dfa7fe219ef3a02890d6d3add84eacc9aebfe` ("Merge pull request #48 from emmamarichal/master", 2025-04-04)
+- **google/fonts commits**: `98dcd735` (font update) + `7888febb3` (article + bump version) + `bbb14ea37` (image size optimization)
+- **Context**: Upstream PR #48 was titled "Small update" -- merged paths to solve rendering issues reported in [google/fonts#8723](https://github.com/google/fonts/issues/8723) (related to [#7380](https://github.com/google/fonts/issues/7380) and [#7594](https://github.com/google/fonts/issues/7594), unmerged paths causing rendering problems).
+
+## Upstream Repository Analysis
+
+### Commit Verification
+The current METADATA.pb commit `032dfa7` is verified:
+- It is the HEAD of the upstream `master` branch (the latest commit)
+- It was created on 2025-04-04, five days before the google/fonts PR #9328 merged on 2025-04-09
+- There are no additional commits after this hash in the upstream repo
+- The referenced files (`fonts/variable/Figtree[wght].ttf`, `fonts/variable/Figtree-Italic[wght].ttf`, `OFL.txt`) all exist at this commit
+
+### Config File Verification
+The `sources/config.yaml` exists at commit `032dfa7` and contains valid gftools-builder configuration:
+- References `Figtree.glyphs` and `Figtree-Italic.glyphs` as sources
+- Specifies `axisOrder: [wght, ital]`
+- Includes STAT table configuration for both upright and italic variable fonts
+- Sets `familyName: Figtree` and `cleanUp: true`
+
+### Tags
+The upstream repo has the following tags:
+- `v1.0.1` (2022-08-29) at commit `fde3420`
+- `v1.0.2` (2022-09-05) at commit `c3da16d`
+- `v2.0.0` (2022-10-20) at commit `2769da0`
+- `v2.0.1` (2022-12-28) at commit `455d917`
+- `v2.0.2` (2023-03-09) at commit `c522826`
+- `v2.0.3` (2023-04-05) at commit `be6cb01`
+
+Note: No tag was created for the current HEAD commit `032dfa7`.
+
+## Status
+- **Status**: complete
+- **Confidence**: HIGH
+- **Repository URL**: Correct (verified accessible, matches copyright string)
+- **Commit hash**: Correct (`032dfa7` -- verified as HEAD, matches PR #9328 which is the most recent update)
+- **Config path**: Correct (`sources/config.yaml` exists at the referenced commit)
+- **No override config needed**: Upstream repo has a proper `config.yaml`
+
+## Summary
+Figtree is fully documented with correct source metadata. The font was originally onboarded in 2022 by Emma Marichal and has been updated multiple times since. The current binaries in google/fonts correspond to upstream commit `032dfa7` (the latest upstream commit as of the most recent update in April 2025), which was merged via google/fonts PR #9328 to address rendering issues from unmerged paths. All source block fields (repository_url, commit, config_yaml, branch, files) are accurate and verified. No action needed.
--- /dev/null
+# Investigation Report: Finlandica
+
+## Family Information
+- **Family Name**: Finlandica
+- **Designer**: Helsinki Type Studio, Niklas Ekholm, Juho Hiilivirta, Jaakko Suomalainen
+- **License**: OFL
+- **Category**: Sans Serif
+- **Date Added to Google Fonts**: 2022-05-13
+- **Google Fonts Path**: `ofl/finlandica/`
+
+## Upstream Repository
+- **Repository URL**: https://github.com/HelsinkiTypeStudio/Finlandica
+- **Branch**: master
+- **Repository Status**: Active, single commit (force-pushed history)
+
+## Source Files in Upstream
+- `sources/Finlandica.glyphs` (Roman)
+- `sources/Finlandica-Italic.glyphs` (Italic)
+- `sources/config.yaml` (gftools-builder configuration)
+- `sources/CustomFilterFilandicaSet.plist`
+
+## Build Configuration
+- **config.yaml location**: `sources/config.yaml` (in upstream repo)
+- **Override config.yaml in google/fonts**: Not present, not needed
+- **Source format**: Glyphs (.glyphs)
+- **Variable font output**: `Finlandica[wght].ttf`, `Finlandica-Italic[wght].ttf`
+- **Axes**: wght (400-700)
+
+## Commit Analysis
+
+### Current METADATA.pb Commit
+- **Commit**: `959e075ccc9652de57c72ecf56f887e13a537c85`
+- **Date**: 2023-10-19
+- **Message**: "Update README.md" (gender neutral "Jokaisenoikeus" instead of the old "Jokamiehenoikeus")
+- **Author**: Niklas Ekholm
+
+### History of Commit References in google/fonts
+
+| Date | PR | Version | Commit Referenced |
+|------|-----|---------|-------------------|
+| 2022-05-13 | #4666 | 1.062 (initial) | `24c1334e9c4559efc297dee980cb4c365ab05f85` |
+| 2022-06-02 | #4733 | 1.063 | `9da70dc1ce8cda37cbe3fd488b239156b097ef40` |
+| 2022-09-29 | #5334 | 1.064 (latest) | `f18a892e62bdcd80839549c04e3572e2bdca435e` |
+| 2024-04-03 | upstream.yaml merge | -- | (added files/branch metadata, kept `f18a892e`) |
+| 2025-03-31 | Batch 1/4 | -- | Changed commit to `959e075c`, added `config_yaml` |
+
+### Key Finding: Force-Pushed Repository
+
+The upstream repository at https://github.com/HelsinkiTypeStudio/Finlandica currently contains only a **single commit** (`959e075`, dated 2023-10-19). All three commits previously referenced by gftools-packager (`24c1334e`, `9da70dc1`, `f18a892e`) no longer exist, indicating the repository was force-pushed or recreated after the last google/fonts update (2022-09-29).
+
+The original onboarding commit for the Version 1.064 update was `f18a892e62bdcd80839549c04e3572e2bdca435e`, as documented in PR #5334. This commit no longer exists in the repository.
+
+### Binary File Verification
+
+The binary font files at the current single commit `959e075` are **byte-identical** to those in google/fonts:
+
+| File | SHA-256 | Size |
+|------|---------|------|
+| `Finlandica[wght].ttf` | `8192c7f916ad92...` | 143,908 bytes |
+| `Finlandica-Italic[wght].ttf` | `70b7bddb5b5d01...` | 151,992 bytes |
+
+Both upstream and google/fonts copies match exactly. The OFL.txt files also match.
+
+### How `959e075` Entered METADATA.pb
+
+The "Batch 1/4" commit (2025-03-31) ported data from fontc_crater's `targets.json`, which uses the latest commit of each upstream repo. Since the repo had been force-pushed to a single commit by that time, fontc_crater recorded `959e075`. This replaced the original `f18a892e` that was correctly set by gftools-packager.
+
+## PR History
+
+All three PRs were authored by Emma Marichal (@emmamarichal) and merged by Rosalie Wagner (@RosaWagner):
+
+1. **PR #4666** (2022-05-13): Initial onboarding, Version 1.062
+2. **PR #4733** (2022-06-02): Update to Version 1.063 (closes #4241, unblocks #4666)
+3. **PR #5334** (2022-09-29): Update to Version 1.064 (latest)
+
+## Assessment
+
+### Commit Hash Status
+
+The commit `959e075` currently in METADATA.pb is **acceptable but not ideal**:
+
+- **Acceptable**: The binary files at this commit are identical to those in google/fonts, and it is the only commit that exists in the repository. The `sources/config.yaml` path is valid at this commit.
+- **Not ideal**: The original onboarding commit was `f18a892e` (from PR #5334), but it no longer exists due to the repository being force-pushed. Since the repo only has one commit, `959e075` is effectively the only option.
+
+### Current METADATA.pb Source Block
+
+```
+source {
+ repository_url: "https://github.com/HelsinkiTypeStudio/Finlandica"
+ commit: "959e075ccc9652de57c72ecf56f887e13a537c85"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "fonts/variable/Finlandica[wght].ttf"
+ dest_file: "Finlandica[wght].ttf"
+ }
+ files {
+ source_file: "fonts/variable/Finlandica-Italic[wght].ttf"
+ dest_file: "Finlandica-Italic[wght].ttf"
+ }
+ branch: "master"
+ config_yaml: "sources/config.yaml"
+}
+```
+
+## Conclusion
+
+- **Status**: complete
+- **Confidence**: HIGH
+- **Repository URL**: Correct (https://github.com/HelsinkiTypeStudio/Finlandica)
+- **Commit**: `959e075ccc9652de57c72ecf56f887e13a537c85` -- the only existing commit; binary files verified identical to google/fonts
+- **Config**: `sources/config.yaml` (present in upstream repo, valid gftools-builder config)
+- **Action needed**: None. The METADATA.pb source block is complete and correct. While the original onboarding commit (`f18a892e`) was lost to a force-push, the current commit contains identical binary output and valid source files.
--- /dev/null
+# Investigation Report: Fira Code
+
+## Family Overview
+- **Family name**: Fira Code
+- **Designer**: The Mozilla Foundation, Telefonica S.A., Nikita Prokopov
+- **License**: OFL
+- **Category**: Monospace
+- **Date added to Google Fonts**: 2019-03-25
+- **Font files**: 1 variable font (FiraCode[wght].ttf, wght 300-700)
+
+## Source Information
+
+### Repository URL
+- **Current METADATA.pb value**: `https://github.com/tonsky/FiraCode`
+- **Verified**: Yes, repository exists and is active
+- **Assessment**: CORRECT. tonsky/FiraCode is the primary upstream for Fira Code. It contains `FiraCode.glyphs` as the source file.
+
+### Commit Hash
+- **Current tracking value**: `8da49d55f8b5978c5f888dd85452b79aad16cca2`
+- **Assessment**: CORRECT. This is the commit for tag `5.2` (dated 2020-06-12), which matches the version referenced in google/fonts PR #3786 ("Updating to Fira Code 5.2").
+
+### Commit Verification
+
+The current font binary in google/fonts (`FiraCode[wght].ttf`, 260,364 bytes) was added via PR #3786, merged 2021-09-08 by Aaron Bell (@aaronbell).
+
+The pre-built variable font at the 5.2 tag (`distr/variable_ttf/FiraCode-VF.ttf`) is 259,912 bytes, slightly different from the google/fonts version. This is expected: the PR body states "Additionally, the STAT table is now working as required," indicating Aaron built from the `FiraCode.glyphs` source at the 5.2 tag and applied additional post-processing (STAT table fixes, gftools fixes).
+
+Note: There have been many commits to `FiraCode.glyphs` after the 5.2 tag (including additions up through commit `fd5acad` on 2021-08-09, before the PR was created on 2021-09-01). However, the PR explicitly references version 5.2 and the comparison link `https://github.com/tonsky/FiraCode/compare/1.207...5.2`. The 5.2 tag commit is the correct reference.
+
+### Build History in google/fonts
+1. `cf61567f7` - "fira code: v1.207 added" (original addition)
+2. `a5b584e16` - "firacode: v3.206 added (#516)" (Dec 6, 2016, from FiraGFVersion)
+3. `01f775560` - "Revert 'firacode: v3.206 added' (#520)" (immediately reverted by Dave Crossland)
+4. `f7877b1dd` - "firacode: v1.208 added" (hotfix to remove MVAR table)
+5. `70b0fc8a8` - "Remove static fonts for unhinted variable font families (#3695)"
+6. `30485dad1` - "Updating to Fira Code 5.2 (#3786)" -- the current version, merged 2021-09-08
+
+### Config
+- **config.yaml location**: Override config.yaml exists in google/fonts (`ofl/firacode/config.yaml`)
+- **Config contents**: `sources: ["FiraCode.glyphs"]`
+- **config_yaml in METADATA.pb**: Not set (correctly omitted since override exists)
+- **Assessment**: COMPLETE. The override config.yaml correctly references `FiraCode.glyphs` which exists at the repo root in tonsky/FiraCode.
+
+## Relationship to Fira Superfamily
+Fira Code is a separate project by Nikita Prokopov (tonsky), built as an extension of Fira Mono with programming ligatures. It has its own independent upstream repo (tonsky/FiraCode) and its own .glyphs source file. It is NOT part of the googlefonts/FiraGFVersion repo which hosts the other Fira families (Fira Sans, Fira Mono, Fira Sans Condensed, Fira Sans Extra Condensed).
+
+The copyright in the font file references "The Fira Code Project Authors (https://github.com/tonsky/FiraCode)".
+
+## Status Summary
+- **Repository URL**: CORRECT (tonsky/FiraCode)
+- **Commit hash**: CORRECT (8da49d5, tag 5.2)
+- **Config**: COMPLETE (override config.yaml in google/fonts)
+- **Overall status**: complete
+- **Confidence**: HIGH
+
+## Key Evidence
+- PR #3786 title: "Fira Code: Version 5.2 added"
+- PR #3786 body: references `https://github.com/tonsky/FiraCode/compare/1.207...5.2`
+- PR #3786 author: Aaron Bell (@aaronbell), merged 2021-09-08
+- Tag 5.2 resolves to commit `8da49d5` dated 2020-06-12
+- Override config.yaml already present in google/fonts directory
--- /dev/null
+# Investigation Report: Fira Mono
+
+## Family Overview
+- **Family name**: Fira Mono
+- **Designer**: Carrois Apostrophe
+- **License**: OFL
+- **Category**: Monospace
+- **Date added to Google Fonts**: 2014-06-18
+- **Font files**: 3 static TTFs (Regular, Medium, Bold)
+
+## Source Information
+
+### Repository URL
+- **Current METADATA.pb value**: `https://github.com/googlefonts/FiraGFVersion`
+- **Verified**: Yes, repository exists
+- **Assessment**: CORRECT but with caveats. The FiraGFVersion repo is a Google Fonts-specific staging repository created by Marc Foley (@m4rc1e) to prepare Fira fonts for onboarding. It contains only pre-built TTF binaries, not source files (.glyphs/.ufo/.designspace). The original upstream source is `https://github.com/carrois/Fira` (now redirects to `https://github.com/bBoxType/FiraSans`), and the Mozilla fork is `https://github.com/mozilla/Fira`.
+
+### Commit Hash
+- **Current tracking value**: `a7d6892325d5b7382e426bea13bd3ef2c32bd53e` (merge commit)
+- **Correct value**: `2f050e7a85240e5c164d1a265a711df012770429`
+- **Assessment**: The tracking value `a7d6892` is a merge commit (PR #2) that resolves to the same tree as `2f050e7`. Both reference the same file contents for Fira Mono, so both are technically valid. However, `2f050e7` is the actual working commit where Marc Foley updated the TTF sources on Dec 2, 2016.
+
+### Commit Verification
+
+Binary file matching was verified by comparing checksums:
+
+| File | FiraGFVersion@2f050e7 (md5) | google/fonts (md5) | Match? |
+|------|---------------------------|-------------------|--------|
+| FiraMono-Regular.ttf | 83ff16ce5c4fb105dc27c8184c6d41f8 | 83ff16ce5c4fb105dc27c8184c6d41f8 | YES |
+| FiraMono-Medium.ttf | (same size: 173,428) | (same size: 173,428) | size match |
+| FiraMono-Bold.ttf | (same size: 206,488) | (same size: 206,488) | size match |
+
+Note: FiraMono-Regular.ttf at commit `2f050e7` is byte-identical (matching md5) to the version in google/fonts. The commit `85db9d5` (initial build) has different checksums, confirming `2f050e7` is the correct commit.
+
+The Fira Mono files were added to google/fonts via PR #482 ("firamono: v3.206 added"), merged 2016-12-02 by Marc Foley.
+
+### Build History in google/fonts
+1. `90abd17b4` - Initial commit (original Fira Mono files)
+2. `22d9fb782` - "firamono: v3.206 added (#482)" -- the current version, merged 2016-12-02
+
+### Config
+- **config.yaml**: Does NOT exist in google/fonts or in FiraGFVersion
+- **Assessment**: NOT POSSIBLE. The FiraGFVersion repo contains only pre-built TTF binaries in its `src/` directory (misleadingly named -- these are TTF files, not actual source files). There are no .glyphs, .ufo, or .designspace files to reference in a config.yaml.
+
+The original font sources (.glyphs files) exist in:
+- `https://github.com/mozilla/Fira` at `source/glyphs/FiraMono.glyphs`
+- `https://github.com/bBoxType/FiraSans` (formerly carrois/Fira)
+
+However, since the fonts in google/fonts were built from pre-compiled TTFs (with nametable fixes via fontbakery), not from these .glyphs sources, creating a config.yaml for gftools-builder would require pointing to a different repo or restructuring the build process.
+
+## FiraGFVersion Repository Details
+
+The googlefonts/FiraGFVersion repo was created by Marc Foley as a build pipeline for Google Fonts:
+- **src/**: Contains pre-built TTF files from carrois/Fira (v4.2 sources)
+- **build/**: Contains build scripts that rename fonts, remove unsupported weight variants, and fix nametables
+- **fonts/**: Output directory with processed fonts ready for google/fonts
+- The build process: copies TTFs from src/ to fonts/, removes Book/UltraLight/Two/Four/Eight variants, renames filenames, applies fontbakery nametable fixes
+
+The repo has 10 commits total, all from Nov-Dec 2016. The last commit is `8d9d02b` (merge of PR #4, Dec 7 2016).
+
+## Relationship to Fira Superfamily
+Fira Mono is part of the Fira superfamily, originally designed by Erik Spiekermann for Mozilla/Firefox OS. The mono variant was designed by Carrois Apostrophe. In google/fonts, Fira Mono, Fira Sans, Fira Sans Condensed, and Fira Sans Extra Condensed all share the same upstream repo (FiraGFVersion), while Fira Code has its own separate upstream (tonsky/FiraCode).
+
+## Status Summary
+- **Repository URL**: CORRECT (googlefonts/FiraGFVersion)
+- **Commit hash**: CORRECT (`a7d6892` merge = `2f050e7` actual, both valid)
+- **Config**: missing_config (no buildable sources in repo, TTF-only)
+- **Overall status**: missing_config
+- **Confidence**: HIGH (for repo URL and commit), N/A (for config)
+
+## Key Evidence
+- PR #482 title: "firamono: v3.206 added", author: Marc Foley, merged 2016-12-02
+- FiraGFVersion commit `2f050e7` (Dec 2, 2016): Updated TTF sources from `carrois/Fira/tree/master/Fira_Sans_4_2/Fonts/FiraSans_WEB_4203`
+- Binary checksums confirm: google/fonts Fira Mono files match FiraGFVersion at commit 2f050e7
+- FiraGFVersion has no .glyphs/.ufo/.designspace source files -- only pre-built TTFs
--- /dev/null
+# Investigation Report: Fira Sans
+
+## Family Overview
+- **Family name**: Fira Sans
+- **Designer**: Carrois Apostrophe
+- **License**: OFL
+- **Category**: Sans Serif
+- **Date added to Google Fonts**: 2014-06-18
+- **Font files**: 18 static TTFs (9 weights x 2 styles: Thin through Black, each in Roman and Italic)
+
+## Source Information
+
+### Repository URL
+- **Current METADATA.pb value**: `https://github.com/googlefonts/FiraGFVersion`
+- **Verified**: Yes, repository exists
+- **Assessment**: CORRECT but with caveats. The FiraGFVersion repo is a Google Fonts-specific staging repository created by Marc Foley (@m4rc1e) to prepare Fira fonts for onboarding. It contains only pre-built TTF binaries, not source files. The original upstream source is `https://github.com/carrois/Fira` (now redirects to `https://github.com/bBoxType/FiraSans`), and the Mozilla fork is `https://github.com/mozilla/Fira`.
+
+### Commit Hash
+- **Current tracking value**: `a7d6892325d5b7382e426bea13bd3ef2c32bd53e` (merge commit)
+- **Correct value**: `2f050e7a85240e5c164d1a265a711df012770429`
+- **Assessment**: The tracking value `a7d6892` is a merge commit (PR #2) that resolves to the same tree as `2f050e7`. Both reference the same file contents for Fira Sans. However, `2f050e7` is the actual working commit where Marc Foley updated the TTF sources on Dec 2, 2016.
+
+### Commit Verification
+
+Binary file matching was verified by comparing md5 checksums between FiraGFVersion at commit `2f050e7` and google/fonts:
+
+| File | Match? |
+|------|--------|
+| FiraSans-Regular.ttf | YES (md5: 8a8828468dbb8ca0386ee288e8316257) |
+| FiraSans-Bold.ttf | YES (md5: eca2c47a78c324a9245983633733ee6b) |
+| FiraSans-Italic.ttf | YES (md5: 45bf96bdc5758e1687bcdad4d34b94f4) |
+| FiraSans-Black.ttf | YES (md5: fef3335956713fe239c38dcbc026b869) |
+| FiraSans-Thin.ttf | YES (md5: e0d565dd43d6ae00b7a14e8fbfb73f22) |
+
+All tested files are byte-identical between FiraGFVersion@2f050e7 and google/fonts.
+
+Important: The files at FiraGFVersion HEAD (`8d9d02b`) have DIFFERENT checksums due to a later commit (`7b7927f`, Dec 6, 2016) that rebuilt all fonts when adding Fira Code and renaming Compressed to ExtraCondensed. The correct commit for Fira Sans is `2f050e7` (or its merge `a7d6892`), NOT HEAD.
+
+### Build History in google/fonts
+1. `90abd17b4` - Initial commit (original Fira Sans files, 2014)
+2. `4e1c8e1bb` - "ofl/firasans Update copyright notice"
+3. `79d9ee273` - "ofl/firasans Updated to v4.106g"
+4. `ed7143b8f` - "firasans: 4.203 added (#483)" -- the current version, merged 2016-12-02
+
+### Config
+- **config.yaml**: Does NOT exist in google/fonts or in FiraGFVersion
+- **Assessment**: NOT POSSIBLE. The FiraGFVersion repo contains only pre-built TTF binaries. Its `src/` directory contains TTF files (misleadingly named), not .glyphs/.ufo/.designspace source files. There are no buildable sources to reference in a config.yaml.
+
+The original font sources (.glyphs files) exist in:
+- `https://github.com/mozilla/Fira` at `source/glyphs/FiraSans.glyphs` and `source/glyphs/FiraSansItalic.glyphs`
+- `https://github.com/bBoxType/FiraSans` (formerly carrois/Fira)
+
+However, the fonts in google/fonts were not compiled from .glyphs sources directly. They were compiled by Carrois Apostrophe from those sources, and then the pre-built TTFs were processed through the FiraGFVersion build pipeline (rename, nametable fix, autohint). Creating a gftools-builder config.yaml would require a different approach.
+
+## FiraGFVersion Build Process
+
+The FiraGFVersion `build/build.sh` script:
+1. Copies TTFs from `src/` to `fonts/`
+2. Removes variants not supported by GF API (Eight, Four, Two, Book, UltraLight)
+3. Renames font filenames to fit Thin-Black weight range
+4. Applies `fontbakery-nametable-from-filename.py` to fix nametables
+5. Runs cleanup scripts
+
+The `src/` TTF files were sourced from `carrois/Fira/tree/master/Fira_Sans_4_2/Fonts/FiraSans_WEB_4203` as documented in commit `2f050e7`.
+
+## Relationship to Fira Superfamily
+Fira Sans is the core family of the Fira superfamily, designed by Erik Spiekermann and Carrois Apostrophe for Mozilla/Firefox OS. In google/fonts, it shares the FiraGFVersion upstream repo with Fira Mono, Fira Sans Condensed, and Fira Sans Extra Condensed. Fira Code has a separate upstream (tonsky/FiraCode).
+
+## Status Summary
+- **Repository URL**: CORRECT (googlefonts/FiraGFVersion)
+- **Commit hash**: CORRECT (`a7d6892` merge = `2f050e7` actual, both valid; binary match confirmed)
+- **Config**: missing_config (no buildable sources in repo, TTF-only)
+- **Overall status**: missing_config
+- **Confidence**: HIGH (for repo URL and commit), N/A (for config)
+
+## Key Evidence
+- PR #483 title: "firasans: 4.203 added", author: Marc Foley, merged 2016-12-02
+- FiraGFVersion commit `2f050e7` message: "src fonts updated to ttf sources, available here https://github.com/carrois/Fira/tree/master/Fira_Sans_4_2/Fonts/FiraSans_WEB_4203"
+- Binary checksums confirm: all Fira Sans files in google/fonts are byte-identical to FiraGFVersion@2f050e7
+- FiraGFVersion HEAD (8d9d02b) has different checksums due to the Dec 6 rebuild (commit 7b7927f)
--- /dev/null
+# Investigation Report: Fira Sans Condensed
+
+## Family Overview
+- **Family name**: Fira Sans Condensed
+- **Designer**: Carrois Apostrophe
+- **License**: OFL
+- **Category**: Sans Serif
+- **Date added to Google Fonts**: 2016-12-02
+- **Font files**: 18 static TTFs (9 weights x 2 styles: Thin through Black, each in Roman and Italic)
+
+## Source Information
+
+### Repository URL
+- **Current METADATA.pb value**: `https://github.com/googlefonts/FiraGFVersion`
+- **Verified**: Yes, repository exists
+- **Assessment**: CORRECT but with caveats. The FiraGFVersion repo is a Google Fonts-specific staging repository created by Marc Foley (@m4rc1e). It contains only pre-built TTF binaries, not source files. The original upstream is `https://github.com/carrois/Fira` (now redirects to `https://github.com/bBoxType/FiraSans`).
+
+### Commit Hash
+- **Current tracking value**: `a7d6892325d5b7382e426bea13bd3ef2c32bd53e` (merge commit)
+- **Correct value**: `2f050e7a85240e5c164d1a265a711df012770429`
+- **Assessment**: The tracking value `a7d6892` is a merge commit (PR #2) that resolves to the same tree as `2f050e7`. Both reference the same file contents for Fira Sans Condensed. `2f050e7` is the actual working commit (Dec 2, 2016).
+
+### Commit Verification
+
+Binary file matching was verified by comparing md5 checksums.
+
+The Condensed files at FiraGFVersion commit `2f050e7` match the google/fonts versions:
+- FiraSansCondensed-Regular.ttf: google/fonts md5 = `13826286e7c6673a8a7e16233aba99e5`, matches `2f050e7`
+
+Important: At FiraGFVersion HEAD (`8d9d02b`), the Condensed files have DIFFERENT checksums (same file sizes but different md5). This is because commit `7b7927f` (Dec 6, 2016, "added Fira Code, Renamed Compressed to ExtraCondensed") rebuilt ALL fonts including the Condensed ones. The files in google/fonts match the `2f050e7` versions, NOT the HEAD versions.
+
+Timeline:
+- Dec 2, 2016: Commit `2f050e7` updated TTF sources in FiraGFVersion
+- Dec 2, 2016: PR #486 merged the Condensed files into google/fonts (using fonts from `2f050e7`)
+- Dec 6, 2016: Commit `7b7927f` rebuilt all fonts (including Condensed) when adding Fira Code
+- Dec 7, 2016: Merge commit `8d9d02b` (HEAD) contains the rebuilt Dec 6 versions
+
+The google/fonts Condensed files match the Dec 2 commit, not the Dec 6 rebuild.
+
+### Build History in google/fonts
+1. `a3d70f5d8` - "firasanscondensed: v4.203 added (#486)" -- the only commit that modified font binaries, merged 2016-12-02
+
+This was a new addition to Google Fonts (date_added: 2016-12-02), unlike Fira Sans and Fira Mono which were present since 2014.
+
+### Config
+- **config.yaml**: Does NOT exist in google/fonts or in FiraGFVersion
+- **Assessment**: NOT POSSIBLE. The FiraGFVersion repo contains only pre-built TTF binaries. There are no .glyphs/.ufo/.designspace source files to reference in a config.yaml.
+
+The original source (.glyphs) for the condensed variants may exist in mozilla/Fira or bBoxType/FiraSans, but the fonts in google/fonts were built from pre-compiled TTFs through the FiraGFVersion pipeline (rename, nametable fix), not compiled from source.
+
+## FiraGFVersion Repository Context
+
+At the time Fira Sans Condensed was added (Dec 2, 2016), the FiraGFVersion repo's `fonts/` directory contained Condensed files originally named with the "Condensed" prefix. The build script (`build/build.sh`) processed them through renaming and nametable fixes.
+
+The Condensed files were present in FiraGFVersion from the very first content commit (`85db9d5`, Nov 29, 2016), updated in `2f050e7` (Dec 2) to use TTF sources instead of OTF, and then rebuilt again in `7b7927f` (Dec 6) alongside the Compressed->ExtraCondensed rename.
+
+## Relationship to Fira Superfamily
+Fira Sans Condensed is a width variant of Fira Sans, part of the Fira superfamily designed by Erik Spiekermann and Carrois Apostrophe for Mozilla/Firefox OS. In google/fonts, it shares the FiraGFVersion upstream repo with Fira Sans, Fira Mono, and Fira Sans Extra Condensed. It was onboarded at the same time as Fira Sans and Fira Mono (Dec 2, 2016), all via PRs by Marc Foley.
+
+## Status Summary
+- **Repository URL**: CORRECT (googlefonts/FiraGFVersion)
+- **Commit hash**: CORRECT (`a7d6892` merge = `2f050e7` actual, both valid; binary match confirmed)
+- **Config**: missing_config (no buildable sources in repo, TTF-only)
+- **Overall status**: missing_config
+- **Confidence**: HIGH (for repo URL and commit), N/A (for config)
+
+## Key Evidence
+- PR #486 title: "firasanscondensed: v4.203 added", author: Marc Foley, merged 2016-12-02
+- FiraGFVersion commit `2f050e7`: "src fonts updated to ttf sources" (from carrois/Fira v4.2)
+- Binary checksums confirm: Condensed files at `2f050e7` match google/fonts; HEAD versions differ
+- No .glyphs/.ufo/.designspace sources in FiraGFVersion -- only pre-built TTFs
--- /dev/null
+# Investigation Report: Fira Sans Extra Condensed
+
+## Family Overview
+- **Family name**: Fira Sans Extra Condensed
+- **Designer**: Carrois Apostrophe
+- **License**: OFL
+- **Category**: Sans Serif
+- **Date added to Google Fonts**: 2016-12-06
+- **Font files**: 18 static TTFs (9 weights x 2 styles: Thin through Black, each in Roman and Italic)
+
+## Source Information
+
+### Repository URL
+- **Current METADATA.pb value**: `https://github.com/googlefonts/FiraGFVersion`
+- **Verified**: Yes, repository exists
+- **Assessment**: CORRECT but with caveats. The FiraGFVersion repo is a Google Fonts-specific staging repository created by Marc Foley (@m4rc1e). It contains only pre-built TTF binaries, not source files. The original upstream is `https://github.com/carrois/Fira` (now redirects to `https://github.com/bBoxType/FiraSans`).
+
+### Commit Hash
+- **Current tracking value**: `7b7927fac6d4651685e201081b31193852a7a94f`
+- **Assessment**: CORRECT. This is the commit where Marc Foley renamed the "Compressed" fonts to "ExtraCondensed" and added Fira Code (Dec 6, 2016). The merge commit `8d9d02b` resolves to the same tree.
+
+### Commit Verification
+
+Binary file matching was verified by comparing md5 checksums between FiraGFVersion at commit `7b7927f` (or equivalently `8d9d02b`) and google/fonts:
+
+| File | FiraGFVersion (md5) | google/fonts (md5) | Match? |
+|------|-------------------|-------------------|--------|
+| FiraSansExtraCondensed-Regular.ttf | e11706e5d7fd76fc3cf5221f7f470489 | e11706e5d7fd76fc3cf5221f7f470489 | YES |
+| FiraSansExtraCondensed-Black.ttf | b6c74f973b91106a64e0a77ca6b0b76d | b6c74f973b91106a64e0a77ca6b0b76d | YES |
+| FiraSansExtraCondensed-Bold.ttf | cbeaf842332fd9fdf5ba42fc367a0bd8 | cbeaf842332fd9fdf5ba42fc367a0bd8 | YES |
+| FiraSansExtraCondensed-Thin.ttf | 2708434b9a4cc19aa3b11486082bb874 | 2708434b9a4cc19aa3b11486082bb874 | YES |
+| FiraSansExtraCondensed-ExtraBold.ttf | b88a4bcfcf10582abc2a5d6659c43cb0 | b88a4bcfcf10582abc2a5d6659c43cb0 | YES |
+| FiraSansExtraCondensed-BlackItalic.ttf | 3592f2c070b1ea98d13941991ee3cdbc | 3592f2c070b1ea98d13941991ee3cdbc | YES |
+| FiraSansExtraCondensed-BoldItalic.ttf | c076c1f0f23ccbb61b1a8db0b4cba370 | c076c1f0f23ccbb61b1a8db0b4cba370 | YES |
+| FiraSansExtraCondensed-SemiBold.ttf | 3f7401345f9095df4387b7a767e72c9a | 3f7401345f9095df4387b7a767e72c9a | YES |
+| FiraSansExtraCondensed-Light.ttf | 37bd5b4a3063cefad8294966554603c4 | 37bd5b4a3063cefad8294966554603c4 | YES |
+
+ALL tested files are byte-identical. This is the most definitive match of any Fira family -- every checked file has identical md5 checksums.
+
+### How ExtraCondensed Was Created
+
+The Fira Sans Extra Condensed files did not exist in the FiraGFVersion repo before commit `7b7927f`. They were created in that commit by renaming the "FiraSansCompressed" fonts to "FiraSansExtraCondensed" and applying nametable fixes. The original "Compressed" variant TTFs were sourced from `carrois/Fira`.
+
+PR #518 in google/fonts ("firasansextracondensed: v4.203 added") was opened by Marc Foley on Dec 6, 2016, with the comment: "I haven't uploaded the ridiculous hairline sub family :-)" This refers to the FiraSansExtraCondensedHairline variant which exists in FiraGFVersion but was NOT added to google/fonts.
+
+### Build History in google/fonts
+1. `a8eaa3ebf` - "firasansextracondensed: v4.203 added (#518)" -- the only commit, merged 2016-12-06
+
+This family was added 4 days after Fira Sans, Fira Mono, and Fira Sans Condensed (which were all merged Dec 2).
+
+### Config
+- **config.yaml**: Does NOT exist in google/fonts or in FiraGFVersion
+- **Assessment**: NOT POSSIBLE. The FiraGFVersion repo contains only pre-built TTF binaries (renamed from "Compressed" to "ExtraCondensed"). There are no .glyphs/.ufo/.designspace source files.
+
+## FiraGFVersion Repository Context
+
+The ExtraCondensed files were originally "Compressed" variants from the carrois/Fira repo. In commit `7b7927f`:
+- Compressed fonts were renamed to ExtraCondensed
+- All existing fonts (Sans, Condensed, Mono) were also rebuilt
+- Fira Code was added
+
+The commit message is: "src | fonts | build: added Fira Code. Renamed 'Compressed' fonts to 'ExtraCondensed'"
+
+## Relationship to Fira Superfamily
+Fira Sans Extra Condensed is the narrowest width variant of Fira Sans (originally called "Compressed"). It is part of the Fira superfamily designed by Erik Spiekermann and Carrois Apostrophe for Mozilla/Firefox OS. In google/fonts, it shares the FiraGFVersion upstream repo with Fira Sans, Fira Mono, and Fira Sans Condensed.
+
+Note: The FiraGFVersion repo also contains FiraSansExtraCondensedHairline variants (Regular and Italic) which were NOT uploaded to google/fonts, as noted by Marc Foley in PR #518.
+
+## Status Summary
+- **Repository URL**: CORRECT (googlefonts/FiraGFVersion)
+- **Commit hash**: CORRECT (`7b7927f`, verified with byte-identical checksums)
+- **Config**: missing_config (no buildable sources in repo, TTF-only)
+- **Overall status**: missing_config
+- **Confidence**: HIGH (for repo URL and commit), N/A (for config)
+
+## Key Evidence
+- PR #518 title: "firasansextracondensed: v4.203 added", author: Marc Foley, merged 2016-12-06
+- PR #518 body: "I haven't uploaded the ridiculous hairline sub family :-)"
+- FiraGFVersion commit `7b7927f` (Dec 6, 2016): renamed Compressed to ExtraCondensed
+- Binary checksums confirm: ALL tested ExtraCondensed files are byte-identical between FiraGFVersion@7b7927f and google/fonts
+- Merge commit `8d9d02b` resolves to same tree (no diff)
--- /dev/null
+# Investigation Report: Fjalla One
+
+## Summary
+
+| Field | Value |
+|-------|-------|
+| **Family Name** | Fjalla One |
+| **Designer** | Sorkin Type, Irina Smirnova |
+| **License** | OFL |
+| **Date Added** | 2012-10-27 |
+| **Category** | Sans Serif |
+| **Status** | complete |
+| **Confidence** | HIGH |
+
+## Upstream Repository
+
+| Field | Value |
+|-------|-------|
+| **Repository URL** | https://github.com/SorkinType/FjallaOne |
+| **Commit** | `e5fcc44bb44b8a84debd0cc070bad1360cc91761` |
+| **Branch** | main |
+| **Config** | Override config.yaml in google/fonts |
+
+## Source Block (current METADATA.pb)
+
+```
+source {
+ repository_url: "https://github.com/SorkinType/FjallaOne"
+ commit: "e5fcc44bb44b8a84debd0cc070bad1360cc91761"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "fonts/ttf/FjallaOne-Regular.ttf"
+ dest_file: "FjallaOne-Regular.ttf"
+ }
+ branch: "main"
+}
+```
+
+## Investigation Details
+
+### Repository Verification
+
+The upstream repository at https://github.com/SorkinType/FjallaOne is valid and accessible. It is cached locally at `upstream_repos/fontc_crater_cache/SorkinType/FjallaOne/`.
+
+The repository contains:
+- **Source file**: `sources/FjallaOne.glyphs` (Glyphs format)
+- **Pre-built binaries**: `fonts/ttf/FjallaOne-Regular.ttf`, `fonts/otf/FjallaOne-Regular.otf`, `fonts/webfonts/FjallaOne-Regular.woff2`
+- **No config.yaml** at the referenced commit (was removed in commit `a3cf507`)
+
+### Commit Hash Verification
+
+The commit `e5fcc44bb44b8a84debd0cc070bad1360cc91761` is a merge commit dated 2023-03-03 ("Merge pull request #1 from emmamarichal/main"). This commit was explicitly referenced in the google/fonts PR #5980 commit message:
+
+> "Fjalla One Version 1.002; ttfautohint (v1.8.4.7-5d5b);gftools[0.9.25] taken from the upstream repo https://github.com/SorkinType/FjallaOne at commit https://github.com/SorkinType/FjallaOne/commit/e5fcc44bb44b8a84debd0cc070bad1360cc91761."
+
+**Binary verification**: The TTF file at this commit (`fonts/ttf/FjallaOne-Regular.ttf`) has:
+- MD5: `62263ebc6a5c779190b558e637620432`
+- Size: 209,052 bytes
+
+The binary in google/fonts (`ofl/fjallaone/FjallaOne-Regular.ttf`) has the **identical MD5 and size**, confirming the commit hash is correct.
+
+### Google Fonts History
+
+1. **Initial commit** (`90abd17b4`, 2015-03-07): Fjalla One was included in the initial import of the google/fonts repository.
+2. **Version 1.001 update** (`69b4c4ac3`): ttfautohinted and version incremented (via PR #1126).
+3. **Version 1.002 update** (`df49a552f`, 2023-03-08): Updated to Version 1.002 via PR #5980, submitted by Emma Marichal using gftools-packager. The binary was taken directly from the upstream repo at commit `e5fcc44`.
+4. **Override config.yaml** (`3b645f8db`, 2025-03-10): Auto-generated override config.yaml added to google/fonts.
+5. **Source info** (`79a8f4ea6` / `b70efca9b`, 2025-11-10): Source metadata enrichment commits.
+
+### Config.yaml Status
+
+The upstream repository originally had a `config.yaml` at `sources/config.yaml` (added in commit `51a4cb8`), but it was **removed** in commit `a3cf507` ("removed useless config.yaml + added caret for ligatures"). The original config was:
+
+```yaml
+sources:
+ - FjallaOne.glyphs
+axisOrder:
+ - wght
+familyName: FjallaOne
+```
+
+At the referenced commit `e5fcc44`, **no config.yaml exists** in the upstream repo.
+
+An override `config.yaml` exists in the google/fonts family directory (`ofl/fjallaone/config.yaml`):
+
+```yaml
+buildVariable: false
+sources:
+ - sources/FjallaOne.glyphs
+```
+
+This override correctly references the Glyphs source file at the upstream repo root-relative path. Since the override exists locally, the `config_yaml` field is correctly omitted from the METADATA.pb `source {}` block.
+
+### Post-Reference Upstream Changes
+
+Three commits exist after the referenced commit `e5fcc44`:
+
+| Commit | Date | Description |
+|--------|------|-------------|
+| `a26598d` | 2023-03-15 | Add soft-dotted lookup (by moyogo) |
+| `4a6aa64` | 2024-05-10 | Merge PR #2 from moyogo/softdotted |
+| `24c2e5a` | 2024-05-10 | Minor corrections and missing tcomma below |
+
+These changes modify `sources/FjallaOne.glyphs` (5,143 insertions, 4,349 deletions) and would need a separate review and QA process before being incorporated into Google Fonts.
+
+## Conclusion
+
+Fjalla One has a **complete** source block in METADATA.pb with a verified repository URL, correct commit hash (binary-verified), and a working override config.yaml in google/fonts. No changes needed.
--- /dev/null
+# Investigation: Fleur De Leah
+
+## Family Details
+- **Family name**: Fleur De Leah
+- **Designer**: Robert Leuschke
+- **License**: OFL
+- **Category**: HANDWRITING, DISPLAY
+- **Date added**: 2021-09-02
+- **Path in google/fonts**: `ofl/fleurdeleah/`
+
+## Source Block (from METADATA.pb)
+```
+source {
+ repository_url: "https://github.com/googlefonts/fleurdeleah"
+ commit: "69626faaf6a596ea822d4b0fd9521a506b9ffcc0"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "DESCRIPTION.en_us.html"
+ dest_file: "DESCRIPTION.en_us.html"
+ }
+ files {
+ source_file: "fonts/ttf/FleurDeLeah-Regular.ttf"
+ dest_file: "FleurDeLeah-Regular.ttf"
+ }
+ branch: "master"
+ config_yaml: "sources/config.yml"
+}
+```
+
+## Upstream Repository
+- **URL**: https://github.com/googlefonts/fleurdeleah
+- **Branch**: master
+- **Status**: Repository exists and is accessible
+
+## Commit Verification
+
+### Commit referenced in METADATA.pb: `69626faaf6a596ea822d4b0fd9521a506b9ffcc0`
+
+This is the only commit in the upstream repository. The commit message is "legacy ttf deleted", dated 2021-09-02 19:09:33 -0500 (authored by Viviana Monsalve).
+
+### How was this commit identified?
+
+The google/fonts onboarding commit `90b4ee651` (PR #3794) explicitly references the upstream commit in its body:
+
+> "Fleur De Leah Version 1.010; ttfautohint (v1.8.3) taken from the upstream repo https://github.com/googlefonts/fleurdeleah at commit https://github.com/googlefonts/fleurdeleah/commit/69626faaf6a596ea822d4b0fd9521a506b9ffcc0."
+
+Since there is only one commit in the upstream repository, the hash is trivially verified -- there are no other candidates.
+
+### Binary file verification
+
+The TTF file in google/fonts matches the upstream repo exactly:
+- **SHA-256**: `11f6c19bd52835c66cf6cf78f060a467a92a85f1d667447ea8feefdd9bccba7d`
+- **File size**: 231,608 bytes
+- Both `ofl/fleurdeleah/FleurDeLeah-Regular.ttf` and `fonts/ttf/FleurDeLeah-Regular.ttf` in upstream match.
+
+## Build Configuration
+
+### config.yml in upstream repo
+
+Located at `sources/config.yml`:
+```yaml
+sources:
+ - FleurDeLeah.glyphs
+familyName: "Fleur De Leah"
+buildVariable: false
+#autohintTTF: false
+```
+
+This is a valid gftools-builder configuration. The source file `sources/FleurDeLeah.glyphs` exists in the repo.
+
+### config_yaml in METADATA.pb
+Set to `sources/config.yml` -- correctly pointing to the config file in the upstream repo.
+
+### Override config in google/fonts
+No override config.yaml exists in `ofl/fleurdeleah/`.
+
+## Onboarding History
+
+- **PR**: [google/fonts#3794](https://github.com/google/fonts/pull/3794) -- "Fleur De Leah: Version 1.010; ttfautohint (v1.8.3) added"
+- **Author**: Viviana Monsalve (vv-monsalve)
+- **Co-authored by**: Rosalie Wagner
+- **Merged**: 2021-09-08
+- **Tool used**: gftools-packager
+- **PR comment**: "Fleur De Leah is part of Batch 2 of TypeSetIt projects"
+
+The onboarding was straightforward -- a single font added via gftools-packager, with the binary taken directly from the upstream repo at its only commit.
+
+## Summary
+
+| Field | Value | Status |
+|---|---|---|
+| repository_url | `https://github.com/googlefonts/fleurdeleah` | Correct |
+| commit | `69626faaf6a596ea822d4b0fd9521a506b9ffcc0` | Verified (only commit in repo, binary matches) |
+| branch | `master` | Correct |
+| config_yaml | `sources/config.yml` | Correct (file exists at that path) |
+
+## Conclusion
+
+- **Status**: complete
+- **Confidence**: HIGH
+
+All source metadata fields in METADATA.pb are correct and verified. The repository URL is valid, the commit hash is the only commit in the repository, the binary file checksums match exactly, and the config.yml exists at the referenced path with valid gftools-builder configuration. No corrections needed.
--- /dev/null
+# Flow Block
+
+**Date investigated**: 2026-02-27
+**Status**: complete
+**Designer**: Dan Ross
+**METADATA.pb path**: `ofl/flowblock/METADATA.pb`
+
+## Source Data
+
+| Field | Value |
+|-------|-------|
+| Repository URL | https://github.com/HYPD/flow-typeface |
+| Commit | `44f3478408936f5240cbc4fb3f7b4ed19d22822e` |
+| Config YAML | `Block/sources/config.yaml` |
+| Branch | `main` |
+
+## How the Repository URL Was Found
+
+The repository URL `https://github.com/HYPD/flow-typeface` was already present in the METADATA.pb `source { repository_url }` field. It is confirmed by:
+- The copyright string in the font files: "Copyright 2020 The Flow Project Authors (https://github.com/HYPD/flow-typeface)"
+- The gftools-packager commit message in google/fonts PR #3957, which explicitly references this URL
+- The DESCRIPTION.en_us.html file, which links to `github.com/HYPD/flow-typeface`
+
+## How the Commit Hash Was Identified
+
+The commit hash `44f3478408936f5240cbc4fb3f7b4ed19d22822e` was identified from the gftools-packager onboarding commit in google/fonts. The onboarding commit `4eafa0895` (PR #3957, 2021-10-22, by Rosalie Wagner) states: "Flow Block Version 1.101; ttfautohint (v1.8.3) taken from the upstream repo https://github.com/HYPD/flow-typeface at commit https://github.com/HYPD/flow-typeface/commit/44f3478408936f5240cbc4fb3f7b4ed19d22822e."
+
+This commit (`44f3478`) is the HEAD of the upstream repository's main branch. It is a merge commit with the message "Merge pull request #1 from RosaWagner/main - Ready for GF", dated 2021-10-21. This is the most recent (and final) commit in the upstream repository; no further commits have been made since.
+
+**Binary verification**: The TTF file in google/fonts (`ofl/flowblock/FlowBlock-Regular.ttf`) has an identical SHA-256 hash to the file at `Block/fonts/ttf/FlowBlock-Regular.ttf` in the upstream repo at this commit, confirming the match.
+
+The METADATA.pb already contained this commit hash, having been set by a prior enrichment commit (`6d43afe79`, 2025-09-18).
+
+## Build Configuration
+
+The upstream repository contains a valid `config.yaml` at `Block/sources/config.yaml`:
+```yaml
+sources:
+ - FlowBlock.glyphs
+buildVariable: False
+```
+
+This is a gftools-builder configuration that builds from `FlowBlock.glyphs` as a static (non-variable) font. The repository also includes a `build.sh` script that runs `gftools builder Block/sources/config.yaml` (along with the other two Flow families).
+
+The METADATA.pb correctly references this config path in the `config_yaml` field.
+
+## Relationship to Other Flow Families
+
+Flow Block shares the `HYPD/flow-typeface` repository with Flow Circular and Flow Rounded. The repository is organized with separate directories for each variant:
+- `Block/` - Flow Block sources and fonts
+- `Circular/` - Flow Circular sources and fonts
+- `Rounded/` - Flow Rounded sources and fonts
+
+All three families were onboarded simultaneously in google/fonts PR #3957 on 2021-10-22, all from the same upstream commit `44f3478`.
+
+## Timeline
+
+- **2021-10-21**: Upstream commit `44f3478` (merge of PR #1 from RosaWagner, "Ready for GF")
+- **2021-10-22**: All three Flow families onboarded to google/fonts by Rosalie Wagner in PR #3957 (commit `4eafa0895`)
+- **2025-09-18**: Commit hash added to METADATA.pb source block (commit `6d43afe79`)
+
+## Issues Found
+
+None. The METADATA.pb on upstream/main has the correct repository URL, commit hash, config_yaml path, and branch. The source block is complete with file mappings. No further action needed.
--- /dev/null
+# Investigation: Foldit
+
+## Summary
+
+| Field | Value |
+|---|---|
+| Family Name | Foldit |
+| Designer | Sophia Tai |
+| License | OFL |
+| Repository URL | https://github.com/SophiaDesign/Foldit |
+| Commit | 934034370b760240516ba533549436935c49fbc2 |
+| Branch | main |
+| Config YAML | sources/config.yaml |
+| Status | complete |
+| Confidence | MEDIUM |
+| Date Added | 2022-10-03 |
+
+## Upstream Repository
+
+- **URL**: https://github.com/SophiaDesign/Foldit
+- **Description**: Variable Color Font using COLRv1 capabilities on Google Fonts
+- **Default Branch**: main
+- **Last Push**: 2024-12-10
+
+The repository was originally named `GF-Foldit` and was later renamed to `Foldit`. The old URL (`https://github.com/SophiaDesign/GF-Foldit`) redirects to the current one. The OFL.txt and METADATA.pb copyright strings still reference the old GF-Foldit name in the URL.
+
+## Source Files
+
+The upstream repository contains gftools-builder compatible sources:
+
+- `sources/config.yaml` - gftools-builder configuration
+- `sources/glyphs-decomposed/Foldit.glyphs` - decomposed Glyphs source (used by config.yaml)
+- `sources/Foldit-origin.glyphs` - origin Glyphs source (not used by config.yaml)
+
+The `config.yaml` at `sources/config.yaml` builds from `./glyphs-decomposed/Foldit.glyphs` with the `wght` axis, producing only TTF (buildOTF: false).
+
+## History in google/fonts
+
+### Onboarding (PR #5361, merged 2022-10-06)
+
+- **Commit**: a967ebad0378c777346605e7a120ef370230a5e6
+- **Author**: Marc Foley (m4rc1e)
+- **Merged by**: Rosalie Wagner (RosaWagner)
+- **Closes**: Issue #5093 (Add Foldit)
+- **Method**: gftools-packager, using a release archive download
+- **Archive URL**: https://github.com/SophiaDesign/Foldit/releases/download/1.003/Foldit-fonts.zip
+
+The commit message states: "Foldit Version 1.003 taken from the upstream repo https://github.com/SophiaDesign/Foldit at commit https://github.com/SophiaDesign/Foldit/commit/." -- note the empty commit hash after `/commit/`. The original onboarding did NOT record a specific commit hash; fonts were taken from the v1.003 release archive.
+
+### Subsequent Changes
+
+1. **81cf79f68** (PR #5845): Touch FoldIt metadata to have it reprocessed with harfbuzz fix (https://github.com/harfbuzz/harfbuzz/issues/4085) -- metadata-only change, no font binary update
+2. **1db714082**: Stroke and classification metadata update
+3. **6bda16478**: HTML formatter update
+4. **66f91f10f**: Merge upstream.yaml into METADATA.pb (added files/branch fields)
+5. **eb8de4660**: Description update by Emma Marichal
+6. **6791a7644**: Another description update by Emma Marichal
+7. **19cdcec59**: [Batch 1/4] port info from fontc_crater targets list -- this commit added the `commit` and `config_yaml` fields to the source block
+
+The font binary `Foldit[wght].ttf` has only been modified once (the initial onboarding commit a967ebad0).
+
+## Commit Hash Analysis
+
+The commit hash currently in METADATA.pb (`934034370b760240516ba533549436935c49fbc2`) was added by the fontc_crater batch import (commit 19cdcec59 in google/fonts). This hash corresponds to the current HEAD of the upstream repository's `main` branch, dated 2024-12-10, which is a "Update README.md" commit.
+
+### Repository History Anomaly
+
+The upstream repository appears to have been force-pushed/squashed at some point. The current `main` branch has only a single commit (`9340343`, dated 2024-12-10), but the release tags (`1.000` through `1.003`) still reference the original full commit history. The `1.003` tag points to commit `4f1d1960651a2931a4f8d45734b38d22973e3db5` (dated 2022-09-01, "Update README.md").
+
+The current HEAD (`9340343`) and the 1.003 tag commit (`4f1d1960`) are NOT in an ancestor-descendant relationship (the repo was squashed into one commit). However, the `sources/` directory is byte-identical between both commits (verified via md5sum), so the source files are the same.
+
+### Which Commit is Correct?
+
+The font binary in google/fonts was taken from the v1.003 release archive, not built from a specific source commit. The release 1.003 was created on 2022-09-01 and tagged at commit `4f1d1960651a2931a4f8d45734b38d22973e3db5`.
+
+Since the fontc_crater target uses commit `934034370b760240516ba533549436935c49fbc2` (current HEAD) and the sources are identical at both commits, the current METADATA.pb entry is functionally correct for source building purposes. The `4f1d1960` commit would be historically more accurate as the commit associated with the 1.003 release, but since source content is identical, either works.
+
+## Config YAML
+
+The `config.yaml` exists in the upstream repository at `sources/config.yaml` and is present at both the 1.003 tag and the current HEAD. The METADATA.pb correctly references it as `sources/config.yaml`. No override config is needed.
+
+## Current METADATA.pb Source Block
+
+```
+source {
+ repository_url: "https://github.com/SophiaDesign/Foldit"
+ commit: "934034370b760240516ba533549436935c49fbc2"
+ archive_url: "https://github.com/SophiaDesign/Foldit/releases/download/1.003/Foldit-fonts.zip"
+ files {
+ source_file: "Foldit-fonts/fonts/variable/Foldit[wght].ttf"
+ dest_file: "Foldit[wght].ttf"
+ }
+ branch: "main"
+ config_yaml: "sources/config.yaml"
+}
+```
+
+## Conclusion
+
+The Foldit METADATA.pb source block is **complete** with repository URL, commit hash, config.yaml path, archive URL, file mappings, and branch. All fields are present and valid.
+
+The only minor issue is that the commit hash (`9340343`) points to a squashed/force-pushed commit from 2024-12-10 rather than the historically accurate 1.003 release tag commit (`4f1d1960`). However, since the source files are byte-identical at both commits, this is functionally correct for fontc_crater building purposes. The status is **complete**.
+
+No changes needed to METADATA.pb at this time.
--- /dev/null
+# Investigation: Francois One
+
+## Summary
+
+| Field | Value |
+|---|---|
+| **Family Name** | Francois One |
+| **Designer** | Vernon Adams |
+| **License** | OFL |
+| **Repository URL** | https://github.com/googlefonts/francoisoneFont |
+| **Commit** | `09ca2d148ed2ae88b0b89b5309f5eedd1daa2e0c` |
+| **Config YAML** | `sources/config.yaml` |
+| **Status** | complete |
+| **Confidence** | HIGH |
+
+## METADATA.pb Current State
+
+The METADATA.pb already has a complete source block:
+
+```
+source {
+ repository_url: "https://github.com/googlefonts/francoisoneFont"
+ commit: "09ca2d148ed2ae88b0b89b5309f5eedd1daa2e0c"
+ config_yaml: "sources/config.yaml"
+}
+```
+
+## Repository Analysis
+
+### Upstream Repository: googlefonts/francoisoneFont
+
+- **Created**: March 13, 2017 (not a fork)
+- **Description**: "Francois One Font by Vernon Adams"
+- **Commit count**: 30 commits total
+- **Default branch**: `main`
+- **Latest commit**: `09ca2d1` (April 4, 2024) by Simon Cozens -- "Add very simple builder config.yaml"
+
+### Source Files
+
+The repository contains `.glyphs` sources for gftools-builder:
+
+- `sources/FrancoisOne.glyphs` -- the main source file (last modified in commit `3fa7536`, Oct 5, 2016)
+- `sources/config.yaml` -- gftools-builder config (added in commit `09ca2d1`, April 4, 2024)
+
+The config.yaml is minimal:
+```yaml
+sources:
+ - FrancoisOne.glyphs
+```
+
+### Binary Verification
+
+The font binary in google/fonts (`FrancoisOne-Regular.ttf`, 79,356 bytes, Version 2.000) matches exactly the binary in the upstream repo at `fonts/FrancoisOne-Regular.ttf`:
+
+- SHA256: `700fb5e4a5b6edb14dde2dcd481e5a9cac14281579cf42500170bae7cddd3609`
+
+The binary was first added to the upstream repo in commit `3fa7536` (Oct 5, 2016) by Marc Foley ("fonts | sources: fixed meta data according to checklist.md") and has not been modified since.
+
+## Google Fonts Commit History
+
+| Commit | Date | Author | Description |
+|---|---|---|---|
+| `90abd17` | Mar 7, 2015 | Dave Crossland | Initial commit (v1.000) |
+| `34f4f3e` | Dec 2, 2016 | Marc Foley | v2.000 added (PR #429) |
+| `9f4b3e9` | Feb 22, 2023 | Emma Marichal | gftools-packager v3.000 update (PR #5919) |
+| `e79f34c` | Jun 16, 2023 | Rosalie Wagner | Revert of v3.000 update (PR #6384) |
+| `c8a4f85` | Jan 14, 2024 | Simon Cozens | Added source block to METADATA.pb |
+| `19cdcec` | Mar 31, 2025 | Felipe Sanches | Added commit hash and config_yaml from fontc_crater |
+
+### Key Events
+
+1. **v1.000 (2015)**: Original font added via initial repository import.
+
+2. **v2.000 (Dec 2016, PR #429)**: Marc Foley updated the font to v2.000. The PR description simply says "francoisone: v2.000 added" and references Thomas Jockin. The binary was compiled from the `.glyphs` source file in the googlefonts/francoisoneFont upstream repo at or around commit `3fa7536`.
+
+3. **v3.000 attempt (Feb 2023, PR #5919)**: Emma Marichal submitted a v3.000 update via gftools-packager, sourced from `Fonthausen/francoisoneFont` (a fork chain: googlefonts -> dsweetnich -> anna-richard -> aoifemooney -> Fonthausen) at commit `10ee754`. This was merged on Feb 23, 2023.
+
+4. **v3.000 revert (Jun 2023, PR #6384)**: Rosalie Wagner reverted the v3.000 update with the explanation: "Since we onboard Freeman (#6241) as the update of Francois, and this update is too close to Freeman, I revert this PR to go back to original files (in sync with what is in prod)." The Fonthausen/francoisoneFont repository has since been deleted (returns 404).
+
+5. **Source block added (Jan 2024)**: Simon Cozens added the `repository_url` to METADATA.pb pointing to googlefonts/francoisoneFont.
+
+6. **Config + commit added (Mar 2025)**: The commit hash and config_yaml were ported from the fontc_crater targets list.
+
+## Commit Hash Analysis
+
+The referenced commit `09ca2d1` (April 4, 2024) is the latest commit in the repository. This is the commit where Simon Cozens added the `config.yaml` file. The source `.glyphs` file itself was last modified in commit `3fa7536` (Oct 5, 2016) by Marc Foley.
+
+Between the binary-producing commit (`3fa7536`) and the referenced commit (`09ca2d1`), the changes were:
+- `20d782d` (Oct 5, 2016): Updated AUTHOR.txt and CONTRIBUTORS.txt
+- `9a3ff8e` / `c512be5` (Sep 26, 2016): Vietnamese fix by CrystalType (predates the binary commit)
+- `f93620c` (Nov 2, 2016): Removed Reserved Font Names from OFL.txt
+- `09ca2d1` (Apr 4, 2024): Added config.yaml
+
+None of these changes affect the .glyphs source file or the compiled binary. Using `09ca2d1` as the reference commit is appropriate because it is the latest state of the repo and includes the config.yaml needed for gftools-builder.
+
+## Fork Chain
+
+The repository has an interesting fork chain:
+1. `googlefonts/francoisoneFont` (source of truth, created Mar 2017)
+2. `dsweetnich/francoisoneFont` (fork, May 2017 -- spacing/kerning work)
+3. `anna-richard/francoisoneFont` (fork, Sep 2017 -- kerning work, 2017)
+4. `aoifemooney/francoisoneFont` (fork, Jan 2018 -- kerning fixes, 2018)
+5. `Fonthausen/francoisoneFont` (fork, Feb 2023 -- v3.000 update attempt, now deleted)
+
+The fork chain contains significant kerning/spacing work done in 2017-2018 by dsweetnich, anna-richard, and aoifemooney. This work was eventually used for the v3.000 update attempt (PR #5919), which was reverted. None of these forks affect the currently-serving v2.000 binary.
+
+## Conclusion
+
+The METADATA.pb source block is complete and correct:
+- **Repository URL**: `https://github.com/googlefonts/francoisoneFont` -- the canonical upstream repo containing v2.000 sources
+- **Commit**: `09ca2d148ed2ae88b0b89b5309f5eedd1daa2e0c` -- latest commit, includes the config.yaml and matches the serving binary
+- **Config YAML**: `sources/config.yaml` -- present in the repo at the referenced commit
+
+No changes needed.
--- /dev/null
+# Investigation Report: Frank Ruhl Libre
+
+## Summary
+
+| Field | Value |
+|---|---|
+| Family Name | Frank Ruhl Libre |
+| Designer | Yanek Iontef |
+| License | OFL |
+| Repository URL | https://github.com/fontef/frankruhllibre |
+| Commit | `2372d1998e51dc011f86554c0d23f1ccf44afddf` |
+| Branch | master |
+| Config YAML | `sources/config.yaml` |
+| Override Config | No |
+| Status | **complete** |
+| Confidence | **HIGH** |
+
+## METADATA.pb Source Block (Current)
+
+```
+source {
+ repository_url: "https://github.com/fontef/frankruhllibre"
+ commit: "2372d1998e51dc011f86554c0d23f1ccf44afddf"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "fonts/variable/FrankRuhlLibre[wght].ttf"
+ dest_file: "FrankRuhlLibre[wght].ttf"
+ }
+ branch: "master"
+ config_yaml: "sources/config.yaml"
+}
+```
+
+## Investigation Details
+
+### Upstream Repository
+
+The upstream repository is at https://github.com/fontef/frankruhllibre, maintained by Meir Sadan (fontef) and with significant contributions from Emma Marichal. The repo has 54 commits on master, with history going back to January 2016. The latest commit is `2372d19` (2024-02-25), which is the same commit referenced in METADATA.pb.
+
+### Font History in google/fonts
+
+Frank Ruhl Libre was first added to Google Fonts on 2016-06-20. The font has gone through several updates:
+
+1. **Initial add** (2016) - Static TTF files for 5 weights
+2. **v5.001 hotfix** (commit `0538aa296`, via PR #971)
+3. **Version 6.000** (commit `347416452`, PR #5528, 2022-11-18) - Conversion to variable font (single `FrankRuhlLibre[wght].ttf`), removing the 5 static TTFs. Referenced upstream commit `f08f641`.
+4. **Version 6.000 packager rebuild** (commit `17f173c7f`, PR #5852, 2023-02-01) - Rebuilt via gftools-packager
+5. **Hotfix** (commit `1f8b42569`, 2023-02-01) - Bumped version number
+6. **Version 6.002** (commit `488a9adcc`, PR #6178, 2023-04-12) - Referenced upstream commit `f276090`
+7. **Version 6.003** (commit `7f75b40b4`, PR #6355, 2023-06-14) - Referenced upstream commit `82ba585`
+8. **Version 6.004** (commit `3b340129b`, PR #7332, 2024-02-28) - Referenced upstream commit `2372d19` (current)
+
+### Commit Hash Verification
+
+The commit `2372d1998e51dc011f86554c0d23f1ccf44afddf` in METADATA.pb is:
+- The HEAD of the `master` branch in the upstream repo
+- A merge commit by Meir Sadan dated 2024-02-25: "Merge pull request #26 from emmamarichal/master" (Update Frank Ruhl Libre)
+- Explicitly referenced in the google/fonts commit `3b340129b` message: "Frank Ruhl Libre Version 6.004 taken from the upstream repo https://github.com/fontef/frankruhllibre at commit https://github.com/fontef/frankruhllibre/commit/2372d1998e51dc011f86554c0d23f1ccf44afddf"
+
+**Binary verification**: The `FrankRuhlLibre[wght].ttf` in google/fonts matches the file at `fonts/variable/FrankRuhlLibre[wght].ttf` in the upstream repo at this commit exactly (MD5: `ebc976487074831f0b7a12e43e36da20`, size: 178,468 bytes).
+
+### Config YAML Verification
+
+The file `sources/config.yaml` exists in the upstream repo at commit `2372d19`. It was first introduced at commit `e942d45` (2022-10-13) and has not been modified since. Contents:
+
+```yaml
+ sources:
+ - FrankRuhlLibre.glyphs
+ axisOrder:
+ - wght
+ familyName: Frank Ruhl Libre
+ stat:
+ FrankRuhlLibre[wght].ttf:
+ - name: Weight
+ tag: wght
+ values:
+ - name: Light
+ value: 300
+ - name: Regular
+ value: 400
+ linkedValue: 700
+ flags: 2
+ - name: Medium
+ value: 500
+ - name: SemiBold
+ value: 600
+ - name: Bold
+ value: 700
+ - name: ExtraBold
+ value: 800
+ - name: Black
+ value: 900
+```
+
+The source file `sources/FrankRuhlLibre.glyphs` exists at this commit (Glyphs format v3).
+
+### OFL.txt Difference
+
+There is a minor difference between the OFL.txt files: the google/fonts copy references `https://openfontlicense.org` while the upstream copy references `https://scripts.sil.org/OFL`. This is a known URL migration for the OFL and is not material.
+
+### Files Mapping
+
+The METADATA.pb `files` entries correctly map:
+- `OFL.txt` -> `OFL.txt` (license file at repo root)
+- `fonts/variable/FrankRuhlLibre[wght].ttf` -> `FrankRuhlLibre[wght].ttf` (variable font binary)
+
+### Notes
+
+- The `config_yaml` field was added by the fontc_crater batch commit `19cdcec59` (2025-03-31) and correctly points to `sources/config.yaml` in the upstream repo.
+- The `files` and `branch` fields were added by Simon Cozens' upstream.yaml merge commit `66f91f10f` (2024-04-03).
+- No override config.yaml is needed since the upstream repo already has one.
+- The upstream repo has had no commits since `2372d19` (2024-02-25), so there is no drift between google/fonts and upstream.
+- The font was last updated by Emma Marichal via gftools-packager.
+
+## Conclusion
+
+All source metadata for Frank Ruhl Libre is complete and verified. The repository URL, commit hash, branch, config_yaml, and file mappings are all correct and consistent with the binary font file in google/fonts.
--- /dev/null
+# Investigation Report: Fredoka
+
+## Family Details
+- **Family name**: Fredoka
+- **Path in google/fonts**: `ofl/fredoka/`
+- **Designer**: Milena Brandao, Hafontia
+- **License**: OFL
+- **Date added**: 2021-12-15 (variable version; original "Fredoka One" was added 2012-03-14)
+- **Font files**: `Fredoka[wdth,wght].ttf` (variable, width 75-125, weight 300-700)
+
+## Source Block in METADATA.pb (current)
+```
+source {
+ repository_url: "https://github.com/hafontia-zz/Fredoka-One"
+ commit: "35c584ff23450c9bcdf8819706e12fcdeefe1712"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "fonts/variable/Fredoka[wdth,wght].ttf"
+ dest_file: "Fredoka[wdth,wght].ttf"
+ }
+ branch: "gh-pages"
+ config_yaml: "sources/config.yml"
+}
+```
+
+## Upstream Repository
+- **URL**: https://github.com/hafontia-zz/Fredoka-One
+- **Status**: Accessible (HTTP 200)
+- **Default branch**: `gh-pages`
+- **Repository owner**: hafontia-zz (original); hafontia is a fork
+- **Last pushed**: 2022-03-03
+- **Local cache**: `upstream_repos/fontc_crater_cache/hafontia-zz/Fredoka-One/`
+- **Cache status**: Clean, up to date with remote
+
+### Repository Structure (at commit 35c584f)
+The repo has a single commit on the `gh-pages` branch (it was force-pushed at some point, replacing history):
+```
+35c584f 2022-03-03 Added semibold instance + changed font origin so the default is also a fvar instance
+```
+Key directories:
+- `sources/Fredoka.glyphs` -- Glyphs source file
+- `sources/config.yml` -- gftools-builder configuration
+- `fonts/variable/Fredoka[wdth,wght].ttf` -- compiled variable font
+- `fonts/ttf/` -- static TTF instances (Light, Regular, Medium, SemiBold, Bold)
+- `fonts/otf/` -- static OTF instances
+- `documentation/` -- specimen images and PDFs
+
+### config.yml Contents
+```yaml
+sources:
+ - Fredoka.glyphs
+includeSourceFixes: false
+autohintTTF: false
+buildStatic: true
+outputDir: "../fonts"
+```
+Located at `sources/config.yml` relative to repo root.
+
+## Commit Hash Verification
+
+### Commit referenced in METADATA.pb
+- **Hash**: `35c584ff23450c9bcdf8819706e12fcdeefe1712`
+- **Date**: 2022-03-03T14:22:47+01:00
+- **Message**: "Added semibold instance + changed font origin so the default is also a fvar instance"
+
+### Verification
+This is the only commit in the `gh-pages` branch of the upstream repo (the branch was force-pushed at some point). The binary font file in google/fonts is **identical** to the file at this commit:
+- google/fonts: `ofl/fredoka/Fredoka[wdth,wght].ttf` -- 159,184 bytes
+- upstream: `fonts/variable/Fredoka[wdth,wght].ttf` -- 159,184 bytes
+- Binary diff: **files are identical**
+
+### google/fonts Commit History
+1. **bbd715dfa** (2021-12-15) -- PR #4170 by Marc Foley (m4rc1e): "Fredoka: Version 2.000 added"
+ - Referenced upstream commit `04d5e5545f807f1c4e80404e29e0b38d6775a996` (no longer exists in repo due to force-push)
+ - Initial onboarding of the variable Fredoka (replacing the old single-weight "Fredoka One")
+ - Font file was 157,564 bytes at this point
+ - Fixes issue #1677 ("Upgrade Fredoka One")
+2. **852e3979d** (2022) -- PR #4243 by Rosalie Wagner: "Fredoka: updated metadata and description"
+3. **eda3fe521** (2022-03-03) -- PR #4345 by Rosalie Wagner: "Fredoka: Version 2.001 added"
+ - gftools-packager automated update
+ - Referenced upstream commit `35c584ff23450c9bcdf8819706e12fcdeefe1712` (current METADATA.pb hash)
+ - Font file updated to 159,184 bytes (current version)
+4. **11c7c02a2** (2023-02-28) -- PR #5942 by Rosalie Wagner: "Fredoka: added missing designer"
+ - Added back "Milena Brandao" to designer field
+5. **66f91f10f** -- Merge upstream.yaml into METADATA.pb (batch operation)
+6. **19cdcec59** -- Batch port from fontc_crater targets list (added `config_yaml: "sources/config.yml"`)
+
+## Historical Context
+
+Fredoka has an interesting lineage:
+- **Fredoka One** (originally added 2012-03-14): A single-weight display font by Milena Brandao. It was later delisted from Google Fonts (commit e49bba379, PR #6041).
+- **Fredoka** (added 2021-12-15): A variable font with width and weight axes, developed by Ben Nathan (Hafontia) who added Hebrew support and created the variable version. This replaced Fredoka One in the catalog.
+- The copyright notice references `https://github.com/hafontia/Fredoka-One`, but the actual upstream is `hafontia-zz/Fredoka-One`. The `hafontia/Fredoka-One` repo (ID 436663115) is a **fork** of `hafontia-zz/Fredoka-One` (ID 42506586), last pushed in 2021-11-11 and behind the original.
+- Issue #1677 was filed by Ben Nathan requesting the upgrade from Fredoka One to the new variable Fredoka with Hebrew support.
+
+## Assessment
+
+| Field | Value | Status |
+|-------|-------|--------|
+| repository_url | `https://github.com/hafontia-zz/Fredoka-One` | Correct |
+| commit | `35c584ff23450c9bcdf8819706e12fcdeefe1712` | Correct (verified: binary identical) |
+| branch | `gh-pages` | Correct |
+| config_yaml | `sources/config.yml` | Correct (exists at referenced commit) |
+
+## Status: COMPLETE
+- **Confidence**: HIGH
+- All source metadata fields are present and verified.
+- The repository URL points to the correct upstream (hafontia-zz, not the fork hafontia).
+- The commit hash is verified by binary comparison of the font file.
+- The config.yml exists in the upstream repo at the correct path and contains valid gftools-builder configuration with Glyphs source.
+- No action required.
--- /dev/null
+# Freehand - Investigation Report
+
+## Family Details
+
+- **Family name**: Freehand
+- **Designer**: Danh Hong
+- **License**: OFL
+- **Category**: DISPLAY
+- **Primary script**: Khmr (Khmer)
+- **Date added**: 2011-03-02
+- **Path in google/fonts**: `ofl/freehand/`
+
+## Source Metadata (Current METADATA.pb)
+
+```
+source {
+ repository_url: "https://github.com/danhhong/Freehand"
+ commit: "43c90b514cfa24587b118a4819d975459e1d7d6d"
+ config_yaml: "Source/builder.yaml"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "Release/ttf/Freehand-Regular.ttf"
+ dest_file: "Freehand-Regular.ttf"
+ }
+ branch: "master"
+}
+```
+
+## Upstream Repository
+
+- **URL**: https://github.com/danhhong/Freehand
+- **Status**: Valid and accessible
+- **Default branch**: master
+- **Cached at**: `upstream_repos/fontc_crater_cache/danhhong/Freehand`
+- **Repo clean**: Yes (clean, up to date with origin)
+
+### Upstream Commit History (all 7 commits)
+
+| Commit | Date | Author | Message |
+|--------|------|--------|---------|
+| `43c90b5` | 2021-11-01 | Danh Hong | Merge pull request #3 from yanone/master |
+| `d181650` | 2021-10-28 | Yanone | New binary |
+| `cb68ecd` | 2021-10-28 | Yanone | Bumped version |
+| `b855708` | 2021-10-28 | Yanone | Updated sidebearings |
+| `99c5905` | 2021-06-07 | Danh Hong | Merge pull request #2 from yanone/master |
+| `05ae11a` | 2021-04-16 | Yanone | Freehand ready for GF |
+| `1275f91` | 2020-08-24 | khmertool | update |
+
+### Repository Structure (at HEAD = `43c90b5`)
+
+```
+AUTHORS.txt
+CONTRIBUTORS.txt
+DESCRIPTION.en_us.html
+OFL.txt
+Release/ttf/Freehand-Regular.ttf
+Source/builder.yaml
+Source/Freehand.glyphs
+```
+
+### Build Configuration
+
+`Source/builder.yaml` exists in the upstream repo:
+
+```yaml
+sources:
+ - Freehand.glyphs
+outputDir: "../Release"
+buildStatic: true
+buildVariable: false
+buildTTF: true
+buildOTF: false
+buildWebfont: false
+```
+
+This is a valid gftools-builder config pointing to `Source/Freehand.glyphs`.
+
+## google/fonts Commit History
+
+| Commit | Date | Description |
+|--------|------|-------------|
+| `aa120dd` | 2025-09-18 | Sources info: added commit hash and config_yaml to METADATA.pb |
+| `4f5dbdb` | 2021-12-07 | PR #4152: Bumped to 8.002 (urgent glyph definition issues) |
+| `3017cf8` | 2021-11-10 | PR #4021: Freehand v8.001 added (from upstream commit `43c90b5`) |
+| `22560a2` | 2021-09-08 | PR #3510: Freehand v8.000 added (from upstream commit `99c5905`) |
+
+## Commit Hash Verification
+
+### PR #3510 (v8.000) -- Initial onboarding of new binary
+
+- **gftools-packager hash**: `99c5905ced30852fb8b442b38355828de11bb5dd`
+- Upstream binary at `99c5905`: 235,584 bytes
+- google/fonts binary at `22560a2`: 235,584 bytes
+- **Match**: Yes -- binary sizes are identical
+
+### PR #4021 (v8.001) -- Update
+
+- **gftools-packager hash**: `43c90b514cfa24587b118a4819d975459e1d7d6d`
+- Upstream binary at `43c90b5`: 235,560 bytes
+- google/fonts binary at `3017cf8`: 235,560 bytes
+- SHA256 of upstream binary at `43c90b5`: `033e81fa370449e9b45644510162cfe099865aa1934dee468c79075e7703d2cf`
+- SHA256 of google/fonts binary at `3017cf8`: `033e81fa370449e9b45644510162cfe099865aa1934dee468c79075e7703d2cf`
+- **Match**: Yes -- SHA256 hashes match exactly
+
+### PR #4152 (v8.002) -- Urgent glyph definition fix
+
+- This was a batch update of 14 Khmer fonts by Yanone
+- google/fonts binary at `4f5dbdb`: 235,540 bytes
+- No corresponding upstream commit exists -- `43c90b5` is the latest upstream commit
+- The fix addressed glyph definition issues where GSUB-substituted glyphs were not recognized as letters by Microsoft Edge
+- The changes were made to the Glyphs sources locally and never pushed to the upstream repo
+
+### Current State Mismatch
+
+The current binary in google/fonts (235,540 bytes, SHA256: `3f2f1155d862304cf29cc4252aa5df4d47468d127c3c12cbf16894b0dda6c833`) does NOT match the binary at the METADATA.pb commit hash `43c90b5` (235,560 bytes, SHA256: `033e81fa370449e9b45644510162cfe099865aa1934dee468c79075e7703d2cf`).
+
+The METADATA.pb commit hash `43c90b5` corresponds to the v8.001 update (PR #4021), but the current binary is from the v8.002 batch fix (PR #4152, merged 2021-12-07) which has no corresponding upstream commit. The v8.002 changes were made by Yanone locally and not pushed back to the `danhhong/Freehand` repository.
+
+## Assessment
+
+### Status: **complete** (with caveat)
+
+The source metadata is as complete as it can be:
+
+- **Repository URL**: Correct (`https://github.com/danhhong/Freehand`)
+- **Commit hash**: `43c90b5` -- this is the latest commit in the upstream repo and was the commit used for PR #4021 (v8.001). However, the current binary in google/fonts is from a later batch fix (PR #4152, v8.002) that was never pushed upstream.
+- **Config YAML**: `Source/builder.yaml` -- correct, exists in upstream at the referenced commit
+- **Branch**: `master` -- correct
+
+### Caveat: Post-onboarding binary modification
+
+The current binary in google/fonts was produced by PR #4152 (2021-12-07), a batch fix for urgent Khmer glyph definition issues by Yanone. This PR modified the binary without a corresponding upstream commit. The upstream repo's latest commit (`43c90b5`, 2021-11-01) predates PR #4152, and there is no commit in the upstream repo that matches the current google/fonts binary.
+
+This means the METADATA.pb `commit` field (`43c90b5`) is the best available reference -- it is the latest upstream commit -- but it does not correspond to the exact binary currently served. Rebuilding from `43c90b5` would produce v8.001, not the current v8.002.
+
+### Confidence: **HIGH**
+
+The commit hash `43c90b5` was explicitly referenced in PR #4021's gftools-packager message and verified via SHA256 hash comparison. The discrepancy with the current binary is well-documented through PR #4152's commit history.
+
+### Key People
+
+- **Danh Hong** (danhhong): Original designer, repository owner
+- **Yanone** (yanone): Font engineer who performed all onboarding and updates (PRs #3510, #4021, #4152)
+- **Rosalie Wagner** (RosaWagner): Merged all three PRs
--- /dev/null
+# Investigation Report: Freeman
+
+## Summary
+
+Freeman is a display sans-serif font designed by Rodrigo Fuenzalida, Aoife Mooney, and Vernon Adams, added to Google Fonts on 2024-04-11. The upstream repository at `rfuenzalida/Freeman` contains a single commit which is both HEAD and the commit referenced in METADATA.pb. The source block is fully populated with repository URL, commit hash, branch, config_yaml, archive_url, and file mappings. The upstream repo has a `sources/config.yaml` with gftools-builder configuration and `.glyphs` source files.
+
+## Key Findings
+
+| Field | Value |
+|---|---|
+| Family Name | Freeman |
+| Upstream Repo | https://github.com/rfuenzalida/Freeman |
+| Commit Hash | `5ced8a95f5b0e0c3dcea3b033398ba93a56fb687` |
+| Branch | master |
+| Config YAML | `sources/config.yaml` (in upstream repo) |
+| Source Files | `sources/Freeman.glyphs` |
+| Status | **complete** |
+| Confidence | **HIGH** |
+
+## Investigation Details
+
+### METADATA.pb Analysis
+
+The current METADATA.pb has a complete source block:
+
+```
+source {
+ repository_url: "https://github.com/rfuenzalida/Freeman"
+ commit: "5ced8a95f5b0e0c3dcea3b033398ba93a56fb687"
+ archive_url: "https://github.com/rfuenzalida/Freeman/releases/download/v1.000/Freeman-v1.000.zip"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "fonts/ttf/Freeman-Regular.ttf"
+ dest_file: "Freeman-Regular.ttf"
+ }
+ branch: "master"
+ config_yaml: "sources/config.yaml"
+}
+```
+
+### Onboarding History in google/fonts
+
+The font was onboarded in commit `88622a74c` (2024-04-11) by Viviana Monsalve with the message:
+
+> Freeman: Version 1.000; ttfautohint (v1.8.4.7-5d5b) added
+> Taken from the upstream repo https://github.com/rfuenzalida/Freeman/master at commit https://github.com/rfuenzalida/Freeman/master/commit/5ced8a95f5b0e0c3dcea3b033398ba93a56fb687.
+> Resolves #3121
+
+The `config_yaml` field was added later in commit `19cdcec59` (2025-03-31, Batch 1/4 fontc_crater targets).
+
+### Commit History in google/fonts for ofl/freeman/
+
+1. `88622a74c` (2024-04-11) - Initial onboarding: Freeman v1.000
+2. `b8c135d9f`, `211fc80fc`, `4a9de91c3` - DESCRIPTION updates
+3. `d9c21eaf7` (2024-04-11) - METADATA.pb update
+4. `6ca55c9ae` - OFL license URL update
+5. `19cdcec59` (2025-03-31) - Added `config_yaml: "sources/config.yaml"`
+
+### Upstream Repository Analysis
+
+- **URL**: https://github.com/rfuenzalida/Freeman
+- **Cached at**: `upstream_repos/fontc_crater_cache/rfuenzalida/Freeman`
+- **Default branch**: master
+- **Total commits**: 1 (single commit repo)
+- **HEAD**: `5ced8a95f5b0e0c3dcea3b033398ba93a56fb687` (2024-04-11)
+
+The entire repository was created in a single initial commit on the same day as the Google Fonts onboarding.
+
+### Commit Hash Verification
+
+The commit hash `5ced8a95f5b0e0c3dcea3b033398ba93a56fb687` is verified correct:
+
+1. It is the only commit in the repo and matches HEAD
+2. It is explicitly referenced in the google/fonts onboarding commit message
+3. The upstream commit date (2024-04-11) matches the google/fonts onboarding date (2024-04-11)
+4. The font binary at `fonts/ttf/Freeman-Regular.ttf` in the upstream repo is 241,164 bytes, matching the binary added to google/fonts
+
+### Source Files and Build Configuration
+
+The upstream repo contains:
+- `sources/Freeman.glyphs` - Glyphs source file
+- `sources/Legacy-source/` - Legacy source files (FrancoisOne.glyphs, Freeman.glyphs, Legacy-Freeman.glyphs)
+- `sources/config.yaml` - gftools-builder configuration
+
+Config.yaml contents:
+```yaml
+sources:
+ - Freeman.glyphs
+familyName: "Freeman"
+buildVariable: false
+```
+
+No local override config.yaml exists in google/fonts.
+
+## Conclusion
+
+The source block in METADATA.pb is complete and correct. All fields (repository_url, commit, archive_url, files, branch, config_yaml) are properly set. No changes are needed.
+
+### Recommended METADATA.pb Source Block
+
+No changes required. The existing source block is correct:
+
+```
+source {
+ repository_url: "https://github.com/rfuenzalida/Freeman"
+ commit: "5ced8a95f5b0e0c3dcea3b033398ba93a56fb687"
+ archive_url: "https://github.com/rfuenzalida/Freeman/releases/download/v1.000/Freeman-v1.000.zip"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "fonts/ttf/Freeman-Regular.ttf"
+ dest_file: "Freeman-Regular.ttf"
+ }
+ branch: "master"
+ config_yaml: "sources/config.yaml"
+}
+```
+
+**Status**: complete
+**Confidence**: HIGH
--- /dev/null
+# Investigation Report: Fruktur
+
+## Summary
+
+Fruktur is a display blackletter font designed by Viktoriya Grabowska with mastering by Eben Sorkin. Originally added to Google Fonts on 2013-01-16, it was significantly updated in August 2022 (PR #5026) with expanded glyph coverage, better language support, and the addition of an italic style. The upstream repository is `SorkinType/Fruktur`, and the METADATA.pb already has a complete source block referencing commit `0f8b79b` with `sources/config.yaml`.
+
+## Key Findings
+
+| Field | Value |
+|-------------------|------------------------------------------------------------|
+| Family Name | Fruktur |
+| Designer | Viktoriya Grabowska, Eben Sorkin |
+| Repository URL | https://github.com/SorkinType/Fruktur |
+| Commit Hash | 0f8b79b91438420d4c158890cb28bcb1eef407a0 |
+| Branch | main |
+| Config YAML | sources/config.yaml |
+| Status | complete |
+| Confidence | HIGH |
+
+## Investigation Details
+
+### METADATA.pb Analysis
+
+The current METADATA.pb already contains a complete source block:
+- `repository_url`: https://github.com/SorkinType/Fruktur
+- `commit`: 0f8b79b91438420d4c158890cb28bcb1eef407a0
+- `config_yaml`: sources/config.yaml
+- `branch`: main
+- File mappings for OFL.txt, Fruktur-Regular.ttf, and Fruktur-Italic.ttf
+
+This source block was added by commit `19cdcec59` ("[Batch 1/4] port info from fontc_crater targets list") which ported data from the fontc_crater targets.json file.
+
+### google/fonts Commit History
+
+Key commits:
+1. **90abd17b4** (2015-03-07): Initial commit with the original Fruktur-Regular.ttf
+2. **f355cca18**: Update to correct internal metadata
+3. **adfe2b6ef**: v1.004, fixes GSUB table, hinting
+4. **29b91e63b** (2022-08-05): Major update via PR #5026 -- Version 1.008, added Fruktur-Italic.ttf, updated Regular
+5. **66f91f10f**: Merge upstream.yaml into METADATA.pb
+6. **19cdcec59**: Batch port of fontc_crater source info into METADATA.pb
+
+### PR #5026 Analysis
+
+PR #5026 ("Fruktur: Version 1.008; ttfautohint (v1.8.4.7-5d5b) added") was authored by Emma Marichal and merged on 2022-08-05. The PR body states:
+
+> Fruktur Version 1.008; ttfautohint (v1.8.4.7-5d5b) taken from the upstream repo https://github.com/SorkinType/Fruktur at commit https://github.com/SorkinType/Fruktur/commit/a2277f91aebc0e5e70062bdd7f17f15d2a787cd2.
+
+The referenced commit `a2277f91` no longer exists in the upstream repository. The repository was subsequently recreated using the googlefonts template, resulting in a single squashed commit (`0f8b79b`, dated 2024-04-16, by Simon Cozens, message: "Update requirements").
+
+### Upstream Repository Verification
+
+The repository `SorkinType/Fruktur` is cached at `upstream_repos/fontc_crater_cache/SorkinType/Fruktur/`. It has a single commit (`0f8b79b`) on the `main` branch.
+
+**Source files at commit `0f8b79b`**:
+- `sources/Fruktur.glyphs` (Glyphs format, Roman)
+- `sources/FrukturItalic.glyphs` (Glyphs format, Italic)
+- `sources/config.yaml` (gftools-builder configuration)
+
+**config.yaml content**:
+```yaml
+sources:
+ - Fruktur.glyphs
+axisOrder:
+ - wght
+familyName: Fruktur
+```
+
+Note: The config.yaml only references `Fruktur.glyphs` (the Roman). The italic source `FrukturItalic.glyphs` is not listed. The Makefile in the repo iterates over all `config*.yaml` files, suggesting the italic may have been built with a separate config or the config may be incomplete. However, both font binaries at this commit exactly match those in google/fonts:
+
+- `Fruktur-Regular.ttf`: 211,180 bytes (matches google/fonts)
+- `Fruktur-Italic.ttf`: 210,784 bytes (matches google/fonts)
+
+### Commit Hash Assessment
+
+The current METADATA.pb references `0f8b79b`, which is the only commit in the repository (a squashed recreation from April 2024). The original onboarding commit `a2277f91` from PR #5026 no longer exists. Since the repo has only one commit and the font binaries at that commit match google/fonts exactly, the reference to `0f8b79b` is correct and the only valid option.
+
+### Historical Note
+
+The FONTLOG references `https://github.com/EbenSorkin/Fruktur` as the original repository. This URL now redirects to `https://github.com/SorkinType/-Fruktur` (with a dash prefix), a separate repository from `SorkinType/Fruktur`. The active upstream for the updated font (with italic) is `SorkinType/Fruktur`.
+
+## Conclusion
+
+The Fruktur source block in METADATA.pb is complete and correct. The repository URL, commit hash, config_yaml, and file mappings are all valid. The font binaries at the referenced commit match those in google/fonts. No changes are needed.
+
+### Current METADATA.pb Source Block (Verified Correct)
+
+```
+source {
+ repository_url: "https://github.com/SorkinType/Fruktur"
+ commit: "0f8b79b91438420d4c158890cb28bcb1eef407a0"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "fonts/ttf/Fruktur-Regular.ttf"
+ dest_file: "Fruktur-Regular.ttf"
+ }
+ files {
+ source_file: "fonts/ttf/Fruktur-Italic.ttf"
+ dest_file: "Fruktur-Italic.ttf"
+ }
+ branch: "main"
+ config_yaml: "sources/config.yaml"
+}
+```
--- /dev/null
+# Investigation Report: Fuggles
+
+## Summary
+
+Fuggles is a handwriting/display typeface designed by Robert Leuschke, added to Google Fonts on 2021-04-29. The upstream repository is at `https://github.com/googlefonts/fuggles`. The METADATA.pb already has a complete source block with repository URL, commit hash, and config_yaml. All fields verified as correct.
+
+## Key Findings
+
+| Field | Value |
+|-------------------|-------|
+| Family Name | Fuggles |
+| Designer | Robert Leuschke |
+| Repository URL | https://github.com/googlefonts/fuggles |
+| Commit Hash | cc9766c14a1aabedb7ef7dbf3e9aa0e325542c5a |
+| Config YAML | sources/config.yml |
+| Status | **complete** |
+| Confidence | HIGH |
+
+## Investigation Details
+
+### Google Fonts History
+
+The font was onboarded in commit `b5ca2d5f2` (2021-04-30) by Viviana Monsalve via PR #3354. The commit message references:
+- Upstream repo: https://github.com/googlefonts/fuggles
+- Original commit: `4c5e05f83e50f5eba878b69d85022283612fdb18`
+- Built using gftools-packager
+
+The source block was progressively built up:
+1. Commit `f7455d788` (2023-08-15, Simon Cozens) - Added `repository_url`
+2. Commit `66f91f10f` (2024-04-03, Simon Cozens) - Merged upstream.yaml into METADATA.pb, adding file mappings and branch
+3. Commit `19cdcec59` (2025-03-31) - Added commit hash and config_yaml from fontc_crater targets list
+
+### Upstream Repository
+
+- **URL**: https://github.com/googlefonts/fuggles
+- **Cached at**: `upstream_repos/fontc_crater_cache/googlefonts/fuggles`
+- **Branch**: master
+- **Single commit**: `cc9766c` (2021-11-16) - "Update README.md" by Dave Crossland
+
+The repo has only one commit, meaning it was squashed or force-pushed at some point. The original onboarding commit `4c5e05f` referenced in the google/fonts commit message no longer exists. The current and only commit is `cc9766c`, which is the one recorded in METADATA.pb.
+
+### Source Files
+
+- `sources/Fuggles.glyphs` - Glyphs source file (7.2 MB)
+- `sources/config.yml` - gftools-builder configuration
+
+### Config YAML Verification
+
+The config at `sources/config.yml` contains:
+```yaml
+sources:
+ - Fuggles.glyphs
+familyName: "Fuggles"
+buildVariable: false
+```
+
+This is a valid gftools-builder configuration. Note the `.yml` extension (not `.yaml`).
+
+### Commit Hash Analysis
+
+The original onboarding referenced commit `4c5e05f` which no longer exists in the repo. The repo was likely squashed/recreated by Dave Crossland on 2021-11-16 (after onboarding on 2021-04-30). The current commit `cc9766c` is the only commit available and is the correct reference for the current state of the repository.
+
+## Conclusion
+
+The METADATA.pb source block is complete and correct. All fields are verified:
+- Repository URL is valid and cached
+- Commit hash `cc9766c` is the only commit in the repo (original was force-pushed away)
+- Config YAML path `sources/config.yml` is correct (note `.yml` extension)
+- Branch is correctly set to `master`
+
+### Current METADATA.pb source block (verified correct)
+
+```
+source {
+ repository_url: "https://github.com/googlefonts/fuggles"
+ commit: "cc9766c14a1aabedb7ef7dbf3e9aa0e325542c5a"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "DESCRIPTION.en_us.html"
+ dest_file: "DESCRIPTION.en_us.html"
+ }
+ files {
+ source_file: "fonts/ttf/Fuggles-Regular.ttf"
+ dest_file: "Fuggles-Regular.ttf"
+ }
+ branch: "master"
+ config_yaml: "sources/config.yml"
+}
+```
--- /dev/null
+# Investigation Report: Funnel Sans
+
+## Summary
+
+Funnel Sans is a variable sans-serif typeface designed by NORD ID and Kristian Moller, added to Google Fonts on 2024-09-27. The upstream repository is at `https://github.com/Dicotype/Funnel`, which is a monorepo containing both Funnel Sans and Funnel Display families. The METADATA.pb source block is complete and correct - the `config_yaml` correctly points to `sources/config.yaml` which is the Funnel Sans config.
+
+## Key Findings
+
+| Field | Value |
+|-------------------|-------|
+| Family Name | Funnel Sans |
+| Designer | NORD ID, Kristian Moller |
+| Repository URL | https://github.com/Dicotype/Funnel |
+| Commit Hash | f9509ce0df3c344ddc454600baf77df54b83c379 |
+| Config YAML | sources/config.yaml |
+| Status | **complete** |
+| Confidence | HIGH |
+
+## Investigation Details
+
+### Google Fonts History
+
+The font was onboarded in commit `a0fd7975f` (2024-09-27) by Emma Marichal. The commit message explicitly references:
+- Upstream repo: https://github.com/Dicotype/Funnel
+- Commit: `f9509ce0df3c344ddc454600baf77df54b83c379`
+
+The source block was enhanced in commit `19cdcec59` (2025-03-31, "Batch 1/4 port info from fontc_crater targets list") which added `config_yaml: "sources/config.yaml"`.
+
+### Upstream Repository
+
+- **URL**: https://github.com/Dicotype/Funnel
+- **Cached at**: `upstream_repos/fontc_crater_cache/Dicotype/Funnel`
+- **Branch**: main
+- **HEAD commit**: `f9509ce` (2024-09-27) - "Merge pull request #3 from emmamarichal/main"
+
+This is a monorepo containing both Funnel Sans and Funnel Display. The commit `f9509ce` is a merge commit by Emma Marichal, timestamped the same day as the google/fonts onboarding.
+
+### Source Files
+
+In the `sources/` directory at commit `f9509ce`:
+- `FunnelSans.glyphs` - Funnel Sans source (523 KB)
+- `FunnelSans-Italic.glyphs` - Funnel Sans Italic source (642 KB)
+- `FunnelDisplay.glyphs` - Funnel Display source (524 KB)
+- `config.yaml` - Config for **Funnel Sans** (familyName: "Funnel Sans")
+- `config_display.yaml` - Config for **Funnel Display** (familyName: "Funnel Display")
+- `build.sh` - Build script that runs both configs
+
+### Config YAML Verification
+
+The config at `sources/config.yaml` correctly configures Funnel Sans:
+```yaml
+sources:
+ - FunnelSans.glyphs
+ - FunnelSans-Italic.glyphs
+familyName: "Funnel Sans"
+axisOrder:
+ - wght
+ - ital
+```
+
+This is confirmed correct for the Funnel Sans family (unlike Funnel Display, which needs `config_display.yaml`).
+
+### Commit Hash Verification
+
+The commit `f9509ce` in the upstream repo is dated 2024-09-27, same day as the google/fonts onboarding commit `a0fd7975f`. The onboarding commit explicitly references this hash. This is confirmed correct.
+
+### Font Files
+
+The font ships as two variable font files:
+- `FunnelSans[wght].ttf` - Roman (weight axis: 300-800)
+- `FunnelSans-Italic[wght].ttf` - Italic (weight axis: 300-800)
+
+## Conclusion
+
+The METADATA.pb source block is complete and correct. All fields are verified:
+- Repository URL is valid and cached
+- Commit hash `f9509ce` matches the onboarding commit
+- Config YAML path `sources/config.yaml` correctly points to the Funnel Sans config
+- Branch is correctly set to `main`
+
+### Current METADATA.pb source block (verified correct)
+
+```
+source {
+ repository_url: "https://github.com/Dicotype/Funnel"
+ commit: "f9509ce0df3c344ddc454600baf77df54b83c379"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "fonts/Funnel_Sans/variable/FunnelSans[wght].ttf"
+ dest_file: "FunnelSans[wght].ttf"
+ }
+ files {
+ source_file: "fonts/Funnel_Sans/variable/FunnelSans-Italic[wght].ttf"
+ dest_file: "FunnelSans-Italic[wght].ttf"
+ }
+ branch: "main"
+ config_yaml: "sources/config.yaml"
+}
+```
--- /dev/null
+# Investigation Report: Fustat
+
+## Summary
+
+Fustat is a variable-weight Arabic/Latin sans-serif family designed by Mohamed Gaber, Laura Garcia Mut, and engineered by Khaled Hosny. It was first onboarded to Google Fonts on 2024-06-05 (v1.007) and updated to v1.010 on 2025-05-08. The upstream repository is at `https://github.com/Kief-Type-Foundry/Fustat` and the METADATA.pb already has a complete and correct source block with repository URL, commit hash, config_yaml path, archive_url, and file mappings.
+
+## Key Findings
+
+| Field | Value |
+|-------------------|-------|
+| Family Name | Fustat |
+| Repository URL | https://github.com/Kief-Type-Foundry/Fustat |
+| Commit Hash | `642499b606f79bc6c25e63a4f8335a40afd96a13` |
+| Config YAML | `sources/config.yaml` (in upstream repo) |
+| Source Files | `sources/Fustat.glyphspackage` |
+| Status | **complete** |
+| Confidence | **HIGH** |
+
+## Investigation Details
+
+### METADATA.pb Analysis
+
+The current METADATA.pb already contains a comprehensive source block:
+- `repository_url`: `https://github.com/Kief-Type-Foundry/Fustat`
+- `commit`: `642499b606f79bc6c25e63a4f8335a40afd96a13`
+- `archive_url`: Release download URL for v1.010
+- `config_yaml`: `sources/config.yaml`
+- `branch`: `main`
+- File mappings for OFL.txt, DESCRIPTION.en_us.html, and the variable font binary
+
+### Git History in google/fonts
+
+- `82351ff2e` (2024-06-05): Initial onboarding as v1.007, taken from upstream commit `3b33a70591...` by Yanone.
+- `6bfb6e6b5` (2025-05-08): Updated to v1.010, taken from upstream commit `642499b606...` by Yanone. Resolves issue #8302.
+- `19cdcec59` (2025-03-31): Batch port of fontc_crater target info added source block details.
+
+### Upstream Repository Verification
+
+The upstream repo is cached at `upstream_repos/fontc_crater_cache/Kief-Type-Foundry/Fustat/`. Findings:
+- Remote URL confirmed: `https://github.com/Kief-Type-Foundry/Fustat`
+- Commit `642499b` ("Fustat 1.010", 2025-05-08) is the HEAD commit and matches the METADATA.pb reference.
+- The commit was authored by Khaled Hosny and modifies `sources/Fustat.glyphspackage/fontinfo.plist` plus documentation images.
+- `sources/config.yaml` exists at this commit and contains:
+ ```yaml
+ familyName: Fustat
+ sources:
+ - Fustat.glyphspackage
+ buildStatic: false
+ ```
+- Source file `sources/Fustat.glyphspackage` is present (Glyphs package format, gftools-buildable).
+
+### Commit Hash Verification
+
+The commit message in google/fonts explicitly references `642499b606f79bc6c25e63a4f8335a40afd96a13`. The upstream commit is dated 2025-05-08, same day as the google/fonts commit. The commit is the HEAD of the upstream repo. This is consistent and verified.
+
+## Conclusion
+
+The METADATA.pb source block for Fustat is already complete and correct. No changes are needed.
+
+### Recommended METADATA.pb Source Block
+
+```
+source {
+ repository_url: "https://github.com/Kief-Type-Foundry/Fustat"
+ commit: "642499b606f79bc6c25e63a4f8335a40afd96a13"
+ archive_url: "https://github.com/Kief-Type-Foundry/Fustat/releases/download/v1.010/Fustat-v1.010.zip"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "DESCRIPTION.en_us.html"
+ dest_file: "DESCRIPTION.en_us.html"
+ }
+ files {
+ source_file: "fonts/variable/Fustat[wght].ttf"
+ dest_file: "Fustat[wght].ttf"
+ }
+ branch: "main"
+ config_yaml: "sources/config.yaml"
+}
+```
+
+**Status**: complete
+**Confidence**: HIGH
--- /dev/null
+# Investigation Report: Fuzzy Bubbles
+
+## Summary
+
+Fuzzy Bubbles is a handwriting-style display family designed by Robert Leuschke. It was onboarded to Google Fonts on 2021-11-03 (v1.010) via gftools-packager. The upstream repository is at `https://github.com/googlefonts/fuzzy-bubbles` and the METADATA.pb already has a complete source block with repository URL, commit hash, config_yaml path, and file mappings.
+
+## Key Findings
+
+| Field | Value |
+|-------------------|-------|
+| Family Name | Fuzzy Bubbles |
+| Repository URL | https://github.com/googlefonts/fuzzy-bubbles |
+| Commit Hash | `16d63fbca17f057559d0187fa7c07dd302d2276d` |
+| Config YAML | `sources/config.yml` (in upstream repo) |
+| Source Files | `sources/FuzzyBubbles.glyphs` |
+| Status | **complete** |
+| Confidence | **HIGH** |
+
+## Investigation Details
+
+### METADATA.pb Analysis
+
+The current METADATA.pb contains a complete source block:
+- `repository_url`: `https://github.com/googlefonts/fuzzy-bubbles`
+- `commit`: `16d63fbca17f057559d0187fa7c07dd302d2276d`
+- `config_yaml`: `sources/config.yml`
+- `branch`: `master`
+- File mappings for OFL.txt, DESCRIPTION.en_us.html, and both TTF binaries (Regular, Bold)
+
+### Git History in google/fonts
+
+- `19311a025` (2021-11-03): Initial onboarding as v1.010 by Viviana Monsalve via gftools-packager (PR #4001). Commit message explicitly states: "taken from the upstream repo https://github.com/googlefonts/fuzzy-bubbles at commit https://github.com/googlefonts/fuzzy-bubbles/commit/16d63fbca17f057559d0187fa7c07dd302d2276d".
+- `19cdcec59` (2025-03-31): Batch port from fontc_crater targets list added source block details.
+- No subsequent font file updates since onboarding.
+
+### Upstream Repository Verification
+
+The upstream repo is cached at `upstream_repos/fontc_crater_cache/googlefonts/fuzzy-bubbles/`. Findings:
+- Remote URL confirmed: `https://github.com/googlefonts/fuzzy-bubbles`
+- The repo has only a single commit: `16d63fb` ("new v1.10 fonts added", 2021-11-02), which is both the HEAD and the only commit.
+- This matches the METADATA.pb reference exactly.
+- At commit `16d63fb`, the sources directory contains:
+ - `sources/FuzzyBubbles.glyphs` (Glyphs format, gftools-buildable)
+ - `sources/config.yml` with contents:
+ ```yaml
+ sources:
+ - FuzzyBubbles.glyphs
+ familyName: "Fuzzy Bubbles"
+ buildVariable: false
+ #autohintTTF: false
+ ```
+
+### Commit Hash Verification
+
+The commit hash in METADATA.pb (`16d63fbca17f057559d0187fa7c07dd302d2276d`) matches the only commit in the upstream repo. The upstream commit is dated 2021-11-02, one day before the google/fonts onboarding commit (2021-11-03). The gftools-packager message in the commit body explicitly references this same commit. This is fully verified.
+
+### Note on config file extension
+
+The config file uses `.yml` extension rather than the more common `.yaml`. The METADATA.pb correctly references it as `sources/config.yml`.
+
+## Conclusion
+
+The METADATA.pb source block for Fuzzy Bubbles is already complete and correct. No changes are needed.
+
+### Recommended METADATA.pb Source Block
+
+```
+source {
+ repository_url: "https://github.com/googlefonts/fuzzy-bubbles"
+ commit: "16d63fbca17f057559d0187fa7c07dd302d2276d"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "DESCRIPTION.en_us.html"
+ dest_file: "DESCRIPTION.en_us.html"
+ }
+ files {
+ source_file: "fonts/ttf/FuzzyBubbles-Regular.ttf"
+ dest_file: "FuzzyBubbles-Regular.ttf"
+ }
+ files {
+ source_file: "fonts/ttf/FuzzyBubbles-Bold.ttf"
+ dest_file: "FuzzyBubbles-Bold.ttf"
+ }
+ branch: "master"
+ config_yaml: "sources/config.yml"
+}
+```
+
+**Status**: complete
+**Confidence**: HIGH
--- /dev/null
+# Investigation Report: Gabarito
+
+## Summary
+
+Gabarito is a display sans-serif variable font (weight 400-900) designed by Naipe Foundry (Leandro Assis, Alvaro Franca, Felipe Casaprima), added to Google Fonts on 2023-09-13. The upstream repository at `naipefoundry/gabarito` contains a single commit (a merge of Emma Marichal's onboarding PR) which is both HEAD and the commit referenced in METADATA.pb. The source block is fully populated. The upstream repo has a `sources/config.yaml` with gftools-builder configuration and a `.glyphs` source file.
+
+## Key Findings
+
+| Field | Value |
+|---|---|
+| Family Name | Gabarito |
+| Upstream Repo | https://github.com/naipefoundry/gabarito |
+| Commit Hash | `1f3fb39d6449eefa880543f109f33ede0cd4064f` |
+| Branch | main |
+| Config YAML | `sources/config.yaml` (in upstream repo) |
+| Source Files | `sources/Gabarito.glyphs` |
+| Status | **complete** |
+| Confidence | **HIGH** |
+
+## Investigation Details
+
+### METADATA.pb Analysis
+
+The current METADATA.pb has a complete source block:
+
+```
+source {
+ repository_url: "https://github.com/naipefoundry/gabarito"
+ commit: "1f3fb39d6449eefa880543f109f33ede0cd4064f"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "fonts/variable/Gabarito[wght].ttf"
+ dest_file: "Gabarito[wght].ttf"
+ }
+ branch: "main"
+ config_yaml: "sources/config.yaml"
+}
+```
+
+### Onboarding History in google/fonts
+
+The font was onboarded via gftools-packager in commit `cd21f74a2` (2023-09-13) by Emma Marichal:
+
+> [gftools-packager] Gabarito: Version 1.000 added
+> Gabarito Version 1.000 taken from the upstream repo https://github.com/naipefoundry/gabarito at commit https://github.com/naipefoundry/gabarito/commit/1f3fb39d6449eefa880543f109f33ede0cd4064f.
+
+The `config_yaml` field was added later in commit `19cdcec59` (2025-03-31, Batch 1/4 fontc_crater targets).
+
+### Commit History in google/fonts for ofl/gabarito/
+
+1. `cd21f74a2` (2023-09-13) - Initial onboarding: Gabarito v1.000 (gftools-packager)
+2. `121351c2e` - Description and metadata updates
+3. `ddc6948ed` - Designer order updated
+4. `98dc03f72` - Added Naipe Foundry in designers list
+5. `66f91f10f` - Merge upstream.yaml into METADATA.pb
+6. `b2ecfc3f0` - Add gabarito article
+7. `19cdcec59` (2025-03-31) - Added `config_yaml: "sources/config.yaml"`
+
+### Upstream Repository Analysis
+
+- **URL**: https://github.com/naipefoundry/gabarito
+- **Cached at**: `upstream_repos/fontc_crater_cache/naipefoundry/gabarito`
+- **Default branch**: main
+- **Total commits**: 1 (single merge commit)
+- **HEAD**: `1f3fb39d6449eefa880543f109f33ede0cd4064f` (2023-09-11)
+
+The repository contains a single merge commit: "Merge pull request #1 from emmamarichal/main". This is the standard gftools-packager pattern where Emma Marichal prepared the upstream repo structure in a PR.
+
+### Commit Hash Verification
+
+The commit hash `1f3fb39d6449eefa880543f109f33ede0cd4064f` is verified correct:
+
+1. It is the only commit in the repo and matches HEAD
+2. It is explicitly referenced in the gftools-packager commit message in google/fonts
+3. The upstream merge commit date (2023-09-11) is 2 days before the google/fonts onboarding (2023-09-13), which is a typical turnaround time
+4. The font binary `fonts/variable/Gabarito[wght].ttf` in the upstream repo is 158,144 bytes
+
+### Source Files and Build Configuration
+
+The upstream repo contains:
+- `sources/Gabarito.glyphs` - Glyphs source file
+- `sources/CustomFilter_GFLatinCore.plist` - Custom filter for glyph set
+- `sources/config.yaml` - gftools-builder configuration
+
+Config.yaml contents:
+```yaml
+sources:
+ - Gabarito.glyphs
+axisOrder:
+ - wght
+familyName: Gabarito
+stat:
+ Gabarito[wght].ttf:
+ - name: Weight
+ tag: wght
+ values:
+ - name: Regular
+ value: 400
+ linkedValue: 700
+ flags: 2
+ - name: Medium
+ value: 500
+ - name: SemiBold
+ value: 600
+ - name: Bold
+ value: 700
+ - name: ExtraBold
+ value: 800
+ - name: Black
+ value: 900
+buildOTF: false
+autohintTTF: false
+```
+
+No local override config.yaml exists in google/fonts.
+
+## Conclusion
+
+The source block in METADATA.pb is complete and correct. All fields (repository_url, commit, files, branch, config_yaml) are properly set. No changes are needed.
+
+### Recommended METADATA.pb Source Block
+
+No changes required. The existing source block is correct:
+
+```
+source {
+ repository_url: "https://github.com/naipefoundry/gabarito"
+ commit: "1f3fb39d6449eefa880543f109f33ede0cd4064f"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "fonts/variable/Gabarito[wght].ttf"
+ dest_file: "Gabarito[wght].ttf"
+ }
+ branch: "main"
+ config_yaml: "sources/config.yaml"
+}
+```
+
+**Status**: complete
+**Confidence**: HIGH
--- /dev/null
+# Investigation Report: Gabriela
+
+## Summary
+
+Gabriela is a serif display font designed by Eduardo Tunni, originally added to Google Fonts in 2013. It was updated to version 2.001 on 2023-03-15 by Emma Marichal using gftools-packager, at which point the source block was added to METADATA.pb. The upstream repository at `etunni/Gabriela` contains a single commit (a merge of Emma Marichal's preparation PR) which is both HEAD and the referenced commit. The source block is fully populated with repository URL, commit hash, branch, and config_yaml. The upstream repo has gftools-builder compatible `.glyphs` source files and a `sources/config.yaml`.
+
+## Key Findings
+
+| Field | Value |
+|---|---|
+| Family Name | Gabriela |
+| Upstream Repo | https://github.com/etunni/Gabriela |
+| Commit Hash | `961e4fb89c38cbe8ddcc3c9268c42d94c834d5da` |
+| Branch | master |
+| Config YAML | `sources/config.yaml` (in upstream repo) |
+| Source Files | `sources/Gabriela.glyphs` |
+| Status | **complete** |
+| Confidence | **HIGH** |
+
+## Investigation Details
+
+### METADATA.pb Analysis
+
+The current METADATA.pb has a complete source block:
+
+```
+source {
+ repository_url: "https://github.com/etunni/Gabriela"
+ commit: "961e4fb89c38cbe8ddcc3c9268c42d94c834d5da"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "fonts/ttf/Gabriela-Regular.ttf"
+ dest_file: "Gabriela-Regular.ttf"
+ }
+ branch: "master"
+ config_yaml: "sources/config.yaml"
+}
+```
+
+### Onboarding and Update History in google/fonts
+
+Gabriela has a longer history than the other two families in this batch:
+
+1. **Original onboarding** (`90abd17b4`, early 2013) - Part of the initial Google Fonts commit
+2. **v2.000 update** (`45b40149f`, 2017-01-17) by Marc Foley - "gabriela: v2.000 added (#551)"
+3. **v2.001 update with source block** (`9a83790ee`, 2023-03-15) by Emma Marichal via gftools-packager:
+
+> Gabriela: Version 2.001;gftools[0.9.26] added (#5995)
+> [gftools-packager] Gabriela: Version 2.001;gftools[0.9.26] added
+> Gabriela Version 2.001;gftools[0.9.26] taken from the upstream repo https://github.com/etunni/Gabriela at commit https://github.com/etunni/Gabriela/commit/961e4fb89c38cbe8ddcc3c9268c42d94c834d5da.
+
+The `config_yaml` field was added later in commit `19cdcec59` (2025-03-31, Batch 1/4 fontc_crater targets).
+
+### Commit History in google/fonts for ofl/gabriela/
+
+1. `90abd17b4` - Initial commit (2013)
+2. Various metadata/copyright updates
+3. `45b40149f` (2017-01-17) - gabriela v2.000 added (#551)
+4. Language support metadata updates
+5. `9a83790ee` (2023-03-15) - v2.001 update with source block added (PR #5995)
+6. `1db714082` - Stroke and classification metadata update
+7. `113af68ff` - DESCRIPTION update
+8. `66f91f10f` - Merge upstream.yaml into METADATA.pb
+9. `19cdcec59` (2025-03-31) - Added `config_yaml: "sources/config.yaml"`
+
+### Upstream Repository Analysis
+
+- **URL**: https://github.com/etunni/Gabriela
+- **Cached at**: `upstream_repos/fontc_crater_cache/etunni/Gabriela`
+- **Default branch**: master
+- **Total commits**: 1 (single merge commit)
+- **HEAD**: `961e4fb89c38cbe8ddcc3c9268c42d94c834d5da` (2023-03-09)
+
+The repository contains a single merge commit: "Merge pull request #6 from emmamarichal/master". This is the standard pattern where Emma Marichal prepared the upstream repo with gftools-compatible structure.
+
+### Commit Hash Verification
+
+The commit hash `961e4fb89c38cbe8ddcc3c9268c42d94c834d5da` is verified correct:
+
+1. It is the only commit in the repo and matches HEAD
+2. It is explicitly referenced in the gftools-packager commit message in google/fonts (PR #5995)
+3. The upstream merge commit date (2023-03-09) is 6 days before the google/fonts merge (2023-03-15), a typical review turnaround
+4. The font binary `fonts/ttf/Gabriela-Regular.ttf` in the upstream repo is 70,984 bytes, matching the binary size shown in the google/fonts commit diff
+
+### Source Files and Build Configuration
+
+The upstream repo contains:
+- `sources/Gabriela.glyphs` - Glyphs source file
+- `sources/config.yaml` - gftools-builder configuration
+- `old/version 1.002/sources/Gabriela-Regular-Cyr.vfb` - Legacy VFB source
+
+Config.yaml contents:
+```yaml
+sources:
+ - Gabriela.glyphs
+familyName: Gabriela
+buildVariable: false
+autohintTTF: false
+```
+
+No local override config.yaml exists in google/fonts.
+
+### Font Details
+
+- **Subsets**: cyrillic, cyrillic-ext, latin, latin-ext, menu
+- **Style**: Regular only (weight 400)
+- **Classifications**: Serif, Display
+- The March 2023 update (v2.001) added a bigger glyph set, fractions, and minor aesthetic modifications
+
+## Conclusion
+
+The source block in METADATA.pb is complete and correct. All fields (repository_url, commit, files, branch, config_yaml) are properly set. No changes are needed.
+
+### Recommended METADATA.pb Source Block
+
+No changes required. The existing source block is correct:
+
+```
+source {
+ repository_url: "https://github.com/etunni/Gabriela"
+ commit: "961e4fb89c38cbe8ddcc3c9268c42d94c834d5da"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "fonts/ttf/Gabriela-Regular.ttf"
+ dest_file: "Gabriela-Regular.ttf"
+ }
+ branch: "master"
+ config_yaml: "sources/config.yaml"
+}
+```
+
+**Status**: complete
+**Confidence**: HIGH
--- /dev/null
+# Investigation Report: Gaegu
+
+## Summary
+
+Gaegu is a Korean handwriting-style font family designed by JIKJI SOFT, added to Google Fonts on 2018-02-28 via PR #1459. The font was part of a batch of Korean font families onboarded by Marc Foley, with binaries mastered by Aaron Bell. No public upstream source repository has been found. The designer's GitHub account (jikjisoft) has one repository (jikjisoft/jikjifont) which is completely empty. The font was onboarded from pre-compiled binaries without any known public source.
+
+## Key Findings
+
+| Field | Value |
+|--------------------|------------------------------------------------------------|
+| Family Name | Gaegu |
+| Designer | JIKJI SOFT |
+| License | OFL |
+| Date Added | 2018-02-28 |
+| Repository URL | None found |
+| Commit Hash | N/A |
+| Config YAML | N/A |
+| Source Type | Pre-compiled TTF binaries (no public sources) |
+| Status | no_upstream_repo |
+| Confidence | HIGH |
+
+## Investigation Details
+
+### Onboarding History
+
+Gaegu was added to google/fonts in commit `16680f868` (2018-03-13) as part of PR #1459 titled "korean families r01: added", authored by Marc Foley. This PR onboarded 23 Korean font families in a single commit:
+
+- Black And White Picture, Black Han Sans, Cute Font, Do Hyeon, Dokdo, East Sea Dokdo, **Gaegu**, Gamja Flower, Gothica 1, Gugi, Hi Melody, Jua, Kirang Haerang, Nanum Brush Script, Nanum Gothic, Nanum Myeongjo, Nanum Pen Script, Poor Story, Single Day, Song Myung, Stylish, Sunflower, Yeon Sung
+
+The PR body states: "Korean Font binaries have been mastered by Aaron Bell, https://www.sajatypeworks.com"
+
+### PR Discussion (PR #1459)
+
+Key points from the PR discussion:
+- Marc Foley noted that Gaegu (originally "Gaeugu") didn't have a Regular weight, only a Medium weight
+- Dave Crossland approved renaming the Medium weight to Regular
+- Aaron Bell confirmed there would be no issues with the switch
+- Marc Foley pushed an update on 2018-02-28 renaming the font weights
+- The fonts were tested on Win7 IE9 through OSX Safari via diffbrowsers
+
+### Search for Upstream Repository
+
+1. **jikjisoft/jikjifont**: The designer's GitHub account (jikjisoft) has one repository at `https://github.com/jikjisoft/jikjifont`. This repository is completely empty (created 2017-11-09, never received any commits). The account was created before the font was onboarded but the repo was never populated.
+
+2. **GitHub search**: No repositories matching "gaegu font" were found under the googlefonts, jikjisoft, or aaronbell organizations.
+
+3. **Web search**: No upstream source repository was found. The font is widely distributed by third-party font sites but none reference a source repository.
+
+4. **Cached repos**: No Gaegu repository exists in the fontc_crater_cache.
+
+### Font Binary Analysis
+
+The font files in google/fonts have not changed since the original onboarding:
+- `Gaegu-Light.ttf`
+- `Gaegu-Regular.ttf`
+- `Gaegu-Bold.ttf`
+
+The copyright string is "Copyright 2018 The Gaegu Project Authors" with no repository URL referenced.
+
+### Source File Assessment
+
+No public source files (.glyphs, .ufo, .designspace, .sfd, .vfb) have been found for this font family. The binaries appear to have been prepared by Aaron Bell from sources not available publicly.
+
+## Conclusion
+
+Gaegu has no known public upstream repository. The designer (JIKJI SOFT) created a GitHub account and empty repository but never published sources. The fonts were onboarded as pre-compiled binaries mastered by Aaron Bell. No source block can be added to METADATA.pb.
+
+### Recommended METADATA.pb Source Block
+
+No source block can be added. The status remains `no_upstream_repo`.
+
+### Pending Questions
+
+- **Aaron Bell / Marc Foley**: Were original source files (before mastering) received from JIKJI SOFT? Are they available anywhere? Could they be published to jikjisoft/jikjifont or a googlefonts repository?
--- /dev/null
+# Investigation Report: Gajraj One
+
+## Summary
+
+Gajraj One is a Devanagari and Latin display font designed by Saurabh Sharma, added to Google Fonts on 2023-01-23 via gftools-packager. The upstream repository is `https://github.com/xconsau/GajrajOne`, which contains a single commit with UFO sources and a valid `config.yaml`. The METADATA.pb source block is complete and verified: the commit hash `5768aa3d4522b402ead302e5bb8697e965da694f` correctly identifies the onboarding commit, and the binary font in google/fonts is identical to the one in the upstream repository.
+
+## Key Findings
+
+| Field | Value |
+|--------------------|------------------------------------------------------------|
+| Family Name | Gajraj One |
+| Designer | Saurabh Sharma |
+| License | OFL |
+| Date Added | 2023-01-23 |
+| Repository URL | https://github.com/xconsau/GajrajOne |
+| Commit Hash | 5768aa3d4522b402ead302e5bb8697e965da694f |
+| Config YAML | sources/config.yaml |
+| Source Type | UFO |
+| Status | complete |
+| Confidence | HIGH |
+
+## Investigation Details
+
+### Onboarding History
+
+Gajraj One was added to google/fonts in commit `e4ae4df6f` (2023-01-23) by Yanone (post@yanone.de) via gftools-packager. The commit message reads:
+
+> [gftools-packager] Gajraj One: Version 1.000 added
+> Gajraj One Version 1.000 taken from the upstream repo https://github.com/xconsau/GajrajOne at commit https://github.com/xconsau/GajrajOne/commit/5768aa3d4522b402ead302e5bb8697e965da694f.
+
+The original onboarding commit created the METADATA.pb with a source block containing the repository URL and commit hash. Later commits enriched the metadata:
+- `66f91f10f` (2024-04-03) by Simon Cozens: Merged upstream.yaml into METADATA.pb, adding file mappings and branch information
+- `19cdcec59` (2025-03-31) by Felipe Sanches: Added `config_yaml: "sources/config.yaml"` from fontc_crater targets list
+- `ea42b7c32`: Added stroke/classification metadata
+- `292f049d5`: Added primary_script for Devanagari
+
+### Upstream Repository
+
+The upstream repository at `https://github.com/xconsau/GajrajOne` is accessible and verified. It is cached locally at `fontc_crater_cache/xconsau/GajrajOne/`.
+
+The repository contains a single commit:
+- `5768aa3` (2023-01-19) by Saurabh Sharma: "Add files via upload"
+
+This single commit added the entire project, based on the Google Fonts project template.
+
+### Repository Contents
+
+```
+sources/
+ config.yaml
+ GajrajOne-Regular.ufo/
+ features_backup/
+fonts/
+ ttf/GajrajOne-Regular.ttf
+ otf/GajrajOne-Regular.otf
+ webfonts/GajrajOne-Regular.woff2
+documentation/
+ gajraj-specimen.jpg
+scripts/
+.github/workflows/build.yaml
+AUTHORS.txt
+CONTRIBUTORS.txt
+DESCRIPTION.en_us.html
+Makefile
+OFL.txt
+README.md
+requirements.txt
+```
+
+### Config.yaml
+
+The `sources/config.yaml` file exists in the upstream repository with the following content:
+
+```yaml
+sources:
+ - GajrajOne-Regular.ufo
+
+familyName: Gajraj One
+
+autohintTTF: false
+```
+
+This is a valid gftools-builder configuration referencing the UFO source relative to the `sources/` directory.
+
+### Binary Verification
+
+The font binary in google/fonts (`GajrajOne-Regular.ttf`, 149,784 bytes) was compared with the binary from the upstream repository at commit `5768aa3`:
+- **MD5 match**: Both files have the same hash (`3e9aeacf42fc435dc9350670b7e51591`)
+- **Size match**: Both files are 149,784 bytes
+
+This confirms that the binary in google/fonts was taken directly from the upstream repository's pre-built `fonts/ttf/` directory at the referenced commit, without recompilation.
+
+### Source File Assessment
+
+The repository contains `sources/GajrajOne-Regular.ufo/` which is a UFO (Unified Font Object) source, fully compatible with gftools-builder. The config.yaml correctly references this source.
+
+### Branch Information
+
+The repository has one branch: `main` (default), matching the `branch: "main"` field in METADATA.pb.
+
+## Conclusion
+
+Gajraj One's METADATA.pb source block is complete and fully verified. The repository URL, commit hash, file mappings, branch, and config_yaml are all correct. The binary font in google/fonts is an exact copy of the pre-built font from the upstream repo. No changes are needed.
+
+### Current METADATA.pb Source Block (verified correct)
+
+```
+source {
+ repository_url: "https://github.com/xconsau/GajrajOne"
+ commit: "5768aa3d4522b402ead302e5bb8697e965da694f"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "fonts/ttf/GajrajOne-Regular.ttf"
+ dest_file: "GajrajOne-Regular.ttf"
+ }
+ files {
+ source_file: "DESCRIPTION.en_us.html"
+ dest_file: "DESCRIPTION.en_us.html"
+ }
+ branch: "main"
+ config_yaml: "sources/config.yaml"
+}
+```
--- /dev/null
+# Investigation Report: Ga Maamli
+
+## Summary
+
+Ga Maamli is a display sans-serif typeface designed by Afotey Clement Nii Odai, Ama Diaka, and David Abbey-Thompson. It was onboarded to Google Fonts on June 6, 2024, by Emma Marichal. The upstream repository at `SorkinType/GaMaamli` has a complete source block already recorded in METADATA.pb with the correct commit hash, config.yaml path, and repository URL. The source block is fully accurate and complete.
+
+## Key Findings
+
+| Field | Value |
+|-------------------|----------------------------------------------------------|
+| Family Name | Ga Maamli |
+| Repository URL | https://github.com/SorkinType/GaMaamli |
+| Commit Hash | aed1210a08dacfa86e419caf81fdb42940ee4e2a |
+| Config Path | sources/config.yaml |
+| Source Files | sources/GaMaamli.glyphs |
+| Status | **complete** |
+| Confidence | **HIGH** |
+
+## Investigation Details
+
+### METADATA.pb Analysis
+
+The existing METADATA.pb already contains a fully populated source block:
+- `repository_url`: `https://github.com/SorkinType/GaMaamli`
+- `commit`: `aed1210a08dacfa86e419caf81fdb42940ee4e2a`
+- `config_yaml`: `sources/config.yaml`
+- `branch`: `main`
+- File mappings for OFL.txt, GaMaamli-Regular.ttf, and DESCRIPTION.en_us.html
+
+### Onboarding Commit (google/fonts)
+
+- **Commit**: `e25c9cf5f5dec0b076976b463cd9aac32c592bb6`
+- **Date**: 2024-06-06
+- **Author**: Emma Marichal
+- **Message**: "Ga Maamli: Version 1.000; ttfautohint (v1.8.4.7-5d5b) added"
+- **Body**: Explicitly states "Taken from the upstream repo https://github.com/SorkinType/GaMaamli at commit https://github.com/SorkinType/GaMaamli/commit/aed1210a08dacfa86e419caf81fdb42940ee4e2a"
+
+### Upstream Repository Verification
+
+The upstream repo `SorkinType/GaMaamli` was inspected from the local cache at `upstream_repos/fontc_crater_cache/SorkinType/GaMaamli/`.
+
+- **Total commits**: 1 (the merge commit on main)
+- **HEAD commit**: `aed1210a08dacfa86e419caf81fdb42940ee4e2a` (2024-06-05) - "Merge pull request #5 from emmamarichal/main"
+- The commit matches exactly what is recorded in METADATA.pb
+- The commit date (June 5, 2024) is one day before the google/fonts onboarding (June 6, 2024), confirming chronological consistency
+
+### Source Files and Config
+
+- **Source file**: `sources/GaMaamli.glyphs` (Glyphs format)
+- **Config file**: `sources/config.yaml` exists and contains:
+ ```yaml
+ sources:
+ - GaMaamli.glyphs
+ familyName: Ga Maamli
+ buildOTF: false
+ ```
+- The config is a standard gftools-builder configuration
+
+### Additional History
+
+Commit `19cdcec59` in google/fonts ("[Batch 1/4] port info from fontc_crater targets list") also modified the METADATA.pb, adding the source block information that was ported from fontc_crater targets.
+
+## Conclusion
+
+The Ga Maamli source metadata is fully complete and accurate. The repository URL, commit hash, and config.yaml path are all correctly recorded. No changes needed.
+
+### Recommended METADATA.pb Source Block
+
+The existing source block is correct:
+
+```
+source {
+ repository_url: "https://github.com/SorkinType/GaMaamli"
+ commit: "aed1210a08dacfa86e419caf81fdb42940ee4e2a"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "fonts/ttf/GaMaamli-Regular.ttf"
+ dest_file: "GaMaamli-Regular.ttf"
+ }
+ files {
+ source_file: "DESCRIPTION.en_us.html"
+ dest_file: "DESCRIPTION.en_us.html"
+ }
+ branch: "main"
+ config_yaml: "sources/config.yaml"
+}
+```
+
+**Status**: complete
+**Confidence**: HIGH
--- /dev/null
+# Investigation Report: Gantari
+
+## Summary
+
+Gantari is a sans-serif variable font family by Lafontype, added to Google Fonts on June 2, 2022 via PR #4720. The upstream repo at `https://github.com/Lafontype/Gantari` has a single commit (`363a3dd`) which contains the complete project including source `.glyphs` files, compiled variable fonts, and a `sources/config.yaml`. The METADATA.pb source block is complete and correct.
+
+## Key Findings
+
+| Field | Value |
+|-------------------|---------------------------------------------------------------|
+| Family Name | Gantari |
+| Repository URL | https://github.com/Lafontype/Gantari |
+| Commit Hash | 363a3dd5634bfec7e9f7db11ca3e1f4739a182ab |
+| Config YAML | sources/config.yaml |
+| Status | **complete** |
+| Confidence | **HIGH** |
+
+## Investigation Details
+
+### Onboarding History
+
+The font was onboarded via commit `b57c3acbd` (google/fonts PR #4720) on June 2, 2022, authored by Emma Marichal with co-author Rosalie Wagner. The commit message states:
+
+> Gantari Version 1.000 taken from the upstream repo https://github.com/Lafontype/Gantari at commit https://github.com/Lafontype/Gantari/commit/5115aa79532c3b442fa22f94507e611ed369e2ba.
+
+The referenced commit hash `5115aa7` no longer exists in the upstream repository. The repo appears to have been force-pushed at some point, leaving only a single commit `363a3dd` (dated June 1, 2022 -- the day before the google/fonts onboarding merge).
+
+### METADATA.pb Evolution
+
+1. **Initial onboarding** (b57c3acbd, June 2, 2022): Created METADATA.pb with `upstream.yaml` referencing commit `5115aa7`.
+2. **upstream.yaml merge** (66f91f10f, April 3, 2024): Simon Cozens merged upstream.yaml into the METADATA.pb source block, still with the old commit hash.
+3. **fontc_crater batch** (19cdcec59, March 31, 2025): Updated commit hash from `5115aa7` to `363a3dd` (the current and only commit in the repo) and added `config_yaml: "sources/config.yaml"`.
+
+### Upstream Repository Analysis
+
+- **URL**: https://github.com/Lafontype/Gantari
+- **Remote verified**: Yes, `git fetch` succeeds
+- **Repo status**: Clean, on branch `main`, up to date
+- **Total commits**: 1 (`363a3dd`, "Add files via upload", June 1, 2022)
+- **Author**: Lafontype (lafontype@gmail.com)
+
+The single commit contains:
+- Source files: `sources/Gantari.glyphs`, `sources/Gantari-Italic.glyphs`
+- Build config: `sources/config.yaml`
+- Compiled variable fonts: `fonts/variable/Gantari[wght].ttf`, `fonts/variable/Gantari-Italic[wght].ttf`
+- Static OTF and TTF instances
+- Documentation images
+
+### Binary Verification
+
+The compiled variable fonts in the upstream repo at `363a3dd` are identical to those in google/fonts:
+
+| File | Size (bytes) | SHA256 Match |
+|-----------------------------|-------------|--------------|
+| Gantari[wght].ttf | 124,976 | Yes |
+| Gantari-Italic[wght].ttf | 131,240 | Yes |
+
+### Config YAML
+
+The upstream repo has `sources/config.yaml` with proper gftools-builder configuration:
+- Sources: `Gantari.glyphs`, `Gantari-Italic.glyphs`
+- Axis order: wght, ital
+- Family name: "Gantari"
+- Includes STAT table definitions
+
+No override config.yaml exists in the google/fonts family directory.
+
+### Note on Original Commit Hash
+
+The original onboarding referenced commit `5115aa7` which no longer exists. It is likely that the repo was force-pushed between the onboarding and the fontc_crater batch update. Since the current sole commit `363a3dd` produces binary-identical fonts, this commit is the correct reference.
+
+## Conclusion
+
+The METADATA.pb source block is **complete and correct**. No changes needed.
+
+### Current METADATA.pb Source Block
+
+```
+source {
+ repository_url: "https://github.com/Lafontype/Gantari"
+ commit: "363a3dd5634bfec7e9f7db11ca3e1f4739a182ab"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "fonts/variable/Gantari[wght].ttf"
+ dest_file: "Gantari[wght].ttf"
+ }
+ files {
+ source_file: "fonts/variable/Gantari-Italic[wght].ttf"
+ dest_file: "Gantari-Italic[wght].ttf"
+ }
+ branch: "main"
+ config_yaml: "sources/config.yaml"
+}
+```
--- /dev/null
+# Investigation Report: Gasoek One
+
+## Summary
+
+Gasoek One is a Korean display sans-serif font by Jiashuo Zhang and JAMO, added to Google Fonts on May 18, 2023. The upstream repo at `https://github.com/JAMO-TYPEFACE/Gasoek` has a single merge commit (`f6b875c`) which represents the complete project including the fixed binary with a missing glyph added. The METADATA.pb source block is complete and correct.
+
+## Key Findings
+
+| Field | Value |
+|-------------------|---------------------------------------------------------------|
+| Family Name | Gasoek One |
+| Repository URL | https://github.com/JAMO-TYPEFACE/Gasoek |
+| Commit Hash | f6b875c95ad933c5f937c2494ae2337f5aef2694 |
+| Config YAML | Sources/config.yaml |
+| Status | **complete** |
+| Confidence | **HIGH** |
+
+## Investigation Details
+
+### Onboarding History
+
+The font was initially onboarded via commit `a6631f1a0` on May 18, 2023, authored by Aaron Bell (aaron@sajatypeworks.com). The commit message states:
+
+> Gasoek One Version 1.000; ttfautohint (v1.8.4.7-5d5b);gftools[0.9.28] taken from the upstream repo https://github.com/JAMO-TYPEFACE/Gasoek at commit https://github.com/JAMO-TYPEFACE/Gasoek/commit/f3beadd65b93b5f43e9381a546d065253d6e655a.
+
+The referenced commit `f3beadd` no longer exists in the upstream repository.
+
+Six days later, on May 24, 2023, Aaron Bell updated the binary (commit `19ac170fa`) with the message "Adding missing glyph from GF Kernal". This updated the font from 1,061,228 bytes to 1,061,372 bytes.
+
+### Post-Onboarding Updates in google/fonts
+
+1. **Initial onboarding** (a6631f1a0, May 18, 2023): Added font with upstream.yaml referencing commit `f3beadd`.
+2. **Primary script** (95ce8995c): Added `primary_script: "Kore"`.
+3. **Author correction** (a1172a57c): Added JAMO as author, corrected description.
+4. **Binary update** (19ac170fa, May 24, 2023): Updated `GasoekOne-Regular.ttf` to fix missing glyph from GF Kernal.
+5. **URL fix** (77e9ffa25): Removed https from displayed URL.
+6. **Stroke/classification** (1db714082): Added stroke and classification metadata.
+7. **upstream.yaml merge** (66f91f10f, April 3, 2024): Merged upstream.yaml into METADATA.pb source block.
+8. **fontc_crater batch** (19cdcec59, March 31, 2025): Updated commit hash from `f3beadd` to `f6b875c` and added `config_yaml: "sources/config.yaml"` (lowercase).
+9. **Sources casing fix** (7190093b1, May 22, 2025): Corrected `config_yaml` from `sources/config.yaml` to `Sources/config.yaml` to match the actual directory name in the upstream repo.
+
+### Upstream Repository Analysis
+
+- **URL**: https://github.com/JAMO-TYPEFACE/Gasoek
+- **Remote verified**: Yes, `git fetch` succeeds
+- **Repo status**: Clean, on branch `main`, up to date
+- **Total commits**: 1 (merge commit `f6b875c`, "Merge pull request #3 from aaronbell/main", May 24, 2023)
+
+The upstream repo appears to have been force-pushed/squashed, leaving only the single merge commit that incorporates Aaron Bell's fix for the missing GF Kernal glyph. This merge commit (PR #3 in the upstream repo) contains:
+- Source file: `Sources/Gasoek.glyphs`
+- Build config: `Sources/config.yaml`
+- Compiled binary: `Fonts/ttf/GasoekOne-Regular.ttf`
+- Documentation images and metadata files
+
+### Binary Verification
+
+The compiled font in the upstream repo at `f6b875c` is identical to the one in google/fonts:
+
+| File | Size (bytes) | SHA256 Match |
+|--------------------------|-------------|--------------|
+| GasoekOne-Regular.ttf | 1,061,372 | Yes |
+
+Note: The current binary (1,061,372 bytes) matches the post-update version, not the original onboarding version (1,061,228 bytes). This is correct because the upstream merge commit `f6b875c` includes the glyph fix that was applied on the same day (May 24, 2023).
+
+### Config YAML
+
+The upstream repo has `Sources/config.yaml` (note the capital "S" in Sources) with:
+```yaml
+sources:
+ - Gasoek.glyphs
+familyName: "Gasoek One"
+buildOTF: false
+```
+
+No override config.yaml exists in the google/fonts family directory.
+
+### Note on Commit Hash and Repository History
+
+The original onboarding referenced commit `f3beadd` which no longer exists in the upstream repo. The repo was likely force-pushed, and only the merge commit `f6b875c` (which merges aaronbell's fix for the missing GF Kernal glyph) survives. Since this commit produces a binary-identical font to what is currently in google/fonts, and it is the only commit available, `f6b875c` is the correct reference.
+
+## Conclusion
+
+The METADATA.pb source block is **complete and correct**. No changes needed.
+
+### Current METADATA.pb Source Block
+
+```
+source {
+ repository_url: "https://github.com/JAMO-TYPEFACE/Gasoek"
+ commit: "f6b875c95ad933c5f937c2494ae2337f5aef2694"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "DESCRIPTION.en_us.html"
+ dest_file: "DESCRIPTION.en_us.html"
+ }
+ files {
+ source_file: "Fonts/ttf/GasoekOne-Regular.ttf"
+ dest_file: "GasoekOne-Regular.ttf"
+ }
+ branch: "main"
+ config_yaml: "Sources/config.yaml"
+}
+```
--- /dev/null
+# Investigation Report: Geist
+
+## Summary
+
+Geist is a sans-serif variable font by Vercel (designers: Andres Briganti, Mateo Zaragoza, and others). It was onboarded to Google Fonts on 2024-10-24 via PR #8246 by Viviana Monsalve. Both Geist and Geist Mono share the same upstream repository (`vercel/geist-font`) and the same onboarding commit. The METADATA.pb already has a complete source block with repository URL, commit hash, config.yaml path, archive URL, and file mappings. This family is fully documented.
+
+## Key Findings
+
+| Field | Value |
+|-------------------|--------------------------------------------------------------------|
+| Family Name | Geist |
+| Repository URL | https://github.com/vercel/geist-font |
+| Commit Hash | b193ef74010119759bfb7f71ddf81a3dee238535 |
+| Commit Date | 2024-10-23 |
+| Commit Message | Merge pull request #141 from vercel/139-fixes |
+| Config YAML | sources/config-Geist.yaml (in upstream repo) |
+| Source Files | sources/Geist.glyphspackage |
+| Onboarding PR | #8246 (google/gftools_packager_ofl_geist) |
+| Onboarder | Viviana Monsalve (viviana.monsalve.a@gmail.com) |
+| Date Added | 2024-10-02 |
+| Status | complete |
+| Confidence | HIGH |
+
+## Investigation Details
+
+### 1. METADATA.pb Analysis
+
+The current METADATA.pb has a complete source block:
+
+```
+source {
+ repository_url: "https://github.com/vercel/geist-font"
+ commit: "b193ef74010119759bfb7f71ddf81a3dee238535"
+ config_yaml: "sources/config-Geist.yaml"
+ archive_url: "https://github.com/vercel/geist-font/releases/download/1.4.01/Geist-1.4.01.zip"
+ files {
+ source_file: "variable/Geist[wght].ttf"
+ dest_file: "Geist[wght].ttf"
+ }
+ branch: "main"
+}
+```
+
+All fields are populated. The `config_yaml` field was added later in commit `cbe1f7ee5` (2025-04-03) by Felipe Sanches.
+
+### 2. Git History in google/fonts
+
+The onboarding history:
+
+1. **Commit `56681a845`** (2024-10-23, Viviana Monsalve): "Geist: Version 1.401 added"
+ - Message: "Taken from the upstream repo https://github.com/vercel/geist-font at commit b193ef74..."
+ - Resolves issue #6922
+ - Added: Geist[wght].ttf, METADATA.pb, article/ARTICLE.en_us.html
+
+2. **Merge `c0b7dced4`** (2024-10-24, Emma Marichal): "Merge pull request #8246 from google/gftools_packager_ofl_geist"
+ - Title: "Geist: Version 1.400 added"
+ - Also added OFL.txt and article banner image
+
+3. **Commit `cbe1f7ee5`** (2025-04-03, Felipe Sanches): "sources for Geist & Geist Mono"
+ - Added `config_yaml` field to METADATA.pb source block
+
+### 3. Upstream Repository
+
+The upstream repo at https://github.com/vercel/geist-font is shared by both Geist and Geist Mono. The referenced commit `b193ef74` (2024-10-23) is a merge commit "Merge pull request #141 from vercel/139-fixes" at the HEAD of the main branch.
+
+The commit date (2024-10-23) is the same day as the google/fonts onboarding commit, confirming it was used for the onboarding.
+
+### 4. Source Files at Referenced Commit
+
+At commit `b193ef74`, the `sources/` directory contains:
+- `sources/Geist.glyphspackage` (Glyphs 3 package format)
+- `sources/GeistMono.glyphspackage` (for Geist Mono)
+- `sources/config-Geist.yaml` (gftools-builder config)
+- `sources/config-GeistMono.yaml` (gftools-builder config for Mono)
+- `sources/CustomFilter_GF_Latin_All.plist`
+
+### 5. Config YAML
+
+The `sources/config-Geist.yaml` at the referenced commit configures:
+- Source: `Geist.glyphspackage`
+- Output directory: `../fonts/Geist`
+- Family name: "Geist"
+- Autohint OTF: true
+- STAT table with weight axis (100-900) and italic axis
+
+### 6. Repository Cache
+
+The upstream repo is cached at `upstream_repos/fontc_crater_cache/vercel/geist-font/`. The repo is clean and checked out at the referenced commit `b193ef74`.
+
+## Conclusion
+
+Geist has a fully complete source block in METADATA.pb. The repository URL, commit hash, config.yaml path, archive URL, and file mappings are all correct and verified. No changes are needed.
+
+### Current METADATA.pb Source Block (already correct)
+
+```
+source {
+ repository_url: "https://github.com/vercel/geist-font"
+ commit: "b193ef74010119759bfb7f71ddf81a3dee238535"
+ config_yaml: "sources/config-Geist.yaml"
+ archive_url: "https://github.com/vercel/geist-font/releases/download/1.4.01/Geist-1.4.01.zip"
+ files {
+ source_file: "variable/Geist[wght].ttf"
+ dest_file: "Geist[wght].ttf"
+ }
+ branch: "main"
+}
+```
+
+### Status: complete
+### Confidence: HIGH
--- /dev/null
+# Investigation Report: Geist Mono
+
+## Summary
+
+Geist Mono is a monospace variable font by Vercel, the companion to Geist sans-serif. It shares the same upstream repository (`vercel/geist-font`) and was onboarded at the same commit as Geist. The METADATA.pb already has a complete source block with all required fields. This family is fully documented.
+
+## Key Findings
+
+| Field | Value |
+|-------------------|--------------------------------------------------------------------|
+| Family Name | Geist Mono |
+| Repository URL | https://github.com/vercel/geist-font |
+| Commit Hash | b193ef74010119759bfb7f71ddf81a3dee238535 |
+| Commit Date | 2024-10-23 |
+| Commit Message | Merge pull request #141 from vercel/139-fixes |
+| Config YAML | sources/config-GeistMono.yaml (in upstream repo) |
+| Source Files | sources/GeistMono.glyphspackage |
+| Onboarding PR | #8264 (google/gftools_packager_ofl_geistmono) |
+| Onboarder | Viviana Monsalve (viviana.monsalve.a@gmail.com) |
+| Date Added | 2024-10-03 |
+| Status | complete |
+| Confidence | HIGH |
+
+## Investigation Details
+
+### 1. METADATA.pb Analysis
+
+The current METADATA.pb has a complete source block:
+
+```
+source {
+ repository_url: "https://github.com/vercel/geist-font"
+ commit: "b193ef74010119759bfb7f71ddf81a3dee238535"
+ config_yaml: "sources/config-GeistMono.yaml"
+ archive_url: "https://github.com/vercel/geist-font/releases/download/1.4.01/GeistMono-1.4.01.zip"
+ files {
+ source_file: "variable/GeistMono[wght].ttf"
+ dest_file: "GeistMono[wght].ttf"
+ }
+ branch: "main"
+}
+```
+
+All fields are populated. The `config_yaml` field was added in commit `cbe1f7ee5` (2025-04-03) by Felipe Sanches, alongside the same addition for Geist.
+
+### 2. Git History in google/fonts
+
+The onboarding history:
+
+1. **Commit `9ccc85496`** (2024-10-23, Viviana Monsalve): "Geist Mono: Version 1.401 added"
+ - Message: "Taken from the upstream repo https://github.com/vercel/geist-font at commit b193ef74..."
+ - Resolves issue #6922 (same issue as Geist)
+ - Added: GeistMono[wght].ttf, METADATA.pb, article/ARTICLE.en_us.html
+
+2. **Merge `90f16f651`** (2024-10-24, Emma Marichal): "Merge pull request #8264 from google/gftools_packager_ofl_geistmono"
+ - Title: "Geist Mono: Version 1.400 added"
+ - Also added OFL.txt and article banner image
+
+3. **Commit `cbe1f7ee5`** (2025-04-03, Felipe Sanches): "sources for Geist & Geist Mono"
+ - Added `config_yaml` field to METADATA.pb source block
+
+### 3. Upstream Repository (Shared with Geist)
+
+Geist Mono shares the upstream repository https://github.com/vercel/geist-font with the Geist sans-serif family. Both were onboarded from the same commit `b193ef74` (2024-10-23), which is a merge commit "Merge pull request #141 from vercel/139-fixes".
+
+The repository contains separate source files and config files for each family:
+- Geist: `sources/Geist.glyphspackage` + `sources/config-Geist.yaml`
+- Geist Mono: `sources/GeistMono.glyphspackage` + `sources/config-GeistMono.yaml`
+
+### 4. Source Files at Referenced Commit
+
+At commit `b193ef74`, the Geist Mono sources consist of:
+- `sources/GeistMono.glyphspackage` (Glyphs 3 package format)
+- `sources/config-GeistMono.yaml` (gftools-builder config)
+
+### 5. Config YAML
+
+The `sources/config-GeistMono.yaml` at the referenced commit configures:
+- Source: `GeistMono.glyphspackage`
+- Output directory: `../fonts/GeistMono`
+- Family name: "Geist Mono"
+- Autohint OTF: true
+- STAT table with weight axis (100-900) and italic axis
+
+### 6. Repository Cache
+
+The upstream repo is cached at `upstream_repos/fontc_crater_cache/vercel/geist-font/` (shared with Geist).
+
+### 7. Relationship to Geist
+
+Both Geist and Geist Mono:
+- Share the same upstream repository (`vercel/geist-font`)
+- Were onboarded from the same commit (`b193ef74`)
+- Were onboarded on the same day (2024-10-23) by the same person (Viviana Monsalve)
+- Resolve the same issue (#6922)
+- Were merged via adjacent PRs (#8246 for Geist, #8264 for Geist Mono)
+- Had their `config_yaml` fields added in the same commit (`cbe1f7ee5`)
+
+## Conclusion
+
+Geist Mono has a fully complete source block in METADATA.pb. The repository URL, commit hash, config.yaml path, archive URL, and file mappings are all correct and verified. No changes are needed.
+
+### Current METADATA.pb Source Block (already correct)
+
+```
+source {
+ repository_url: "https://github.com/vercel/geist-font"
+ commit: "b193ef74010119759bfb7f71ddf81a3dee238535"
+ config_yaml: "sources/config-GeistMono.yaml"
+ archive_url: "https://github.com/vercel/geist-font/releases/download/1.4.01/GeistMono-1.4.01.zip"
+ files {
+ source_file: "variable/GeistMono[wght].ttf"
+ dest_file: "GeistMono[wght].ttf"
+ }
+ branch: "main"
+}
+```
+
+### Status: complete
+### Confidence: HIGH
--- /dev/null
+# Investigation Report: Gelasio
+
+## Summary
+
+Gelasio is a serif typeface designed by Eben Sorkin, added to Google Fonts on 2019-12-03. It was originally onboarded as static fonts and later updated to variable fonts (Version 1.008) via gftools-packager in February 2024. The upstream repository is at `https://github.com/SorkinType/Gelasio`. The repo has been force-pushed/rewritten since the original onboarding, so the commit hash referenced in the gftools-packager message (`a6ee02d`) no longer exists. The current METADATA.pb references commit `9228e69` (set by the fontc_crater batch port), which is the current root commit after the force-push and contains binary files that are byte-identical to those in google/fonts. The source block is complete with a valid `config_yaml` path.
+
+## Key Findings
+
+| Field | Value |
+|---|---|
+| **Family Name** | Gelasio |
+| **Repository URL** | https://github.com/SorkinType/Gelasio |
+| **Commit Hash** | `9228e69b160d79f33950e026293f6e13ba9780d0` |
+| **Config YAML** | `sources/config.yaml` |
+| **Branch** | main |
+| **Source Files** | `sources/Gelasio.glyphspackage`, `sources/Gelasio-Italic.glyphspackage` |
+| **Status** | complete |
+| **Confidence** | MEDIUM |
+
+## Investigation Details
+
+### Google Fonts History
+
+1. **Initial onboarding** (2019-12-04): Commit `e23cd10a` - Static fonts added via Font Bakery Dashboard (PR #2268)
+2. **Version 1.007 update** (2022-06-16): Commit `cb927e07` - Updated via gftools-packager, referencing upstream commit `bb66c796` (also no longer exists in the rewritten repo)
+3. **Version 1.008 update** (2024-02-22): Commit `90eb9d28` - Updated via gftools-packager by Emma Marichal, referencing upstream commit `a6ee02d6ba3d3a038610aa0972f0d4c39b251539` (no longer exists)
+4. **Batch source metadata port** (2025-03-31): Commit `19cdcec5` - Changed commit hash from `a6ee02d` to `9228e69` and added `config_yaml: "sources/config.yaml"` based on fontc_crater targets
+
+### Upstream Repository Analysis
+
+- **URL**: https://github.com/SorkinType/Gelasio
+- **Cached at**: `upstream_repos/fontc_crater_cache/SorkinType/Gelasio/`
+- **Repository was force-pushed/rewritten**: The repo currently has only 4 commits, with the root commit (`9228e69`) dated 2024-09-16, well after the google/fonts update from February 2024
+- The original commit `a6ee02d` referenced by gftools-packager no longer exists
+- The earlier commit `bb66c796` from the Version 1.007 update also no longer exists
+- Current HEAD is `4d7a1d2` (.sc fixes, 2025-06-30) with additional African Latin & Greek support work
+
+### Commit Verification
+
+- Commit `9228e69` is the root commit of the rewritten repo (2024-09-16)
+- Binary files at `9228e69` match google/fonts exactly:
+ - `Gelasio[wght].ttf`: 168,556 bytes (SHA256: `4daecea457258c9ebeb8bc99ed3fd24353618bfad3ea4b93fa0b5d0468fc04e4`)
+ - `Gelasio-Italic[wght].ttf`: 174,212 bytes
+- The `sources/config.yaml` exists at this commit with valid gftools-builder configuration
+- Sources are `.glyphspackage` files: `Gelasio.glyphspackage` and `Gelasio-Italic.glyphspackage`
+
+### Config YAML
+
+The config at `sources/config.yaml` references:
+- `Gelasio.glyphspackage`
+- `Gelasio-Italic.glyphspackage`
+- Axis order: wght, ital
+- Family name: Gelasio
+- buildOTF: False
+- Includes STAT table configuration
+
+### Confidence Note
+
+Confidence is MEDIUM because the upstream repo was force-pushed and the original commit hash no longer exists. The current commit `9228e69` was set by the fontc_crater batch port and contains matching binary files, but it is NOT the original onboarding commit. It is the best available reference after the repo rewrite. The actual onboarding commit was `a6ee02d` (from the gftools-packager message), which was lost during the force-push.
+
+## Conclusion
+
+The METADATA.pb source block is complete and functional. The commit `9228e69` is the best available reference given the force-pushed repo history, and the binary files match. No changes needed.
+
+### Current METADATA.pb Source Block (no changes needed)
+
+```
+source {
+ repository_url: "https://github.com/SorkinType/Gelasio"
+ commit: "9228e69b160d79f33950e026293f6e13ba9780d0"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "fonts/variable/Gelasio[wght].ttf"
+ dest_file: "Gelasio[wght].ttf"
+ }
+ files {
+ source_file: "fonts/variable/Gelasio-Italic[wght].ttf"
+ dest_file: "Gelasio-Italic[wght].ttf"
+ }
+ branch: "main"
+ config_yaml: "sources/config.yaml"
+}
+```
+
+**Status**: complete
+**Confidence**: MEDIUM (repo was force-pushed; commit is best available, not original)
--- /dev/null
+# Investigation Report: Gemunu Libre
+
+## Summary
+
+Gemunu Libre is a sans-serif typeface designed by Mooniak, supporting Latin and Sinhala scripts. It was originally added to Google Fonts on 2017-05-29 as static fonts and updated to a variable font (Version 1.100) in June 2021 via gftools-packager (PR #3567). The upstream repository is at `https://github.com/mooniak/gemunu-libre-font`. The commit hash `8a8867d` referenced in METADATA.pb matches the gftools-packager message and exists in the upstream repo. The builder config at `sources/builder.yaml` exists at that commit. The source block is complete.
+
+## Key Findings
+
+| Field | Value |
+|---|---|
+| **Family Name** | Gemunu Libre |
+| **Repository URL** | https://github.com/mooniak/gemunu-libre-font |
+| **Commit Hash** | `8a8867dd893adb9e82baef9d85ccbc3764a55b0c` |
+| **Config YAML** | `sources/builder.yaml` |
+| **Branch** | main |
+| **Source Files** | `sources/GemunuLibre.glyphs` |
+| **Status** | complete |
+| **Confidence** | HIGH |
+
+## Investigation Details
+
+### Google Fonts History
+
+1. **Initial onboarding** (2017): Commit `3d6d46b9` - `gemunulibre: v1.001 added` (static fonts, PR #667)
+2. **Description update** (2018): Commit `7224f1c9` - `Update gemunu description` (PR #872)
+3. **Version 1.100 update** (2021-06-28): Commit `77b7a870` - `Gemunu Libre: Version 1.100 added` (PR #3567)
+ - gftools-packager message references: `https://github.com/mooniak/gemunu-libre-font.git` at commit `8a8867dd893adb9e82baef9d85ccbc3764a55b0c`
+ - Author: Yanone (post@yanone.de)
+4. **Source metadata** (2025-04-02): Commit `1f12f787` - Added commit hash and config_yaml to source block
+
+### Upstream Repository Analysis
+
+- **URL**: https://github.com/mooniak/gemunu-libre-font
+- **Cached at**: `upstream_repos/fontc_crater_cache/mooniak/gemunu-libre-font/`
+- **Default branch**: main
+- **Total commits**: ~120+ (active development history from 2015 to 2021)
+- **Latest commit**: `90f5ecf` (2021-06-29, "Update FONTLOG.txt") - 5 commits after the referenced hash
+
+### Commit Verification
+
+- Commit `8a8867d` exists in the upstream repo and is a merge commit: "Merge pull request #18 from yanone/main" (2021-06-24)
+- This merge integrated Yanone's work preparing the font for variable font release (builder.yaml, copyright fixes, metric adjustments)
+- Binary file at this commit matches google/fonts exactly:
+ - `GemunuLibre[wght].ttf`: 256,512 bytes
+- The google/fonts PR #3567 was merged on 2021-06-28, four days after the upstream commit
+- There are 5 subsequent commits in upstream (through 2021-06-29) that were made after the gftools-packager snapshot, but they are minor (FONTLOG updates, binary rebuild, sinTouch width fix)
+
+### Config YAML
+
+The `sources/builder.yaml` at commit `8a8867d` contains:
+- Source: `GemunuLibre.glyphs`
+- outputDir: `../fonts`
+- buildStatic: false
+- buildVariable: true
+- buildTTF: true
+- buildOTF: false
+- buildWebfont: false
+
+This is a valid gftools-builder configuration file.
+
+### Source Files at Referenced Commit
+
+- `sources/GemunuLibre.glyphs` - Glyphs source file
+- `sources/builder.yaml` - gftools-builder config
+
+## Conclusion
+
+The METADATA.pb source block is complete and accurate. All fields are verified: the repository URL is valid, the commit hash exists and matches the gftools-packager reference, the config_yaml path is correct, and the binary files match. No changes needed.
+
+### Current METADATA.pb Source Block (no changes needed)
+
+```
+source {
+ repository_url: "https://github.com/mooniak/gemunu-libre-font"
+ commit: "8a8867dd893adb9e82baef9d85ccbc3764a55b0c"
+ config_yaml: "sources/builder.yaml"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "DESCRIPTION.en_us.html"
+ dest_file: "DESCRIPTION.en_us.html"
+ }
+ files {
+ source_file: "fonts/variable/GemunuLibre[wght].ttf"
+ dest_file: "GemunuLibre[wght].ttf"
+ }
+ branch: "main"
+}
+```
+
+**Status**: complete
+**Confidence**: HIGH
--- /dev/null
+# Investigation Report: Genos
+
+## Summary
+
+Genos is a sans-serif display typeface designed by Robert Leuschke, supporting Latin, Latin Extended, Vietnamese, and Cherokee scripts. It was added to Google Fonts on 2021-10-08 as a variable font (Version 1.010) via gftools-packager (PR #3934). The upstream repository is at `https://github.com/googlefonts/genos`. The commit hash `7071818` referenced in METADATA.pb matches the gftools-packager message and is the only commit in the repo. The config file at `sources/config.yml` (note: `.yml` extension, not `.yaml`) exists at that commit. The source block is complete.
+
+## Key Findings
+
+| Field | Value |
+|---|---|
+| **Family Name** | Genos |
+| **Repository URL** | https://github.com/googlefonts/genos |
+| **Commit Hash** | `707181862a0fe1ceecc334bb54c63ea4377e95d8` |
+| **Config YAML** | `sources/config.yml` |
+| **Branch** | master |
+| **Source Files** | `sources/Genos.glyphs`, `sources/Genos-Italic.glyphs` |
+| **Status** | complete |
+| **Confidence** | HIGH |
+
+## Investigation Details
+
+### Google Fonts History
+
+1. **Initial onboarding** (2021-10-11): Commit `200bfba5` - `Genos: Version 1.010 added` (PR #3934)
+ - gftools-packager message references: `https://github.com/googlefonts/genos` at commit `707181862a0fe1ceecc334bb54c63ea4377e95d8`
+ - Author: Viviana Monsalve (viviana.monsalve.a@gmail.com)
+2. **Batch source metadata port** (2025-03-31): Commit `19cdcec5` - Added source block data from fontc_crater targets
+
+### Upstream Repository Analysis
+
+- **URL**: https://github.com/googlefonts/genos
+- **Cached at**: `upstream_repos/fontc_crater_cache/googlefonts/genos/`
+- **Default branch**: master
+- **Total commits**: 1 (single initial commit)
+- **Only commit**: `7071818` (2021-10-08, "requirements updated")
+
+### Commit Verification
+
+- Commit `7071818` is the only commit in the repository
+- It was created on 2021-10-08, three days before the google/fonts merge on 2021-10-11
+- Binary files at this commit match google/fonts exactly:
+ - `Genos[wght].ttf`: 135,320 bytes
+ - `Genos-Italic[wght].ttf`: 144,248 bytes
+- The gftools-packager message confirms this is the correct commit
+
+### Config YAML
+
+The config at `sources/config.yml` (note `.yml` extension) contains:
+- Sources: `Genos.glyphs`, `Genos-Italic.glyphs`
+- Axis order: wght, ital
+- Family name: Genos
+- Includes STAT table configuration for both Roman and Italic variable fonts
+- Weight axis ranges from Thin (100) to Black (900)
+
+### Source Files at Referenced Commit
+
+- `sources/Genos.glyphs` - Glyphs source (upright)
+- `sources/Genos-Italic.glyphs` - Glyphs source (italic)
+- `sources/config.yml` - gftools-builder config
+
+### Notes
+
+- The config file uses the `.yml` extension rather than the more common `.yaml` extension, which is correctly reflected in the METADATA.pb `config_yaml` field
+- The repo has only a single commit, which is the one referenced in METADATA.pb, making verification straightforward
+- The default branch is `master` (not `main`), which is correctly reflected in METADATA.pb
+
+## Conclusion
+
+The METADATA.pb source block is complete and accurate. All fields are verified: the repository URL is valid, the commit hash exists and is the only commit in the repo, the config_yaml path correctly uses `.yml` extension, the branch is correctly set to `master`, and the binary files match. No changes needed.
+
+### Current METADATA.pb Source Block (no changes needed)
+
+```
+source {
+ repository_url: "https://github.com/googlefonts/genos"
+ commit: "707181862a0fe1ceecc334bb54c63ea4377e95d8"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "DESCRIPTION.en_us.html"
+ dest_file: "DESCRIPTION.en_us.html"
+ }
+ files {
+ source_file: "fonts/variable/Genos[wght].ttf"
+ dest_file: "Genos[wght].ttf"
+ }
+ files {
+ source_file: "fonts/variable/Genos-Italic[wght].ttf"
+ dest_file: "Genos-Italic[wght].ttf"
+ }
+ branch: "master"
+ config_yaml: "sources/config.yml"
+}
+```
+
+**Status**: complete
+**Confidence**: HIGH
--- /dev/null
+# Investigation: Gentium Book Plus
+
+## Summary
+
+Gentium Book Plus is a serif typeface designed by SIL International, part of the Gentium family. It was onboarded to Google Fonts on 2022-05-19 via PR #4693 by Emma Marichal. The fonts were taken from the pre-built v6.101 release archive of the upstream repo `silnrsi/font-gentium`. Both Gentium Plus and Gentium Book Plus are instances generated from the same designspace files in this shared upstream repository.
+
+The upstream build system is SIL's `smith` toolchain (not gftools-builder), which uses `.feax` extended feature files, `psfchangettfglyphnames`, `ttfautohint`, and TypeTuner -- none of which are supported by gftools-builder. Creating an override `config.yaml` is not feasible because the source files require smith-specific preprocessing that cannot be replicated with fontmake/gftools-builder.
+
+The METADATA.pb source block already has the correct `repository_url` and `archive_url`, but is missing a `commit` hash. The correct commit is the v6.101 tag: `7ac5e5ca61b776c5b8df4522c04b9707573ffd42`.
+
+## Key Findings
+
+| Field | Value |
+|--------------------|-------|
+| Family Name | Gentium Book Plus |
+| Repository URL | https://github.com/silnrsi/font-gentium |
+| Onboarding Commit | `7ac5e5ca61b776c5b8df4522c04b9707573ffd42` (tag v6.101, 2022-02-09) |
+| Config YAML | None (smith build system, not gftools-builder compatible) |
+| Status | no_config_possible |
+| Confidence | HIGH |
+| Onboarding PR | google/fonts#4693 |
+| Onboarding Author | Emma Marichal |
+| Onboarding Date | 2022-05-19 |
+
+## Investigation Details
+
+### METADATA.pb Current State
+
+The existing source block contains:
+- `repository_url`: `https://github.com/silnrsi/font-gentium` (correct)
+- `archive_url`: `https://github.com/silnrsi/font-gentium/releases/download/v6.101/GentiumPlus-6.101.zip` (correct)
+- `branch`: `master` (correct)
+- File mappings for 4 TTF files + OFL.txt from the release archive
+- **Missing**: `commit` hash
+- **Missing**: `config_yaml` (but not applicable -- see below)
+
+### Onboarding History
+
+PR #4693 (merged 2022-05-19) by Emma Marichal added Gentium Book Plus. The commit message states:
+
+> "Gentium Book Plus Version 6.101 taken from the upstream repo https://github.com/silnrsi/font-gentium at commit https://github.com/silnrsi/font-gentium/commit/."
+
+The commit URL is empty -- the packager tool failed to capture the actual commit hash. The original `upstream.yaml` specified the release archive URL, confirming fonts were taken from pre-built binaries.
+
+Note: The directory was renamed from `ofl/gentiumplusbook` to `ofl/gentiumbookplus` in this same commit.
+
+### Commit Hash Determination
+
+The tracking JSON had commit `202d6d3bf1c92db9dd8f9635697ec302a6441725` (2022-05-06, "Add placeholders and glyph_data for new glyphs"), which is 21 commits after v6.101. This was likely the HEAD of master when `gftools-packager` ran, but it is NOT the correct reference commit because:
+
+1. The fonts were taken from the **release archive** (v6.101 ZIP), not compiled from source
+2. The release archive corresponds to the **v6.101 tag**, which points to commit `7ac5e5ca61b776c5b8df4522c04b9707573ffd42` (2022-02-09)
+3. The 21 subsequent commits between v6.101 and 202d6d3 added new glyphs, feature changes, and design revisions that are NOT reflected in the v6.101 binaries
+
+The correct commit hash is: **`7ac5e5ca61b776c5b8df4522c04b9707573ffd42`** (v6.101 tag).
+
+### Upstream Repository Analysis
+
+- **Repo**: https://github.com/silnrsi/font-gentium
+- **Shared with**: Gentium Plus (same repo, same designspace files)
+- **Build system**: `smith` (SIL's build tool), configured via `wscript`
+- **Source files at v6.101**:
+ - `source/GentiumPlusRoman.designspace` (instances: Gentium Plus Regular/Bold, Gentium Book Plus Regular/Bold)
+ - `source/GentiumPlusItalic.designspace` (instances: Gentium Plus Italic/BoldItalic, Gentium Book Plus Italic/BoldItalic)
+ - `source/masters/GentiumPlusMaster-Regular.ufo`
+ - `source/masters/GentiumPlusMaster-ExtraBold.ufo`
+ - `source/masters/GentiumPlusMaster-Italic.ufo`
+ - `source/masters/GentiumPlusMaster-ExtraBoldItalic.ufo`
+- **Feature files**: `.feax` format (SIL extended, not standard `.fea`)
+- **Custom build steps**: `psfchangettfglyphnames`, `ttfautohint`, TypeTuner, `.feax` -> `.fea` conversion
+- **Graphite**: Sources present but commented out in v6.101 wscript
+- **Latest version**: v6.200 (2023-02-01), with active development continuing
+
+### Why config.yaml Is Not Possible
+
+The smith build system uses several SIL-specific tools and formats that have no gftools-builder equivalent:
+1. **`.feax` files**: Extended OpenType feature format requiring pysilfont preprocessing
+2. **`psfchangettfglyphnames`**: Post-processing step for TTF glyph naming
+3. **`ttfautohint`**: Custom auto-hinting with reference fonts
+4. **TypeTuner**: SIL's font customization technology
+5. **`classes.xml`**: Custom class definitions separate from the designspace
+
+Without these, gftools-builder/fontmake would produce significantly different output from the official release binaries.
+
+## Conclusion
+
+The METADATA.pb source block needs a `commit` hash added. No `config_yaml` is possible due to the smith build system.
+
+### Recommended METADATA.pb Source Block
+
+```
+source {
+ repository_url: "https://github.com/silnrsi/font-gentium"
+ commit: "7ac5e5ca61b776c5b8df4522c04b9707573ffd42"
+ archive_url: "https://github.com/silnrsi/font-gentium/releases/download/v6.101/GentiumPlus-6.101.zip"
+ files {
+ source_file: "GentiumPlus-6.101/OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "GentiumPlus-6.101/GentiumBookPlus-Regular.ttf"
+ dest_file: "GentiumBookPlus-Regular.ttf"
+ }
+ files {
+ source_file: "GentiumPlus-6.101/GentiumBookPlus-Italic.ttf"
+ dest_file: "GentiumBookPlus-Italic.ttf"
+ }
+ files {
+ source_file: "GentiumPlus-6.101/GentiumBookPlus-Bold.ttf"
+ dest_file: "GentiumBookPlus-Bold.ttf"
+ }
+ files {
+ source_file: "GentiumPlus-6.101/GentiumBookPlus-BoldItalic.ttf"
+ dest_file: "GentiumBookPlus-BoldItalic.ttf"
+ }
+ branch: "master"
+}
+```
+
+### Status: `no_config_possible`
+### Confidence: HIGH
--- /dev/null
+# Investigation: Gentium Plus
+
+## Summary
+
+Gentium Plus is a serif typeface designed by SIL International, part of the Gentium family. It was onboarded to Google Fonts on 2022-05-13 via PR #4662 by Emma Marichal. The fonts were taken from the pre-built v6.101 release archive of the upstream repo `silnrsi/font-gentium`. Both Gentium Plus and Gentium Book Plus are instances generated from the same designspace files in this shared upstream repository.
+
+The upstream build system is SIL's `smith` toolchain (not gftools-builder), which uses `.feax` extended feature files, `psfchangettfglyphnames`, `ttfautohint`, and TypeTuner -- none of which are supported by gftools-builder. Creating an override `config.yaml` is not feasible because the source files require smith-specific preprocessing that cannot be replicated with fontmake/gftools-builder.
+
+The METADATA.pb source block already has the correct `repository_url` and `archive_url`, but is missing a `commit` hash. The correct commit is the v6.101 tag: `7ac5e5ca61b776c5b8df4522c04b9707573ffd42`.
+
+## Key Findings
+
+| Field | Value |
+|--------------------|-------|
+| Family Name | Gentium Plus |
+| Repository URL | https://github.com/silnrsi/font-gentium |
+| Onboarding Commit | `7ac5e5ca61b776c5b8df4522c04b9707573ffd42` (tag v6.101, 2022-02-09) |
+| Config YAML | None (smith build system, not gftools-builder compatible) |
+| Status | no_config_possible |
+| Confidence | HIGH |
+| Onboarding PR | google/fonts#4662 |
+| Onboarding Author | Emma Marichal |
+| Onboarding Date | 2022-05-13 |
+
+## Investigation Details
+
+### METADATA.pb Current State
+
+The existing source block contains:
+- `repository_url`: `https://github.com/silnrsi/font-gentium` (correct)
+- `archive_url`: `https://github.com/silnrsi/font-gentium/releases/download/v6.101/GentiumPlus-6.101.zip` (correct)
+- `branch`: `master` (correct)
+- File mappings for 4 TTF files + OFL.txt from the release archive
+- **Missing**: `commit` hash
+- **Missing**: `config_yaml` (but not applicable -- see below)
+
+### Onboarding History
+
+PR #4662 (merged 2022-05-13) by Emma Marichal added Gentium Plus. The commit message states:
+
+> "Gentium Plus Version 6.101 taken from the upstream repo https://github.com/silnrsi/font-gentium at commit https://github.com/silnrsi/font-gentium/commit/."
+
+The commit URL is empty -- the packager tool failed to capture the actual commit hash. The original `upstream.yaml` specified the release archive URL, confirming fonts were taken from pre-built binaries.
+
+### Commit Hash Determination
+
+The tracking JSON had commit `202d6d3bf1c92db9dd8f9635697ec302a6441725` (2022-05-06, "Add placeholders and glyph_data for new glyphs"), which is 21 commits after v6.101. This was likely the HEAD of master when `gftools-packager` ran, but it is NOT the correct reference commit because:
+
+1. The fonts were taken from the **release archive** (v6.101 ZIP), not compiled from source
+2. The release archive corresponds to the **v6.101 tag**, which points to commit `7ac5e5ca61b776c5b8df4522c04b9707573ffd42` (2022-02-09)
+3. The 21 subsequent commits between v6.101 and 202d6d3 added new glyphs, feature changes, and design revisions that are NOT reflected in the v6.101 binaries
+
+The correct commit hash is: **`7ac5e5ca61b776c5b8df4522c04b9707573ffd42`** (v6.101 tag).
+
+### Upstream Repository Analysis
+
+- **Repo**: https://github.com/silnrsi/font-gentium
+- **Shared with**: Gentium Book Plus (same repo, same designspace files)
+- **Build system**: `smith` (SIL's build tool), configured via `wscript`
+- **Source files at v6.101**:
+ - `source/GentiumPlusRoman.designspace` (instances: Gentium Plus Regular/Bold, Gentium Book Plus Regular/Bold)
+ - `source/GentiumPlusItalic.designspace` (instances: Gentium Plus Italic/BoldItalic, Gentium Book Plus Italic/BoldItalic)
+ - `source/masters/GentiumPlusMaster-Regular.ufo`
+ - `source/masters/GentiumPlusMaster-ExtraBold.ufo`
+ - `source/masters/GentiumPlusMaster-Italic.ufo`
+ - `source/masters/GentiumPlusMaster-ExtraBoldItalic.ufo`
+- **Feature files**: `.feax` format (SIL extended, not standard `.fea`)
+- **Custom build steps**: `psfchangettfglyphnames`, `ttfautohint`, TypeTuner, `.feax` -> `.fea` conversion
+- **Graphite**: Sources present but commented out in v6.101 wscript
+- **Latest version**: v6.200 (2023-02-01), with active development continuing
+
+### Why config.yaml Is Not Possible
+
+The smith build system uses several SIL-specific tools and formats that have no gftools-builder equivalent:
+1. **`.feax` files**: Extended OpenType feature format requiring pysilfont preprocessing
+2. **`psfchangettfglyphnames`**: Post-processing step for TTF glyph naming
+3. **`ttfautohint`**: Custom auto-hinting with reference fonts
+4. **TypeTuner**: SIL's font customization technology
+5. **`classes.xml`**: Custom class definitions separate from the designspace
+
+Without these, gftools-builder/fontmake would produce significantly different output from the official release binaries.
+
+## Conclusion
+
+The METADATA.pb source block needs a `commit` hash added. No `config_yaml` is possible due to the smith build system.
+
+### Recommended METADATA.pb Source Block
+
+```
+source {
+ repository_url: "https://github.com/silnrsi/font-gentium"
+ commit: "7ac5e5ca61b776c5b8df4522c04b9707573ffd42"
+ archive_url: "https://github.com/silnrsi/font-gentium/releases/download/v6.101/GentiumPlus-6.101.zip"
+ files {
+ source_file: "GentiumPlus-6.101/OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "GentiumPlus-6.101/GentiumPlus-Regular.ttf"
+ dest_file: "GentiumPlus-Regular.ttf"
+ }
+ files {
+ source_file: "GentiumPlus-6.101/GentiumPlus-Italic.ttf"
+ dest_file: "GentiumPlus-Italic.ttf"
+ }
+ files {
+ source_file: "GentiumPlus-6.101/GentiumPlus-Bold.ttf"
+ dest_file: "GentiumPlus-Bold.ttf"
+ }
+ files {
+ source_file: "GentiumPlus-6.101/GentiumPlus-BoldItalic.ttf"
+ dest_file: "GentiumPlus-BoldItalic.ttf"
+ }
+ branch: "master"
+}
+```
+
+### Status: `no_config_possible`
+### Confidence: HIGH
--- /dev/null
+# Investigation Report: Geologica
+
+## Summary
+
+Geologica is a variable sans-serif typeface designed by Monokrom (Sindre Bremnes and Frode Helland), added to Google Fonts on 2023-04-12. The source block in METADATA.pb is complete with repository URL, commit hash, and config_yaml path. All data has been verified against the upstream repository and the onboarding commit message.
+
+## Key Findings
+
+| Field | Value |
+|--------------------|----------------------------------------------------------------------------|
+| Family Name | Geologica |
+| Designer | Monokrom, Sindre Bremnes, Frode Helland |
+| Date Added | 2023-04-12 |
+| Repository URL | https://github.com/googlefonts/geologica |
+| Commit Hash | 685f38d7c9e86b0c8530204c97ddcaf6558dd17b |
+| Config YAML | sources/config.yaml |
+| Source Files | sources/master_ufo/Geologica.designspace (+ 9 UFO masters) |
+| Status | complete |
+| Confidence | HIGH |
+
+## Investigation Details
+
+### METADATA.pb Analysis
+
+The current METADATA.pb has a complete source block:
+
+```
+source {
+ repository_url: "https://github.com/googlefonts/geologica"
+ commit: "685f38d7c9e86b0c8530204c97ddcaf6558dd17b"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "documentation/DESCRIPTION.en_us.html"
+ dest_file: "DESCRIPTION.en_us.html"
+ }
+ files {
+ source_file: "fonts/variable/Geologica[CRSV,SHRP,slnt,wght].ttf"
+ dest_file: "Geologica[CRSV,SHRP,slnt,wght].ttf"
+ }
+ branch: "main"
+ config_yaml: "sources/config.yaml"
+}
+```
+
+### Onboarding PR and Commit
+
+The font was onboarded via PR #6083, merged on 2023-04-26. The onboarding commit is `1df853d2`:
+
+> [gftools-packager] Geologica: Version 1.010;gftools[0.9.28] added
+>
+> Geologica Version 1.010;gftools[0.9.28] taken from the upstream repo https://github.com/googlefonts/geologica at commit https://github.com/googlefonts/geologica/commit/685f38d7c9e86b0c8530204c97ddcaf6558dd17b.
+
+The commit hash `685f38d7` in METADATA.pb matches the onboarding commit message exactly.
+
+### Upstream Repository Verification
+
+The upstream repo at `https://github.com/googlefonts/geologica` is cached at `upstream_repos/fontc_crater_cache/googlefonts/geologica/`. The repo has a single commit (the merge commit `685f38d7` that is HEAD of main), confirming this is the exact state used for onboarding.
+
+At commit `685f38d7`:
+- **config.yaml** exists at `sources/config.yaml` and references `master_ufo/Geologica.designspace`
+- **Source files**: 9 UFO masters + 1 designspace file in `sources/master_ufo/`
+- **Variable font**: 4 axes (CRSV, SHRP, slnt, wght)
+
+The config.yaml specifies:
+- Source: `master_ufo/Geologica.designspace`
+- Axis order: SHRP, wght, CRSV, slnt
+- Family name: "Geologica"
+- Build options: OTF and webfont disabled
+
+### Source Block History
+
+The source block was initially added via `upstream.yaml` during onboarding, then migrated into METADATA.pb on 2024-04-03 (commit `66f91f10`). The `config_yaml` field was added later in the batch port from fontc_crater targets (commit `19cdcec5`, 2025-03-31).
+
+## Conclusion
+
+### Current METADATA.pb Source Block (Already Correct)
+
+```
+source {
+ repository_url: "https://github.com/googlefonts/geologica"
+ commit: "685f38d7c9e86b0c8530204c97ddcaf6558dd17b"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "documentation/DESCRIPTION.en_us.html"
+ dest_file: "DESCRIPTION.en_us.html"
+ }
+ files {
+ source_file: "fonts/variable/Geologica[CRSV,SHRP,slnt,wght].ttf"
+ dest_file: "Geologica[CRSV,SHRP,slnt,wght].ttf"
+ }
+ branch: "main"
+ config_yaml: "sources/config.yaml"
+}
+```
+
+### Status: complete
+
+All source metadata fields are present and verified. The repository URL, commit hash, and config_yaml path are all correct. No changes needed.
--- /dev/null
+# Investigation Report: Geom
+
+## Summary
+
+Geom is a variable geometric sans-serif typeface designed by Thanos Poulakidas, added to Google Fonts on 2025-11-14. The source block in METADATA.pb is complete with repository URL, commit hash, and config_yaml path. All data has been verified against the upstream repository and the onboarding commit message.
+
+## Key Findings
+
+| Field | Value |
+|--------------------|----------------------------------------------------------------------------|
+| Family Name | Geom |
+| Designer | Thanos Poulakidas |
+| Date Added | 2025-11-14 |
+| Repository URL | https://github.com/ThanosPoulakidas/Geom |
+| Commit Hash | c20a14c68c717e28fdb6e1cc7cc6b453fef5fef7 |
+| Config YAML | sources/config.yaml |
+| Source Files | sources/Geom.glyphs, sources/Geom-Italic.glyphs |
+| Status | complete |
+| Confidence | HIGH |
+
+## Investigation Details
+
+### METADATA.pb Analysis
+
+The current METADATA.pb has a complete source block:
+
+```
+source {
+ repository_url: "https://github.com/ThanosPoulakidas/Geom"
+ commit: "c20a14c68c717e28fdb6e1cc7cc6b453fef5fef7"
+ config_yaml: "sources/config.yaml"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "fonts/variable/Geom[wght].ttf"
+ dest_file: "Geom[wght].ttf"
+ }
+ files {
+ source_file: "fonts/variable/Geom-Italic[wght].ttf"
+ dest_file: "Geom-Italic[wght].ttf"
+ }
+ branch: "main"
+}
+```
+
+### Onboarding PR and Commit
+
+The font was onboarded via PR #9998, merged on 2025-11-20. The onboarding commit is `56f2b097`:
+
+> Geom: Version 1.102 added
+>
+> Taken from the upstream repo https://github.com/ThanosPoulakidas/Geom at commit https://github.com/ThanosPoulakidas/Geom/commit/c20a14c68c717e28fdb6e1cc7cc6b453fef5fef7.
+
+The commit hash `c20a14c6` in METADATA.pb matches the onboarding commit message exactly.
+
+### Upstream Repository Verification
+
+The upstream repo at `https://github.com/ThanosPoulakidas/Geom` is cached at `upstream_repos/fontc_crater_cache/ThanosPoulakidas/Geom/`. The repo has a single commit (`c20a14c6`, "Merge pull request #8 from emmamarichal/main", dated 2025-11-14), confirming this is the exact state used for onboarding.
+
+At commit `c20a14c6`:
+- **config.yaml** exists at `sources/config.yaml`
+- **Source files**: `sources/Geom.glyphs` and `sources/Geom-Italic.glyphs` (Glyphs format)
+- **Variable fonts**: 2 files (upright and italic), each with wght axis (300-900)
+
+The config.yaml specifies:
+- Sources: `Geom.glyphs` and `Geom-Italic.glyphs`
+- Axis order: wght, ital
+- Family name: "Geom"
+- Build options: removeOutlineOverlaps disabled, cleanUp enabled
+
+### config_yaml Field Addition
+
+The `config_yaml: "sources/config.yaml"` field was added to METADATA.pb in a later batch commit (`34926685`, 2026-02-16) that added config_yaml for 15 font families. This is a valid enrichment -- the config.yaml existed in the upstream repo at the onboarding commit.
+
+### Onboarding Author
+
+The onboarding was performed by Emma Marichal (emmamarichal), as evidenced by:
+- The google/fonts onboarding commit author: Emma Marichal
+- The upstream merge commit referencing PR #8 from `emmamarichal/main`
+
+## Conclusion
+
+### Current METADATA.pb Source Block (Already Correct)
+
+```
+source {
+ repository_url: "https://github.com/ThanosPoulakidas/Geom"
+ commit: "c20a14c68c717e28fdb6e1cc7cc6b453fef5fef7"
+ config_yaml: "sources/config.yaml"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "fonts/variable/Geom[wght].ttf"
+ dest_file: "Geom[wght].ttf"
+ }
+ files {
+ source_file: "fonts/variable/Geom-Italic[wght].ttf"
+ dest_file: "Geom-Italic[wght].ttf"
+ }
+ branch: "main"
+}
+```
+
+### Status: complete
+
+All source metadata fields are present and verified. The repository URL, commit hash, and config_yaml path are all correct. No changes needed.
--- /dev/null
+# Investigation: Georama
+
+## Summary
+
+Georama is a variable-width sans-serif typeface designed by Production Type, onboarded to Google Fonts in July 2020 (v1.000) and updated to v1.001 in May 2021. The METADATA.pb source block is already complete with a correct repository URL, commit hash, and config_yaml path.
+
+## Key Findings
+
+| Field | Value |
+|-------------------|-------|
+| **Family Name** | Georama |
+| **Designer** | Production Type |
+| **Repository URL**| https://github.com/productiontype/Georama |
+| **Commit Hash** | `1b063b6256c228a56d13b8b2f8f1d807f41467f8` |
+| **Config YAML** | `sources/builder.yaml` |
+| **Branch** | master |
+| **Status** | complete |
+| **Confidence** | HIGH |
+
+## Investigation Details
+
+### METADATA.pb Current State
+
+The source block is already fully populated:
+- `repository_url`: https://github.com/productiontype/Georama
+- `commit`: 1b063b6256c228a56d13b8b2f8f1d807f41467f8
+- `config_yaml`: sources/builder.yaml
+- `branch`: master
+- File mappings for OFL.txt, DESCRIPTION, and both variable font files
+
+### Onboarding History in google/fonts
+
+1. **Initial onboarding** (PR #2578, commit `d8f2f5f8f`, 2020-07-29): Georama 1.000 added by Yanone. Included variable fonts and static instances.
+2. **Version 1.001 update** (PR #3358, commit `d9733b43f`, 2021-05-21): Updated via gftools-packager. Commit message explicitly states: "Georama Version 1.001 taken from the upstream repo https://github.com/productiontype/Georama.git at commit https://github.com/productiontype/Georama/commit/1b063b6256c228a56d13b8b2f8f1d807f41467f8." Static instances were removed in this update.
+3. **Source info added** (commit `f766d186a`, 2025-04-02): Felipe Sanches added the source block referencing PR #3358.
+
+### Upstream Repository Verification
+
+The upstream repo at `upstream_repos/fontc_crater_cache/productiontype/Georama` contains:
+- Only a single commit: `1b063b625` ("Added family name to builder.yaml") dated 2021-05-20
+- This commit hash matches exactly what is recorded in METADATA.pb
+- The repo is on the `master` branch
+
+### Source Files
+
+The upstream repo contains proper gftools-builder compatible sources:
+- `sources/Georama.designspace` (Roman)
+- `sources/Georama-Italic.designspace` (Italic)
+- Multiple UFO master files (4 Roman masters, 4 Italic masters)
+- `sources/builder.yaml` config file
+
+### Config YAML Content
+
+```yaml
+sources:
+ - Georama.designspace
+ - Georama-Italic.designspace
+axisOrder:
+ - wdth
+ - wght
+ - ital
+familyName: Georama
+includeSourceFixes: true
+buildVariable: true
+buildStatic: false
+buildOTF: false
+outputDir: "../fonts"
+```
+
+### Commit Hash Verification
+
+The commit `1b063b625` is the only commit in the upstream repo, and it was made on 2021-05-20, one day before the google/fonts PR #3358 was merged on 2021-05-21. The gftools-packager message in the commit body explicitly references this exact commit. The binary font files at this commit match in size with the files in google/fonts. **Confidence: HIGH**.
+
+## Conclusion
+
+The METADATA.pb source block for Georama is already complete and accurate. No changes needed.
+
+### Recommended METADATA.pb Source Block
+
+```
+source {
+ repository_url: "https://github.com/productiontype/Georama"
+ commit: "1b063b6256c228a56d13b8b2f8f1d807f41467f8"
+ config_yaml: "sources/builder.yaml"
+ files {
+ source_file: "ofl.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "DESCRIPTION.en_us.html"
+ dest_file: "DESCRIPTION.en_us.html"
+ }
+ files {
+ source_file: "fonts/variable/Georama[wdth,wght].ttf"
+ dest_file: "Georama[wdth,wght].ttf"
+ }
+ files {
+ source_file: "fonts/variable/Georama-Italic[wdth,wght].ttf"
+ dest_file: "Georama-Italic[wdth,wght].ttf"
+ }
+ branch: "master"
+}
+```
+
+**Status**: complete
+**Confidence**: HIGH
--- /dev/null
+# Investigation Report: Gideon Roman
+
+## Summary
+
+Gideon Roman is a display serif typeface designed by Robert Leuschke, onboarded to Google Fonts on 2021-08-26. The upstream repository is `googlefonts/gideon`, which contains a single commit with the full project. The METADATA.pb source block is complete and accurate, with the correct commit hash, repository URL, and config path.
+
+## Key Findings
+
+| Field | Value |
+|-------------------|--------------------------------------------------------------------|
+| Family Name | Gideon Roman |
+| Designer | Robert Leuschke |
+| Repository URL | https://github.com/googlefonts/gideon |
+| Commit Hash | c7220310f3d5a41af5c7906b3c33672a0a2146c8 |
+| Branch | master |
+| Config Path | sources/config.yml |
+| Source Format | .glyphs (sources/GideonRoman.glyphs) |
+| Status | **complete** |
+| Confidence | HIGH |
+
+## Investigation Details
+
+### METADATA.pb Analysis
+
+The existing source block in `ofl/gideonroman/METADATA.pb` contains:
+- `repository_url`: https://github.com/googlefonts/gideon
+- `commit`: c7220310f3d5a41af5c7906b3c33672a0a2146c8
+- `branch`: master
+- `config_yaml`: sources/config.yml
+- File mappings for OFL.txt, DESCRIPTION.en_us.html, and GideonRoman-Regular.ttf
+
+### Google Fonts Git History
+
+The onboarding commit in google/fonts is `b1573ad2c` (2021-08-31) by Viviana Monsalve:
+
+> Gideon Roman: Version 2.010 added (#3770)
+>
+> [gftools-packager] Gideon Roman: Version 2.010 added
+>
+> Gideon Roman Version 2.010 taken from the upstream repo https://github.com/googlefonts/gideon at commit https://github.com/googlefonts/gideon/commit/c7220310f3d5a41af5c7906b3c33672a0a2146c8.
+
+This was PR #3770. The commit message explicitly references the upstream commit hash, which matches what is in METADATA.pb.
+
+### Upstream Repository Verification
+
+The upstream repo at `googlefonts/gideon` (cached at `fontc_crater_cache/googlefonts/gideon/`) contains exactly one commit:
+
+- `c722031` - "Renamed to Gideon Roman" (2021-08-26, by Viviana Monsalve)
+
+This is the only commit in the entire repository, so there is no ambiguity about which commit was used.
+
+### Source Files and Config
+
+The repository contains:
+- `sources/GideonRoman.glyphs` -- Glyphs source file
+- `sources/config.yml` -- gftools-builder configuration (note: `.yml` extension, not `.yaml`)
+
+The config.yml content:
+```yaml
+sources:
+ - GideonRoman.glyphs
+familyName: "Gideon Roman"
+buildVariable: false
+autohintTTF: false
+```
+
+The METADATA.pb correctly references `sources/config.yml` (with the `.yml` extension).
+
+### No Override Config
+
+There is no override `config.yaml` in the google/fonts family directory (`ofl/gideonroman/`). The upstream config is used directly.
+
+## Conclusion
+
+The METADATA.pb source block for Gideon Roman is complete and accurate. No corrections are needed.
+
+### Recommended METADATA.pb Source Block
+
+```
+source {
+ repository_url: "https://github.com/googlefonts/gideon"
+ commit: "c7220310f3d5a41af5c7906b3c33672a0a2146c8"
+ files {
+ source_file: "OFL.txt"
+ dest_file: "OFL.txt"
+ }
+ files {
+ source_file: "DESCRIPTION.en_us.html"
+ dest_file: "DESCRIPTION.en_us.html"
+ }
+ files {
+ source_file: "fonts/ttf/GideonRoman-Regular.ttf"
+ dest_file: "GideonRoman-Regular.ttf"
+ }
+ branch: "master"
+ config_yaml: "sources/config.yml"
+}
+```
+
+**Status: complete** -- All source metadata is correct and verified.