Build Information
Successful build of DHModels, reference main (478fdd), with Swift 6.3 for macOS (SPM) on 25 Apr 2026 23:40:37 UTC.
Swift 6 data race errors: 0
Build Command
env DEVELOPER_DIR=/Applications/Xcode-26.4.0.app xcrun swift build --arch arm64Build Log
========================================
RunAll
========================================
Builder version: 4.70.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/gwillish/DHModels.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/gwillish/DHModels
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at 478fdd8 Add label to DifficultyBudget.Rating; guard zero player count in rating factory (#25)
Cloned https://github.com/gwillish/DHModels.git
Revision (git rev-parse @):
478fdd8ac3d2509f65fee9905c1ffa34be05a21a
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/gwillish/DHModels.git at main
Fetching https://github.com/apple/swift-argument-parser
Fetching https://github.com/apple/swift-log.git
[1/6649] Fetching swift-log
[533/24113] Fetching swift-log, swift-argument-parser
Fetched https://github.com/apple/swift-log.git from cache (1.13s)
[1223/17464] Fetching swift-argument-parser
Fetched https://github.com/apple/swift-argument-parser from cache (2.87s)
Computing version for https://github.com/apple/swift-log.git
Computed https://github.com/apple/swift-log.git at 1.10.1 (3.46s)
Computing version for https://github.com/apple/swift-argument-parser
Computed https://github.com/apple/swift-argument-parser at 1.7.1 (0.62s)
Creating working copy for https://github.com/apple/swift-argument-parser
Working copy of https://github.com/apple/swift-argument-parser resolved at 1.7.1
Creating working copy for https://github.com/apple/swift-log.git
Working copy of https://github.com/apple/swift-log.git resolved at 1.10.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": "dhmodels",
"name": "DHModels",
"url": "https://github.com/gwillish/DHModels.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/DHModels",
"traits": [
"default"
],
"dependencies": [
{
"identity": "swift-argument-parser",
"name": "swift-argument-parser",
"url": "https://github.com/apple/swift-argument-parser",
"version": "1.7.1",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/swift-argument-parser",
"traits": [
"default"
],
"dependencies": [
]
},
{
"identity": "swift-log",
"name": "swift-log",
"url": "https://github.com/apple/swift-log.git",
"version": "1.12.0",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/swift-log",
"traits": [
],
"dependencies": [
]
}
]
}
]
}
Fetching https://github.com/gwillish/DHModels.git
[1/639] Fetching dhmodels
Fetched https://github.com/gwillish/DHModels.git from cache (0.84s)
Fetching https://github.com/apple/swift-argument-parser from cache
Fetching https://github.com/apple/swift-log.git from cache
Fetched https://github.com/apple/swift-argument-parser from cache (0.50s)
Fetched https://github.com/apple/swift-log.git from cache (0.51s)
Computing version for https://github.com/apple/swift-argument-parser
Computed https://github.com/apple/swift-argument-parser at 1.7.1 (0.59s)
Computing version for https://github.com/apple/swift-log.git
Computed https://github.com/apple/swift-log.git at 1.12.0 (0.05s)
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/gwillish/DHModels.git
Working copy of https://github.com/gwillish/DHModels.git resolved at main (478fdd8)
Creating working copy for https://github.com/apple/swift-argument-parser
Working copy of https://github.com/apple/swift-argument-parser resolved at 1.7.1
Found 2 product dependencies
- swift-argument-parser
- swift-log
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.3
Building package at path: $PWD
https://github.com/gwillish/DHModels.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-26.4.0.app xcrun swift build --arch arm64
[1/1] Compiling plugin GenerateManual
[2/2] Compiling plugin GenerateDoccReference
Building for debugging...
[2/15] Copying environments.json
[2/15] Copying adversaries.json
[3/15] Write sources
[6/15] Write validate-dhpack-entitlement.plist
[7/15] Write sources
[11/15] Write swift-version--6988338F2F200930.txt
[13/33] Emitting module ArgumentParserToolInfo
[14/33] Compiling ArgumentParserToolInfo ToolInfo.swift
[15/80] Emitting module Logging
[16/80] Compiling Logging Locks.swift
[17/80] Compiling Logging Logging.swift
[18/80] Compiling Logging MetadataProvider.swift
[19/80] Compiling Logging LogHandler.swift
[20/80] Compiling ArgumentParser InputKey.swift
[21/80] Compiling ArgumentParser InputOrigin.swift
[22/80] Compiling ArgumentParser Name.swift
[23/80] Compiling ArgumentParser Parsed.swift
[24/80] Compiling ArgumentParser ParsedValues.swift
[25/85] Compiling DHModels Party.swift
[26/86] Compiling DHModels ContentStoreError.swift
[27/86] Compiling ArgumentParser BashCompletionsGenerator.swift
[28/86] Compiling ArgumentParser CompletionsGenerator.swift
[29/86] Emitting module DHModels
[30/86] Compiling DHModels ContentFingerprint.swift
[31/86] Compiling DHModels DHPackContent.swift
[32/86] Compiling DHModels DaggerheartEnvironment.swift
[33/86] Compiling DHModels DifficultyBudget.swift
[34/86] Compiling DHModels ContentSource.swift
[35/86] Compiling DHModels EncounterDefinition.swift
[36/86] Emitting module ArgumentParser
[37/86] Compiling ArgumentParser ArgumentHelp.swift
[38/86] Compiling ArgumentParser ArgumentVisibility.swift
[39/86] Compiling ArgumentParser CompletionKind.swift
[40/86] Compiling ArgumentParser Errors.swift
[41/86] Compiling ArgumentParser Flag.swift
[42/86] Compiling ArgumentParser NameSpecification.swift
[43/86] Compiling ArgumentParser Option.swift
[44/86] Compiling ArgumentParser OptionGroup.swift
[45/86] Compiling ArgumentParser ParentCommand.swift
[46/86] Compiling ArgumentParser AsyncParsableCommand.swift
[47/86] Compiling ArgumentParser Platform.swift
[48/86] Compiling ArgumentParser SequenceExtensions.swift
[49/86] Compiling ArgumentParser StringExtensions.swift
[50/86] Compiling ArgumentParser SwiftExtensions.swift
[51/86] Compiling ArgumentParser Tree.swift
[52/86] Compiling DHModels Player.swift
[53/96] Compiling ArgumentParser CodingKeyValidator.swift
[54/96] Compiling ArgumentParser NonsenseFlagsValidator.swift
[55/96] Compiling ArgumentParser ParsableArgumentsValidation.swift
[56/96] Compiling ArgumentParser PositionalArgumentsValidator.swift
[57/96] Compiling ArgumentParser UniqueNamesValidator.swift
[58/96] Compiling ArgumentParser MessageInfo.swift
[59/96] Compiling ArgumentParser UsageGenerator.swift
[60/96] Compiling ArgumentParser CollectionExtensions.swift
[61/96] Compiling ArgumentParser Foundation.swift
[62/96] Compiling ArgumentParser Mutex.swift
[65/96] Compiling ArgumentParser FishCompletionsGenerator.swift
[66/96] Compiling ArgumentParser ZshCompletionsGenerator.swift
[67/96] Compiling ArgumentParser Argument.swift
[68/96] Compiling ArgumentParser ArgumentDiscussion.swift
[69/96] Compiling ArgumentParser ParserError.swift
[70/96] Compiling ArgumentParser SplitArguments.swift
[71/96] Compiling ArgumentParser DumpHelpGenerator.swift
[72/96] Compiling ArgumentParser HelpCommand.swift
[73/96] Compiling ArgumentParser HelpGenerator.swift
[74/96] Compiling ArgumentParser CommandConfiguration.swift
[75/96] Compiling ArgumentParser CommandGroup.swift
[76/96] Compiling ArgumentParser EnumerableFlag.swift
[77/96] Compiling ArgumentParser ExpressibleByArgument.swift
[78/96] Compiling ArgumentParser ParsableArguments.swift
[79/96] Compiling ArgumentParser ParsableCommand.swift
[80/96] Compiling ArgumentParser ArgumentDecoder.swift
[81/96] Compiling ArgumentParser ArgumentDefinition.swift
[82/96] Compiling ArgumentParser ArgumentSet.swift
[83/96] Compiling ArgumentParser CommandParser.swift
[84/98] Compiling DHKit SessionRegistry.swift
[85/98] Compiling DHKit resource_bundle_accessor.swift
[86/98] Compiling DHKit PlayerState.swift
[87/98] Compiling DHKit EnvironmentState.swift
[88/98] Emitting module validate_dhpack
[89/98] Compiling validate_dhpack main.swift
[89/98] Write Objects.LinkFileList
[91/98] Compiling DHKit EncounterStore.swift
[92/98] Compiling DHKit Compendium.swift
[93/98] Emitting module DHKit
[94/98] Compiling DHKit EncounterParticipant.swift
[95/98] Compiling DHKit AdversaryState.swift
[96/98] Compiling DHKit EncounterSession.swift
[96/98] Linking validate-dhpack
[97/98] Applying validate-dhpack
Build complete! (13.73s)
Build complete.
{
"dependencies" : [
{
"identity" : "swift-argument-parser",
"requirement" : {
"range" : [
{
"lower_bound" : "1.3.0",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-argument-parser"
},
{
"identity" : "swift-log",
"requirement" : {
"range" : [
{
"lower_bound" : "1.0.0",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-log.git"
}
],
"manifest_display_name" : "DHModels",
"name" : "DHModels",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "17.0"
},
{
"name" : "macos",
"version" : "14.0"
},
{
"name" : "tvos",
"version" : "17.0"
},
{
"name" : "watchos",
"version" : "10.0"
}
],
"products" : [
{
"name" : "DHModels",
"targets" : [
"DHModels"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "DHKit",
"targets" : [
"DHKit"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "validate-dhpack",
"targets" : [
"validate-dhpack"
],
"type" : {
"executable" : null
}
}
],
"targets" : [
{
"c99name" : "validate_dhpack",
"module_type" : "SwiftTarget",
"name" : "validate-dhpack",
"path" : "Sources/validate-dhpack",
"product_dependencies" : [
"ArgumentParser"
],
"product_memberships" : [
"validate-dhpack"
],
"sources" : [
"main.swift"
],
"target_dependencies" : [
"DHModels"
],
"type" : "executable"
},
{
"c99name" : "DHModelsTests",
"module_type" : "SwiftTarget",
"name" : "DHModelsTests",
"path" : "Tests/DHModelsTests",
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/DHModelsTests/Fixtures",
"rule" : {
"copy" : {
}
}
}
],
"sources" : [
"ContentModelTests.swift",
"ModelTests.swift",
"SRDDecodeTests.swift"
],
"target_dependencies" : [
"DHModels"
],
"type" : "test"
},
{
"c99name" : "DHModels",
"module_type" : "SwiftTarget",
"name" : "DHModels",
"path" : "Sources/DHModels",
"product_memberships" : [
"DHModels",
"DHKit",
"validate-dhpack"
],
"sources" : [
"Adversary.swift",
"Condition.swift",
"ContentFingerprint.swift",
"ContentSource.swift",
"ContentStoreError.swift",
"DHPackContent.swift",
"DaggerheartEnvironment.swift",
"DifficultyBudget.swift",
"EncounterDefinition.swift",
"Party.swift",
"Player.swift"
],
"type" : "library"
},
{
"c99name" : "DHKitTests",
"module_type" : "SwiftTarget",
"name" : "DHKitTests",
"path" : "Tests/DHKitTests",
"sources" : [
"CompendiumTests.swift",
"EncounterSessionTests.swift",
"EncounterStoreTests.swift",
"SessionRegistryTests.swift",
"StateTests.swift"
],
"target_dependencies" : [
"DHKit"
],
"type" : "test"
},
{
"c99name" : "DHKit",
"module_type" : "SwiftTarget",
"name" : "DHKit",
"path" : "Sources/DHKit",
"product_dependencies" : [
"Logging"
],
"product_memberships" : [
"DHKit"
],
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/DHKit/Resources/adversaries.json",
"rule" : {
"copy" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/DHKit/Resources/environments.json",
"rule" : {
"copy" : {
}
}
}
],
"sources" : [
"AdversaryState.swift",
"Compendium.swift",
"EncounterParticipant.swift",
"EncounterSession.swift",
"EncounterStore.swift",
"EnvironmentState.swift",
"PlayerState.swift",
"SessionRegistry.swift"
],
"target_dependencies" : [
"DHModels"
],
"type" : "library"
}
],
"tools_version" : "6.2"
}
✅ Doc result (pending) reported
========================================
GenerateDocs
========================================
Generating docs at path: $PWD/.docs/gwillish/dhmodels/main
Repository: gwillish/DHModels
Swift version used: 6.3
Target: DHModels
Extracting symbol information for 'DHModels'...
Finished extracting symbol information for 'DHModels'. (25.75s)
Building documentation for 'DHModels'...
warning: 'AdversaryState' doesn't exist at '/DHModels/Adversary'
--> ../Adversary.swift:148:11-148:25
146 | /// This is a **catalog model** — it represents the static definition of an
147 | /// adversary, not a live instance being tracked in an encounter.
148 + /// See ``AdversaryState`` in `EncounterSession.swift` for the runtime type.
149 | ///
150 | /// ## JSON Compatibility
warning: 'Compendium' doesn't exist at '/DHModels/ContentSource/id'
--> ../ContentSource.swift:38:52-38:62
36 |
37 | /// Stable, lowercase slug identifying this source, e.g. `"expanded-adversary-compendium"`.
38 + /// Used as a directory name and as the key in ``Compendium``'s sources tier.
39 | public let id: String
40 |
warning: No symbol matched 'DaggerheartModels'. Can't resolve 'DaggerheartModels'.
--> DaggerheartModels.md:1:3-1:24
1 + # ``DaggerheartModels``
2 |
3 | Foundation-only value types for the Daggerheart tabletop RPG system.
warning: 'EncounterSession' doesn't exist at '/DHModels/DifficultyBudget'
--> ../DifficultyBudget.swift:26:36-26:52
24 | ///
25 | /// All functions are static and operate on value types only.
26 + /// No state, no dependencies on ``EncounterSession`` or UI.
27 | nonisolated public enum DifficultyBudget {
28 |
warning: 'PlayerState' doesn't exist at '/DHModels/PlayerConfig'
--> ../EncounterDefinition.swift:28:56-28:67
26 | /// Configuration for a single player character in an encounter definition.
27 | ///
28 + /// This is the `Codable`, value-type counterpart of ``PlayerState``.
29 | /// When an ``EncounterSession`` is started from a definition, each
30 | /// `PlayerConfig` becomes a ``PlayerState`` with fresh runtime state.
warning: 'EncounterSession' doesn't exist at '/DHModels/PlayerConfig'
--> ../EncounterDefinition.swift:29:15-29:31
27 | ///
28 | /// This is the `Codable`, value-type counterpart of ``PlayerState``.
29 + /// When an ``EncounterSession`` is started from a definition, each
30 | /// `PlayerConfig` becomes a ``PlayerState`` with fresh runtime state.
31 | nonisolated public struct PlayerConfig: Codable, Sendable, Equatable, Hashable, Identifiable {
warning: 'PlayerState' doesn't exist at '/DHModels/PlayerConfig'
--> ../EncounterDefinition.swift:30:32-30:43
28 | /// This is the `Codable`, value-type counterpart of ``PlayerState``.
29 | /// When an ``EncounterSession`` is started from a definition, each
30 + /// `PlayerConfig` becomes a ``PlayerState`` with fresh runtime state.
31 | nonisolated public struct PlayerConfig: Codable, Sendable, Equatable, Hashable, Identifiable {
32 | public let id: UUID
warning: 'EncounterSession' doesn't exist at '/DHModels/EncounterDefinition'
--> ../EncounterDefinition.swift:88:38-88:54
86 | /// suitable for persistence to disk, CloudKit, or JSON export.
87 | ///
88 + /// To run an encounter, create an ``EncounterSession`` from a definition
89 | /// using ``EncounterSession/init(from:using:)``.
90 | nonisolated public struct EncounterDefinition: Codable, Sendable, Equatable, Hashable, Identifiable
warning: 'EncounterSession' doesn't exist at '/DHModels/EncounterDefinition'
--> ../EncounterDefinition.swift:89:13-89:29
87 | ///
88 | /// To run an encounter, create an ``EncounterSession`` from a definition
89 + /// using ``EncounterSession/init(from:using:)``.
90 | nonisolated public struct EncounterDefinition: Codable, Sendable, Equatable, Hashable, Identifiable
91 | {
warning: 'EncounterStore' doesn't exist at '/DHModels/EncounterDefinition/modifiedAt'
--> ../EncounterDefinition.swift:112:20-112:34
110 | public let createdAt: Date
111 |
112 + /// Stamped by ``EncounterStore/save(_:)`` — do not set directly.
113 | public var modifiedAt: Date
114 |
Finished building documentation for 'DHModels' (0.44s)
Generated documentation archive at:
/Users/admin/builder/spi-builder-workspace/.docs/gwillish/dhmodels/main
Fetching https://github.com/swiftlang/swift-docc-plugin
Updating https://github.com/apple/swift-log.git
Updated https://github.com/apple/swift-log.git (0.51s)
[1/2277] Fetching swift-docc-plugin
Updating https://github.com/apple/swift-argument-parser
Fetched https://github.com/swiftlang/swift-docc-plugin from cache (1.22s)
Updated https://github.com/apple/swift-argument-parser (0.63s)
Computing version for https://github.com/apple/swift-log.git
Computed https://github.com/apple/swift-log.git at 1.10.1 (2.67s)
Computing version for https://github.com/apple/swift-argument-parser
Computed https://github.com/apple/swift-argument-parser at 1.7.1 (0.80s)
Computing version for https://github.com/swiftlang/swift-docc-plugin
Computed https://github.com/swiftlang/swift-docc-plugin at 1.4.6 (1.05s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit
[1/3676] Fetching swift-docc-symbolkit
Fetched https://github.com/swiftlang/swift-docc-symbolkit from cache (1.18s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (1.94s)
Creating working copy for https://github.com/swiftlang/swift-docc-symbolkit
Working copy of https://github.com/swiftlang/swift-docc-symbolkit resolved at 1.0.0
Creating working copy for https://github.com/swiftlang/swift-docc-plugin
Working copy of https://github.com/swiftlang/swift-docc-plugin resolved at 1.4.6
Building for debugging...
[0/8] Write snippet-extract-tool-entitlement.plist
[1/8] Write sources
[4/8] Write swift-version--6988338F2F200930.txt
[6/53] Compiling SymbolKit DeclarationFragments.swift
[7/53] Compiling SymbolKit Fragment.swift
[8/53] Compiling SymbolKit FragmentKind.swift
[9/53] Compiling SymbolKit FunctionParameter.swift
[10/53] Compiling SymbolKit FunctionSignature.swift
[11/57] Emitting module SymbolKit
[12/57] Compiling SymbolKit Mixin+Equals.swift
[13/57] Compiling SymbolKit Mixin+Hash.swift
[14/57] Compiling SymbolKit Mixin.swift
[15/57] Compiling SymbolKit LineList.swift
[16/57] Compiling SymbolKit Position.swift
[17/57] Compiling SymbolKit Identifier.swift
[18/57] Compiling SymbolKit KindIdentifier.swift
[19/57] Compiling SymbolKit Location.swift
[20/57] Compiling SymbolKit Mutability.swift
[21/57] Compiling SymbolKit Names.swift
[22/57] Compiling SymbolKit SPI.swift
[23/57] Compiling SymbolKit Snippet.swift
[24/57] Compiling SymbolKit Extension.swift
[25/57] Compiling SymbolKit GenericConstraint.swift
[26/57] Compiling SymbolKit GenericParameter.swift
[27/57] Compiling SymbolKit Generics.swift
[28/57] Compiling SymbolKit Namespace.swift
[29/57] Compiling SymbolKit SourceRange.swift
[30/57] Compiling SymbolKit Metadata.swift
[31/57] Compiling SymbolKit Module.swift
[32/57] Compiling SymbolKit OperatingSystem.swift
[33/57] Compiling SymbolKit Platform.swift
[34/57] Compiling SymbolKit Relationship.swift
[35/57] Compiling SymbolKit RelationshipKind.swift
[36/57] Compiling SymbolKit SourceOrigin.swift
[37/57] Compiling SymbolKit GenericConstraints.swift
[38/57] Compiling SymbolKit Swift.swift
[39/57] Compiling SymbolKit SemanticVersion.swift
[40/57] Compiling SymbolKit AccessControl.swift
[41/57] Compiling SymbolKit Availability.swift
[42/57] Compiling SymbolKit AvailabilityItem.swift
[43/57] Compiling SymbolKit Domain.swift
[44/57] Compiling SymbolKit Symbol.swift
[45/57] Compiling SymbolKit SymbolKind.swift
[46/57] Compiling SymbolKit SymbolGraph.swift
[47/57] Compiling SymbolKit GraphCollector.swift
[48/57] Compiling SymbolKit UnifiedSymbol+Encodable.swift
[49/57] Compiling SymbolKit UnifiedSymbol.swift
[50/57] Compiling SymbolKit UnifiedSymbolGraph+Encodable.swift
[51/57] Compiling SymbolKit UnifiedSymbolGraph.swift
[52/57] Compiling Snippets Snippet.swift
[53/57] Compiling Snippets SnippetParser.swift
[54/57] Emitting module Snippets
[55/61] Compiling snippet_extract URL+Status.swift
[56/61] Compiling snippet_extract SnippetBuildCommand.swift
[57/61] Emitting module snippet_extract
[58/61] Compiling snippet_extract SymbolGraph+Snippet.swift
[58/61] Write Objects.LinkFileList
[59/61] Linking snippet-extract-tool
[60/61] Applying snippet-extract-tool
Build of product 'snippet-extract' complete! (3.41s)
Building for debugging...
[0/1] Write swift-version--6988338F2F200930.txt
Build of target: 'DHModels' complete! (0.31s)
Target: DHKit
Extracting symbol information for 'DHKit'...
Finished extracting symbol information for 'DHKit'. (0.39s)
Building documentation for 'DHKit'...
warning: 'Adversary' doesn't exist at '/DHKit/AdversaryState'
--> ../AdversaryState.swift:17:38-17:47
15 | /// A single adversary participant in a live encounter.
16 | ///
17 + /// Wraps a reference to a catalog ``Adversary`` with runtime state:
| ╰─suggestion: Replace 'Adversary' with 'adversaryID'
18 | /// current HP, current Stress, defeat status, and an optional individual name
19 | /// (useful when running multiple copies of the same adversary).
warning: No symbol matched 'DaggerheartKit'. Can't resolve 'DaggerheartKit'.
--> DaggerheartKit.md:1:3-1:21
1 + # ``DaggerheartKit``
2 |
3 | Observable SwiftUI stores for running Daggerheart encounters on Apple platforms.
warning: 'EncounterDefinition' doesn't exist at '/DHKit/EncounterSession/definitionID'
--> ../EncounterSession.swift:66:23-66:42
64 | public var name: String
65 |
66 + /// The ID of the ``EncounterDefinition`` this session was created from.
67 | /// `nil` for sessions created directly (tests, blank sessions).
68 | public let definitionID: UUID?
warning: 'Set' doesn't exist at '/DHKit/EncounterSession/applyCondition(_:to:)'
--> ../EncounterSession.swift:296:58-296:61
294 |
295 | /// Apply a condition to a combat participant by ID.
296 + /// Per the SRD, the same condition cannot stack — ``Set`` enforces this.
297 | /// `.custom` conditions with an empty or whitespace-only name are silently ignored.
298 | public func applyCondition(_ condition: Condition, to id: UUID) {
warning: 'EncounterDefinition' doesn't exist at '/DHKit/EncounterStore'
--> ../EncounterStore.swift:51:29-51:48
49 | // MARK: - EncounterStore
50 |
51 + /// Persistence layer for ``EncounterDefinition`` documents.
52 | ///
53 | /// Each definition is stored as a single JSON file (`<UUID>.encounter.json`)
warning: 'EncounterDefinition' doesn't exist at '/DHKit/EncounterStore/create(name:)'
--> ../EncounterStore.swift:222:23-222:42
220 | // MARK: - Create
221 |
222 + /// Creates a new ``EncounterDefinition``, persists it, and inserts it
223 | /// into ``definitions``.
224 | ///
warning: 'EncounterDefinition' doesn't exist at '/DHKit/EncounterStore/duplicate(id:)'
--> ../EncounterStore.swift:303:39-303:58
301 | /// to the top of ``definitions``.
302 | ///
303 + /// - Note: All content fields of ``EncounterDefinition`` must be listed
304 | /// explicitly here. When adding new fields to `EncounterDefinition`,
305 | /// update this method to include them.
warning: 'PlayerConfig' doesn't exist at '/DHKit/PlayerState/init(id:name:maxHP:currentHP:maxStress:currentStress:evasion:thresholdMajor:thresholdSevere:armorSlots:currentArmorSlots:conditions:)'
--> ../PlayerState.swift:72:41-72:53
70 | /// Creates a player slot with explicit stat values.
71 | ///
72 + /// In most cases prefer creating a ``PlayerConfig`` and letting
73 | /// ``EncounterSession/make(from:using:)`` build the slot automatically.
74 | ///
warning: 'session(for:definition:compendium:)' doesn't exist at '/DHKit/SessionRegistry'
--> ../SessionRegistry.swift:31:40-31:75
29 | /// ```
30 | ///
31 + /// Retrieve or create a session via ``session(for:definition:compendium:)``.
| ├─suggestion: Replace 'session(for:definition:compendium:)' with 'session(for:compendium:)'
| ╰─suggestion: Replace 'session(for:definition:compendium:)' with 'resetSession(for:compendium:)'
32 | /// The same session is returned on every call for a given definition ID until
33 | /// ``clearSession(for:)`` is called.
warning: 'session(for:definition:compendium:)' doesn't exist at '/DHKit/SessionRegistry/clearSession(for:)'
--> ../SessionRegistry.swift:62:55-62:90
60 | }
61 |
62 + /// Remove the stored session so the next call to ``session(for:definition:compendium:)``
63 | /// starts a fresh session.
64 | public func clearSession(for definitionID: UUID) {
Finished building documentation for 'DHKit' (0.13s)
Generated documentation archive at:
/Users/admin/builder/spi-builder-workspace/.docs/gwillish/dhmodels/main
Building for debugging...
[0/3] Write swift-version--6988338F2F200930.txt
Build of product 'snippet-extract' complete! (0.26s)
Building for debugging...
[0/1] Write swift-version--6988338F2F200930.txt
Build of target: 'DHKit' complete! (0.30s)
Successfully merged into /Users/admin/builder/spi-builder-workspace/.docs-staging/gwillish/dhmodels/main/index/index.json
Successfully merged into /Users/admin/builder/spi-builder-workspace/.docs-staging/gwillish/dhmodels/main/linkable-paths.json
893
6 /Users/admin/builder/spi-builder-workspace/.docs/gwillish/dhmodels/main
✅ Doc result (uploading) reported
========================================
SyncDocs
========================================
Doc archive source directory: $PWD/.docs/gwillish/dhmodels/main
File count: 893
Doc size: 6.0MB
Preparing doc bundle ...
Uploading prod-gwillish-dhmodels-main-d70be1fd.zip to s3://spi-docs-inbox/prod-gwillish-dhmodels-main-d70be1fd.zip
Copying... [15%]
Copying... [24%]
Copying... [34%]
Copying... [44%]
Copying... [54%]
Copying... [63%]
Copying... [73%]
Copying... [83%]
Copying... [93%]
Copying... [100%]
Done.