Fixture-first iOS prototype
Driftmark
A SwiftUI review prototype for examining API changes, affected call sites, supporting evidence, and patch suggestions.

- Categories
- iOS
- Year
- 2026
- Role
- Creator
Premise
Put human review between a detected change and a proposed patch.
Driftmark demonstrates three native review surfaces: an overview of the finding, the indexed call sites, and an in-memory patch suggestion.
The current app uses a deterministic mail-provider migration fixture. It does not inspect a repository, execute code, fetch provider documentation, or write a patch.
Interaction
A finding is reviewed before any code could change.
Scan fixture
Start a deterministic local scan that changes only the current interface state.
Read finding
Review the provider change, affected surface, and sample response label.
Inspect call sites
Move through the three synthetic locations tied to the change.
Check evidence
Compare the indexed source text with the supporting specification fixture.
Simulate export
Receive a local confirmation without creating, writing, or applying a patch.
System
A small native shell around fixture models.
The app is intentionally independent from a real analysis engine so the review flow can be tested without repository or execution access.
Overview
- Finding summary
- Sample counts
- Fixture disclosure
- Scan state
Call sites
- Synthetic paths
- Indexed source text
- Affected locations
- Review toggles
Patch
- Suggested change
- Supporting evidence
- In-memory review
- Simulated receipt
- Runtime
- The standalone SwiftUI Simulator app has no package dependency on another workspace.
- State
- Review choices and the export receipt exist only for the current app session.
Boundaries
The prototype never crosses into repository execution.
| Surface | What it demonstrates | What it does not do |
|---|---|---|
| Scan | A local progress and result state | Read a repository or invoke static analysis |
| Evidence | Synthetic specification and source spans | Fetch provider documentation or prove a real change |
| Patch | A human-reviewable suggestion | Create, write, apply, or commit a patch |
| App session | In-memory toggles and receipts | Persist data, contact a network, or request credentials |
Build notes
The repository keeps the native bundle reproducible.
Project-free build
Shell scripts use the Swift compiler and Xcode asset tools to build the Simulator application.
Verification
Continuous integration lints Swift, builds the bundle, validates metadata and assets, and verifies its ad-hoc signature.
Editable identity
The application icon ships with both a compiled asset source and an editable SVG master.
Still unresolved
A real analyzer would need a much larger security boundary.
Indexing
Repository parsing, provider-spec ingestion, and change detection are not implemented.
Permissions
A production tool would need explicit repository scope, secure credentials, and auditable read access.
Patch verification
Real output would need file writes, Git integration, build execution, tests, and a safe rollback path.