Context
The Cache SymbolTests DerivedData step in .github/workflows/macOS.yml keys on:
```
key: symboltests-${{ matrix.xcode-version }}-${{ hashFiles('Tests/Projects/SymbolTests//*.swift', 'Tests/Projects/SymbolTests//*.pbxproj') }}
```
It does not include the workflow file itself. PR #65 added several new `xcodebuild` build-setting overrides (`CODE_SIGNING_ALLOWED=NO`, `ARCHS=arm64`) that affect the produced framework. If a future change adds or removes one of these overrides without bumping the Xcode pin or touching SymbolTests sources, the cache key stays the same and a stale cached artifact will be reused.
Suggested fix
Add the workflow file to the hash inputs:
```yaml
key: symboltests-${{ matrix.xcode-version }}-${{ hashFiles('.github/workflows/macOS.yml', 'Tests/Projects/SymbolTests//*.swift', 'Tests/Projects/SymbolTests//*.pbxproj') }}
```
Priority
Low — current build-setting overrides are stable; the risk only materializes when someone modifies them.
Source
Code review on PR #65 (post-merge follow-up).
Context
The
Cache SymbolTests DerivedDatastep in.github/workflows/macOS.ymlkeys on:```
key: symboltests-${{ matrix.xcode-version }}-${{ hashFiles('Tests/Projects/SymbolTests//*.swift', 'Tests/Projects/SymbolTests//*.pbxproj') }}
```
It does not include the workflow file itself. PR #65 added several new `xcodebuild` build-setting overrides (`CODE_SIGNING_ALLOWED=NO`, `ARCHS=arm64`) that affect the produced framework. If a future change adds or removes one of these overrides without bumping the Xcode pin or touching SymbolTests sources, the cache key stays the same and a stale cached artifact will be reused.
Suggested fix
Add the workflow file to the hash inputs:
```yaml
key: symboltests-${{ matrix.xcode-version }}-${{ hashFiles('.github/workflows/macOS.yml', 'Tests/Projects/SymbolTests//*.swift', 'Tests/Projects/SymbolTests//*.pbxproj') }}
```
Priority
Low — current build-setting overrides are stable; the risk only materializes when someone modifies them.
Source
Code review on PR #65 (post-merge follow-up).