Build Information
Failed to build ACP, reference main (6e7e67), with Swift 6.3 for Wasm on 26 Apr 2026 04:38:23 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4609320-2":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/swiftpackageindex/spi-images:wasm-6.3-latest swift build --swift-sdk swift-6.3-RELEASE_wasm 2>&1Build Log
========================================
RunAll
========================================
Builder version: 4.70.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/aptove/swift-sdk.git
Reference: main
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: git branch -m <name>
From https://github.com/aptove/swift-sdk
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at 6e7e67c fix: correct package URL, name, and client example in README
Cloned https://github.com/aptove/swift-sdk.git
Revision (git rev-parse @):
6e7e67c8e650997e5a6eca670e01dcec338b815b
SUCCESS checkout https://github.com/aptove/swift-sdk.git at main
========================================
Build
========================================
Selected platform: wasm
Swift version: 6.3
Building package at path: $PWD
https://github.com/aptove/swift-sdk.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-2":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/swiftpackageindex/spi-images:wasm-6.3-latest swift build --swift-sdk swift-6.3-RELEASE_wasm 2>&1
wasm-6.3-latest: Pulling from swiftpackageindex/spi-images
Digest: sha256:d69f4e7582c319245442d62a08b2d7c7fd5a0c0c69f5d2ef11d1530cd8d3329b
Status: Image is up to date for registry.gitlab.com/swiftpackageindex/spi-images:wasm-6.3-latest
Fetching https://github.com/apple/swift-log.git
Fetching https://github.com/apple/swift-collections.git
[1/23686] Fetching swift-collections
[1186/30335] Fetching swift-collections, swift-log
Fetched https://github.com/apple/swift-log.git from cache (1.52s)
Fetched https://github.com/apple/swift-collections.git from cache (1.55s)
Computing version for https://github.com/apple/swift-collections.git
Computed https://github.com/apple/swift-collections.git at 1.4.1 (2.47s)
Computing version for https://github.com/apple/swift-log.git
Computed https://github.com/apple/swift-log.git at 1.12.0 (0.65s)
Creating working copy for https://github.com/apple/swift-log.git
Working copy of https://github.com/apple/swift-log.git resolved at 1.12.0
Creating working copy for https://github.com/apple/swift-collections.git
Working copy of https://github.com/apple/swift-collections.git resolved at 1.4.1
warning: 'spi-builder-workspace': found 1 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
/host/spi-builder-workspace/Samples/EchoAgent/README.md
warning: 'spi-builder-workspace': found 1 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
/host/spi-builder-workspace/Samples/SimpleClient/README.md
warning: 'spi-builder-workspace': found 1 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
/host/spi-builder-workspace/Samples/InteractiveClient/README.md
warning: 'spi-builder-workspace': found 1 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
/host/spi-builder-workspace/Samples/SimpleAgentApp/README.md
Building for debugging...
[0/42] Write sources
[17/42] Write swift-version-24593BA9C3E375BF.txt
[19/66] Emitting module InternalCollectionsUtilities
[20/68] Compiling InternalCollectionsUtilities _SortedCollection.swift
[21/68] Compiling InternalCollectionsUtilities _UniqueCollection.swift
[22/68] Compiling InternalCollectionsUtilities LifetimeOverride.swift
[23/68] Compiling InternalCollectionsUtilities RandomAccessCollection+Offsets.swift
[24/68] Compiling InternalCollectionsUtilities Span+Extras.swift
[25/68] Compiling InternalCollectionsUtilities _UnsafeBitSet+_Word.swift
[26/68] Compiling InternalCollectionsUtilities _UnsafeBitSet.swift
[27/68] Compiling InternalCollectionsUtilities String+Padding.swift
[28/68] Compiling InternalCollectionsUtilities _UnsafeBitSet+Index.swift
[29/68] Compiling Logging LogHandler.swift
[30/68] Compiling InternalCollectionsUtilities UnsafeMutableRawBufferPointer+Extras.swift
[31/68] Compiling InternalCollectionsUtilities UnsafeRawBufferPointer+Extras.swift
[32/68] Compiling InternalCollectionsUtilities Debugging.swift
[33/68] Compiling InternalCollectionsUtilities Descriptions.swift
[34/68] Compiling InternalCollectionsUtilities FixedWidthInteger+roundUpToPowerOfTwo.swift
[35/68] Compiling InternalCollectionsUtilities UnsafeBufferPointer+Extras.swift
[36/68] Compiling InternalCollectionsUtilities UnsafeMutableBufferPointer+Extras.swift
[37/68] Compiling InternalCollectionsUtilities Integer rank.swift
[38/68] Compiling InternalCollectionsUtilities UInt+first and last set bit.swift
[39/68] Compiling InternalCollectionsUtilities UInt+reversed.swift
[40/69] Compiling Logging LogEvent.swift
[41/70] Wrapping AST for InternalCollectionsUtilities for debugging
[43/232] Compiling HeapModule Heap+Invariants.swift
[44/328] Compiling HeapModule Heap+ExpressibleByArrayLiteral.swift
[45/354] Compiling HashTreeCollections _HashNode+Lookups.swift
[46/354] Compiling HashTreeCollections _HashNode+Primitive Insertions.swift
[47/354] Compiling HashTreeCollections _HashTreeIterator.swift
[48/354] Compiling HashTreeCollections _HashTreeStatistics.swift
[49/360] Compiling HashTreeCollections _RawHashNode+UnsafeHandle.swift
[50/360] Compiling HashTreeCollections _RawHashNode.swift
[51/360] Compiling HashTreeCollections _UnmanagedHashNode.swift
[52/360] Compiling HashTreeCollections _UnsafePath.swift
[53/367] Compiling HashTreeCollections _HashNode+Structural merge.swift
[54/367] Compiling HashTreeCollections _AncestorHashSlots.swift
[55/367] Compiling HashTreeCollections _Bitmap.swift
[56/367] Compiling HashTreeCollections _Bucket.swift
[57/367] Compiling HashTreeCollections _Hash.swift
[58/367] Compiling HashTreeCollections _HashNode+Structural intersection.swift
[59/367] Compiling HashTreeCollections _HashNode+Structural isDisjoint.swift
[60/367] Compiling HashTreeCollections _HashNode+Structural isEqualSet.swift
[61/367] Compiling HashTreeCollections _HashNode+Structural isSubset.swift
[62/367] Compiling HashTreeCollections _HashNode+Structural mapValues.swift
[63/368] Compiling HashTreeCollections TreeDictionary+Codable.swift
[64/368] Compiling HashTreeCollections TreeDictionary+Collection.swift
[65/368] Compiling HashTreeCollections TreeDictionary+CustomReflectable.swift
[66/368] Compiling HashTreeCollections TreeDictionary+Debugging.swift
[67/368] Emitting module ContainersPreview
[68/368] Compiling HashTreeCollections _HashLevel.swift
[69/368] Compiling HashTreeCollections _HashNode+Builder.swift
[70/368] Compiling HashTreeCollections _HashNode+Debugging.swift
[71/368] Compiling HashTreeCollections _HashNode+Initializers.swift
[72/368] Compiling HashTreeCollections _HashNode+Invariants.swift
[73/368] Compiling ContainersPreview Box.swift
[74/368] Compiling ContainersPreview Inout.swift
[75/368] Compiling ContainersPreview InputSpan.swift
[76/368] Compiling ContainersPreview Shared.swift
[77/368] Compiling HeapModule _HeapNode.swift
[78/368] Compiling HeapModule Heap.swift
[79/368] Emitting module Logging
[80/368] Compiling Logging MetadataProvider.swift
[81/368] Compiling Logging Locks.swift
[82/368] Compiling HashTreeCollections _HashNode+Primitive Removals.swift
[83/368] Compiling HashTreeCollections _HashNode+Primitive Replacement.swift
[84/368] Compiling HashTreeCollections _HashNode+Storage.swift
[85/368] Compiling HashTreeCollections _HashNode+Structural compactMapValues.swift
[86/368] Compiling HashTreeCollections _HashNode+Structural filter.swift
[88/369] Emitting module HeapModule
[89/369] Compiling HeapModule Heap+Descriptions.swift
[90/369] Compiling HeapModule Heap+UnsafeHandle.swift
[90/369] Wrapping AST for ContainersPreview for debugging
[92/410] Wrapping AST for HeapModule for debugging
[94/410] Compiling HashTreeCollections TreeSet+Hashable.swift
[95/410] Compiling HashTreeCollections TreeSet+Sendable.swift
[96/410] Compiling HashTreeCollections TreeSet+Sequence.swift
[97/410] Compiling HashTreeCollections TreeSet+SetAlgebra Initializers.swift
[98/410] Compiling HashTreeCollections TreeSet+SetAlgebra basics.swift
[99/410] Compiling HashTreeCollections TreeSet+SetAlgebra formIntersection.swift
[100/410] Compiling HashTreeCollections TreeSet+SetAlgebra formSymmetricDifference.swift
[101/410] Compiling HashTreeCollections TreeSet+SetAlgebra formUnion.swift
[102/410] Compiling HashTreeCollections TreeSet+SetAlgebra intersection.swift
[103/410] Compiling HashTreeCollections TreeSet+SetAlgebra isDisjoint.swift
[104/420] Compiling HashTreeCollections _HashNode.swift
[105/420] Compiling HashTreeCollections _HashNodeHeader.swift
[106/420] Compiling HashTreeCollections _HashSlot.swift
[107/420] Compiling HashTreeCollections _HashStack.swift
[108/420] Compiling HashTreeCollections TreeDictionary+Equatable.swift
[109/420] Compiling HashTreeCollections TreeDictionary+ExpressibleByDictionaryLiteral.swift
[110/420] Compiling HashTreeCollections TreeDictionary+Filter.swift
[111/420] Compiling HashTreeCollections TreeDictionary+Hashable.swift
[112/420] Compiling HashTreeCollections TreeDictionary+Initializers.swift
[113/420] Compiling HashTreeCollections TreeDictionary+Keys.swift
[114/420] Compiling HashTreeCollections TreeDictionary+MapValues.swift
[115/420] Compiling HashTreeCollections TreeDictionary+Merge.swift
[116/420] Compiling HashTreeCollections TreeDictionary+Sendable.swift
[117/420] Compiling HashTreeCollections TreeDictionary+Sequence.swift
[118/427] Compiling DequeModule RigidDeque+Equatable.swift
[119/427] Compiling DequeModule RigidDeque+Experimental.swift
[120/427] Compiling DequeModule RigidDeque+Hashable.swift
[121/427] Compiling DequeModule RigidDeque+Initializers.swift
[122/427] Compiling DequeModule RigidDeque+Insertions.swift
[123/427] Compiling DequeModule RigidDeque+Prepend.swift
[124/427] Compiling DequeModule UniqueDeque+Consumption.swift
[125/427] Compiling DequeModule UniqueDeque+Container.swift
[126/427] Compiling DequeModule Deque+Testing.swift
[127/427] Compiling DequeModule Deque._Storage.swift
[128/427] Compiling DequeModule Deque._UnsafeHandle.swift
[129/427] Compiling DequeModule Deque.swift
[130/427] Compiling DequeModule _DequeBuffer.swift
[131/427] Compiling DequeModule _DequeBufferHeader.swift
[132/427] Compiling DequeModule RigidDeque+Append.swift
[133/434] Emitting module BitCollections
[143/434] Compiling BitCollections BitSet.Index.swift
[144/434] Compiling BitCollections BitSet._UnsafeHandle.swift
[145/434] Compiling HashTreeCollections _HashNode+UnsafeHandle.swift
[152/434] Compiling DequeModule RigidDeque+Container.swift
[153/434] Compiling DequeModule RigidDeque+Descriptions.swift
[154/434] Compiling DequeModule RigidDeque+Removals.swift
[155/434] Compiling DequeModule RigidDeque+Replacements.swift
[156/434] Compiling DequeModule RigidDeque+Testing.swift
[157/434] Compiling DequeModule RigidDeque.swift
[158/434] Compiling DequeModule UniqueDeque+Append.swift
[163/434] Compiling DequeModule RigidDeque+Consumption.swift
[181/439] Compiling DequeModule UniqueDeque+Descriptions.swift
[182/439] Compiling DequeModule UniqueDeque+Equatable.swift
[183/439] Compiling DequeModule UniqueDeque+Experimental.swift
[184/439] Compiling DequeModule UniqueDeque+Hashable.swift
[185/439] Compiling DequeModule UniqueDeque+Initializers.swift
[186/439] Compiling DequeModule UniqueDeque+Insertions.swift
[187/439] Compiling DequeModule UniqueDeque+Prepend.swift
[188/439] Compiling DequeModule UniqueDeque+Removals.swift
[189/439] Compiling DequeModule UniqueDeque+Replacements.swift
[190/439] Compiling HashTreeCollections TreeDictionary.swift
[191/439] Compiling HashTreeCollections TreeSet+Codable.swift
[192/439] Compiling HashTreeCollections TreeSet+Collection.swift
[193/439] Compiling HashTreeCollections TreeSet+CustomReflectable.swift
[194/439] Compiling HashTreeCollections TreeSet+Debugging.swift
[195/439] Compiling HashTreeCollections TreeSet+Descriptions.swift
[196/439] Compiling HashTreeCollections TreeSet+Equatable.swift
[197/439] Compiling HashTreeCollections TreeSet+ExpressibleByArrayLiteral.swift
[198/439] Compiling HashTreeCollections TreeSet+Extras.swift
[199/439] Compiling HashTreeCollections TreeSet+Filter.swift
[200/439] Compiling Logging Logging.swift
[224/440] Wrapping AST for Logging for debugging
[241/449] Compiling _RopeModule String Utilities.swift
[242/449] Compiling _RopeModule String.Index+ABI.swift
[243/449] Compiling _RopeModule _CharacterRecognizer.swift
[244/449] Compiling HashTreeCollections TreeSet+SetAlgebra isSubset.swift
[245/449] Compiling HashTreeCollections TreeSet+SetAlgebra isSuperset.swift
[246/449] Compiling HashTreeCollections TreeSet+SetAlgebra subtract.swift
[247/449] Compiling HashTreeCollections TreeSet+SetAlgebra subtracting.swift
[248/449] Compiling HashTreeCollections TreeSet+SetAlgebra symmetricDifference.swift
[249/449] Compiling HashTreeCollections TreeSet+SetAlgebra union.swift
[250/449] Compiling HashTreeCollections TreeSet.swift
[251/449] Compiling DequeModule Deque+Codable.swift
[252/449] Compiling DequeModule Deque+Collection.swift
[253/449] Compiling DequeModule Deque+CustomReflectable.swift
[254/449] Compiling DequeModule Deque+Descriptions.swift
[255/449] Compiling DequeModule Deque+Equatable.swift
[256/449] Compiling DequeModule Deque+ExpressibleByArrayLiteral.swift
[289/449] Compiling DequeModule Deque+Extras.swift
[290/449] Compiling DequeModule Deque+Hashable.swift
[307/449] Compiling BitCollections BitSet.swift
[308/449] Compiling BitCollections Range+Utilities.swift
[309/449] Compiling BitCollections Slice+Utilities.swift
[310/449] Compiling BitCollections UInt+Tricks.swift
[311/449] Compiling BitCollections _Word.swift
[323/450] Wrapping AST for BitCollections for debugging
[331/450] Compiling OrderedCollections _UnsafeBitset.swift
[353/450] Emitting module OrderedCollections
[354/451] Wrapping AST for OrderedCollections for debugging
[366/451] Emitting module _RopeModule
[385/451] Compiling DequeModule UniqueDeque.swift
[386/451] Compiling DequeModule _DequeSlot.swift
[387/451] Compiling DequeModule _UnsafeDequeHandle.swift
[388/451] Compiling DequeModule _UnsafeDequeSegments.swift
[389/451] Emitting module DequeModule
[390/451] Emitting module HashTreeCollections
[391/452] Compiling _RopeModule Rope+Join.swift
[392/452] Compiling _RopeModule Rope+MutatingForEach.swift
[393/452] Compiling _RopeModule Rope+Remove.swift
[394/452] Compiling _RopeModule Rope+RemoveSubrange.swift
[395/452] Compiling _RopeModule Rope+Split.swift
[396/452] Compiling _RopeModule Optional Utilities.swift
[400/452] Wrapping AST for HashTreeCollections for debugging
[431/453] Wrapping AST for _RopeModule for debugging
[438/454] Wrapping AST for DequeModule for debugging
[440/460] Compiling Collections HashTreeCollections reexports.swift
[441/460] Compiling Collections DequeModule reexports.swift
[442/460] Emitting module Collections
[443/460] Compiling Collections BitCollections reexports.swift
[444/460] Compiling Collections HeapModule reexports.swift
[445/460] Compiling Collections OrderedCollections reexports.swift
[446/461] Wrapping AST for Collections for debugging
[448/497] Compiling ACPModel PlanEntry.swift
[449/497] Compiling ACPModel Priority.swift
[450/497] Compiling ACPModel ProtocolVersion.swift
[451/497] Compiling ACPModel RequestId.swift
[452/497] Compiling ACPModel Role.swift
[453/502] Compiling ACPModel ModelMessages.swift
[454/502] Compiling ACPModel Notifications.swift
[455/502] Compiling ACPModel Pagination.swift
[456/502] Compiling ACPModel PermissionMessages.swift
[457/502] Compiling ACPModel PermissionOptionId.swift
[458/502] Compiling ACPModel ACPModel.swift
[459/502] Compiling ACPModel AcpProtocols.swift
[460/502] Compiling ACPModel Annotations.swift
[461/502] Compiling ACPModel AuthMessages.swift
[462/502] Compiling ACPModel AvailableCommand.swift
[463/502] Emitting module ACPModel
[464/502] Compiling ACPModel Capabilities.swift
[465/502] Compiling ACPModel ContentBlock.swift
[466/502] Compiling ACPModel Cursor.swift
[467/502] Compiling ACPModel FileMessages.swift
[468/502] Compiling ACPModel Implementation.swift
[469/502] Compiling ACPModel SessionConfigGroupId.swift
[470/502] Compiling ACPModel SessionConfigId.swift
[471/502] Compiling ACPModel SessionConfigOption.swift
[472/502] Compiling ACPModel SessionConfigValueId.swift
[473/502] Compiling ACPModel SessionId.swift
[474/502] Compiling ACPModel SessionInfo.swift
[475/502] Compiling ACPModel SessionMessages.swift
[476/502] Compiling ACPModel SessionModeId.swift
[477/502] Compiling ACPModel SessionModeMessages.swift
[478/502] Compiling ACPModel SessionOperations.swift
[479/502] Compiling ACPModel InitializeMessages.swift
[480/502] Compiling ACPModel JsonRpc.swift
[481/502] Compiling ACPModel JsonValue.swift
[482/502] Compiling ACPModel McpServer.swift
[483/502] Compiling ACPModel ModelId.swift
[484/502] Compiling ACPModel SessionUpdate.swift
[485/502] Compiling ACPModel SessionUpdateTypes.swift
[486/502] Compiling ACPModel Terminal.swift
[487/502] Compiling ACPModel ToolCall.swift
[488/502] Compiling ACPModel ToolCallId.swift
[489/503] Wrapping AST for ACPModel for debugging
[491/519] Emitting module ACP
[492/521] Compiling ACP ClientSessionOperations.swift
[493/521] Compiling ACP Event.swift
[494/521] Compiling ACP TerminalOperations.swift
[495/521] Compiling ACP Transport.swift
[496/521] Compiling ACP AgentContext.swift
[497/521] Compiling ACP Client.swift
[498/521] Compiling ACP ClientConnection.swift
[499/521] Compiling ACP ClientSession.swift
[500/521] Compiling ACP FileSystemOperations.swift
/host/spi-builder-workspace/Sources/ACP/PaginatedResponse.swift:128:27: warning: capture of non-Sendable type 'Request.Type' in an isolated closure [#SendableMetatypes]
126 | ) -> PaginatedAsyncSequence<Item> {
127 | PaginatedAsyncSequence { [self] cursor in
128 | let request = requestFactory(cursor)
| `- warning: capture of non-Sendable type 'Request.Type' in an isolated closure [#SendableMetatypes]
129 | let jsonRpcResponse = try await self.sendRequest(method: method, params: request)
130 |
/host/spi-builder-workspace/Sources/ACP/PaginatedResponse.swift:133:46: warning: capture of non-Sendable type 'Response.Type' in an isolated closure [#SendableMetatypes]
131 | // Decode the result to the expected response type
132 | let data = try JSONEncoder().encode(jsonRpcResponse.result)
133 | let response = try JSONDecoder().decode(Response.self, from: data)
| `- warning: capture of non-Sendable type 'Response.Type' in an isolated closure [#SendableMetatypes]
134 |
135 | return responseHandler(response)
/host/spi-builder-workspace/Sources/ACP/PaginatedResponse.swift:129:50: warning: sending value of non-Sendable type 'Request' risks causing data races [#SendingRisksDataRace]
127 | PaginatedAsyncSequence { [self] cursor in
128 | let request = requestFactory(cursor)
129 | let jsonRpcResponse = try await self.sendRequest(method: method, params: request)
| | `- note: isolated conformance to protocol 'Encodable' can be introduced here
| |- warning: sending value of non-Sendable type 'Request' risks causing data races [#SendingRisksDataRace]
| `- note: sending task-isolated value of non-Sendable type 'Request' to actor-isolated instance method 'sendRequest(method:params:timeoutSeconds:)' risks causing races in between task-isolated and actor-isolated uses
130 |
131 | // Decode the result to the expected response type
[#SendableMetatypes]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-metatypes>
[#SendingRisksDataRace]: <https://docs.swift.org/compiler/documentation/diagnostics/sending-risks-data-race>
[501/521] Compiling ACP PaginatedResponse.swift
/host/spi-builder-workspace/Sources/ACP/PaginatedResponse.swift:128:27: warning: capture of non-Sendable type 'Request.Type' in an isolated closure [#SendableMetatypes]
126 | ) -> PaginatedAsyncSequence<Item> {
127 | PaginatedAsyncSequence { [self] cursor in
128 | let request = requestFactory(cursor)
| `- warning: capture of non-Sendable type 'Request.Type' in an isolated closure [#SendableMetatypes]
129 | let jsonRpcResponse = try await self.sendRequest(method: method, params: request)
130 |
/host/spi-builder-workspace/Sources/ACP/PaginatedResponse.swift:133:46: warning: capture of non-Sendable type 'Response.Type' in an isolated closure [#SendableMetatypes]
131 | // Decode the result to the expected response type
132 | let data = try JSONEncoder().encode(jsonRpcResponse.result)
133 | let response = try JSONDecoder().decode(Response.self, from: data)
| `- warning: capture of non-Sendable type 'Response.Type' in an isolated closure [#SendableMetatypes]
134 |
135 | return responseHandler(response)
/host/spi-builder-workspace/Sources/ACP/PaginatedResponse.swift:129:50: warning: sending value of non-Sendable type 'Request' risks causing data races [#SendingRisksDataRace]
127 | PaginatedAsyncSequence { [self] cursor in
128 | let request = requestFactory(cursor)
129 | let jsonRpcResponse = try await self.sendRequest(method: method, params: request)
| | `- note: isolated conformance to protocol 'Encodable' can be introduced here
| |- warning: sending value of non-Sendable type 'Request' risks causing data races [#SendingRisksDataRace]
| `- note: sending task-isolated value of non-Sendable type 'Request' to actor-isolated instance method 'sendRequest(method:params:timeoutSeconds:)' risks causing races in between task-isolated and actor-isolated uses
130 |
131 | // Decode the result to the expected response type
[#SendableMetatypes]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-metatypes>
[#SendingRisksDataRace]: <https://docs.swift.org/compiler/documentation/diagnostics/sending-risks-data-race>
[502/521] Compiling ACP RemoteClientOperations.swift
[503/521] Compiling ACP StdioTransport.swift
[504/521] Compiling ACP ACP.swift
[505/521] Compiling ACP Agent.swift
[506/521] Compiling ACP AgentConnection.swift
[507/521] Compiling ACP Protocol.swift
/host/spi-builder-workspace/Sources/ACP/ProtocolExtensions.swift:187:17: warning: capture of non-Sendable type 'P.Type' in an isolated closure [#SendableMetatypes]
185 | if let paramsValue = request.params {
186 | let data = try JSONEncoder().encode(paramsValue)
187 | params = try JSONDecoder().decode(P.self, from: data)
| `- warning: capture of non-Sendable type 'P.Type' in an isolated closure [#SendableMetatypes]
188 | } else {
189 | throw ProtocolError.decodingFailed(underlying: NSError(
/host/spi-builder-workspace/Sources/ACP/ProtocolExtensions.swift:197:30: warning: capture of non-Sendable type 'R.Type' in an isolated closure [#SendableMetatypes]
195 |
196 | // Execute handler
197 | let result = try await handler(params)
| `- warning: capture of non-Sendable type 'R.Type' in an isolated closure [#SendableMetatypes]
198 |
199 | // Encode result as JsonValue
[#SendableMetatypes]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-metatypes>
[508/521] Compiling ACP ProtocolExtensions.swift
/host/spi-builder-workspace/Sources/ACP/ProtocolExtensions.swift:187:17: warning: capture of non-Sendable type 'P.Type' in an isolated closure [#SendableMetatypes]
185 | if let paramsValue = request.params {
186 | let data = try JSONEncoder().encode(paramsValue)
187 | params = try JSONDecoder().decode(P.self, from: data)
| `- warning: capture of non-Sendable type 'P.Type' in an isolated closure [#SendableMetatypes]
188 | } else {
189 | throw ProtocolError.decodingFailed(underlying: NSError(
/host/spi-builder-workspace/Sources/ACP/ProtocolExtensions.swift:197:30: warning: capture of non-Sendable type 'R.Type' in an isolated closure [#SendableMetatypes]
195 |
196 | // Execute handler
197 | let result = try await handler(params)
| `- warning: capture of non-Sendable type 'R.Type' in an isolated closure [#SendableMetatypes]
198 |
199 | // Encode result as JsonValue
[#SendableMetatypes]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-metatypes>
[509/533] Wrapping AST for ACP for debugging
error: emit-module command failed with exit code 1 (use -v to see invocation)
[511/533] Emitting module ACPHTTP
/host/spi-builder-workspace/Sources/ACPHTTP/WebSocketTransport.swift:44:32: error: cannot find type 'URLSessionWebSocketTask' in scope
42 |
43 | private let stateActor: WebSocketStateActor
44 | private var webSocketTask: URLSessionWebSocketTask?
| `- error: cannot find type 'URLSessionWebSocketTask' in scope
45 | private let session: URLSession
46 |
/host/spi-builder-workspace/Sources/ACPHTTP/WebSocketTransport.swift:45:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
43 | private let stateActor: WebSocketStateActor
44 | private var webSocketTask: URLSessionWebSocketTask?
45 | private let session: URLSession
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
46 |
47 | /// Initialize a new WebSocket transport.
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
| `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/ACPHTTP/WebSocketTransport.swift:52:36: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
50 | /// - url: The WebSocket URL to connect to (must use ws:// or wss://)
51 | /// - session: URLSession to use for connections (defaults to shared)
52 | public init(url: URL, session: URLSession = .shared) {
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
53 | self.url = url
54 | self.session = session
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
| `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/ACPHTTP/WebSocketTransport.swift:52:50: error: value of type '_' expected to be instance of class or class-constrained type
50 | /// - url: The WebSocket URL to connect to (must use ws:// or wss://)
51 | /// - session: URLSession to use for connections (defaults to shared)
52 | public init(url: URL, session: URLSession = .shared) {
| `- error: value of type '_' expected to be instance of class or class-constrained type
53 | self.url = url
54 | self.session = session
/host/spi-builder-workspace/Sources/ACPHTTP/WebSocketTransport.swift:52:50: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
50 | /// - url: The WebSocket URL to connect to (must use ws:// or wss://)
51 | /// - session: URLSession to use for connections (defaults to shared)
52 | public init(url: URL, session: URLSession = .shared) {
| `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
53 | self.url = url
54 | self.session = session
[512/533] Emitting module SimpleClient
[513/533] Compiling ACPHTTP ACPHTTP.swift
[514/533] Compiling ACPHTTP WebSocketTransport.swift
/host/spi-builder-workspace/Sources/ACPHTTP/WebSocketTransport.swift:44:32: error: cannot find type 'URLSessionWebSocketTask' in scope
42 |
43 | private let stateActor: WebSocketStateActor
44 | private var webSocketTask: URLSessionWebSocketTask?
| `- error: cannot find type 'URLSessionWebSocketTask' in scope
45 | private let session: URLSession
46 |
/host/spi-builder-workspace/Sources/ACPHTTP/WebSocketTransport.swift:45:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
43 | private let stateActor: WebSocketStateActor
44 | private var webSocketTask: URLSessionWebSocketTask?
45 | private let session: URLSession
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
46 |
47 | /// Initialize a new WebSocket transport.
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
| `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/ACPHTTP/WebSocketTransport.swift:52:36: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
50 | /// - url: The WebSocket URL to connect to (must use ws:// or wss://)
51 | /// - session: URLSession to use for connections (defaults to shared)
52 | public init(url: URL, session: URLSession = .shared) {
| `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
53 | self.url = url
54 | self.session = session
Foundation.URLSession:2:18: note: 'URLSession' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLSession = AnyObject
| `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/ACPHTTP/WebSocketTransport.swift:52:50: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
50 | /// - url: The WebSocket URL to connect to (must use ws:// or wss://)
51 | /// - session: URLSession to use for connections (defaults to shared)
52 | public init(url: URL, session: URLSession = .shared) {
| `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
53 | self.url = url
54 | self.session = session
/host/spi-builder-workspace/Sources/ACPHTTP/WebSocketTransport.swift:52:50: error: value of type '_' expected to be instance of class or class-constrained type
50 | /// - url: The WebSocket URL to connect to (must use ws:// or wss://)
51 | /// - session: URLSession to use for connections (defaults to shared)
52 | public init(url: URL, session: URLSession = .shared) {
| `- error: value of type '_' expected to be instance of class or class-constrained type
53 | self.url = url
54 | self.session = session
/host/spi-builder-workspace/Sources/ACPHTTP/WebSocketTransport.swift:69:33: error: value of type 'URLSession' (aka 'AnyObject') has no member 'webSocketTask'
67 |
68 | // Create WebSocket task
69 | webSocketTask = session.webSocketTask(with: url)
| `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'webSocketTask'
70 |
71 | // Start the connection
/host/spi-builder-workspace/Sources/ACPHTTP/WebSocketTransport.swift:97:40: error: cannot infer contextual base in reference to member 'string'
95 | }
96 |
97 | try await webSocketTask?.send(.string(text))
| `- error: cannot infer contextual base in reference to member 'string'
98 | }
99 |
/host/spi-builder-workspace/Sources/ACPHTTP/WebSocketTransport.swift:114:38: error: cannot infer contextual base in reference to member 'normalClosure'
112 |
113 | // Close WebSocket with normal closure
114 | webSocketTask?.cancel(with: .normalClosure, reason: nil)
| `- error: cannot infer contextual base in reference to member 'normalClosure'
115 | webSocketTask = nil
116 |
/host/spi-builder-workspace/Sources/ACPHTTP/WebSocketTransport.swift:114:61: error: 'nil' requires a contextual type
112 |
113 | // Close WebSocket with normal closure
114 | webSocketTask?.cancel(with: .normalClosure, reason: nil)
| `- error: 'nil' requires a contextual type
115 | webSocketTask = nil
116 |
[515/533] Emitting module EchoAgent
error: emit-module command failed with exit code 1 (use -v to see invocation)
[516/533] Emitting module InteractiveClient
/host/spi-builder-workspace/Samples/InteractiveClient/main.swift:26:43: error: cannot find type 'Process' in scope
24 | actor TerminalManager {
25 | /// Active terminal processes keyed by terminal ID.
26 | private var activeTerminals: [String: Process] = [:]
| `- error: cannot find type 'Process' in scope
27 |
28 | /// Output pipes for terminals.
/host/spi-builder-workspace/Samples/InteractiveClient/main.swift:37:18: error: cannot find type 'Process' in scope
35 | func createTerminal(
36 | terminalId: String,
37 | process: Process,
| `- error: cannot find type 'Process' in scope
38 | outputPipe: Pipe,
39 | errorPipe: Pipe
/host/spi-builder-workspace/Samples/InteractiveClient/main.swift:56:44: error: cannot find type 'Process' in scope
54 |
55 | /// Get a terminal process.
56 | func getProcess(terminalId: String) -> Process? {
| `- error: cannot find type 'Process' in scope
57 | return activeTerminals[terminalId]
58 | }
/host/spi-builder-workspace/Samples/InteractiveClient/main.swift:61:48: error: cannot find type 'Process' in scope
59 |
60 | /// Remove and return a terminal.
61 | func removeTerminal(terminalId: String) -> Process? {
| `- error: cannot find type 'Process' in scope
62 | let process = activeTerminals.removeValue(forKey: terminalId)
63 | terminalOutputPipes.removeValue(forKey: terminalId)
/host/spi-builder-workspace/Samples/InteractiveClient/main.swift:386:94: error: cannot find type 'Process' in scope
384 |
385 | /// Creates a transport connected to an external process via stdin/stdout.
386 | func createProcessTransport(command: String, arguments: [String]) throws -> (StdioTransport, Process) {
| `- error: cannot find type 'Process' in scope
387 | let process = Process()
388 | let stdinPipe = Pipe()
/host/spi-builder-workspace/Samples/SimpleAgentApp/main.swift:322:37: error: cannot find type 'Process' in scope
320 | // MARK: - TerminalOperations
321 |
322 | private var processes: [String: Process] = [:]
| `- error: cannot find type 'Process' in scope
323 | private var outputPipes: [String: Pipe] = [:]
324 |
/host/spi-builder-workspace/Samples/InteractiveClient/main.swift:26:43: error: cannot find type 'Process' in scope
24 | actor TerminalManager {
25 | /// Active terminal processes keyed by terminal ID.
26 | private var activeTerminals: [String: Process] = [:]
| `- error: cannot find type 'Process' in scope
27 |
28 | /// Output pipes for terminals.
/host/spi-builder-workspace/Samples/InteractiveClient/main.swift:37:18: error: cannot find type 'Process' in scope
35 | func createTerminal(
36 | terminalId: String,
37 | process: Process,
| `- error: cannot find type 'Process' in scope
38 | outputPipe: Pipe,
39 | errorPipe: Pipe
/host/spi-builder-workspace/Samples/InteractiveClient/main.swift:56:44: error: cannot find type 'Process' in scope
54 |
55 | /// Get a terminal process.
56 | func getProcess(terminalId: String) -> Process? {
| `- error: cannot find type 'Process' in scope
57 | return activeTerminals[terminalId]
58 | }
/host/spi-builder-workspace/Samples/InteractiveClient/main.swift:61:48: error: cannot find type 'Process' in scope
59 |
60 | /// Remove and return a terminal.
61 | func removeTerminal(terminalId: String) -> Process? {
| `- error: cannot find type 'Process' in scope
62 | let process = activeTerminals.removeValue(forKey: terminalId)
63 | terminalOutputPipes.removeValue(forKey: terminalId)
/host/spi-builder-workspace/Samples/InteractiveClient/main.swift:386:94: error: cannot find type 'Process' in scope
384 |
385 | /// Creates a transport connected to an external process via stdin/stdout.
386 | func createProcessTransport(command: String, arguments: [String]) throws -> (StdioTransport, Process) {
| `- error: cannot find type 'Process' in scope
387 | let process = Process()
388 | let stdinPipe = Pipe()
/host/spi-builder-workspace/Samples/InteractiveClient/main.swift:212:23: error: cannot find 'Process' in scope
210 | printInfo("🖥️ Creating terminal: \(request.command) \(request.args.joined(separator: " "))")
211 |
212 | let process = Process()
| `- error: cannot find 'Process' in scope
213 | let outputPipe = Pipe()
214 | let errorPipe = Pipe()
BUILD FAILURE 6.3 wasm