{
  "name": "ForgeCollab",
  "language": "swift",
  "version": "Swift package source snapshot",
  "description": "Swift ForgeCollab library product.",
  "manifest": "forge-swift/Package.swift",
  "manifestSha256": "8579cd038904d9101db7b7714fa006f94144a6f951c0535512114bb00d4a3128",
  "status": "source-reference",
  "registryPublicationVerified": false,
  "route": "/libraries/swift/ForgeCollab",
  "features": {},
  "files": [
    {
      "path": "forge-swift/Sources/ForgeCollab/CapabilityAdvertiser.swift",
      "sha256": "b112e91a562994bcd918e85b5de590999ca54993c4bcd4e9dd51c6fc938249b8",
      "artifactSha256": "e5ff8f0655c5bcacd28c8b17630d3e9f7902a1ebc83050ab8a096014212f367b",
      "url": "/reference/source/forge-swift/Sources/ForgeCollab/CapabilityAdvertiser.swift.txt",
      "declarations": [
        {
          "name": "public protocol CapabilityAdvertiser: Sendable",
          "line": 21,
          "signature": "public protocol CapabilityAdvertiser: Sendable",
          "documentation": ""
        },
        {
          "name": "public struct CapabilityAdvertisement: Codable, Sendable, Equatable",
          "line": 36,
          "signature": "public struct CapabilityAdvertisement: Codable, Sendable, Equatable",
          "documentation": ""
        },
        {
          "name": "public let agentDid: String",
          "line": 38,
          "signature": "public let agentDid: String\n/// The agent's advertised capabilities.\npublic let capabilities: [String]\n/// When the advertisement was created.\npublic let timestamp: Timestamp\n\n/// Creates a new capability advertisement.\n///\n/// - Parameters:\n///   - agentDid: The agent's DID.\n///   - capabilities: The agent's capabilities.\npublic init(agentDid: String, capabilities: [String])",
          "documentation": ""
        },
        {
          "name": "public let capabilities: [String]",
          "line": 40,
          "signature": "public let capabilities: [String]\n/// When the advertisement was created.\npublic let timestamp: Timestamp\n\n/// Creates a new capability advertisement.\n///\n/// - Parameters:\n///   - agentDid: The agent's DID.\n///   - capabilities: The agent's capabilities.\npublic init(agentDid: String, capabilities: [String])",
          "documentation": ""
        },
        {
          "name": "public let timestamp: Timestamp",
          "line": 42,
          "signature": "public let timestamp: Timestamp\n\n/// Creates a new capability advertisement.\n///\n/// - Parameters:\n///   - agentDid: The agent's DID.\n///   - capabilities: The agent's capabilities.\npublic init(agentDid: String, capabilities: [String])",
          "documentation": ""
        },
        {
          "name": "public init(agentDid: String, capabilities: [String])",
          "line": 49,
          "signature": "public init(agentDid: String, capabilities: [String])",
          "documentation": ""
        },
        {
          "name": "public func matchTaskToAgents(",
          "line": 68,
          "signature": "public func matchTaskToAgents(\ntask: DelegatedTask,\nadvertisements: [CapabilityAdvertisement]\n) -> [String]",
          "documentation": ""
        }
      ]
    },
    {
      "path": "forge-swift/Sources/ForgeCollab/CollabError.swift",
      "sha256": "279ff86dd2eeeabf675525ed3c01187ce792f92754ac6e4773568c770df1487d",
      "artifactSha256": "502dbedce57b76b5d5d560568e4125f9e7530759b314138ae3d84591773d5075",
      "url": "/reference/source/forge-swift/Sources/ForgeCollab/CollabError.swift.txt",
      "declarations": [
        {
          "name": "public enum CollabError: Error, Sendable, Equatable",
          "line": 19,
          "signature": "public enum CollabError: Error, Sendable, Equatable",
          "documentation": ""
        },
        {
          "name": "public var errorDescription: String?",
          "line": 72,
          "signature": "public var errorDescription: String?",
          "documentation": ""
        }
      ]
    },
    {
      "path": "forge-swift/Sources/ForgeCollab/CollaborationTypes.swift",
      "sha256": "a83c29eea72a24649925552bdfcc9b6009581e786384e6d8042304fba11327ed",
      "artifactSha256": "b0c61fb7afb7e55d1607fe673f97cda6726b37e8f79e37b6ba4111abbb700b74",
      "url": "/reference/source/forge-swift/Sources/ForgeCollab/CollaborationTypes.swift.txt",
      "declarations": [
        {
          "name": "public enum CollaborationRole: String, Codable, Sendable, Hashable, CaseIterable",
          "line": 22,
          "signature": "public enum CollaborationRole: String, Codable, Sendable, Hashable, CaseIterable",
          "documentation": ""
        },
        {
          "name": "public enum SessionState: String, Codable, Sendable, Hashable, CaseIterable",
          "line": 42,
          "signature": "public enum SessionState: String, Codable, Sendable, Hashable, CaseIterable",
          "documentation": ""
        },
        {
          "name": "public var validTransitions: [SessionState]",
          "line": 61,
          "signature": "public var validTransitions: [SessionState]",
          "documentation": ""
        },
        {
          "name": "public var isTerminal: Bool",
          "line": 73,
          "signature": "public var isTerminal: Bool",
          "documentation": ""
        },
        {
          "name": "public struct CollaborationSession: Codable, Sendable, Equatable",
          "line": 83,
          "signature": "public struct CollaborationSession: Codable, Sendable, Equatable",
          "documentation": ""
        },
        {
          "name": "public let id: String",
          "line": 85,
          "signature": "public let id: String\n/// Human-readable session name.\npublic let name: String\n/// The current session state.\npublic var state: SessionState\n/// Map of agent DIDs to their roles in this session.\npublic var participants: [String: CollaborationRole]\n/// When the session was created.\npublic let createdAt: Timestamp\n/// When the session was last updated.\npublic var updatedAt: Timestamp\n\n/// Creates a new collaboration session.\n///\n/// - Parameters:\n///   - id: Unique session identifier. Defaults to a new UUID.\n///   - name: Human-readable session name.\n///   - participants: Initial participants and their roles.\npublic init(\nid: String;",
          "documentation": ""
        },
        {
          "name": "public let name: String",
          "line": 87,
          "signature": "public let name: String\n/// The current session state.\npublic var state: SessionState\n/// Map of agent DIDs to their roles in this session.\npublic var participants: [String: CollaborationRole]\n/// When the session was created.\npublic let createdAt: Timestamp\n/// When the session was last updated.\npublic var updatedAt: Timestamp\n\n/// Creates a new collaboration session.\n///\n/// - Parameters:\n///   - id: Unique session identifier. Defaults to a new UUID.\n///   - name: Human-readable session name.\n///   - participants: Initial participants and their roles.\npublic init(\nid: String;",
          "documentation": ""
        },
        {
          "name": "public var state: SessionState",
          "line": 89,
          "signature": "public var state: SessionState\n/// Map of agent DIDs to their roles in this session.\npublic var participants: [String: CollaborationRole]\n/// When the session was created.\npublic let createdAt: Timestamp\n/// When the session was last updated.\npublic var updatedAt: Timestamp\n\n/// Creates a new collaboration session.\n///\n/// - Parameters:\n///   - id: Unique session identifier. Defaults to a new UUID.\n///   - name: Human-readable session name.\n///   - participants: Initial participants and their roles.\npublic init(\nid: String;",
          "documentation": ""
        },
        {
          "name": "public var participants: [String: CollaborationRole]",
          "line": 91,
          "signature": "public var participants: [String: CollaborationRole]\n/// When the session was created.\npublic let createdAt: Timestamp\n/// When the session was last updated.\npublic var updatedAt: Timestamp\n\n/// Creates a new collaboration session.\n///\n/// - Parameters:\n///   - id: Unique session identifier. Defaults to a new UUID.\n///   - name: Human-readable session name.\n///   - participants: Initial participants and their roles.\npublic init(\nid: String;",
          "documentation": ""
        },
        {
          "name": "public let createdAt: Timestamp",
          "line": 93,
          "signature": "public let createdAt: Timestamp\n/// When the session was last updated.\npublic var updatedAt: Timestamp\n\n/// Creates a new collaboration session.\n///\n/// - Parameters:\n///   - id: Unique session identifier. Defaults to a new UUID.\n///   - name: Human-readable session name.\n///   - participants: Initial participants and their roles.\npublic init(\nid: String;",
          "documentation": ""
        },
        {
          "name": "public var updatedAt: Timestamp",
          "line": 95,
          "signature": "public var updatedAt: Timestamp\n\n/// Creates a new collaboration session.\n///\n/// - Parameters:\n///   - id: Unique session identifier. Defaults to a new UUID.\n///   - name: Human-readable session name.\n///   - participants: Initial participants and their roles.\npublic init(\nid: String;",
          "documentation": ""
        },
        {
          "name": "public init(",
          "line": 103,
          "signature": "public init(\nid: String;",
          "documentation": ""
        },
        {
          "name": "public enum TaskPriority: String, Codable, Sendable, Hashable, CaseIterable",
          "line": 123,
          "signature": "public enum TaskPriority: String, Codable, Sendable, Hashable, CaseIterable",
          "documentation": ""
        },
        {
          "name": "public struct TaskConstraints: Codable, Sendable, Equatable",
          "line": 142,
          "signature": "public struct TaskConstraints: Codable, Sendable, Equatable",
          "documentation": ""
        },
        {
          "name": "public var timeoutMs: UInt64?",
          "line": 144,
          "signature": "public var timeoutMs: UInt64?\n/// Maximum number of tool invocations allowed.\npublic var maxToolInvocations: UInt32?\n/// Maximum tokens the task may consume.\npublic var maxTokens: UInt64?\n/// Required capabilities the executing agent must have.\npublic var requiredCapabilities: [String]\n/// Whether the task may be further delegated to sub-agents.\npublic var allowSubDelegation: Bool\n\n/// Creates task constraints with defaults.\n///\n/// - Parameters:\n///   - timeoutMs: Maximum time in milliseconds. `nil` means no timeout.\n///   - maxToolInvocations: Maximum tool invocations. `nil` means no limit.\n///   - maxTokens: Maximum tokens. `nil` means no limit.\n///   - requiredCapabilities: Required capabilities. Defaults to empty.\n///   - allowSubDelegation: Whether sub-delegation is allowed. Defaults to `false`.\npublic init(\ntimeoutMs: UInt64?;",
          "documentation": ""
        },
        {
          "name": "public var maxToolInvocations: UInt32?",
          "line": 146,
          "signature": "public var maxToolInvocations: UInt32?\n/// Maximum tokens the task may consume.\npublic var maxTokens: UInt64?\n/// Required capabilities the executing agent must have.\npublic var requiredCapabilities: [String]\n/// Whether the task may be further delegated to sub-agents.\npublic var allowSubDelegation: Bool\n\n/// Creates task constraints with defaults.\n///\n/// - Parameters:\n///   - timeoutMs: Maximum time in milliseconds. `nil` means no timeout.\n///   - maxToolInvocations: Maximum tool invocations. `nil` means no limit.\n///   - maxTokens: Maximum tokens. `nil` means no limit.\n///   - requiredCapabilities: Required capabilities. Defaults to empty.\n///   - allowSubDelegation: Whether sub-delegation is allowed. Defaults to `false`.\npublic init(\ntimeoutMs: UInt64?;",
          "documentation": ""
        },
        {
          "name": "public var maxTokens: UInt64?",
          "line": 148,
          "signature": "public var maxTokens: UInt64?\n/// Required capabilities the executing agent must have.\npublic var requiredCapabilities: [String]\n/// Whether the task may be further delegated to sub-agents.\npublic var allowSubDelegation: Bool\n\n/// Creates task constraints with defaults.\n///\n/// - Parameters:\n///   - timeoutMs: Maximum time in milliseconds. `nil` means no timeout.\n///   - maxToolInvocations: Maximum tool invocations. `nil` means no limit.\n///   - maxTokens: Maximum tokens. `nil` means no limit.\n///   - requiredCapabilities: Required capabilities. Defaults to empty.\n///   - allowSubDelegation: Whether sub-delegation is allowed. Defaults to `false`.\npublic init(\ntimeoutMs: UInt64?;",
          "documentation": ""
        },
        {
          "name": "public var requiredCapabilities: [String]",
          "line": 150,
          "signature": "public var requiredCapabilities: [String]\n/// Whether the task may be further delegated to sub-agents.\npublic var allowSubDelegation: Bool\n\n/// Creates task constraints with defaults.\n///\n/// - Parameters:\n///   - timeoutMs: Maximum time in milliseconds. `nil` means no timeout.\n///   - maxToolInvocations: Maximum tool invocations. `nil` means no limit.\n///   - maxTokens: Maximum tokens. `nil` means no limit.\n///   - requiredCapabilities: Required capabilities. Defaults to empty.\n///   - allowSubDelegation: Whether sub-delegation is allowed. Defaults to `false`.\npublic init(\ntimeoutMs: UInt64?;",
          "documentation": ""
        },
        {
          "name": "public var allowSubDelegation: Bool",
          "line": 152,
          "signature": "public var allowSubDelegation: Bool\n\n/// Creates task constraints with defaults.\n///\n/// - Parameters:\n///   - timeoutMs: Maximum time in milliseconds. `nil` means no timeout.\n///   - maxToolInvocations: Maximum tool invocations. `nil` means no limit.\n///   - maxTokens: Maximum tokens. `nil` means no limit.\n///   - requiredCapabilities: Required capabilities. Defaults to empty.\n///   - allowSubDelegation: Whether sub-delegation is allowed. Defaults to `false`.\npublic init(\ntimeoutMs: UInt64?;",
          "documentation": ""
        },
        {
          "name": "public init(",
          "line": 162,
          "signature": "public init(\ntimeoutMs: UInt64?;",
          "documentation": ""
        },
        {
          "name": "public struct DelegatedTask: Codable, Sendable, Equatable",
          "line": 182,
          "signature": "public struct DelegatedTask: Codable, Sendable, Equatable",
          "documentation": ""
        },
        {
          "name": "public let id: String",
          "line": 184,
          "signature": "public let id: String\n/// The session this task belongs to.\npublic let sessionId: String\n/// The delegating agent's DID.\npublic let delegatorDid: String\n/// The assigned agent's DID. `nil` if unassigned.\npublic var assigneeDid: String?\n/// Human-readable task description.\npublic let description: String\n/// The task input/instructions.\npublic let input: JSONValue\n/// Task priority.\npublic let priority: TaskPriority\n/// Execution constraints.\npublic let constraints: TaskConstraints\n/// When the task was created.\npublic let createdAt: Timestamp\n\n/// Creates a new delegated task.\n///\n/// - Parameters:\n///   - id: Unique task identifier. Defaults to a new UUID.\n///   - sessionId: The collaboration session ID.\n///   - delegatorDid: The delegating agent's DID.\n///   - assigneeDid: The assigned agent's DID.\n///   - description: Human-readable task description.",
          "documentation": ""
        },
        {
          "name": "public let sessionId: String",
          "line": 186,
          "signature": "public let sessionId: String\n/// The delegating agent's DID.\npublic let delegatorDid: String\n/// The assigned agent's DID. `nil` if unassigned.\npublic var assigneeDid: String?\n/// Human-readable task description.\npublic let description: String\n/// The task input/instructions.\npublic let input: JSONValue\n/// Task priority.\npublic let priority: TaskPriority\n/// Execution constraints.\npublic let constraints: TaskConstraints\n/// When the task was created.\npublic let createdAt: Timestamp\n\n/// Creates a new delegated task.\n///\n/// - Parameters:\n///   - id: Unique task identifier. Defaults to a new UUID.\n///   - sessionId: The collaboration session ID.\n///   - delegatorDid: The delegating agent's DID.\n///   - assigneeDid: The assigned agent's DID.\n///   - description: Human-readable task description.\n///   - input: The task input/instructions.\n///   - priority: Task priority. Defaults to `.normal`.",
          "documentation": ""
        },
        {
          "name": "public let delegatorDid: String",
          "line": 188,
          "signature": "public let delegatorDid: String\n/// The assigned agent's DID. `nil` if unassigned.\npublic var assigneeDid: String?\n/// Human-readable task description.\npublic let description: String\n/// The task input/instructions.\npublic let input: JSONValue\n/// Task priority.\npublic let priority: TaskPriority\n/// Execution constraints.\npublic let constraints: TaskConstraints\n/// When the task was created.\npublic let createdAt: Timestamp\n\n/// Creates a new delegated task.\n///\n/// - Parameters:\n///   - id: Unique task identifier. Defaults to a new UUID.\n///   - sessionId: The collaboration session ID.\n///   - delegatorDid: The delegating agent's DID.\n///   - assigneeDid: The assigned agent's DID.\n///   - description: Human-readable task description.\n///   - input: The task input/instructions.\n///   - priority: Task priority. Defaults to `.normal`.\n///   - constraints: Execution constraints.\npublic init(",
          "documentation": ""
        },
        {
          "name": "public var assigneeDid: String?",
          "line": 190,
          "signature": "public var assigneeDid: String?\n/// Human-readable task description.\npublic let description: String\n/// The task input/instructions.\npublic let input: JSONValue\n/// Task priority.\npublic let priority: TaskPriority\n/// Execution constraints.\npublic let constraints: TaskConstraints\n/// When the task was created.\npublic let createdAt: Timestamp\n\n/// Creates a new delegated task.\n///\n/// - Parameters:\n///   - id: Unique task identifier. Defaults to a new UUID.\n///   - sessionId: The collaboration session ID.\n///   - delegatorDid: The delegating agent's DID.\n///   - assigneeDid: The assigned agent's DID.\n///   - description: Human-readable task description.\n///   - input: The task input/instructions.\n///   - priority: Task priority. Defaults to `.normal`.\n///   - constraints: Execution constraints.\npublic init(\nid: String;",
          "documentation": ""
        },
        {
          "name": "public let description: String",
          "line": 192,
          "signature": "public let description: String\n/// The task input/instructions.\npublic let input: JSONValue\n/// Task priority.\npublic let priority: TaskPriority\n/// Execution constraints.\npublic let constraints: TaskConstraints\n/// When the task was created.\npublic let createdAt: Timestamp\n\n/// Creates a new delegated task.\n///\n/// - Parameters:\n///   - id: Unique task identifier. Defaults to a new UUID.\n///   - sessionId: The collaboration session ID.\n///   - delegatorDid: The delegating agent's DID.\n///   - assigneeDid: The assigned agent's DID.\n///   - description: Human-readable task description.\n///   - input: The task input/instructions.\n///   - priority: Task priority. Defaults to `.normal`.\n///   - constraints: Execution constraints.\npublic init(\nid: String;",
          "documentation": ""
        },
        {
          "name": "public let input: JSONValue",
          "line": 194,
          "signature": "public let input: JSONValue\n/// Task priority.\npublic let priority: TaskPriority\n/// Execution constraints.\npublic let constraints: TaskConstraints\n/// When the task was created.\npublic let createdAt: Timestamp\n\n/// Creates a new delegated task.\n///\n/// - Parameters:\n///   - id: Unique task identifier. Defaults to a new UUID.\n///   - sessionId: The collaboration session ID.\n///   - delegatorDid: The delegating agent's DID.\n///   - assigneeDid: The assigned agent's DID.\n///   - description: Human-readable task description.\n///   - input: The task input/instructions.\n///   - priority: Task priority. Defaults to `.normal`.\n///   - constraints: Execution constraints.\npublic init(\nid: String;",
          "documentation": ""
        },
        {
          "name": "public let priority: TaskPriority",
          "line": 196,
          "signature": "public let priority: TaskPriority\n/// Execution constraints.\npublic let constraints: TaskConstraints\n/// When the task was created.\npublic let createdAt: Timestamp\n\n/// Creates a new delegated task.\n///\n/// - Parameters:\n///   - id: Unique task identifier. Defaults to a new UUID.\n///   - sessionId: The collaboration session ID.\n///   - delegatorDid: The delegating agent's DID.\n///   - assigneeDid: The assigned agent's DID.\n///   - description: Human-readable task description.\n///   - input: The task input/instructions.\n///   - priority: Task priority. Defaults to `.normal`.\n///   - constraints: Execution constraints.\npublic init(\nid: String;",
          "documentation": ""
        },
        {
          "name": "public let constraints: TaskConstraints",
          "line": 198,
          "signature": "public let constraints: TaskConstraints\n/// When the task was created.\npublic let createdAt: Timestamp\n\n/// Creates a new delegated task.\n///\n/// - Parameters:\n///   - id: Unique task identifier. Defaults to a new UUID.\n///   - sessionId: The collaboration session ID.\n///   - delegatorDid: The delegating agent's DID.\n///   - assigneeDid: The assigned agent's DID.\n///   - description: Human-readable task description.\n///   - input: The task input/instructions.\n///   - priority: Task priority. Defaults to `.normal`.\n///   - constraints: Execution constraints.\npublic init(\nid: String;",
          "documentation": ""
        },
        {
          "name": "public let createdAt: Timestamp",
          "line": 200,
          "signature": "public let createdAt: Timestamp\n\n/// Creates a new delegated task.\n///\n/// - Parameters:\n///   - id: Unique task identifier. Defaults to a new UUID.\n///   - sessionId: The collaboration session ID.\n///   - delegatorDid: The delegating agent's DID.\n///   - assigneeDid: The assigned agent's DID.\n///   - description: Human-readable task description.\n///   - input: The task input/instructions.\n///   - priority: Task priority. Defaults to `.normal`.\n///   - constraints: Execution constraints.\npublic init(\nid: String;",
          "documentation": ""
        },
        {
          "name": "public init(",
          "line": 213,
          "signature": "public init(\nid: String;",
          "documentation": ""
        },
        {
          "name": "public struct TaskResult: Codable, Sendable, Equatable",
          "line": 240,
          "signature": "public struct TaskResult: Codable, Sendable, Equatable",
          "documentation": ""
        },
        {
          "name": "public let taskId: String",
          "line": 242,
          "signature": "public let taskId: String\n/// The executing agent's DID.\npublic let executorDid: String\n/// Whether the task completed successfully.\npublic let success: Bool\n/// The task output.\npublic let output: JSONValue\n/// Error message if the task failed.\npublic let errorMessage: String?\n/// When the result was produced.\npublic let completedAt: Timestamp\n\n/// Creates a successful task result.\n///\n/// - Parameters:\n///   - taskId: The task ID.\n///   - executorDid: The executing agent's DID.\n///   - output: The task output.\n/// - Returns: A successful `TaskResult`.\npublic static func success(\ntaskId: String,\nexecutorDid: String,\noutput: JSONValue\n) -> TaskResult",
          "documentation": ""
        },
        {
          "name": "public let executorDid: String",
          "line": 244,
          "signature": "public let executorDid: String\n/// Whether the task completed successfully.\npublic let success: Bool\n/// The task output.\npublic let output: JSONValue\n/// Error message if the task failed.\npublic let errorMessage: String?\n/// When the result was produced.\npublic let completedAt: Timestamp\n\n/// Creates a successful task result.\n///\n/// - Parameters:\n///   - taskId: The task ID.\n///   - executorDid: The executing agent's DID.\n///   - output: The task output.\n/// - Returns: A successful `TaskResult`.\npublic static func success(\ntaskId: String,\nexecutorDid: String,\noutput: JSONValue\n) -> TaskResult",
          "documentation": ""
        },
        {
          "name": "public let success: Bool",
          "line": 246,
          "signature": "public let success: Bool\n/// The task output.\npublic let output: JSONValue\n/// Error message if the task failed.\npublic let errorMessage: String?\n/// When the result was produced.\npublic let completedAt: Timestamp\n\n/// Creates a successful task result.\n///\n/// - Parameters:\n///   - taskId: The task ID.\n///   - executorDid: The executing agent's DID.\n///   - output: The task output.\n/// - Returns: A successful `TaskResult`.\npublic static func success(\ntaskId: String,\nexecutorDid: String,\noutput: JSONValue\n) -> TaskResult",
          "documentation": ""
        },
        {
          "name": "public let output: JSONValue",
          "line": 248,
          "signature": "public let output: JSONValue\n/// Error message if the task failed.\npublic let errorMessage: String?\n/// When the result was produced.\npublic let completedAt: Timestamp\n\n/// Creates a successful task result.\n///\n/// - Parameters:\n///   - taskId: The task ID.\n///   - executorDid: The executing agent's DID.\n///   - output: The task output.\n/// - Returns: A successful `TaskResult`.\npublic static func success(\ntaskId: String,\nexecutorDid: String,\noutput: JSONValue\n) -> TaskResult",
          "documentation": ""
        },
        {
          "name": "public let errorMessage: String?",
          "line": 250,
          "signature": "public let errorMessage: String?\n/// When the result was produced.\npublic let completedAt: Timestamp\n\n/// Creates a successful task result.\n///\n/// - Parameters:\n///   - taskId: The task ID.\n///   - executorDid: The executing agent's DID.\n///   - output: The task output.\n/// - Returns: A successful `TaskResult`.\npublic static func success(\ntaskId: String,\nexecutorDid: String,\noutput: JSONValue\n) -> TaskResult",
          "documentation": ""
        },
        {
          "name": "public let completedAt: Timestamp",
          "line": 252,
          "signature": "public let completedAt: Timestamp\n\n/// Creates a successful task result.\n///\n/// - Parameters:\n///   - taskId: The task ID.\n///   - executorDid: The executing agent's DID.\n///   - output: The task output.\n/// - Returns: A successful `TaskResult`.\npublic static func success(\ntaskId: String,\nexecutorDid: String,\noutput: JSONValue\n) -> TaskResult",
          "documentation": ""
        },
        {
          "name": "public static func success(",
          "line": 261,
          "signature": "public static func success(\ntaskId: String,\nexecutorDid: String,\noutput: JSONValue\n) -> TaskResult",
          "documentation": ""
        },
        {
          "name": "public static func failure(",
          "line": 283,
          "signature": "public static func failure(\ntaskId: String,\nexecutorDid: String,\nerror: String\n) -> TaskResult",
          "documentation": ""
        },
        {
          "name": "public enum InterruptType: String, Codable, Sendable, Hashable, CaseIterable",
          "line": 304,
          "signature": "public enum InterruptType: String, Codable, Sendable, Hashable, CaseIterable",
          "documentation": ""
        },
        {
          "name": "public struct Interrupt: Codable, Sendable, Equatable",
          "line": 325,
          "signature": "public struct Interrupt: Codable, Sendable, Equatable",
          "documentation": ""
        },
        {
          "name": "public let id: String",
          "line": 327,
          "signature": "public let id: String\n/// The task that raised the interrupt.\npublic let taskId: String\n/// The agent that raised the interrupt.\npublic let raiserDid: String\n/// The type of interrupt.\npublic let interruptType: InterruptType\n/// Description of why the interrupt was raised.\npublic let reason: String\n/// Additional context data.\npublic let context: JSONValue\n/// When the interrupt was raised.\npublic let timestamp: Timestamp\n\n/// Creates a new interrupt.\n///\n/// - Parameters:\n///   - id: Unique interrupt identifier. Defaults to a new UUID.\n///   - taskId: The task that raised the interrupt.\n///   - raiserDid: The agent that raised the interrupt.\n///   - interruptType: The type of interrupt.\n///   - reason: Description of why the interrupt was raised.\n///   - context: Additional context data.\npublic init(\nid: String;",
          "documentation": ""
        },
        {
          "name": "public let taskId: String",
          "line": 329,
          "signature": "public let taskId: String\n/// The agent that raised the interrupt.\npublic let raiserDid: String\n/// The type of interrupt.\npublic let interruptType: InterruptType\n/// Description of why the interrupt was raised.\npublic let reason: String\n/// Additional context data.\npublic let context: JSONValue\n/// When the interrupt was raised.\npublic let timestamp: Timestamp\n\n/// Creates a new interrupt.\n///\n/// - Parameters:\n///   - id: Unique interrupt identifier. Defaults to a new UUID.\n///   - taskId: The task that raised the interrupt.\n///   - raiserDid: The agent that raised the interrupt.\n///   - interruptType: The type of interrupt.\n///   - reason: Description of why the interrupt was raised.\n///   - context: Additional context data.\npublic init(\nid: String;",
          "documentation": ""
        },
        {
          "name": "public let raiserDid: String",
          "line": 331,
          "signature": "public let raiserDid: String\n/// The type of interrupt.\npublic let interruptType: InterruptType\n/// Description of why the interrupt was raised.\npublic let reason: String\n/// Additional context data.\npublic let context: JSONValue\n/// When the interrupt was raised.\npublic let timestamp: Timestamp\n\n/// Creates a new interrupt.\n///\n/// - Parameters:\n///   - id: Unique interrupt identifier. Defaults to a new UUID.\n///   - taskId: The task that raised the interrupt.\n///   - raiserDid: The agent that raised the interrupt.\n///   - interruptType: The type of interrupt.\n///   - reason: Description of why the interrupt was raised.\n///   - context: Additional context data.\npublic init(\nid: String;",
          "documentation": ""
        },
        {
          "name": "public let interruptType: InterruptType",
          "line": 333,
          "signature": "public let interruptType: InterruptType\n/// Description of why the interrupt was raised.\npublic let reason: String\n/// Additional context data.\npublic let context: JSONValue\n/// When the interrupt was raised.\npublic let timestamp: Timestamp\n\n/// Creates a new interrupt.\n///\n/// - Parameters:\n///   - id: Unique interrupt identifier. Defaults to a new UUID.\n///   - taskId: The task that raised the interrupt.\n///   - raiserDid: The agent that raised the interrupt.\n///   - interruptType: The type of interrupt.\n///   - reason: Description of why the interrupt was raised.\n///   - context: Additional context data.\npublic init(\nid: String;",
          "documentation": ""
        },
        {
          "name": "public let reason: String",
          "line": 335,
          "signature": "public let reason: String\n/// Additional context data.\npublic let context: JSONValue\n/// When the interrupt was raised.\npublic let timestamp: Timestamp\n\n/// Creates a new interrupt.\n///\n/// - Parameters:\n///   - id: Unique interrupt identifier. Defaults to a new UUID.\n///   - taskId: The task that raised the interrupt.\n///   - raiserDid: The agent that raised the interrupt.\n///   - interruptType: The type of interrupt.\n///   - reason: Description of why the interrupt was raised.\n///   - context: Additional context data.\npublic init(\nid: String;",
          "documentation": ""
        },
        {
          "name": "public let context: JSONValue",
          "line": 337,
          "signature": "public let context: JSONValue\n/// When the interrupt was raised.\npublic let timestamp: Timestamp\n\n/// Creates a new interrupt.\n///\n/// - Parameters:\n///   - id: Unique interrupt identifier. Defaults to a new UUID.\n///   - taskId: The task that raised the interrupt.\n///   - raiserDid: The agent that raised the interrupt.\n///   - interruptType: The type of interrupt.\n///   - reason: Description of why the interrupt was raised.\n///   - context: Additional context data.\npublic init(\nid: String;",
          "documentation": ""
        },
        {
          "name": "public let timestamp: Timestamp",
          "line": 339,
          "signature": "public let timestamp: Timestamp\n\n/// Creates a new interrupt.\n///\n/// - Parameters:\n///   - id: Unique interrupt identifier. Defaults to a new UUID.\n///   - taskId: The task that raised the interrupt.\n///   - raiserDid: The agent that raised the interrupt.\n///   - interruptType: The type of interrupt.\n///   - reason: Description of why the interrupt was raised.\n///   - context: Additional context data.\npublic init(\nid: String;",
          "documentation": ""
        },
        {
          "name": "public init(",
          "line": 350,
          "signature": "public init(\nid: String;",
          "documentation": ""
        }
      ]
    },
    {
      "path": "forge-swift/Sources/ForgeCollab/Delegation.swift",
      "sha256": "3146225eaec24a794ea8ccf5a63b4b156cd62f66546c83b3603e5439b11a023c",
      "artifactSha256": "48effc400af2c6d0d5f65d5723290b9e18fc44466aae56c8ce82a92cbea443dd",
      "url": "/reference/source/forge-swift/Sources/ForgeCollab/Delegation.swift.txt",
      "declarations": [
        {
          "name": "public func createDelegatedTask(",
          "line": 27,
          "signature": "public func createDelegatedTask(\nsessionId: String,\ndelegatorDid: String,\nassigneeDid: String?;",
          "documentation": ""
        },
        {
          "name": "public func validateTaskConstraints(",
          "line": 58,
          "signature": "public func validateTaskConstraints(\ntask: DelegatedTask,\nagentCapabilities: [String]\n) throws",
          "documentation": ""
        }
      ]
    },
    {
      "path": "forge-swift/Sources/ForgeCollab/InterruptHandler.swift",
      "sha256": "6658a8ebefb9711778c194796e5ae358bc98e4e9ded2eafcaaa0c25d788cdd79",
      "artifactSha256": "df3a7780cb685f2f643469f0dfce727d51cc092b1d6a33087c0193ff095d5039",
      "url": "/reference/source/forge-swift/Sources/ForgeCollab/InterruptHandler.swift.txt",
      "declarations": [
        {
          "name": "public protocol InterruptHandler: Sendable",
          "line": 20,
          "signature": "public protocol InterruptHandler: Sendable",
          "documentation": ""
        },
        {
          "name": "public func createInterrupt(",
          "line": 43,
          "signature": "public func createInterrupt(\ntaskId: String,\nraiserDid: String,\ntype: InterruptType,\nreason: String,\ncontext: JSONValue;",
          "documentation": ""
        },
        {
          "name": "public final class NoopInterruptHandler: InterruptHandler, Sendable",
          "line": 62,
          "signature": "public final class NoopInterruptHandler: InterruptHandler, Sendable",
          "documentation": ""
        },
        {
          "name": "public init()",
          "line": 63,
          "signature": "public init()",
          "documentation": ""
        },
        {
          "name": "public func handle(_ interrupt: Interrupt) async throws -> JSONValue",
          "line": 66,
          "signature": "public func handle(_ interrupt: Interrupt) async throws -> JSONValue",
          "documentation": ""
        }
      ]
    },
    {
      "path": "forge-swift/Sources/ForgeCollab/RoleContracts.swift",
      "sha256": "54e2e93e550a47771b099488a1d54a8d437e8eca6509b305fcc22ac1ef425432",
      "artifactSha256": "ba29e4ddd9864dcb9a512d60cb1e19a9e8c226e11a04a18cc369747cead6281d",
      "url": "/reference/source/forge-swift/Sources/ForgeCollab/RoleContracts.swift.txt",
      "declarations": [
        {
          "name": "public protocol CoordinatorContract: Sendable",
          "line": 22,
          "signature": "public protocol CoordinatorContract: Sendable",
          "documentation": ""
        },
        {
          "name": "public protocol WorkerContract: Sendable",
          "line": 57,
          "signature": "public protocol WorkerContract: Sendable",
          "documentation": ""
        },
        {
          "name": "public protocol PeerContract: Sendable",
          "line": 86,
          "signature": "public protocol PeerContract: Sendable",
          "documentation": ""
        }
      ]
    },
    {
      "path": "forge-swift/Sources/ForgeCollab/SessionContract.swift",
      "sha256": "114e646c0dd14b78e3481767de789907a8d5cfb1b6b55a2c2990feed2dc8856d",
      "artifactSha256": "01c5d3524a503edd21ce6aca75102c7e7eaf3e0cdcdc5778ee993d4af3d6e00d",
      "url": "/reference/source/forge-swift/Sources/ForgeCollab/SessionContract.swift.txt",
      "declarations": [
        {
          "name": "public final class SessionManager: @unchecked Sendable",
          "line": 27,
          "signature": "public final class SessionManager: @unchecked Sendable",
          "documentation": ""
        },
        {
          "name": "public init(name: String, sessionId: String;",
          "line": 38,
          "signature": "public init(name: String, sessionId: String;",
          "documentation": ""
        },
        {
          "name": "public var session: CollaborationSession",
          "line": 43,
          "signature": "public var session: CollaborationSession",
          "documentation": ""
        },
        {
          "name": "public var state: SessionState",
          "line": 50,
          "signature": "public var state: SessionState",
          "documentation": ""
        },
        {
          "name": "public func addParticipant(_ did: String, role: CollaborationRole) throws",
          "line": 62,
          "signature": "public func addParticipant(_ did: String, role: CollaborationRole) throws",
          "documentation": ""
        },
        {
          "name": "public func removeParticipant(_ did: String)",
          "line": 75,
          "signature": "public func removeParticipant(_ did: String)",
          "documentation": ""
        },
        {
          "name": "public func transition(to target: SessionState) throws",
          "line": 89,
          "signature": "public func transition(to target: SessionState) throws",
          "documentation": ""
        },
        {
          "name": "public func addTask(_ task: DelegatedTask) throws",
          "line": 109,
          "signature": "public func addTask(_ task: DelegatedTask) throws",
          "documentation": ""
        },
        {
          "name": "public func recordResult(_ result: TaskResult)",
          "line": 122,
          "signature": "public func recordResult(_ result: TaskResult)",
          "documentation": ""
        },
        {
          "name": "public func tasks() -> [DelegatedTask]",
          "line": 130,
          "signature": "public func tasks() -> [DelegatedTask]",
          "documentation": ""
        },
        {
          "name": "public func results() -> [TaskResult]",
          "line": 137,
          "signature": "public func results() -> [TaskResult]",
          "documentation": ""
        }
      ]
    },
    {
      "path": "forge-swift/Sources/ForgeCollab/SharedContext.swift",
      "sha256": "5b2ace03cba8f402ce191a7542f9eecf47f3ed37b01fee7fca479533765e7ab4",
      "artifactSha256": "e7e3cef16120fa022f21766dcba780eeb415d60babc0164b4149c15d55b5e754",
      "url": "/reference/source/forge-swift/Sources/ForgeCollab/SharedContext.swift.txt",
      "declarations": [
        {
          "name": "public protocol SharedContextContract: Sendable",
          "line": 21,
          "signature": "public protocol SharedContextContract: Sendable",
          "documentation": ""
        },
        {
          "name": "public final class InMemorySharedContext: SharedContextContract, @unchecked Sendable",
          "line": 68,
          "signature": "public final class InMemorySharedContext: SharedContextContract, @unchecked Sendable",
          "documentation": ""
        },
        {
          "name": "public init()",
          "line": 73,
          "signature": "public init()",
          "documentation": ""
        },
        {
          "name": "public func get(_ key: String) -> JSONValue?",
          "line": 79,
          "signature": "public func get(_ key: String) -> JSONValue?",
          "documentation": ""
        },
        {
          "name": "public func set(_ key: String, value: JSONValue, writerDid: String)",
          "line": 91,
          "signature": "public func set(_ key: String, value: JSONValue, writerDid: String)",
          "documentation": ""
        },
        {
          "name": "public func remove(_ key: String) -> JSONValue?",
          "line": 106,
          "signature": "public func remove(_ key: String) -> JSONValue?",
          "documentation": ""
        },
        {
          "name": "public func keys() -> [String]",
          "line": 113,
          "signature": "public func keys() -> [String]",
          "documentation": ""
        },
        {
          "name": "public var count: Int",
          "line": 120,
          "signature": "public var count: Int",
          "documentation": ""
        }
      ]
    }
  ]
}
