The Swift Package Index logo.Swift Package Index

Build Information

Successful build of swift-lm-response-parser, reference main (ff6833), with Swift 6.3 for macOS (SPM) on 8 May 2026 00:18:05 UTC.

Swift 6 data race errors: 0

Build Command

env DEVELOPER_DIR=/Applications/Xcode-26.4.0.app xcrun swift build --arch arm64

Build Log

========================================
RunAll
========================================
Builder version: 4.70.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/DePasqualeOrg/swift-lm-response-parser.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/DePasqualeOrg/swift-lm-response-parser
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at ff68336 Seed StreamingDetokenizer with prompt tail to fix boundary space loss
Cloned https://github.com/DePasqualeOrg/swift-lm-response-parser.git
Revision (git rev-parse @):
ff68336ddcfd325c5a4f794a21a1a3872e98c138
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/DePasqualeOrg/swift-lm-response-parser.git at main
Fetching https://github.com/swiftlang/swift-docc
[1/99863] Fetching swift-docc
Fetched https://github.com/swiftlang/swift-docc from cache (4.54s)
Fetching https://github.com/swiftlang/swift-docc-plugin
[1/2287] Fetching swift-docc-plugin
Fetched https://github.com/swiftlang/swift-docc-plugin from cache (1.14s)
Fetching https://github.com/DePasqualeOrg/mlx-swift-lm.git
[1/3223] Fetching mlx-swift-lm
Fetched https://github.com/DePasqualeOrg/mlx-swift-lm.git from cache (1.14s)
Fetching https://github.com/swiftlang/swift-markdown.git
[1/7330] Fetching swift-markdown
Fetched https://github.com/swiftlang/swift-markdown.git from cache (1.14s)
Fetching https://github.com/swiftlang/swift-lmdb.git
[1/10386] Fetching swift-lmdb
Fetched https://github.com/swiftlang/swift-lmdb.git from cache (1.77s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit.git
[1/3712] Fetching swift-docc-symbolkit
Fetched https://github.com/swiftlang/swift-docc-symbolkit.git from cache (1.16s)
Fetching https://github.com/swiftlang/swift-cmark.git
[1/18418] Fetching swift-cmark
Fetched https://github.com/swiftlang/swift-cmark.git from cache (1.72s)
Fetching https://github.com/apple/swift-argument-parser.git
Fetching https://github.com/apple/swift-nio.git
Fetching https://github.com/ml-explore/mlx-swift
Fetching https://github.com/apple/swift-crypto.git
[1/14250] Fetching mlx-swift
[429/31813] Fetching mlx-swift, swift-argument-parser
[430/49270] Fetching mlx-swift, swift-argument-parser, swift-crypto
[32356/132583] Fetching mlx-swift, swift-argument-parser, swift-crypto, swift-nio
Fetched https://github.com/apple/swift-argument-parser.git from cache (1.58s)
[25963/115020] Fetching mlx-swift, swift-crypto, swift-nio
Fetched https://github.com/apple/swift-nio.git from cache (6.96s)
Fetched https://github.com/apple/swift-crypto.git from cache (6.96s)
Fetched https://github.com/ml-explore/mlx-swift from cache (6.96s)
Computing version for https://github.com/ml-explore/mlx-swift
Computed https://github.com/ml-explore/mlx-swift at 0.31.3 (7.74s)
Fetching https://github.com/apple/swift-numerics
[1/6416] Fetching swift-numerics
Fetched https://github.com/apple/swift-numerics from cache (1.09s)
Computing version for https://github.com/apple/swift-numerics
Computed https://github.com/apple/swift-numerics at 1.1.1 (1.83s)
Computing version for https://github.com/apple/swift-nio.git
Computed https://github.com/apple/swift-nio.git at 2.99.0 (0.86s)
Fetching https://github.com/apple/swift-system.git
Fetching https://github.com/apple/swift-atomics.git
Fetching https://github.com/apple/swift-collections.git
[1/1820] Fetching swift-atomics
[38/7421] Fetching swift-atomics, swift-system
[1387/31925] Fetching swift-atomics, swift-system, swift-collections
Fetched https://github.com/apple/swift-collections.git from cache (2.21s)
Fetched https://github.com/apple/swift-atomics.git from cache (2.21s)
Fetched https://github.com/apple/swift-system.git from cache (2.21s)
Computing version for https://github.com/apple/swift-atomics.git
Computed https://github.com/apple/swift-atomics.git at 1.3.0 (2.85s)
Computing version for https://github.com/apple/swift-system.git
Computed https://github.com/apple/swift-system.git at 1.6.4 (0.60s)
Computing version for https://github.com/apple/swift-argument-parser.git
Computed https://github.com/apple/swift-argument-parser.git at 1.7.1 (0.61s)
Computing version for https://github.com/apple/swift-collections.git
Computed https://github.com/apple/swift-collections.git at 1.4.1 (0.67s)
Computing version for https://github.com/apple/swift-crypto.git
Computed https://github.com/apple/swift-crypto.git at 3.15.1 (0.80s)
Fetching https://github.com/apple/swift-asn1.git
[1/1813] Fetching swift-asn1
Fetched https://github.com/apple/swift-asn1.git from cache (0.97s)
Computing version for https://github.com/apple/swift-asn1.git
Computed https://github.com/apple/swift-asn1.git at 1.7.0 (1.66s)
Creating working copy for https://github.com/swiftlang/swift-markdown.git
Working copy of https://github.com/swiftlang/swift-markdown.git resolved at main (ba1fbd1)
Creating working copy for https://github.com/apple/swift-nio.git
Working copy of https://github.com/apple/swift-nio.git resolved at 2.99.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
Creating working copy for https://github.com/DePasqualeOrg/mlx-swift-lm.git
Working copy of https://github.com/DePasqualeOrg/mlx-swift-lm.git resolved at main (96bc5af)
Creating working copy for https://github.com/swiftlang/swift-docc-symbolkit.git
Working copy of https://github.com/swiftlang/swift-docc-symbolkit.git resolved at main (4c4ff01)
Creating working copy for https://github.com/apple/swift-crypto.git
Working copy of https://github.com/apple/swift-crypto.git resolved at 3.15.1
Creating working copy for https://github.com/apple/swift-asn1.git
Working copy of https://github.com/apple/swift-asn1.git resolved at 1.7.0
Creating working copy for https://github.com/swiftlang/swift-lmdb.git
Working copy of https://github.com/swiftlang/swift-lmdb.git resolved at main (a4bc878)
Creating working copy for https://github.com/apple/swift-argument-parser.git
Working copy of https://github.com/apple/swift-argument-parser.git resolved at 1.7.1
Creating working copy for https://github.com/swiftlang/swift-docc-plugin
Working copy of https://github.com/swiftlang/swift-docc-plugin resolved at main (647c708)
Creating working copy for https://github.com/ml-explore/mlx-swift
Working copy of https://github.com/ml-explore/mlx-swift resolved at 0.31.3
Creating working copy for https://github.com/apple/swift-atomics.git
Working copy of https://github.com/apple/swift-atomics.git resolved at 1.3.0
Creating working copy for https://github.com/apple/swift-system.git
Working copy of https://github.com/apple/swift-system.git resolved at 1.6.4
Creating working copy for https://github.com/swiftlang/swift-cmark.git
Working copy of https://github.com/swiftlang/swift-cmark.git resolved at gfm (924936d)
Creating working copy for https://github.com/swiftlang/swift-docc
Working copy of https://github.com/swiftlang/swift-docc resolved at main (215e601)
Creating working copy for https://github.com/apple/swift-numerics
Working copy of https://github.com/apple/swift-numerics resolved at 1.1.1
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
  "identity": ".resolve-product-dependencies",
  "name": "resolve-dependencies",
  "url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "version": "unspecified",
  "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "traits": [
    "default"
  ],
  "dependencies": [
    {
      "identity": "swift-lm-response-parser",
      "name": "swift-lm-response-parser",
      "url": "https://github.com/DePasqualeOrg/swift-lm-response-parser.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/swift-lm-response-parser",
      "traits": [
        "default"
      ],
      "dependencies": [
        {
          "identity": "mlx-swift-lm",
          "name": "mlx-swift-lm",
          "url": "https://github.com/DePasqualeOrg/mlx-swift-lm.git",
          "version": "unspecified",
          "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/mlx-swift-lm",
          "traits": [
            "default"
          ],
          "dependencies": [
            {
              "identity": "mlx-swift",
              "name": "mlx-swift",
              "url": "https://github.com/ml-explore/mlx-swift",
              "version": "0.31.3",
              "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/mlx-swift",
              "traits": [
                "default"
              ],
              "dependencies": [
                {
                  "identity": "swift-numerics",
                  "name": "swift-numerics",
                  "url": "https://github.com/apple/swift-numerics",
                  "version": "1.1.1",
                  "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/swift-numerics",
                  "traits": [
                    "default"
                  ],
                  "dependencies": [
                  ]
                }
              ]
            }
          ]
        }
      ]
    }
  ]
}
Fetching https://github.com/DePasqualeOrg/swift-lm-response-parser.git
[1/372] Fetching swift-lm-response-parser
Fetched https://github.com/DePasqualeOrg/swift-lm-response-parser.git from cache (0.93s)
Fetching https://github.com/DePasqualeOrg/mlx-swift-lm.git from cache
Fetched https://github.com/DePasqualeOrg/mlx-swift-lm.git from cache (0.48s)
Fetching https://github.com/ml-explore/mlx-swift from cache
Fetched https://github.com/ml-explore/mlx-swift from cache (0.53s)
Computing version for https://github.com/ml-explore/mlx-swift
Computed https://github.com/ml-explore/mlx-swift at 0.31.3 (0.59s)
Fetching https://github.com/apple/swift-numerics from cache
Fetched https://github.com/apple/swift-numerics from cache (0.46s)
Computing version for https://github.com/apple/swift-numerics
Computed https://github.com/apple/swift-numerics at 1.1.1 (0.52s)
Creating working copy for https://github.com/ml-explore/mlx-swift
Working copy of https://github.com/ml-explore/mlx-swift resolved at 0.31.3
Creating working copy for https://github.com/apple/swift-numerics
Working copy of https://github.com/apple/swift-numerics resolved at 1.1.1
Creating working copy for https://github.com/DePasqualeOrg/swift-lm-response-parser.git
Working copy of https://github.com/DePasqualeOrg/swift-lm-response-parser.git resolved at main (ff68336)
Creating working copy for https://github.com/DePasqualeOrg/mlx-swift-lm.git
Working copy of https://github.com/DePasqualeOrg/mlx-swift-lm.git resolved at main (96bc5af)
warning: '.resolve-product-dependencies': dependency 'swift-lm-response-parser' is not used by any target
Found 1 product dependencies
  - mlx-swift-lm
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.3
Building package at path:  $PWD
https://github.com/DePasqualeOrg/swift-lm-response-parser.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-26.4.0.app xcrun swift build --arch arm64
[1/1] Compiling plugin Swift-DocC Preview
[2/2] Compiling plugin Swift-DocC
[3/3] Compiling plugin GenerateManual
[4/4] Compiling plugin GenerateDoccReference
Building for debugging...
[4/194] Write sources
[13/194] Compiling _NumericsShims _NumericsShims.c
[14/194] Compiling unary_ops.cpp
[14/194] Compiling unary.cpp
[16/194] Compiling version.cpp
[17/194] Write swift-version--6988338F2F200930.txt
[18/194] Compiling scheduler.cpp
[19/194] Compiling no_gguf.cpp
[19/194] Compiling utils.cpp
[21/254] Compiling linalg.cpp
[22/254] Compiling load.cpp
[24/254] Compiling RealModule RealFunctions.swift
[25/255] Compiling RealModule Float80+Real.swift
[26/255] Compiling RealModule Real.swift
[26/255] Compiling random.cpp
[28/255] Compiling RealModule Float+Real.swift
[29/255] Compiling RealModule ElementaryFunctions.swift
[30/255] Compiling RealModule Float16+Real.swift
[31/255] Compiling LMResponseParser DelimitedReasoningBoundary.swift
[32/255] Compiling LMResponseParser IDFactory.swift
[33/255] Emitting module RealModule
[34/255] Compiling RealModule AugmentedArithmetic.swift
[35/255] Compiling RealModule Double+Real.swift
[36/255] Compiling RealModule RelaxedArithmetic.swift
[36/255] Compiling transforms.cpp
[37/255] Compiling graph_utils.cpp
[39/266] Compiling ComplexModule Polar.swift
[39/267] Compiling safetensors.cpp
[41/267] Compiling ComplexModule Complex+StringConvertible.swift
[42/267] Compiling ComplexModule Complex+Numeric.swift
[43/267] Compiling ComplexModule Complex+IntegerLiteral.swift
[44/267] Compiling ComplexModule Complex+Hashable.swift
[45/267] Compiling ComplexModule Complex.swift
[45/267] Compiling primitives.cpp
[47/267] Compiling ComplexModule Scale.swift
[48/267] Compiling ComplexModule Complex+Codable.swift
[49/267] Compiling ComplexModule Complex+AdditiveArithmetic.swift
[50/267] Compiling ComplexModule Complex+AlgebraicField.swift
[51/267] Compiling ComplexModule Complex+ElementaryFunctions.swift
[52/267] Emitting module ComplexModule
[52/267] Compiling fft.cpp
[54/269] Compiling Numerics Numerics.swift
[55/269] Emitting module Numerics
[55/269] Compiling einsum.cpp
[56/269] Compiling dtype_utils.cpp
[57/269] Compiling fast.cpp
[59/269] Emitting module LMResponseParser
[59/274] Compiling dtype.cpp
[60/274] Compiling utils.cpp
[61/274] Compiling no_ring.cpp
[62/274] Compiling device.cpp
[63/274] Compiling no_nccl.cpp
[64/274] Compiling ops.cpp
[65/274] Compiling no_mpi.cpp
[66/274] Compiling primitives.cpp
[67/274] Compiling no_jaccl.cpp
[69/274] Compiling LMResponseParser ToolCallHelpers.swift
[70/274] Compiling LMResponseParser XlamParser.swift
[71/274] Compiling LMResponseParser ParserTokenizer.swift
[72/274] Compiling LMResponseParser StreamingDetokenizer.swift
[73/274] Compiling LMResponseParser StreamingDetokenizerError.swift
[76/274] Compiling LMResponseParser ImplicitReasoningPreamble.swift
[77/274] Compiling LMResponseParser ItemAccumulation.swift
[78/274] Compiling LMResponseParser ParserInput.swift
[79/274] Compiling LMResponseParser PrefixHold.swift
[80/274] Compiling LMResponseParser MiniMaxParser.swift
[81/274] Compiling LMResponseParser MistralParser.swift
[82/274] Compiling LMResponseParser Phi4MiniParser.swift
[83/274] Compiling LMResponseParser PhiReasoningParser.swift
[84/274] Compiling LMResponseParser PythonLiteral.swift
[85/274] Compiling LMResponseParser GraniteParser.swift
[86/274] Compiling LMResponseParser HarmonyParser.swift
[87/274] Compiling LMResponseParser HermesParser.swift
[88/274] Compiling LMResponseParser HunyuanA13BParser.swift
[89/274] Compiling LMResponseParser InternlmParser.swift
[89/274] Compiling distributed.cpp
[91/274] Compiling LMResponseParser PythonicParser.swift
[92/274] Compiling LMResponseParser Qwen3XmlParser.swift
[93/274] Compiling LMResponseParser QwenParser.swift
[94/274] Compiling LMResponseParser SchemaInference.swift
[95/274] Compiling LMResponseParser ThinkPreambleExtractor.swift
[96/274] Compiling LMResponseParser PromptBoundaryPriorText.swift
[97/274] Compiling LMResponseParser ResponseFormat.swift
[98/274] Compiling LMResponseParser ResponseFormatParser.swift
[99/274] Compiling LMResponseParser ToolSpec.swift
[100/274] Compiling LMResponseParser FinishInfo.swift
[101/274] Compiling LMResponseParser ResponseStream.swift
[102/274] Compiling LMResponseParser JSONFallbackParser.swift
[103/274] Compiling LMResponseParser JambaParser.swift
[104/274] Compiling LMResponseParser KimiK2Parser.swift
[105/274] Compiling LMResponseParser Llama3Parser.swift
[106/274] Compiling LMResponseParser MiniMaxM2Parser.swift
[107/274] Compiling LMResponseParser StreamingEvents.swift
[108/274] Compiling LMResponseParser DeepSeekR1Parser.swift
[109/274] Compiling LMResponseParser DeepSeekV31Parser.swift
[110/274] Compiling LMResponseParser DeepSeekV32Parser.swift
[111/274] Compiling LMResponseParser DeepSeekV3Parser.swift
[112/274] Compiling LMResponseParser ErnieParser.swift
[113/274] Compiling LMResponseParser Gemma4Parser.swift
[114/274] Compiling LMResponseParser GemmaFunctionCallParser.swift
[115/274] Compiling LMResponseParser Glm4Parser.swift
[116/274] Compiling LMResponseParser Granite20bFcParser.swift
[117/274] Compiling LMResponseParser ResponseStreamEmitter.swift
[118/274] Compiling LMResponseParser CodableEvents.swift
[119/274] Compiling LMResponseParser ContentParts.swift
[120/274] Compiling LMResponseParser Response.swift
[121/274] Compiling LMResponseParser ResponseOutputItem.swift
[122/274] Compiling LMResponseParser ResponseStreamConfig.swift
[122/274] Compiling ops.cpp
[123/274] Compiling utils.cpp
[124/274] Compiling unary.cpp
[125/274] Compiling ternary.cpp
[126/274] Compiling softmax.cpp
[127/274] Compiling sort.cpp
[128/274] Compiling compile.cpp
[129/274] Compiling slicing.cpp
[130/274] Compiling scan.cpp
[131/274] Compiling scaled_dot_product_attention.cpp
[132/274] Compiling resident.cpp
[133/274] Compiling export.cpp
[134/274] Compiling rope.cpp
[135/274] Compiling reduce.cpp
[136/274] Compiling primitives.cpp
[137/274] Compiling metal.cpp
[138/274] Compiling normalization.cpp
[139/274] Compiling quantized.cpp
[140/274] Compiling logsumexp.cpp
[141/274] Compiling matmul.cpp
[142/274] Compiling jit_kernels.cpp
[143/274] Compiling event.cpp
[144/274] Compiling fence.cpp
[145/274] Compiling hadamard.cpp
[146/274] Compiling indexing.cpp
[147/274] Compiling eval.cpp
[148/274] Compiling device_info.cpp
[149/274] Compiling distributed.cpp
[150/274] Compiling fft.cpp
[151/274] Compiling slicing.cpp
[152/274] Compiling primitives.cpp
[153/274] Compiling device.cpp
[154/274] Compiling threefry.cpp
[155/274] Compiling allocator.cpp
[156/274] Compiling copy.cpp
[157/274] Compiling binary.cpp
[158/274] Compiling conv.cpp
[159/274] Compiling compiled.cpp
[160/274] Compiling no_cuda.cpp
[161/274] Compiling copy.cpp
[162/274] Compiling custom_kernel.cpp
[163/274] Compiling softmax.cpp
[164/274] Compiling select.cpp
[165/274] Compiling scan.cpp
[166/274] Compiling quantized.cpp
[167/274] Compiling primitives.cpp
[168/274] Compiling svd.cpp
[169/274] Compiling sort.cpp
[170/274] Compiling qrf.cpp
[171/274] Compiling unary.cpp
[172/274] Compiling reduce.cpp
[173/274] Compiling jit_compiler.cpp
[174/274] Compiling matmul.cpp
[175/274] Compiling logsumexp.cpp
[176/274] Compiling hadamard.cpp
[177/274] Compiling masked_mm.cpp
[178/274] Compiling luf.cpp
[179/274] Compiling cblas.cpp
[180/274] Compiling bnns.cpp
[181/274] Compiling inverse.cpp
[182/274] Compiling encoder.cpp
[183/274] Compiling eval.cpp
[184/274] Compiling device_info.cpp
[185/274] Compiling fft.cpp
[186/274] Compiling distributed.cpp
[187/274] Compiling indexing.cpp
[188/274] Compiling utils.cpp
[189/274] Compiling arg_reduce.cpp
[190/274] Compiling eig.cpp
[191/274] Compiling eigh.cpp
[192/274] Compiling slicing.cpp
[193/274] Compiling reduce.cpp
[194/274] Compiling utils.cpp
[195/274] Compiling ternary_ops.cpp
[196/274] Compiling ternary.cpp
[197/274] Compiling steel_gemm_splitk_nax.cpp
[198/274] Compiling steel_gemm_splitk.cpp
[199/274] Compiling steel_gemm_segmented.cpp
[200/274] Compiling steel_gemm_masked.cpp
[201/274] Compiling steel_gemm_gather_nax.cpp
[202/274] Compiling steel_gemm_gather.cpp
[203/274] Compiling steel_gemm_fused_nax.cpp
[204/274] Compiling steel_gemm_fused.cpp
[205/274] Compiling steel_conv_general.cpp
[206/274] Compiling cholesky.cpp
[207/274] Compiling steel_conv_3d.cpp
[208/274] Compiling steel_conv.cpp
[209/274] Compiling steel_attention_nax.cpp
[210/274] Compiling steel_attention.cpp
[211/274] Compiling sort.cpp
[212/274] Compiling softmax.cpp
[213/274] Compiling scatter_axis.cpp
[214/274] Compiling scatter.cpp
[215/274] Compiling load.cpp
[216/274] Compiling scan.cpp
[217/274] Compiling reduce_utils.cpp
[218/274] Compiling quantized_utils.cpp
[219/274] Compiling reduce.cpp
[220/274] Compiling quantized_nax.cpp
[221/274] Compiling masked_scatter.cpp
[222/274] Compiling quantized.cpp
[223/274] Compiling logsumexp.cpp
[224/274] Compiling hadamard.cpp
[225/274] Compiling gemv_masked.cpp
[226/274] Compiling gemm_nax.cpp
[227/274] Compiling gemm.cpp
[228/274] Compiling gather_front.cpp
[229/274] Compiling gather_axis.cpp
[230/274] Compiling gather.cpp
[231/274] Compiling fp_quantized.cpp
[232/274] Compiling fp_quantized_nax.cpp
[233/274] Compiling fft.cpp
[234/274] Compiling conv.cpp
[235/274] Compiling broadcasting.cpp
[236/274] Compiling copy.cpp
[237/274] Compiling conv.cpp
[238/274] Compiling compiled_preamble.cpp
[239/274] Compiling binary_two.cpp
[240/274] Compiling binary_ops.cpp
[241/274] Compiling binary.cpp
[242/274] Compiling arange.cpp
[243/274] Compiling compiled.cpp
[244/274] Compiling common.cpp
[245/274] Compiling array.cpp
[246/274] Compiling copy.cpp
[247/274] Compiling transforms_impl.cpp
[248/274] Compiling version.cpp
[249/274] Compiling transforms.cpp
[250/274] Compiling string.cpp
[251/274] Compiling stream.cpp
[252/274] Compiling vector.cpp
[253/274] Compiling compiled_conditional.cpp
[254/274] Compiling random.cpp
[255/274] Compiling ops.cpp
[256/274] Compiling metal.cpp
[257/274] Compiling memory.cpp
[258/274] Compiling io_types.cpp
[259/274] Compiling linalg.cpp
[260/274] Compiling map.cpp
[261/274] Compiling io.cpp
[262/274] Compiling error.cpp
[263/274] Compiling fft.cpp
[264/274] Compiling fast.cpp
[265/274] Compiling export.cpp
[266/274] Compiling device.cpp
[267/274] Compiling cuda.cpp
[268/274] Compiling compile.cpp
[269/274] Compiling binary.cpp
[270/274] Compiling format.cc
[271/274] Compiling closure.cpp
[272/274] Compiling Cmlx.m
[273/274] Compiling array.cpp
[275/310] Compiling MLX MLXFast.swift
[276/310] Compiling MLX MLXFastKernel.swift
[277/310] Compiling MLX Memory.swift
[278/310] Compiling MLX Nested.swift
[279/313] Compiling MLX Ops+Array.swift
[280/313] Compiling MLX Ops.swift
[281/313] Compiling MLX ParameterTypes.swift
[282/313] Compiling MLX Protocols.swift
[283/313] Compiling MLX ArrayAt.swift
[284/313] Compiling MLX Cmlx+Util.swift
[285/313] Compiling MLX DType.swift
[286/313] Compiling MLX Device.swift
[287/313] Compiling MLX Random.swift
[288/313] Compiling MLX State.swift
[289/313] Compiling MLX Stream.swift
[290/313] Compiling MLX Transforms+Compile.swift
[291/313] Compiling MLX MLXArray+Normalizer.swift
[292/313] Compiling MLX MLXArray+Ops.swift
[293/313] Compiling MLX MLXArray.swift
[294/313] Compiling MLX MLXCustomFunction.swift
[295/313] Compiling MLX Transforms+Eval.swift
[296/313] Compiling MLX Transforms+Grad.swift
[297/313] Compiling MLX Transforms+Internal.swift
[298/313] Compiling MLX ErrorHandler.swift
[299/313] Compiling MLX Export.swift
[300/313] Compiling MLX FFT.swift
[301/313] Compiling MLX Factory.swift
[302/313] Compiling MLX Foundation+Util.swift
[303/313] Compiling MLX GPU+Metal.swift
[304/313] Compiling MLX IO.swift
[305/313] Compiling MLX Linalg.swift
[306/313] Emitting module MLX
[307/313] Compiling MLX Transforms+Vmap.swift
[308/313] Compiling MLX Transforms.swift
[309/313] Compiling MLX WiredMemory.swift
[310/313] Compiling MLX MLXArray+Bytes.swift
[311/313] Compiling MLX MLXArray+Indexing.swift
[312/313] Compiling MLX MLXArray+Init.swift
[313/313] Compiling MLX MLXArray+Metal.swift
[314/331] Compiling MLXNN PositionalEncoding.swift
[315/331] Compiling MLXNN Quantized.swift
[316/331] Compiling MLXNN Embedding.swift
[317/331] Compiling MLXNN Linear.swift
[318/331] Compiling MLXNN Recurrent.swift
[319/331] Compiling MLXNN Transformer.swift
[320/331] Compiling MLXNN Upsample.swift
[321/331] Compiling MLXNN Normalization.swift
[322/331] Compiling MLXNN Pooling.swift
[323/332] Compiling MLXNN Containers.swift
[324/332] Compiling MLXNN Convolution.swift
[325/332] Compiling MLXNN ConvolutionTransposed.swift
[326/332] Compiling MLXNN Dropout.swift
[327/332] Compiling MLXNN Activations.swift
[328/332] Compiling MLXNN Cache.swift
[329/332] Emitting module MLXNN
[330/332] Compiling MLXNN Losses.swift
[331/332] Compiling MLXNN Module.swift
[332/332] Compiling MLXNN ValueAndGrad.swift
[333/334] Compiling MLXOptimizers Optimizers.swift
[334/334] Emitting module MLXOptimizers
[335/376] Emitting module MLXLMCommon
[336/380] Compiling MLXLMCommon ProcessorTypeRegistry.swift
[337/380] Compiling MLXLMCommon RoPEApplication.swift
[338/380] Compiling MLXLMCommon RoPEUtils.swift
[339/380] Compiling MLXLMCommon StreamingDetokenizer.swift
[340/380] Compiling MLXLMCommon Gemma.swift
[341/380] Compiling MLXLMCommon Module+Extensions.swift
[342/380] Compiling MLXLMCommon AbstractModelRegistry.swift
[343/380] Compiling MLXLMCommon ModelTypeRegistry.swift
[344/380] Compiling MLXLMCommon LanguageModel.swift
[345/380] Compiling MLXLMCommon Load.swift
[346/380] Compiling MLXLMCommon ModelConfiguration.swift
[347/380] Compiling MLXLMCommon ModelContainer.swift
[348/380] Compiling MLXLMCommon ModelFactory.swift
[349/380] Compiling MLXLMCommon Tool.swift
[350/380] Compiling MLXLMCommon ToolCall.swift
[351/380] Compiling MLXLMCommon ToolParameter.swift
[352/380] Compiling MLXLMCommon Value.swift
[353/380] Compiling MLXLMCommon ModelAdapter.swift
[354/380] Compiling MLXLMCommon ModelAdapterFactory.swift
[355/380] Compiling MLXLMCommon ModelAdapterTypeRegistry.swift
[356/380] Compiling MLXLMCommon AttentionUtils.swift
[357/380] Compiling MLXLMCommon BaseConfiguration.swift
[358/380] Compiling MLXLMCommon Activations.swift
[359/380] Compiling MLXLMCommon DoRA+Layers.swift
[360/380] Compiling MLXLMCommon LoRA+Layers.swift
[361/380] Compiling MLXLMCommon LoRAContainer.swift
[362/380] Compiling MLXLMCommon LoRAModel.swift
[363/380] Compiling MLXLMCommon JSONDecoder+JSON5.swift
[364/380] Compiling MLXLMCommon GenerationConfigFile.swift
[365/380] Compiling MLXLMCommon InterpolationUtils.swift
[366/380] Compiling MLXLMCommon JSONDecodingTypes.swift
[367/380] Compiling MLXLMCommon KVCache.swift
[368/380] Compiling MLXLMCommon Chat.swift
[369/380] Compiling MLXLMCommon ChatSession.swift
[370/380] Compiling MLXLMCommon Downloader.swift
[371/380] Compiling MLXLMCommon Evaluate.swift
[372/380] Compiling MLXLMCommon Encodable+toolResult.swift
[373/380] Compiling MLXLMCommon SuScaledRoPE.swift
[374/380] Compiling MLXLMCommon SwitchLayers.swift
[375/380] Compiling MLXLMCommon Tokenizer.swift
[376/380] Compiling MLXLMCommon TokenizerLoader.swift
[377/380] Compiling MLXLMCommon UserInput.swift
[378/380] Compiling MLXLMCommon SerialAccessContainer.swift
[379/380] Compiling MLXLMCommon WiredMemoryPolicies.swift
[380/380] Compiling MLXLMCommon WiredMemoryUtils.swift
[381/392] Compiling LMResponseParserMLX SendableBox.swift
[382/393] Compiling LMResponseParserMLX UsageAccumulator.swift
[383/393] Compiling LMResponseParserMLX SessionCacheStore.swift
[384/393] Compiling LMResponseParserMLX StreamResponse.swift
[385/393] Compiling LMResponseParserMLX ResponseStreamHandle.swift
[386/393] Compiling LMResponseParserMLX RunPass.swift
[387/393] Compiling LMResponseParserMLX ResponseTurnEnvelope.swift
[388/393] Compiling LMResponseParserMLX PromptBoundaryPriorText.swift
[389/393] Compiling LMResponseParserMLX ResponseChatSession+PassDriver.swift
[390/393] Compiling LMResponseParserMLX LMResponseParserMLX.swift
[391/393] Compiling LMResponseParserMLX MLXTokenizerAdapter.swift
[392/393] Emitting module LMResponseParserMLX
[393/393] Compiling LMResponseParserMLX ResponseChatSession.swift
Build complete! (54.17s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "swift-docc",
      "requirement" : {
        "branch" : [
          "main"
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/swiftlang/swift-docc"
    },
    {
      "identity" : "swift-docc-plugin",
      "requirement" : {
        "branch" : [
          "main"
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/swiftlang/swift-docc-plugin"
    },
    {
      "identity" : "mlx-swift-lm",
      "requirement" : {
        "branch" : [
          "main"
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/DePasqualeOrg/mlx-swift-lm.git"
    }
  ],
  "manifest_display_name" : "swift-lm-response-parser",
  "name" : "swift-lm-response-parser",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "14.0"
    },
    {
      "name" : "ios",
      "version" : "17.0"
    },
    {
      "name" : "tvos",
      "version" : "17.0"
    },
    {
      "name" : "visionos",
      "version" : "1.0"
    }
  ],
  "products" : [
    {
      "name" : "LMResponseParser",
      "targets" : [
        "LMResponseParser"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "LMResponseParserMLX",
      "targets" : [
        "LMResponseParserMLX"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "LMResponseParserTests",
      "module_type" : "SwiftTarget",
      "name" : "LMResponseParserTests",
      "path" : "Tests/LMResponseParserTests",
      "sources" : [
        "CodableEventsTests.swift",
        "CrossCuttingTests.swift",
        "EscapedStringsTests.swift",
        "EventTestHelpers.swift",
        "FunctionCallOutputTests.swift",
        "IDFactoryTests.swift",
        "MalformedInputTests.swift",
        "Parsers/DeepSeekR1ParserTests.swift",
        "Parsers/DeepSeekV31ParserTests.swift",
        "Parsers/DeepSeekV32ParserTests.swift",
        "Parsers/DeepSeekV3ParserTests.swift",
        "Parsers/ErnieParserTests.swift",
        "Parsers/Gemma4ParserTests.swift",
        "Parsers/GemmaFunctionCallParserTests.swift",
        "Parsers/Glm4ParserTests.swift",
        "Parsers/Granite20bFcParserTests.swift",
        "Parsers/Granite4ParserTests.swift",
        "Parsers/GraniteParserTests.swift",
        "Parsers/HarmonyParserTests.swift",
        "Parsers/HermesParserTests.swift",
        "Parsers/HunyuanA13BParserTests.swift",
        "Parsers/InternlmParserTests.swift",
        "Parsers/JSONFallbackParserTests.swift",
        "Parsers/JambaParserTests.swift",
        "Parsers/KimiK2ParserTests.swift",
        "Parsers/Lfm2ParserTests.swift",
        "Parsers/Llama3ParserTests.swift",
        "Parsers/LongcatParserTests.swift",
        "Parsers/MagistralReasoningTests.swift",
        "Parsers/MiniMaxM2AppendThinkTests.swift",
        "Parsers/MiniMaxM2ParserTests.swift",
        "Parsers/MiniMaxParserTests.swift",
        "Parsers/MistralParserTests.swift",
        "Parsers/NemotronV3SwapTests.swift",
        "Parsers/Olmo3ParserTests.swift",
        "Parsers/Phi4MiniParserTests.swift",
        "Parsers/PhiReasoningParserTests.swift",
        "Parsers/PythonicParserTests.swift",
        "Parsers/Qwen3XmlParserTests.swift",
        "Parsers/QwenParserTests.swift",
        "Parsers/SeedOssParserTests.swift",
        "Parsers/Step3p5ParserTests.swift",
        "Parsers/ThinkingFlagTests.swift",
        "Parsers/XlamParserTests.swift",
        "PrefixHoldTests.swift",
        "ResponseFormatDispatchTests.swift",
        "ResponseStreamEmitterTests.swift",
        "ResponseStreamTests.swift",
        "StreamingDetokenizerTests.swift"
      ],
      "target_dependencies" : [
        "LMResponseParser"
      ],
      "type" : "test"
    },
    {
      "c99name" : "LMResponseParserMLXTests",
      "module_type" : "SwiftTarget",
      "name" : "LMResponseParserMLXTests",
      "path" : "Tests/LMResponseParserMLXTests",
      "product_dependencies" : [
        "MLXLMCommon"
      ],
      "sources" : [
        "MLXTokenizerAdapterTests.swift",
        "ReexportTest.swift",
        "ResponseChatSessionTests.swift",
        "ResponseStreamHandleTests.swift",
        "ResponseTurnEnvelopeTests.swift",
        "RunPassTests.swift",
        "UsageAccumulatorTests.swift"
      ],
      "target_dependencies" : [
        "LMResponseParserMLX"
      ],
      "type" : "test"
    },
    {
      "c99name" : "LMResponseParserMLX",
      "module_type" : "SwiftTarget",
      "name" : "LMResponseParserMLX",
      "path" : "Sources/LMResponseParserMLX",
      "product_dependencies" : [
        "MLXLMCommon"
      ],
      "product_memberships" : [
        "LMResponseParserMLX"
      ],
      "sources" : [
        "LMResponseParserMLX.swift",
        "MLXTokenizerAdapter.swift",
        "PromptBoundaryPriorText.swift",
        "ResponseChatSession+PassDriver.swift",
        "ResponseChatSession.swift",
        "ResponseStreamHandle.swift",
        "ResponseTurnEnvelope.swift",
        "RunPass.swift",
        "SendableBox.swift",
        "SessionCacheStore.swift",
        "StreamResponse.swift",
        "UsageAccumulator.swift"
      ],
      "target_dependencies" : [
        "LMResponseParser"
      ],
      "type" : "library"
    },
    {
      "c99name" : "LMResponseParser",
      "module_type" : "SwiftTarget",
      "name" : "LMResponseParser",
      "path" : "Sources/LMResponseParser",
      "product_memberships" : [
        "LMResponseParser",
        "LMResponseParserMLX"
      ],
      "sources" : [
        "Core/DelimitedReasoningBoundary.swift",
        "Core/IDFactory.swift",
        "Core/ImplicitReasoningPreamble.swift",
        "Core/ItemAccumulation.swift",
        "Core/ParserInput.swift",
        "Core/PrefixHold.swift",
        "Core/PromptBoundaryPriorText.swift",
        "Core/ResponseFormat.swift",
        "Core/ResponseFormatParser.swift",
        "Core/ToolSpec.swift",
        "Driver/FinishInfo.swift",
        "Driver/ResponseStream.swift",
        "Driver/ResponseStreamEmitter.swift",
        "Events/CodableEvents.swift",
        "Events/ContentParts.swift",
        "Events/Response.swift",
        "Events/ResponseOutputItem.swift",
        "Events/ResponseStreamConfig.swift",
        "Events/StreamingEvents.swift",
        "Parsers/DeepSeekR1Parser.swift",
        "Parsers/DeepSeekV31Parser.swift",
        "Parsers/DeepSeekV32Parser.swift",
        "Parsers/DeepSeekV3Parser.swift",
        "Parsers/ErnieParser.swift",
        "Parsers/Gemma4Parser.swift",
        "Parsers/GemmaFunctionCallParser.swift",
        "Parsers/Glm4Parser.swift",
        "Parsers/Granite20bFcParser.swift",
        "Parsers/GraniteParser.swift",
        "Parsers/HarmonyParser.swift",
        "Parsers/HermesParser.swift",
        "Parsers/HunyuanA13BParser.swift",
        "Parsers/InternlmParser.swift",
        "Parsers/JSONFallbackParser.swift",
        "Parsers/JambaParser.swift",
        "Parsers/KimiK2Parser.swift",
        "Parsers/Llama3Parser.swift",
        "Parsers/MiniMaxM2Parser.swift",
        "Parsers/MiniMaxParser.swift",
        "Parsers/MistralParser.swift",
        "Parsers/Phi4MiniParser.swift",
        "Parsers/PhiReasoningParser.swift",
        "Parsers/PythonLiteral.swift",
        "Parsers/PythonicParser.swift",
        "Parsers/Qwen3XmlParser.swift",
        "Parsers/QwenParser.swift",
        "Parsers/SchemaInference.swift",
        "Parsers/ThinkPreambleExtractor.swift",
        "Parsers/ToolCallHelpers.swift",
        "Parsers/XlamParser.swift",
        "Tokenizer/ParserTokenizer.swift",
        "Tokenizer/StreamingDetokenizer.swift",
        "Tokenizer/StreamingDetokenizerError.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "6.1"
}
✅  Doc result (pending) reported
========================================
GenerateDocs
========================================
Generating docs at path:  $PWD/.docs/depasqualeorg/swift-lm-response-parser/main
Repository:               DePasqualeOrg/swift-lm-response-parser
Swift version used:       6.3
  .package(url: "https://github.com/swiftlang/swift-docc-plugin", branch: "main"),
Target:                   LMResponseParser
Extracting symbol information for 'LMResponseParser'...
Finished extracting symbol information for 'LMResponseParser'. (29.36s)
Building documentation for 'LMResponseParser'...
Finished building documentation for 'LMResponseParser' (0.76s)
Generated combined documentation archive at:
  /Users/admin/builder/spi-builder-workspace/.docs/depasqualeorg/swift-lm-response-parser/main
Building for debugging...
[0/8] Write sources
[1/8] Write snippet-extract-tool-entitlement.plist
[4/8] Write swift-version--6988338F2F200930.txt
[6/63] Compiling SymbolKit SourceRange.swift
[7/63] Compiling SymbolKit Metadata.swift
[8/63] Compiling SymbolKit Module.swift
[9/63] Compiling SymbolKit OperatingSystem.swift
[10/63] Compiling SymbolKit Platform.swift
[11/63] Compiling SymbolKit ReferenceLocation.swift
[12/68] Emitting module SymbolKit
[13/68] Compiling SymbolKit Relationship.swift
[14/68] Compiling SymbolKit RelationshipKind.swift
[15/68] Compiling SymbolKit SourceOrigin.swift
[16/68] Compiling SymbolKit GenericConstraints.swift
[17/68] Compiling SymbolKit Swift.swift
[18/68] Compiling SymbolKit SemanticVersion.swift
[19/68] Compiling SymbolKit OverloadData.swift
[20/68] Compiling SymbolKit PlistDetails.swift
[21/68] Compiling SymbolKit SPI.swift
[22/68] Compiling SymbolKit Snippet.swift
[23/68] Compiling SymbolKit Extension.swift
[24/68] Compiling SymbolKit DeclarationFragments.swift
[25/68] Compiling SymbolKit Fragment.swift
[26/68] Compiling SymbolKit FragmentKind.swift
[27/68] Compiling SymbolKit FunctionParameter.swift
[28/68] Compiling SymbolKit FunctionSignature.swift
[29/68] Compiling SymbolKit HTTP.swift
[30/68] Compiling SymbolKit Mixin+Equals.swift
[31/68] Compiling SymbolKit Mixin+Hash.swift
[32/68] Compiling SymbolKit Mixin.swift
[33/68] Compiling SymbolKit AnyScalar.swift
[34/68] Compiling SymbolKit LineList.swift
[35/68] Compiling SymbolKit Position.swift
[36/68] Compiling Snippets SnippetLanguage.swift
[37/68] Compiling Snippets Snippet.swift
[38/68] Compiling Snippets SnippetParser.swift
[39/68] Emitting module Snippets
[40/68] Compiling SymbolKit GenericConstraint.swift
[41/68] Compiling SymbolKit GenericParameter.swift
[42/68] Compiling SymbolKit Generics.swift
[43/68] Compiling SymbolKit Namespace.swift
[44/68] Compiling SymbolKit Symbol.swift
[45/68] Compiling SymbolKit Identifier.swift
[46/68] Compiling SymbolKit KindIdentifier.swift
[47/68] Compiling SymbolKit Location.swift
[48/68] Compiling SymbolKit Mutability.swift
[49/68] Compiling SymbolKit Names.swift
[50/68] Compiling SymbolKit SymbolKind.swift
[51/68] Compiling SymbolKit ValueConstraints.swift
[52/68] Compiling SymbolKit SymbolGraph+Overloads.swift
[53/68] Compiling SymbolKit SymbolGraph.swift
[54/68] Compiling SymbolKit GraphCollector.swift
[55/68] Compiling SymbolKit AccessControl.swift
[56/68] Compiling SymbolKit AlternateDeclarations.swift
[57/68] Compiling SymbolKit Availability.swift
[58/68] Compiling SymbolKit AvailabilityItem.swift
[59/68] Compiling SymbolKit Domain.swift
[60/68] Compiling SymbolKit DeclarationFragments+Simplify.swift
[61/68] Compiling SymbolKit UnifiedSymbol+Encodable.swift
[62/68] Compiling SymbolKit UnifiedSymbol.swift
[63/68] Compiling SymbolKit UnifiedSymbolGraph+Encodable.swift
[64/68] Compiling SymbolKit UnifiedSymbolGraph+Overloads.swift
[65/68] Compiling SymbolKit UnifiedSymbolGraph.swift
[66/72] Compiling snippet_extract URL+Status.swift
[67/72] Emitting module snippet_extract
[68/72] Compiling snippet_extract SymbolGraph+Snippet.swift
[69/72] Compiling snippet_extract SnippetBuildCommand.swift
[69/72] Write Objects.LinkFileList
[70/72] Linking snippet-extract-tool
[71/72] Applying snippet-extract-tool
Build of product 'snippet-extract' complete! (5.96s)
Building for debugging...
[0/1] Write swift-version--6988338F2F200930.txt
Build of target: 'LMResponseParser' complete! (2.45s)
Target:                   LMResponseParserMLX
Extracting symbol information for 'LMResponseParserMLX'...
Finished extracting symbol information for 'LMResponseParserMLX'. (13.26s)
Building documentation for 'LMResponseParserMLX'...
warning: No module named 'LMResponseParser'
  --> LMResponseParserMLX.md:9:347-9:409
7  | `LMResponseParserMLX` wires the engine-agnostic core in [`LMResponseParser`](/documentation/lmresponseparser) to `MLXLMCommon.ModelContainer` and `ModelContext`. It exposes a multi-turn chat session that mirrors `MLXLMCommon.ChatSession` (yielding `[ResponseOutputItem]` snapshots or `ResponseStreamingEvent` values instead of plain strings) plus low-level streaming helpers for callers that want to manage cache lifecycle directly.
8  |
9  + ``ResponseChatSession`` owns the multi-pass tool loop, but the host application still owns tool validation. Its `toolDispatch` callback receives completed parser output, validates the tool name and arguments, runs application policy, and returns the tool output that the next generation pass will see. Return recoverable validation failures as ``/LMResponseParser/ResponseFunctionCallOutput/Output/string(_:)`` values; throw only to abort the turn.
   |                                                                                                                                                                                                                                                                                                                                                            ╰─suggestion: Replace 'LMResponseParser' with 'LMResponseParserMLX'
10 |
11 | ## Topics
warning: No module named 'LMResponseParser'
  --> articles/mlx-session.md:9:123-9:159
7  | `LMResponseParserMLX` offers two layers of integration:
8  |
9  + - ``ResponseChatSession``: multi-turn session with built-in tool dispatch, mirrors `MLXLMCommon.ChatSession` but yields ``/LMResponseParser/ResponseOutputItem`` snapshots or ``/LMResponseParser/ResponseStreamingEvent`` values instead of plain strings.
   |                                                                                                                            ╰─suggestion: Replace 'LMResponseParser' with 'LMResponseParserMLX'
10 | - ``streamResponseEvents(input:cache:parameters:context:modelType:modelConfig:format:config:priorOutput:wiredMemoryTicket:)`` and ``streamResponseItems(input:cache:parameters:context:modelType:modelConfig:format:config:priorOutput:wiredMemoryTicket:)``: lower-level helpers for callers that own cache lifecycle directly.
11 |
warning: No module named 'LMResponseParser'
  --> articles/mlx-session.md:9:177-9:217
7  | `LMResponseParserMLX` offers two layers of integration:
8  |
9  + - ``ResponseChatSession``: multi-turn session with built-in tool dispatch, mirrors `MLXLMCommon.ChatSession` but yields ``/LMResponseParser/ResponseOutputItem`` snapshots or ``/LMResponseParser/ResponseStreamingEvent`` values instead of plain strings.
   |                                                                                                                                                                                  ╰─suggestion: Replace 'LMResponseParser' with 'LMResponseParserMLX'
10 | - ``streamResponseEvents(input:cache:parameters:context:modelType:modelConfig:format:config:priorOutput:wiredMemoryTicket:)`` and ``streamResponseItems(input:cache:parameters:context:modelType:modelConfig:format:config:priorOutput:wiredMemoryTicket:)``: lower-level helpers for callers that own cache lifecycle directly.
11 |
warning: No module named 'LMResponseParser'
  --> articles/mlx-session.md:14:71-14:97
12 | ## ResponseChatSession
13 |
14 + One session call corresponds to one assistant turn and produces one ``/LMResponseParser/Response``, regardless of how many internal generation passes happen for tool dispatch.
   |                                                                        ╰─suggestion: Replace 'LMResponseParser' with 'LMResponseParserMLX'
15 |
16 | ```swift
warning: No module named 'LMResponseParser'
  --> articles/mlx-session.md:46:185-46:236
44 | ## Tool validation and recovery
45 |
46 + ``ResponseChatSession`` owns the restart loop for tool use. When the model emits a completed tool call and `toolDispatch` is set, the session runs the callback, appends the returned ``/LMResponseParser/ResponseFunctionCallOutput/Output`` as a function-call output, and starts the next internal generation pass.
   |                                                                                                                                                                                          ╰─suggestion: Replace 'LMResponseParser' with 'LMResponseParserMLX'
47 |
48 | The callback is the validation boundary. Check the function name, decode and validate arguments, enforce permissions, and handle runtime preconditions before executing the tool:
warning: No module named 'LMResponseParser'
  --> articles/mlx-session.md:71:144-71:206
69 | ```
70 |
71 + Returning an error string gives the model feedback it can use to correct a bad tool call on the next pass. Return JSON structured results as ``/LMResponseParser/ResponseFunctionCallOutput/Output/string(_:)`` containing JSON text. Return typed text, image, or file results as ``/LMResponseParser/ResponseFunctionCallOutput/Output/content(_:)``.
   |                                                                                                                                                 ╰─suggestion: Replace 'LMResponseParser' with 'LMResponseParserMLX'
72 |
73 | The emitted Responses events preserve typed content outputs. For the next local MLX generation pass, ``ResponseChatSession`` renders typed text/image/file parts into the tool message text and attaches `input_image.image_url` values as `UserInput.Image.url` when they can be represented as URLs. Hosted file IDs and file contents require application-specific handling. Throwing from `toolDispatch` fails the response stream and should be reserved for failures where continuing the turn would be wrong, such as cancellation or an internal application error.
warning: No module named 'LMResponseParser'
  --> articles/mlx-session.md:71:278-71:341
69 | ```
70 |
71 + Returning an error string gives the model feedback it can use to correct a bad tool call on the next pass. Return JSON structured results as ``/LMResponseParser/ResponseFunctionCallOutput/Output/string(_:)`` containing JSON text. Return typed text, image, or file results as ``/LMResponseParser/ResponseFunctionCallOutput/Output/content(_:)``.
   |                                                                                                                                                                                                                                                                                       ╰─suggestion: Replace 'LMResponseParser' with 'LMResponseParserMLX'
72 |
73 | The emitted Responses events preserve typed content outputs. For the next local MLX generation pass, ``ResponseChatSession`` renders typed text/image/file parts into the tool message text and attaches `input_image.image_url` values as `UserInput.Image.url` when they can be represented as URLs. Hosted file IDs and file contents require application-specific handling. Throwing from `toolDispatch` fails the response stream and should be reserved for failures where continuing the turn would be wrong, such as cancellation or an internal application error.
warning: No module named 'LMResponseParser'
   --> articles/mlx-session.md:106:158-106:198
104 | ```
105 |
106 + Use ``streamResponseEvents(input:cache:parameters:context:modelType:modelConfig:format:config:priorOutput:wiredMemoryTicket:)`` instead when you want each ``/LMResponseParser/ResponseStreamingEvent`` directly – useful for SSE serialization or proxying.
    |                                                                                                                                                               ╰─suggestion: Replace 'LMResponseParser' with 'LMResponseParserMLX'
warning: No module named 'LMResponseParser'
  --> ../ResponseChatSession.swift:21:7-21:79
19 | /// `LLMModelFactory._load` decodes `model_type` and the raw `config.json`
20 | /// dict for dispatch and discards both. The bridge needs both to drive
21 + /// ``/LMResponseParser/ResponseFormat/infer(modelName:modelType:modelConfig:)``.
   |        ╰─suggestion: Replace 'LMResponseParser' with 'LMResponseParserMLX'
22 | ///
23 | /// - TODO: Drop both parameters if `ModelConfiguration` ever exposes the
warning: No module named 'LMResponseParser'
  --> ../ResponseChatSession.swift:54:22-54:48
52 |   public var tools: [ToolSpec]?
53 |
54 +   /// The terminal ``/LMResponseParser/Response`` snapshot from the most
   |                       ╰─suggestion: Replace 'LMResponseParser' with 'LMResponseParserMLX'
55 |   /// recently finalized turn, or `nil` until the first turn finalizes.
56 |   ///
warning: No module named 'LMResponseParser'
  --> ../ResponseChatSession.swift:84:43-84:85
82 |
83 |   /// Tool-dispatch callback. Differs from `ChatSession.toolDispatch` in
84 +   /// type: receives a Responses-native ``/LMResponseParser/ResponseFunctionToolCall`` with
   |                                            ╰─suggestion: Replace 'LMResponseParser' with 'LMResponseParserMLX'
85 |   /// `arguments` as a raw JSON string. Pre-parsing in the callback
86 |   /// signature would force a lossy round-trip through
warning: No module named 'LMResponseParser'
  --> ../ResponseChatSession.swift:94:9-94:71
92 |   /// permissions, and verify runtime preconditions here before executing
93 |   /// the tool. Return ordinary text and JSON results as
94 +   /// ``/LMResponseParser/ResponseFunctionCallOutput/Output/string(_:)``;
   |          ╰─suggestion: Replace 'LMResponseParser' with 'LMResponseParserMLX'
95 |   /// return typed text, image, or file parts as
96 |   /// ``/LMResponseParser/ResponseFunctionCallOutput/Output/content(_:)``.
warning: No module named 'LMResponseParser'
  --> ../ResponseChatSession.swift:96:9-96:72
94 |   /// ``/LMResponseParser/ResponseFunctionCallOutput/Output/string(_:)``;
95 |   /// return typed text, image, or file parts as
96 +   /// ``/LMResponseParser/ResponseFunctionCallOutput/Output/content(_:)``.
   |          ╰─suggestion: Replace 'LMResponseParser' with 'LMResponseParserMLX'
97 |   /// The emitted Responses events preserve that typed output. For the
98 |   /// next local MLX generation pass, the bridge renders content parts into
warning: No module named 'LMResponseParser'
   --> ../ResponseChatSession.swift:356:9-356:35
354 |
355 |   /// Run one assistant turn end-to-end and return its terminal
356 +   /// ``/LMResponseParser/Response``. Non-streaming convenience – drains
    |          ╰─suggestion: Replace 'LMResponseParser' with 'LMResponseParserMLX'
357 |   /// ``streamResponseEvents(prompt:role:images:videos:config:)`` to
358 |   /// completion and returns the ``/LMResponseParser/Response`` carried by
warning: No module named 'LMResponseParser'
   --> ../ResponseChatSession.swift:358:36-358:62
356 |   /// ``/LMResponseParser/Response``. Non-streaming convenience – drains
357 |   /// ``streamResponseEvents(prompt:role:images:videos:config:)`` to
358 +   /// completion and returns the ``/LMResponseParser/Response`` carried by
    |                                     ╰─suggestion: Replace 'LMResponseParser' with 'LMResponseParserMLX'
359 |   /// that turn's terminal response event.
360 |   /// Mirrors `MLXLMCommon.ChatSession.respond(to:role:images:videos:)`.
warning: No module named 'LMResponseParser'
  --> ../ResponseStreamHandle.swift:68:22-68:48
66 |   }
67 |
68 +   /// The terminal ``/LMResponseParser/Response`` snapshot – usage, status,
   |                       ╰─suggestion: Replace 'LMResponseParser' with 'LMResponseParserMLX'
69 |   /// incomplete details – captured from the terminal response event the
70 |   /// bridge generated internally. Awaits cleanup before returning, so
warning: No module named 'LMResponseParser'
  --> ../StreamResponse.swift:27:16-27:88
25 | /// `LLMModelFactory._load` decodes `model_type` and the raw `config.json`
26 | /// dict, uses them for dispatch, and discards both. The bridge needs both
27 + /// to drive ``/LMResponseParser/ResponseFormat/infer(modelName:modelType:modelConfig:)``.
   |                 ╰─suggestion: Replace 'LMResponseParser' with 'LMResponseParserMLX'
28 | ///
29 | /// - TODO: Drop both parameters if `ModelConfiguration` ever exposes the
Finished building documentation for 'LMResponseParserMLX' (0.11s)
Generated combined documentation archive at:
  /Users/admin/builder/spi-builder-workspace/.docs/depasqualeorg/swift-lm-response-parser/main
Building for debugging...
[0/3] Write swift-version--6988338F2F200930.txt
Build of product 'snippet-extract' complete! (2.12s)
Building for debugging...
[0/1] Write swift-version--6988338F2F200930.txt
Build of target: 'LMResponseParserMLX' complete! (2.50s)
Successfully merged into /Users/admin/builder/spi-builder-workspace/.docs-staging/depasqualeorg/swift-lm-response-parser/main/index/index.json
Successfully merged into /Users/admin/builder/spi-builder-workspace/.docs-staging/depasqualeorg/swift-lm-response-parser/main/linkable-paths.json
    1437
9	/Users/admin/builder/spi-builder-workspace/.docs/depasqualeorg/swift-lm-response-parser/main
✅  Doc result (uploading) reported
========================================
SyncDocs
========================================
Doc archive source directory: $PWD/.docs/depasqualeorg/swift-lm-response-parser/main
File count: 1437
Doc size:   9.0MB
Preparing doc bundle ...
Uploading prod-depasqualeorg-swift-lm-response-parser-main-a67aa984.zip to s3://spi-docs-inbox/prod-depasqualeorg-swift-lm-response-parser-main-a67aa984.zip
Copying... [13%]
Copying... [22%]
Copying... [32%]
Copying... [41%]
Copying... [51%]
Copying... [60%]
Copying... [73%]
Copying... [83%]
Copying... [92%]
Copying... [100%]
Done.