XcodeBuildMCP Snapshot Fixture Review
Review guardrails for fixture and snapshot contract integrity.
Review scope
- Review-only by default.
- Do not edit product code unless the user explicitly requests implementation changes.
Files to inspect
src/snapshot-tests/__fixtures__/**
src/snapshot-tests/contracts.ts
src/snapshot-tests/fixture-io.ts
src/snapshot-tests/__tests__/fixture-io.test.ts
src/snapshot-tests/__tests__/json-normalize.test.ts
src/snapshot-tests/__tests__/json-fixture-schema.test.ts
xcodebuildmcp.com/app/docs/_content/testing.mdx
Guardrails
- Fixture updates map to intentional behavior changes.
- Do not update fixtures only to make tests pass.
- MCP, CLI, and JSON fixture updates stay aligned.
- JSON fixtures preserve stable structured output envelopes.
- Volatile values are normalized in code, not patched ad hoc in fixtures.
- Missing fixtures are generated through the snapshot update flow.
- Verify project-defined normalization sentinels in normalization code and tests before reporting
them as implausible fixture values. In particular,
99999 is an intentional sentinel for
volatile UI capture counts.
- Group every occurrence of the same root cause into one finding and list the affected fixtures.
Do not emit separate findings for equivalent CLI, MCP, text, or JSON drift.
- Do not repeat a finding that is already resolved by the current diff.
Review limits
- Review the changed fixtures and the directly relevant normalization or contract code only.
- Do not run snapshot or smoke suites as part of an automated PR review.
- Prefer one high-confidence cross-fixture finding over multiple speculative discrepancies.