# Investigation: Big Shoulders Text SC

- **Family name**: Big Shoulders Text SC
- **Slug**: bigshoulderstextsc
- **Designer**: Patric King
- **Date added**: 2024-05-30
- **Category**: DISPLAY
- **Status**: complete
- **Confidence**: HIGH
- **Model**: Claude Opus 4.6

## Source Block (METADATA.pb)

```
source {
  repository_url: "https://github.com/xotypeco/big_shoulders"
  commit: "0b3d09a86862b19efae28eae0cd868f17c476b20"
  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: "Big-Shoulders/fonts/variable/text/BigShouldersTextSC[wght].ttf"
    dest_file: "BigShouldersTextSC[wght].ttf"
  }
  branch: "master"
}
```

## Repository

- **URL**: https://github.com/xotypeco/big_shoulders
- **Branch**: master
- **Latest commit on master**: `8ba99c9` (2025-02-06) "Update README.md"
- **Referenced commit**: `0b3d09a` (2024-02-26) "regenerate font files"
- **Commits after referenced**: 14 additional commits exist on master after `0b3d09a`

## Config

- **Upstream config**: `Big-Shoulders/sources/config.yml` exists in the upstream repo but is a legacy gftools-builder config for the original Big Shoulders 2-axis variable font, not for the Text SC variant.
- **Override config.yaml**: Present at `ofl/bigshoulderstextsc/config.yaml` in google/fonts. This override was created as part of the initial onboarding commit.
- **config_yaml field in METADATA.pb**: Not set (correct -- google-fonts-sources auto-detects the local override).

### Override config.yaml contents

The override config.yaml defines a gftools-builder recipe that:
1. Builds from `Big-Shoulders/sources/BigShoulders.glyphs`
2. Creates the variable font, subspaces to `opsz=10` (text optical size)
3. For the SC variant, applies `remapLayout` (`smcp -> ccmp`) to promote small caps to default
4. Renames the family to "Big Shoulders Text SC"

This recipe also builds `BigShouldersText[wght].ttf` (the non-SC variant), suggesting both Text and Text SC were built from the same config at onboarding time.

## Commit Verification

The commit `0b3d09a86862b19efae28eae0cd868f17c476b20` was verified:
- It exists in the upstream repo on the `master` branch, dated 2024-02-26
- The commit message is "regenerate font files" by XO Type Co
- The `.glyphs` source file (`Big-Shoulders/sources/BigShoulders.glyphs`) exists at this commit
- **Important**: The `BigShouldersTextSC[wght].ttf` variable font does NOT exist as a pre-built binary in the upstream repo at this commit (or at any commit). The Text SC variable font was generated by gftools-builder using the override config.yaml recipe at onboarding time.

## google/fonts History

1. `461776338` (2024-05-30) -- "Big Shoulders Text SC: Version 2.002 added" by Simon Cozens. Onboarding commit containing the font binary, METADATA.pb, DESCRIPTION.en_us.html, OFL.txt, and config.yaml. Commit body explicitly states: "Taken from the upstream repo https://github.com/xotypeco/big_shoulders at commit 0b3d09a86862b19efae28eae0cd868f17c476b20."
2. `43b8ff234` (2024-05-30) -- "Add SC line to description"
3. `1b3950469` (2024-06-25) -- "Update DESCRIPTION.en_us.html"
4. `6466fe7e8` (2024-06-25) -- "Update OFL.txt"

Merged via PR #7790 on 2024-06-25.

## Key Observations

- The Big Shoulders project is a large family with multiple sub-families (Display, Text, Inline, Stencil, and SC variants). They all share the same upstream repository.
- The Text SC variant does not have its own pre-built variable font in the upstream repo. Instead, it was built at onboarding time from the Glyphs source using the override config.yaml, which applies a small caps layout remap.
- The `files` block in METADATA.pb references `Big-Shoulders/fonts/variable/text/BigShouldersTextSC[wght].ttf` as the `source_file`, but this file does not exist in the upstream repo at the referenced commit. This path appears to be the expected output location if the upstream repo were to build it, but the actual binary was generated by the override config.
- The source block is otherwise complete with repository_url, commit hash, branch, and file mappings.
- The upstream repo has had 14 additional commits since the referenced `0b3d09a`, the most recent being `8ba99c9` (2025-02-06).

## Conclusion

The source metadata for Big Shoulders Text SC is **complete**. The repository URL and commit hash are correct and verified. The override config.yaml in google/fonts was created at onboarding time by Simon Cozens (PR #7790) and correctly builds the Text SC variable font from the shared Glyphs source. The `config_yaml` field is correctly omitted from METADATA.pb since the local override is auto-detected. No changes are needed.


## Correction (2026-05-28) — override config source path

**Model**: Claude Opus 4.8

fontc_crater reported `missing source '../Big-Shoulders/sources/BigShoulders.glyphs'` for the xotypeco/big_shoulders monorepo. The override `config.yaml` used paths prefixed with `../`, which the build harness resolves relative to the repository root and therefore escape the checkout. For this family the repo-escaping `../` prefix was removed (the source filename already matched the file present at the pinned commit): `Big-Shoulders/sources/BigShoulders.glyphs` (verified present at the pinned commit `0b3d09a`). The recipe output paths were made repo-root-relative likewise. The pinned commit is unchanged.

A local gftools-builder smoke-test of the corrected config built the variable TTFs successfully (RC=0), confirming the path fix is sufficient.
