# Changelog

## Score

- CAI 57 → 58 (+1.2)

## Lenses

- Code Health 80 → 80 (+0.0)
- Architecture 89 → 88 (-1.5)
- Maturity 58 → 62 (+3.6)
- Readiness 48 → 49 (+0.8)
- Security 65 → 65 (+0.0)
- Domain Modelling 100 → 100 (+0.0)
- Performance 63 → 63 (+0.0)

## Resolved (7)

- Flaky test: .::XcodeProjTests.XCSchemeIntegrationTests.test_write_runnableWithoutBuildableReferenceScheme
- Inconsistent overloading strategy for write operations. While overloading is acceptable, the progression of parameters is not uniform. `PBXProj` and `XCWorkspace` use `write(path: Path, override: Bool)` and `write(path: Path, override: Bool, outputSettings: PBXOutputSettings)`. `XcodeProj` adds a third overload with `format` and `xcprojOutputSettings` which are specific to the composite project structure, but the naming and parameter grouping could be clearer. More importantly, `XcodeProj` has specific methods like `writePBXProj`, `writeWorkspace`, etc., which duplicate the functionality of calling `write` on the sub-components directly, potentially confusing users about whether they should modify the sub-object or the parent.
- Off-boarding risk: anonymized user #1
- PR-triggered workflow without a permissions block
- Redundant constructors for path initialization. Similar to `XcodeProj`, `XCScheme` exposes both `init(path: Path)` and `init(pathString: String)`, duplicating the intent of loading a scheme from a file path.
- Redundant constructors for path initialization. The library provides two distinct initializers for loading a project from a path: one accepting a `Path` type and another accepting a `String`. This forces users to choose based on their input type rather than intent, and creates unnecessary API surface duplication.
- Redundant constructors for path initialization. `XCWorkspace` also exposes both `init(path: Path)` and `init(pathString: String)`, creating a consistent pattern of redundancy across the main container types.

## New (3)

- Off-boarding risk: anonymized user #1
- PR-triggered workflow without a permissions block (.github/workflows/conventional-pr.yml)
- PR-triggered workflow without a permissions block (.github/workflows/xcodeproj.yml)

## Changes since last survey

- 4 commits — 4 feature/other, 0 fixes

## By area

- (root) — 4 commits

## Notable commits

- change: [Release] XcodeProj 9.17.6
- change: chore(deps): update dependency tuist to v4.213.0 (#1195)
- change: chore(deps): update dependency tuist to v4.214.0 (#1196)
- change: chore(spm): update dependency tadija/aexml to from: "4.7.3" (#1194)
