diff --git a/AGENTS.md b/AGENTS.md
index 654d186..608d9a7 100644
--- a/AGENTS.md
+++ b/AGENTS.md
@@ -29,7 +29,8 @@ gh project item-list 2 --owner traverse-framework --format json --limit 300 \
| `llm-mcp-cursor-live-smoke` | **Done** (#240) | Cursor MCP Mode A stdio evidence |
| `llm-mcp-claude-live-smoke` | **Done** (#241) | Claude Desktop/Code MCP Mode A evidence |
| `kit-runner-persona-docs` | **Done** (#273) | Persona runbook + embedded onboarding |
-| `new-app-author-e2e` | **In Progress** | CLI `app new` → App-Refs layout + Web host rewrite |
+| `new-app-author-e2e` | **Done** (#275) | CLI `app new` → App-Refs layout + Web host rewrite |
+| `fix-nightly-native-macos-windows` | **In Progress** | Swift 6 Sendable mappers + WinUI test compile of PresentationMapper |
| `llm-mcp-mode-a-spec119-scaffold` | **Done** (#271) | Spec 119 consumer scaffold (fail-closed); live kit execute stays `llm-mcp-traverse-starter-catalog` |
| `llm-mcp-traverse-starter-catalog` | **Blocked** | Spec 119 Approved; wait on Mode A `traverse-mcp` implement. No kit content groups in v1 (FR-007) |
| `loop-wf1-registry-deps` | **Done** (#263) | Digest inventory in `docs/loop-registry-deps.md` |
diff --git a/apps/doc-approval/DocApprovalCore/Sources/DocApprovalCore/PresentationMapper.swift b/apps/doc-approval/DocApprovalCore/Sources/DocApprovalCore/PresentationMapper.swift
index 64d33c5..a8a1991 100644
--- a/apps/doc-approval/DocApprovalCore/Sources/DocApprovalCore/PresentationMapper.swift
+++ b/apps/doc-approval/DocApprovalCore/Sources/DocApprovalCore/PresentationMapper.swift
@@ -10,7 +10,7 @@ public enum PresentationState: String, Equatable, Sendable {
case error
}
-public struct PresentationSnapshot: Equatable, Sendable {
+public struct PresentationSnapshot: Equatable, @unchecked Sendable {
public let state: PresentationState
public let errorMessage: String?
public let output: Any?
@@ -31,7 +31,7 @@ public enum CapabilityPhase: String, Equatable, Sendable {
case result
}
-public struct CapabilityProgressStep: Equatable, Sendable {
+public struct CapabilityProgressStep: Equatable, @unchecked Sendable {
public let capabilityId: String
public let phase: CapabilityPhase
public let sequence: UInt64
@@ -61,7 +61,7 @@ public struct CapabilityProgressStep: Equatable, Sendable {
}
/// Minimal embedder event fields required by the mapper.
-public struct EmbedderEventLike: Equatable, Sendable {
+public struct EmbedderEventLike: Equatable, @unchecked Sendable {
public let eventType: String
public let sequence: UInt64
public let data: [String: Any]
diff --git a/apps/loop/LoopCore/Sources/LoopCore/PresentationMapper.swift b/apps/loop/LoopCore/Sources/LoopCore/PresentationMapper.swift
index 64d33c5..a8a1991 100644
--- a/apps/loop/LoopCore/Sources/LoopCore/PresentationMapper.swift
+++ b/apps/loop/LoopCore/Sources/LoopCore/PresentationMapper.swift
@@ -10,7 +10,7 @@ public enum PresentationState: String, Equatable, Sendable {
case error
}
-public struct PresentationSnapshot: Equatable, Sendable {
+public struct PresentationSnapshot: Equatable, @unchecked Sendable {
public let state: PresentationState
public let errorMessage: String?
public let output: Any?
@@ -31,7 +31,7 @@ public enum CapabilityPhase: String, Equatable, Sendable {
case result
}
-public struct CapabilityProgressStep: Equatable, Sendable {
+public struct CapabilityProgressStep: Equatable, @unchecked Sendable {
public let capabilityId: String
public let phase: CapabilityPhase
public let sequence: UInt64
@@ -61,7 +61,7 @@ public struct CapabilityProgressStep: Equatable, Sendable {
}
/// Minimal embedder event fields required by the mapper.
-public struct EmbedderEventLike: Equatable, Sendable {
+public struct EmbedderEventLike: Equatable, @unchecked Sendable {
public let eventType: String
public let sequence: UInt64
public let data: [String: Any]
diff --git a/apps/meeting-notes/MeetingNotesCore/Sources/MeetingNotesCore/PresentationMapper.swift b/apps/meeting-notes/MeetingNotesCore/Sources/MeetingNotesCore/PresentationMapper.swift
index 64d33c5..a8a1991 100644
--- a/apps/meeting-notes/MeetingNotesCore/Sources/MeetingNotesCore/PresentationMapper.swift
+++ b/apps/meeting-notes/MeetingNotesCore/Sources/MeetingNotesCore/PresentationMapper.swift
@@ -10,7 +10,7 @@ public enum PresentationState: String, Equatable, Sendable {
case error
}
-public struct PresentationSnapshot: Equatable, Sendable {
+public struct PresentationSnapshot: Equatable, @unchecked Sendable {
public let state: PresentationState
public let errorMessage: String?
public let output: Any?
@@ -31,7 +31,7 @@ public enum CapabilityPhase: String, Equatable, Sendable {
case result
}
-public struct CapabilityProgressStep: Equatable, Sendable {
+public struct CapabilityProgressStep: Equatable, @unchecked Sendable {
public let capabilityId: String
public let phase: CapabilityPhase
public let sequence: UInt64
@@ -61,7 +61,7 @@ public struct CapabilityProgressStep: Equatable, Sendable {
}
/// Minimal embedder event fields required by the mapper.
-public struct EmbedderEventLike: Equatable, Sendable {
+public struct EmbedderEventLike: Equatable, @unchecked Sendable {
public let eventType: String
public let sequence: UInt64
public let data: [String: Any]
diff --git a/apps/traverse-starter/TraverseCore/Sources/TraverseCore/PresentationMapper.swift b/apps/traverse-starter/TraverseCore/Sources/TraverseCore/PresentationMapper.swift
index 64d33c5..a8a1991 100644
--- a/apps/traverse-starter/TraverseCore/Sources/TraverseCore/PresentationMapper.swift
+++ b/apps/traverse-starter/TraverseCore/Sources/TraverseCore/PresentationMapper.swift
@@ -10,7 +10,7 @@ public enum PresentationState: String, Equatable, Sendable {
case error
}
-public struct PresentationSnapshot: Equatable, Sendable {
+public struct PresentationSnapshot: Equatable, @unchecked Sendable {
public let state: PresentationState
public let errorMessage: String?
public let output: Any?
@@ -31,7 +31,7 @@ public enum CapabilityPhase: String, Equatable, Sendable {
case result
}
-public struct CapabilityProgressStep: Equatable, Sendable {
+public struct CapabilityProgressStep: Equatable, @unchecked Sendable {
public let capabilityId: String
public let phase: CapabilityPhase
public let sequence: UInt64
@@ -61,7 +61,7 @@ public struct CapabilityProgressStep: Equatable, Sendable {
}
/// Minimal embedder event fields required by the mapper.
-public struct EmbedderEventLike: Equatable, Sendable {
+public struct EmbedderEventLike: Equatable, @unchecked Sendable {
public let eventType: String
public let sequence: UInt64
public let data: [String: Any]
diff --git a/apps/traverse-starter/windows-winui/TraverseStarter.Tests/TraverseStarter.Tests.csproj b/apps/traverse-starter/windows-winui/TraverseStarter.Tests/TraverseStarter.Tests.csproj
index 5fc4d89..83c3207 100644
--- a/apps/traverse-starter/windows-winui/TraverseStarter.Tests/TraverseStarter.Tests.csproj
+++ b/apps/traverse-starter/windows-winui/TraverseStarter.Tests/TraverseStarter.Tests.csproj
@@ -28,6 +28,7 @@
+