{
  "name": "com.l1fe.forge:forge-core",
  "language": "kotlin",
  "version": "0.1.0",
  "description": "Kotlin/JVM forge-core module.",
  "manifest": "forge-kt/forge-core/build.gradle.kts",
  "manifestSha256": "f4089cff0cc5240f8c6ff981bc912ee4154ba42aacbb7267de39b70a5fb8c367",
  "status": "source-reference",
  "registryPublicationVerified": false,
  "route": "/libraries/kotlin/forge-core",
  "features": {},
  "files": [
    {
      "path": "forge-kt/forge-core/src/main/kotlin/com/l1fe/forge/core/Brew.kt",
      "sha256": "71d7deb10f30bc77cd0f41c68bd53923d9356be7c8a0cc39d4ead0d001f1f105",
      "artifactSha256": "d7f7b4bfebf217351eed4609b92bad9c05afe4615e971870dc2826ffb8dff6dc",
      "url": "/reference/source/forge-kt/forge-core/src/main/kotlin/com/l1fe/forge/core/Brew.kt.txt",
      "declarations": [
        {
          "name": "public data class BrewId(val value: String) : Comparable<BrewId>",
          "line": 35,
          "signature": "public data class BrewId(val value: String) : Comparable<BrewId>",
          "documentation": ""
        },
        {
          "name": "public data class NodeId(val value: String) : Comparable<NodeId>",
          "line": 46,
          "signature": "public data class NodeId(val value: String) : Comparable<NodeId>",
          "documentation": ""
        },
        {
          "name": "public data class BrewVersion(val value: String) : Comparable<BrewVersion>",
          "line": 57,
          "signature": "public data class BrewVersion(val value: String) : Comparable<BrewVersion>",
          "documentation": ""
        },
        {
          "name": "public sealed class JoinMode",
          "line": 72,
          "signature": "public sealed class JoinMode",
          "documentation": ""
        },
        {
          "name": "public data object AwaitAll : JoinMode()",
          "line": 76,
          "signature": "public data object AwaitAll : JoinMode()\n\n/** Return as soon as one branch completes successfully. */\n@Serializable\n@SerialName(\"first_success\")\npublic data object FirstSuccess : JoinMode()\n\n/** Return as soon as N branches complete successfully. */\n@Serializable\n@SerialName(\"first_n\")\npublic data class FirstN(val n: Int) : JoinMode()\n}\n\n// ---------------------------------------------------------------------------\n// Node types\n// ---------------------------------------------------------------------------\n\n/**\n* The execution semantics of a node in the brew graph.\n*\n* Each variant describes what kind of work a node performs. The node kind\n* carries symbolic references that are validated during resolution.\n*\n* ANVIL Spec SS7.1-7.2\n*/\n@Serializable",
          "documentation": ""
        },
        {
          "name": "public data object FirstSuccess : JoinMode()",
          "line": 81,
          "signature": "public data object FirstSuccess : JoinMode()\n\n/** Return as soon as N branches complete successfully. */\n@Serializable\n@SerialName(\"first_n\")\npublic data class FirstN(val n: Int) : JoinMode()\n}\n\n// ---------------------------------------------------------------------------\n// Node types\n// ---------------------------------------------------------------------------\n\n/**\n* The execution semantics of a node in the brew graph.\n*\n* Each variant describes what kind of work a node performs. The node kind\n* carries symbolic references that are validated during resolution.\n*\n* ANVIL Spec SS7.1-7.2\n*/\n@Serializable\npublic sealed class BrewNodeKind",
          "documentation": ""
        },
        {
          "name": "public data class FirstN(val n: Int) : JoinMode()",
          "line": 86,
          "signature": "public data class FirstN(val n: Int) : JoinMode()\n}\n\n// ---------------------------------------------------------------------------\n// Node types\n// ---------------------------------------------------------------------------\n\n/**\n* The execution semantics of a node in the brew graph.\n*\n* Each variant describes what kind of work a node performs. The node kind\n* carries symbolic references that are validated during resolution.\n*\n* ANVIL Spec SS7.1-7.2\n*/\n@Serializable\npublic sealed class BrewNodeKind",
          "documentation": ""
        },
        {
          "name": "public sealed class BrewNodeKind",
          "line": 102,
          "signature": "public sealed class BrewNodeKind",
          "documentation": ""
        },
        {
          "name": "public data class AgentStep(",
          "line": 113,
          "signature": "public data class AgentStep(\nval provider: ProviderRef,\nval systemPrompt: String?;",
          "documentation": ""
        },
        {
          "name": "public data class ToolInvocation(",
          "line": 127,
          "signature": "public data class ToolInvocation(\nval toolId: String,\nval tier: ToolTier,\n) : BrewNodeKind()\n\n/**\n* An MCP tool call routed through a connected MCP server.\n*\n* @property serverId MCP server identifier (URI or alias).\n* @property toolName MCP tool name on the remote server.\n*/\n@Serializable\n@SerialName(\"mcp_call\")\npublic data class McpCall(\nval serverId: String,\nval toolName: String,\n) : BrewNodeKind()\n\n/**\n* A web operation (HTTP request, browser action, etc.).\n*\n* @property operation The operation kind identifier.\n*/\n@Serializable\n@SerialName(\"web_operation\")\npublic data class WebOperation(",
          "documentation": ""
        },
        {
          "name": "public data class McpCall(",
          "line": 140,
          "signature": "public data class McpCall(\nval serverId: String,\nval toolName: String,\n) : BrewNodeKind()\n\n/**\n* A web operation (HTTP request, browser action, etc.).\n*\n* @property operation The operation kind identifier.\n*/\n@Serializable\n@SerialName(\"web_operation\")\npublic data class WebOperation(\nval operation: String,\n) : BrewNodeKind()\n\n/**\n* A conditional branch that routes to one of two targets based on a\n* condition expression.\n*\n* @property conditionExpr JSONPath or simple expression.\n* @property trueTarget The node to route to when the condition is true.\n* @property falseTarget The node to route to when the condition is false.\n*/\n@Serializable\n@SerialName(\"conditional_branch\")",
          "documentation": ""
        },
        {
          "name": "public data class WebOperation(",
          "line": 152,
          "signature": "public data class WebOperation(\nval operation: String,\n) : BrewNodeKind()\n\n/**\n* A conditional branch that routes to one of two targets based on a\n* condition expression.\n*\n* @property conditionExpr JSONPath or simple expression.\n* @property trueTarget The node to route to when the condition is true.\n* @property falseTarget The node to route to when the condition is false.\n*/\n@Serializable\n@SerialName(\"conditional_branch\")\npublic data class ConditionalBranch(\nval conditionExpr: String,\nval trueTarget: NodeId,\nval falseTarget: NodeId,\n) : BrewNodeKind()\n\n/**\n* A parallel fork that spawns concurrent execution of multiple paths.\n*\n* @property branches The set of branch targets to execute concurrently.\n* @property joinMode Strategy for joining parallel results.\n*/",
          "documentation": ""
        },
        {
          "name": "public data class ConditionalBranch(",
          "line": 166,
          "signature": "public data class ConditionalBranch(\nval conditionExpr: String,\nval trueTarget: NodeId,\nval falseTarget: NodeId,\n) : BrewNodeKind()\n\n/**\n* A parallel fork that spawns concurrent execution of multiple paths.\n*\n* @property branches The set of branch targets to execute concurrently.\n* @property joinMode Strategy for joining parallel results.\n*/\n@Serializable\n@SerialName(\"parallel_fork\")\npublic data class ParallelFork(\nval branches: List<NodeId>,\nval joinMode: JoinMode,\n) : BrewNodeKind()\n\n/**\n* A reference to another brew, enabling composition.\n*\n* @property brewId The referenced brew's identifier.\n*/\n@Serializable\n@SerialName(\"sub_brew_ref\")",
          "documentation": ""
        },
        {
          "name": "public data class ParallelFork(",
          "line": 180,
          "signature": "public data class ParallelFork(\nval branches: List<NodeId>,\nval joinMode: JoinMode,\n) : BrewNodeKind()\n\n/**\n* A reference to another brew, enabling composition.\n*\n* @property brewId The referenced brew's identifier.\n*/\n@Serializable\n@SerialName(\"sub_brew_ref\")\npublic data class SubBrewRef(\nval brewId: BrewId,\n) : BrewNodeKind()\n\n/**\n* A human-in-the-loop checkpoint that suspends execution until a\n* human provides approval or input.\n*\n* @property prompt The prompt displayed to the human reviewer.\n* @property timeoutMs Maximum wait time in milliseconds. `null` means wait indefinitely.\n*/\n@Serializable\n@SerialName(\"human_checkpoint\")\npublic data class HumanCheckpoint(",
          "documentation": ""
        },
        {
          "name": "public data class SubBrewRef(",
          "line": 192,
          "signature": "public data class SubBrewRef(\nval brewId: BrewId,\n) : BrewNodeKind()\n\n/**\n* A human-in-the-loop checkpoint that suspends execution until a\n* human provides approval or input.\n*\n* @property prompt The prompt displayed to the human reviewer.\n* @property timeoutMs Maximum wait time in milliseconds. `null` means wait indefinitely.\n*/\n@Serializable\n@SerialName(\"human_checkpoint\")\npublic data class HumanCheckpoint(\nval prompt: String,\nval timeoutMs: Long?;",
          "documentation": ""
        },
        {
          "name": "public data class HumanCheckpoint(",
          "line": 205,
          "signature": "public data class HumanCheckpoint(\nval prompt: String,\nval timeoutMs: Long?;",
          "documentation": ""
        },
        {
          "name": "public data class BrewNode(",
          "line": 219,
          "signature": "public data class BrewNode(\nval id: NodeId,\nval kind: BrewNodeKind,\nval metadata: Map<String, String>;",
          "documentation": ""
        },
        {
          "name": "public enum class BrewEdgeKind : Comparable<BrewEdgeKind>",
          "line": 233,
          "signature": "public enum class BrewEdgeKind : Comparable<BrewEdgeKind>",
          "documentation": ""
        },
        {
          "name": "public data class BrewEdge(",
          "line": 255,
          "signature": "public data class BrewEdge(\nval from: NodeId,\nval to: NodeId,\nval kind: BrewEdgeKind,\n) : Comparable<BrewEdge>",
          "documentation": ""
        },
        {
          "name": "public data class Brew(",
          "line": 295,
          "signature": "public data class Brew(\nval id: BrewId,\nval version: BrewVersion,\nval nodes: Map<NodeId, BrewNode>,\nval edges: Set<BrewEdge>,\nval entryNodes: List<NodeId>,\nval exitNodes: List<NodeId>,\nval topology: ModelTopology?;",
          "documentation": ""
        }
      ]
    },
    {
      "path": "forge-kt/forge-core/src/main/kotlin/com/l1fe/forge/core/BrewBuilder.kt",
      "sha256": "dd916c399f10ea9e4942934e4c499dc041fcf31431c9b7891401fd8ed2c45135",
      "artifactSha256": "28698928282dbfe9db6033552dec0216e9bc12a7f5c3b17878d5ce96507991b7",
      "url": "/reference/source/forge-kt/forge-core/src/main/kotlin/com/l1fe/forge/core/BrewBuilder.kt.txt",
      "declarations": [
        {
          "name": "public class BrewBuilder(id: String, version: String)",
          "line": 37,
          "signature": "public class BrewBuilder(id: String, version: String)",
          "documentation": ""
        },
        {
          "name": "public fun addNode(nodeId: String, kind: BrewNodeKind): BrewBuilder;",
          "line": 55,
          "signature": "public fun addNode(nodeId: String, kind: BrewNodeKind): BrewBuilder;",
          "documentation": ""
        },
        {
          "name": "public fun addEdge(from: String, to: String, edgeKind: BrewEdgeKind): BrewBuilder;",
          "line": 71,
          "signature": "public fun addEdge(from: String, to: String, edgeKind: BrewEdgeKind): BrewBuilder;",
          "documentation": ""
        },
        {
          "name": "public fun setEntry(nodeId: String): BrewBuilder;",
          "line": 81,
          "signature": "public fun setEntry(nodeId: String): BrewBuilder;",
          "documentation": ""
        },
        {
          "name": "public fun setExit(nodeId: String): BrewBuilder;",
          "line": 91,
          "signature": "public fun setExit(nodeId: String): BrewBuilder;",
          "documentation": ""
        },
        {
          "name": "public fun withTopology(topology: ModelTopology): BrewBuilder;",
          "line": 101,
          "signature": "public fun withTopology(topology: ModelTopology): BrewBuilder;",
          "documentation": ""
        },
        {
          "name": "public fun withMetadata(nodeId: String, key: String, value: String): BrewBuilder;",
          "line": 115,
          "signature": "public fun withMetadata(nodeId: String, key: String, value: String): BrewBuilder;",
          "documentation": ""
        },
        {
          "name": "public fun build(): Brew",
          "line": 130,
          "signature": "public fun build(): Brew",
          "documentation": ""
        }
      ]
    },
    {
      "path": "forge-kt/forge-core/src/main/kotlin/com/l1fe/forge/core/BrewResolver.kt",
      "sha256": "4536790fdf47042996ceea59429e589e664fbd86def020714434dacf4c6e5017",
      "artifactSha256": "35c4e869c416924b81093a5febee19ff3d612dc6c4074ed79280b40aaa18b65b",
      "url": "/reference/source/forge-kt/forge-core/src/main/kotlin/com/l1fe/forge/core/BrewResolver.kt.txt",
      "declarations": [
        {
          "name": "public data class BrewEnvironment(",
          "line": 39,
          "signature": "public data class BrewEnvironment(\nval providers: Map<String, ProviderRef>;",
          "documentation": ""
        },
        {
          "name": "public enum class BrewResolutionErrorKind",
          "line": 54,
          "signature": "public enum class BrewResolutionErrorKind",
          "documentation": ""
        },
        {
          "name": "public data class BrewResolutionError(",
          "line": 83,
          "signature": "public data class BrewResolutionError(\nval nodeId: NodeId,\nval errorKind: BrewResolutionErrorKind,\n)",
          "documentation": ""
        },
        {
          "name": "public sealed class ResolvedNodeKind",
          "line": 100,
          "signature": "public sealed class ResolvedNodeKind",
          "documentation": ""
        },
        {
          "name": "public data class AgentStep(",
          "line": 104,
          "signature": "public data class AgentStep(\nval provider: ProviderRef,\nval systemPrompt: String?;",
          "documentation": ""
        },
        {
          "name": "public data class ToolInvocation(",
          "line": 112,
          "signature": "public data class ToolInvocation(\nval toolId: String,\nval tier: ToolTier,\n) : ResolvedNodeKind()\n\n@Serializable\n@SerialName(\"mcp_call\")\npublic data class McpCall(\nval serverId: String,\nval toolName: String,\n) : ResolvedNodeKind()\n\n@Serializable\n@SerialName(\"web_operation\")\npublic data class WebOperation(\nval operation: String,\n) : ResolvedNodeKind()\n\n@Serializable\n@SerialName(\"conditional_branch\")\npublic data class ConditionalBranch(\nval conditionExpr: String,\nval trueTarget: NodeId,\nval falseTarget: NodeId,\n) : ResolvedNodeKind()\n",
          "documentation": ""
        },
        {
          "name": "public data class McpCall(",
          "line": 119,
          "signature": "public data class McpCall(\nval serverId: String,\nval toolName: String,\n) : ResolvedNodeKind()\n\n@Serializable\n@SerialName(\"web_operation\")\npublic data class WebOperation(\nval operation: String,\n) : ResolvedNodeKind()\n\n@Serializable\n@SerialName(\"conditional_branch\")\npublic data class ConditionalBranch(\nval conditionExpr: String,\nval trueTarget: NodeId,\nval falseTarget: NodeId,\n) : ResolvedNodeKind()\n\n@Serializable\n@SerialName(\"parallel_fork\")\npublic data class ParallelFork(\nval branches: List<NodeId>,\nval joinMode: JoinMode,\n) : ResolvedNodeKind()\n",
          "documentation": ""
        },
        {
          "name": "public data class WebOperation(",
          "line": 126,
          "signature": "public data class WebOperation(\nval operation: String,\n) : ResolvedNodeKind()\n\n@Serializable\n@SerialName(\"conditional_branch\")\npublic data class ConditionalBranch(\nval conditionExpr: String,\nval trueTarget: NodeId,\nval falseTarget: NodeId,\n) : ResolvedNodeKind()\n\n@Serializable\n@SerialName(\"parallel_fork\")\npublic data class ParallelFork(\nval branches: List<NodeId>,\nval joinMode: JoinMode,\n) : ResolvedNodeKind()\n\n@Serializable\n@SerialName(\"sub_brew_ref\")\npublic data class SubBrewRef(\nval brewId: BrewId,\n) : ResolvedNodeKind()\n\n@Serializable",
          "documentation": ""
        },
        {
          "name": "public data class ConditionalBranch(",
          "line": 132,
          "signature": "public data class ConditionalBranch(\nval conditionExpr: String,\nval trueTarget: NodeId,\nval falseTarget: NodeId,\n) : ResolvedNodeKind()\n\n@Serializable\n@SerialName(\"parallel_fork\")\npublic data class ParallelFork(\nval branches: List<NodeId>,\nval joinMode: JoinMode,\n) : ResolvedNodeKind()\n\n@Serializable\n@SerialName(\"sub_brew_ref\")\npublic data class SubBrewRef(\nval brewId: BrewId,\n) : ResolvedNodeKind()\n\n@Serializable\n@SerialName(\"human_checkpoint\")\npublic data class HumanCheckpoint(\nval prompt: String,\nval timeoutMs: Long?;",
          "documentation": ""
        },
        {
          "name": "public data class ParallelFork(",
          "line": 140,
          "signature": "public data class ParallelFork(\nval branches: List<NodeId>,\nval joinMode: JoinMode,\n) : ResolvedNodeKind()\n\n@Serializable\n@SerialName(\"sub_brew_ref\")\npublic data class SubBrewRef(\nval brewId: BrewId,\n) : ResolvedNodeKind()\n\n@Serializable\n@SerialName(\"human_checkpoint\")\npublic data class HumanCheckpoint(\nval prompt: String,\nval timeoutMs: Long?;",
          "documentation": ""
        },
        {
          "name": "public data class SubBrewRef(",
          "line": 147,
          "signature": "public data class SubBrewRef(\nval brewId: BrewId,\n) : ResolvedNodeKind()\n\n@Serializable\n@SerialName(\"human_checkpoint\")\npublic data class HumanCheckpoint(\nval prompt: String,\nval timeoutMs: Long?;",
          "documentation": ""
        },
        {
          "name": "public data class HumanCheckpoint(",
          "line": 153,
          "signature": "public data class HumanCheckpoint(\nval prompt: String,\nval timeoutMs: Long?;",
          "documentation": ""
        },
        {
          "name": "public data class ResolvedNode(",
          "line": 166,
          "signature": "public data class ResolvedNode(\nval id: NodeId,\nval kind: ResolvedNodeKind,\n)\n\n// ---------------------------------------------------------------------------\n// ResolvedBrewPlan\n// ---------------------------------------------------------------------------\n\n/**\n* A frozen, deterministic execution plan produced by resolving a [Brew]\n* against a [BrewEnvironment].\n*\n* Every symbolic reference in the original brew has been validated. The plan\n* carries a deterministic [planId] computed as\n* `SHA-256(brew_id || brew_version || environment_hash)`.\n*\n* @property planId Deterministic plan identifier.\n* @property brewId The source brew's identifier.\n* @property brewVersion The source brew's version.\n* @property resolvedAt ISO 8601 timestamp of when resolution occurred.\n* @property environmentHash SHA-256 hash of the serialized BrewEnvironment.\n* @property nodes Resolved nodes keyed by node ID.\n* @property edges Edges from the original brew.\n* @property executionOrder Topologically sorted execution order.\n* @property entryNodes Entry nodes from the original brew.",
          "documentation": ""
        },
        {
          "name": "public data class ResolvedBrewPlan(",
          "line": 195,
          "signature": "public data class ResolvedBrewPlan(\nval planId: String,\nval brewId: BrewId,\nval brewVersion: BrewVersion,\nval resolvedAt: String,\nval environmentHash: String,\nval nodes: Map<NodeId, ResolvedNode>,\nval edges: Set<BrewEdge>,\nval executionOrder: List<NodeId>,\nval entryNodes: List<NodeId>,\nval exitNodes: List<NodeId>,\n)\n\n/**\n* Resolution result: either a successful [ResolvedBrewPlan] or a list of errors.\n*/\npublic sealed class BrewResolutionResult",
          "documentation": ""
        },
        {
          "name": "public sealed class BrewResolutionResult",
          "line": 211,
          "signature": "public sealed class BrewResolutionResult",
          "documentation": ""
        },
        {
          "name": "public data class Success(val plan: ResolvedBrewPlan) : BrewResolutionResult()",
          "line": 212,
          "signature": "public data class Success(val plan: ResolvedBrewPlan) : BrewResolutionResult()\npublic data class Failure(val errors: List<BrewResolutionError>) : BrewResolutionResult()\n}\n\n// ---------------------------------------------------------------------------\n// Resolution logic\n// ---------------------------------------------------------------------------\n\n/**\n* Resolves a [Brew] against a [BrewEnvironment], producing a frozen\n* [ResolvedBrewPlan].\n*\n* The resolver validates every node's symbolic references against the\n* environment. If any node fails validation, all errors are collected\n* and returned.\n*\n* @param brew The brew to resolve.\n* @param environment The runtime environment to validate against.\n* @return A [BrewResolutionResult] containing either the plan or all errors.\n*/\npublic fun resolve(brew: Brew, environment: BrewEnvironment): BrewResolutionResult",
          "documentation": ""
        },
        {
          "name": "public data class Failure(val errors: List<BrewResolutionError>) : BrewResolutionResult()",
          "line": 213,
          "signature": "public data class Failure(val errors: List<BrewResolutionError>) : BrewResolutionResult()\n}\n\n// ---------------------------------------------------------------------------\n// Resolution logic\n// ---------------------------------------------------------------------------\n\n/**\n* Resolves a [Brew] against a [BrewEnvironment], producing a frozen\n* [ResolvedBrewPlan].\n*\n* The resolver validates every node's symbolic references against the\n* environment. If any node fails validation, all errors are collected\n* and returned.\n*\n* @param brew The brew to resolve.\n* @param environment The runtime environment to validate against.\n* @return A [BrewResolutionResult] containing either the plan or all errors.\n*/\npublic fun resolve(brew: Brew, environment: BrewEnvironment): BrewResolutionResult",
          "documentation": ""
        },
        {
          "name": "public fun resolve(brew: Brew, environment: BrewEnvironment): BrewResolutionResult",
          "line": 232,
          "signature": "public fun resolve(brew: Brew, environment: BrewEnvironment): BrewResolutionResult",
          "documentation": ""
        }
      ]
    },
    {
      "path": "forge-kt/forge-core/src/main/kotlin/com/l1fe/forge/core/Config.kt",
      "sha256": "d64052379eafdbd7ab9b7e2f3b8a1ba5bd0de9a199322ed937cc113933c81dd0",
      "artifactSha256": "2ff397be1b6d4d50d4dbab85e6206dee44bd0e7274358d63cd91faa8c359cd84",
      "url": "/reference/source/forge-kt/forge-core/src/main/kotlin/com/l1fe/forge/core/Config.kt.txt",
      "declarations": [
        {
          "name": "public data class GenerateOptions(",
          "line": 32,
          "signature": "public data class GenerateOptions(\nval temperature: Double?;",
          "documentation": ""
        },
        {
          "name": "public fun withTemperature(temperature: Double): GenerateOptions =",
          "line": 49,
          "signature": "public fun withTemperature(temperature: Double): GenerateOptions =",
          "documentation": ""
        },
        {
          "name": "public fun withMaxTokens(maxTokens: Int): GenerateOptions =",
          "line": 53,
          "signature": "public fun withMaxTokens(maxTokens: Int): GenerateOptions =",
          "documentation": ""
        },
        {
          "name": "public fun withTopP(topP: Double): GenerateOptions =",
          "line": 57,
          "signature": "public fun withTopP(topP: Double): GenerateOptions =",
          "documentation": ""
        },
        {
          "name": "public fun withStopSequences(stopSequences: List<String>): GenerateOptions =",
          "line": 61,
          "signature": "public fun withStopSequences(stopSequences: List<String>): GenerateOptions =",
          "documentation": ""
        },
        {
          "name": "public fun withFrequencyPenalty(frequencyPenalty: Double): GenerateOptions =",
          "line": 65,
          "signature": "public fun withFrequencyPenalty(frequencyPenalty: Double): GenerateOptions =",
          "documentation": ""
        },
        {
          "name": "public fun withPresencePenalty(presencePenalty: Double): GenerateOptions =",
          "line": 69,
          "signature": "public fun withPresencePenalty(presencePenalty: Double): GenerateOptions =",
          "documentation": ""
        },
        {
          "name": "public fun withSeed(seed: Long): GenerateOptions =",
          "line": 73,
          "signature": "public fun withSeed(seed: Long): GenerateOptions =",
          "documentation": ""
        },
        {
          "name": "public fun withOutputSchema(outputSchema: JsonSchema): GenerateOptions =",
          "line": 77,
          "signature": "public fun withOutputSchema(outputSchema: JsonSchema): GenerateOptions =",
          "documentation": ""
        },
        {
          "name": "public class Builder",
          "line": 83,
          "signature": "public class Builder",
          "documentation": ""
        },
        {
          "name": "public fun temperature(value: Double): Builder;",
          "line": 93,
          "signature": "public fun temperature(value: Double): Builder;",
          "documentation": ""
        },
        {
          "name": "public fun maxTokens(value: Int): Builder;",
          "line": 94,
          "signature": "public fun maxTokens(value: Int): Builder;",
          "documentation": ""
        },
        {
          "name": "public fun topP(value: Double): Builder;",
          "line": 95,
          "signature": "public fun topP(value: Double): Builder;",
          "documentation": ""
        },
        {
          "name": "public fun stopSequences(value: List<String>): Builder;",
          "line": 96,
          "signature": "public fun stopSequences(value: List<String>): Builder;",
          "documentation": ""
        },
        {
          "name": "public fun frequencyPenalty(value: Double): Builder;",
          "line": 97,
          "signature": "public fun frequencyPenalty(value: Double): Builder;",
          "documentation": ""
        },
        {
          "name": "public fun presencePenalty(value: Double): Builder;",
          "line": 98,
          "signature": "public fun presencePenalty(value: Double): Builder;",
          "documentation": ""
        },
        {
          "name": "public fun seed(value: Long): Builder;",
          "line": 99,
          "signature": "public fun seed(value: Long): Builder;",
          "documentation": ""
        },
        {
          "name": "public fun outputSchema(value: JsonSchema): Builder;",
          "line": 100,
          "signature": "public fun outputSchema(value: JsonSchema): Builder;",
          "documentation": ""
        },
        {
          "name": "public fun build(): GenerateOptions;",
          "line": 102,
          "signature": "public fun build(): GenerateOptions;",
          "documentation": ""
        },
        {
          "name": "public fun builder(): Builder;",
          "line": 116,
          "signature": "public fun builder(): Builder;",
          "documentation": ""
        },
        {
          "name": "public data class EmbedOptions(",
          "line": 129,
          "signature": "public data class EmbedOptions(\nval model: String?;",
          "documentation": ""
        },
        {
          "name": "public fun withModel(model: String): EmbedOptions;",
          "line": 134,
          "signature": "public fun withModel(model: String): EmbedOptions;",
          "documentation": ""
        },
        {
          "name": "public fun withDimensions(dimensions: Int): EmbedOptions;",
          "line": 137,
          "signature": "public fun withDimensions(dimensions: Int): EmbedOptions;",
          "documentation": ""
        }
      ]
    },
    {
      "path": "forge-kt/forge-core/src/main/kotlin/com/l1fe/forge/core/Error.kt",
      "sha256": "d30e08d1c153dbdfeca6f79656184363016a20055887d21da778e24986416644",
      "artifactSha256": "1f079966bd04cfac816350b727717fb7b680bdc9e4bf78ea54b054796e01b0ee",
      "url": "/reference/source/forge-kt/forge-core/src/main/kotlin/com/l1fe/forge/core/Error.kt.txt",
      "declarations": [
        {
          "name": "public sealed class ForgeError(",
          "line": 18,
          "signature": "public sealed class ForgeError(\nmessage: String,\ncause: Throwable?;",
          "documentation": ""
        },
        {
          "name": "public class ProviderNotFound(",
          "line": 29,
          "signature": "public class ProviderNotFound(\npublic val providerRef: String,\npublic val available: List<String>,\n) : ForgeError(\n\"provider '$providerRef' not found in registry; \" +",
          "documentation": ""
        },
        {
          "name": "public val providerRef: String,",
          "line": 30,
          "signature": "public val providerRef: String,\npublic val available: List<String>,\n) : ForgeError(\n\"provider '$providerRef' not found in registry; \" +",
          "documentation": ""
        },
        {
          "name": "public val available: List<String>,",
          "line": 31,
          "signature": "public val available: List<String>,\n) : ForgeError(\n\"provider '$providerRef' not found in registry; \" +",
          "documentation": ""
        },
        {
          "name": "public class InvalidProviderRef(",
          "line": 43,
          "signature": "public class InvalidProviderRef(\npublic val input: String,\npublic val reason: String,\n) : ForgeError(\"invalid provider reference '$input': $reason\")\n\n/**\n* JSON Schema validation failed.\n*\n* @property path The JSON path where validation failed.\n* @property reason Why validation failed.\n*/\npublic class SchemaValidation(\npublic val path: String,\npublic val reason: String,\n) : ForgeError(\"schema validation failed at '$path': $reason\")\n\n/**\n* An invalid lifecycle state transition was attempted.\n*\n* ANVIL Spec Section 13.2 -- Lifecycle State Machine\n*\n* @property from The current state.\n* @property to The attempted target state.\n* @property validTargets The states that are valid from [from].\n*/\npublic class InvalidLifecycleTransition(",
          "documentation": ""
        },
        {
          "name": "public val input: String,",
          "line": 44,
          "signature": "public val input: String,\npublic val reason: String,\n) : ForgeError(\"invalid provider reference '$input': $reason\")\n\n/**\n* JSON Schema validation failed.\n*\n* @property path The JSON path where validation failed.\n* @property reason Why validation failed.\n*/\npublic class SchemaValidation(\npublic val path: String,\npublic val reason: String,\n) : ForgeError(\"schema validation failed at '$path': $reason\")\n\n/**\n* An invalid lifecycle state transition was attempted.\n*\n* ANVIL Spec Section 13.2 -- Lifecycle State Machine\n*\n* @property from The current state.\n* @property to The attempted target state.\n* @property validTargets The states that are valid from [from].\n*/\npublic class InvalidLifecycleTransition(\npublic val from: String,",
          "documentation": ""
        },
        {
          "name": "public val reason: String,",
          "line": 45,
          "signature": "public val reason: String,\n) : ForgeError(\"invalid provider reference '$input': $reason\")\n\n/**\n* JSON Schema validation failed.\n*\n* @property path The JSON path where validation failed.\n* @property reason Why validation failed.\n*/\npublic class SchemaValidation(\npublic val path: String,\npublic val reason: String,\n) : ForgeError(\"schema validation failed at '$path': $reason\")\n\n/**\n* An invalid lifecycle state transition was attempted.\n*\n* ANVIL Spec Section 13.2 -- Lifecycle State Machine\n*\n* @property from The current state.\n* @property to The attempted target state.\n* @property validTargets The states that are valid from [from].\n*/\npublic class InvalidLifecycleTransition(\npublic val from: String,\npublic val to: String,",
          "documentation": ""
        },
        {
          "name": "public class SchemaValidation(",
          "line": 54,
          "signature": "public class SchemaValidation(\npublic val path: String,\npublic val reason: String,\n) : ForgeError(\"schema validation failed at '$path': $reason\")\n\n/**\n* An invalid lifecycle state transition was attempted.\n*\n* ANVIL Spec Section 13.2 -- Lifecycle State Machine\n*\n* @property from The current state.\n* @property to The attempted target state.\n* @property validTargets The states that are valid from [from].\n*/\npublic class InvalidLifecycleTransition(\npublic val from: String,\npublic val to: String,\npublic val validTargets: List<String>,\n) : ForgeError(\n\"invalid lifecycle transition from '$from' to '$to'; \" +",
          "documentation": ""
        },
        {
          "name": "public val path: String,",
          "line": 55,
          "signature": "public val path: String,\npublic val reason: String,\n) : ForgeError(\"schema validation failed at '$path': $reason\")\n\n/**\n* An invalid lifecycle state transition was attempted.\n*\n* ANVIL Spec Section 13.2 -- Lifecycle State Machine\n*\n* @property from The current state.\n* @property to The attempted target state.\n* @property validTargets The states that are valid from [from].\n*/\npublic class InvalidLifecycleTransition(\npublic val from: String,\npublic val to: String,\npublic val validTargets: List<String>,\n) : ForgeError(\n\"invalid lifecycle transition from '$from' to '$to'; \" +",
          "documentation": ""
        },
        {
          "name": "public val reason: String,",
          "line": 56,
          "signature": "public val reason: String,\n) : ForgeError(\"schema validation failed at '$path': $reason\")\n\n/**\n* An invalid lifecycle state transition was attempted.\n*\n* ANVIL Spec Section 13.2 -- Lifecycle State Machine\n*\n* @property from The current state.\n* @property to The attempted target state.\n* @property validTargets The states that are valid from [from].\n*/\npublic class InvalidLifecycleTransition(\npublic val from: String,\npublic val to: String,\npublic val validTargets: List<String>,\n) : ForgeError(\n\"invalid lifecycle transition from '$from' to '$to'; \" +",
          "documentation": ""
        },
        {
          "name": "public class InvalidLifecycleTransition(",
          "line": 68,
          "signature": "public class InvalidLifecycleTransition(\npublic val from: String,\npublic val to: String,\npublic val validTargets: List<String>,\n) : ForgeError(\n\"invalid lifecycle transition from '$from' to '$to'; \" +",
          "documentation": ""
        },
        {
          "name": "public val from: String,",
          "line": 69,
          "signature": "public val from: String,\npublic val to: String,\npublic val validTargets: List<String>,\n) : ForgeError(\n\"invalid lifecycle transition from '$from' to '$to'; \" +",
          "documentation": ""
        },
        {
          "name": "public val to: String,",
          "line": 70,
          "signature": "public val to: String,\npublic val validTargets: List<String>,\n) : ForgeError(\n\"invalid lifecycle transition from '$from' to '$to'; \" +",
          "documentation": ""
        },
        {
          "name": "public val validTargets: List<String>,",
          "line": 71,
          "signature": "public val validTargets: List<String>,\n) : ForgeError(\n\"invalid lifecycle transition from '$from' to '$to'; \" +",
          "documentation": ""
        },
        {
          "name": "public class ToolInvocationDenied(",
          "line": 86,
          "signature": "public class ToolInvocationDenied(\npublic val toolName: String,\npublic val agentDid: String,\npublic val reason: String,\n) : ForgeError(\n\"tool '$toolName' invocation denied for agent $agentDid: $reason\"\n)\n\n/**\n* A tool execution failed at runtime.\n*\n* @property toolName The name of the tool that failed.\n* @property reason The failure reason.\n*/\npublic class ToolExecutionFailed(\npublic val toolName: String,\npublic val reason: String,\ncause: Throwable?;",
          "documentation": ""
        },
        {
          "name": "public val toolName: String,",
          "line": 87,
          "signature": "public val toolName: String,\npublic val agentDid: String,\npublic val reason: String,\n) : ForgeError(\n\"tool '$toolName' invocation denied for agent $agentDid: $reason\"\n)\n\n/**\n* A tool execution failed at runtime.\n*\n* @property toolName The name of the tool that failed.\n* @property reason The failure reason.\n*/\npublic class ToolExecutionFailed(\npublic val toolName: String,\npublic val reason: String,\ncause: Throwable?;",
          "documentation": ""
        },
        {
          "name": "public val agentDid: String,",
          "line": 88,
          "signature": "public val agentDid: String,\npublic val reason: String,\n) : ForgeError(\n\"tool '$toolName' invocation denied for agent $agentDid: $reason\"\n)\n\n/**\n* A tool execution failed at runtime.\n*\n* @property toolName The name of the tool that failed.\n* @property reason The failure reason.\n*/\npublic class ToolExecutionFailed(\npublic val toolName: String,\npublic val reason: String,\ncause: Throwable?;",
          "documentation": ""
        },
        {
          "name": "public val reason: String,",
          "line": 89,
          "signature": "public val reason: String,\n) : ForgeError(\n\"tool '$toolName' invocation denied for agent $agentDid: $reason\"\n)\n\n/**\n* A tool execution failed at runtime.\n*\n* @property toolName The name of the tool that failed.\n* @property reason The failure reason.\n*/\npublic class ToolExecutionFailed(\npublic val toolName: String,\npublic val reason: String,\ncause: Throwable?;",
          "documentation": ""
        },
        {
          "name": "public class ToolExecutionFailed(",
          "line": 100,
          "signature": "public class ToolExecutionFailed(\npublic val toolName: String,\npublic val reason: String,\ncause: Throwable?;",
          "documentation": ""
        },
        {
          "name": "public val toolName: String,",
          "line": 101,
          "signature": "public val toolName: String,\npublic val reason: String,\ncause: Throwable?;",
          "documentation": ""
        },
        {
          "name": "public val reason: String,",
          "line": 102,
          "signature": "public val reason: String,\ncause: Throwable?;",
          "documentation": ""
        },
        {
          "name": "public class Json(",
          "line": 112,
          "signature": "public class Json(\npublic val context: String,\npublic val reason: String,\ncause: Throwable?;",
          "documentation": ""
        },
        {
          "name": "public val context: String,",
          "line": 113,
          "signature": "public val context: String,\npublic val reason: String,\ncause: Throwable?;",
          "documentation": ""
        },
        {
          "name": "public val reason: String,",
          "line": 114,
          "signature": "public val reason: String,\ncause: Throwable?;",
          "documentation": ""
        },
        {
          "name": "public class MissingConfig(",
          "line": 124,
          "signature": "public class MissingConfig(\npublic val field: String,\npublic val hint: String;",
          "documentation": ""
        },
        {
          "name": "public val field: String,",
          "line": 125,
          "signature": "public val field: String,\npublic val hint: String;",
          "documentation": ""
        },
        {
          "name": "public val hint: String;",
          "line": 126,
          "signature": "public val hint: String;",
          "documentation": ""
        },
        {
          "name": "public class StopConditionReached(",
          "line": 138,
          "signature": "public class StopConditionReached(\npublic val condition: String,\npublic val stepsTaken: Int,\n) : ForgeError(\"stop condition reached after $stepsTaken steps: $condition\")\n\n/**\n* A telemetry operation failed.\n*\n* @property operation The telemetry operation that failed.\n* @property reason The failure detail.\n*/\npublic class TelemetryError(\npublic val operation: String,\npublic val reason: String,\n) : ForgeError(\"telemetry error in '$operation': $reason\")\n\n/**\n* An operation is not supported by the current provider or configuration.\n*\n* @property operation The unsupported operation.\n* @property reason Why it is unsupported.\n*/\npublic class UnsupportedOperation(\npublic val operation: String,\npublic val reason: String,\n) : ForgeError(\"unsupported operation '$operation': $reason\")",
          "documentation": ""
        },
        {
          "name": "public val condition: String,",
          "line": 139,
          "signature": "public val condition: String,\npublic val stepsTaken: Int,\n) : ForgeError(\"stop condition reached after $stepsTaken steps: $condition\")\n\n/**\n* A telemetry operation failed.\n*\n* @property operation The telemetry operation that failed.\n* @property reason The failure detail.\n*/\npublic class TelemetryError(\npublic val operation: String,\npublic val reason: String,\n) : ForgeError(\"telemetry error in '$operation': $reason\")\n\n/**\n* An operation is not supported by the current provider or configuration.\n*\n* @property operation The unsupported operation.\n* @property reason Why it is unsupported.\n*/\npublic class UnsupportedOperation(\npublic val operation: String,\npublic val reason: String,\n) : ForgeError(\"unsupported operation '$operation': $reason\")\n",
          "documentation": ""
        },
        {
          "name": "public val stepsTaken: Int,",
          "line": 140,
          "signature": "public val stepsTaken: Int,\n) : ForgeError(\"stop condition reached after $stepsTaken steps: $condition\")\n\n/**\n* A telemetry operation failed.\n*\n* @property operation The telemetry operation that failed.\n* @property reason The failure detail.\n*/\npublic class TelemetryError(\npublic val operation: String,\npublic val reason: String,\n) : ForgeError(\"telemetry error in '$operation': $reason\")\n\n/**\n* An operation is not supported by the current provider or configuration.\n*\n* @property operation The unsupported operation.\n* @property reason Why it is unsupported.\n*/\npublic class UnsupportedOperation(\npublic val operation: String,\npublic val reason: String,\n) : ForgeError(\"unsupported operation '$operation': $reason\")\n\n/**",
          "documentation": ""
        },
        {
          "name": "public class TelemetryError(",
          "line": 149,
          "signature": "public class TelemetryError(\npublic val operation: String,\npublic val reason: String,\n) : ForgeError(\"telemetry error in '$operation': $reason\")\n\n/**\n* An operation is not supported by the current provider or configuration.\n*\n* @property operation The unsupported operation.\n* @property reason Why it is unsupported.\n*/\npublic class UnsupportedOperation(\npublic val operation: String,\npublic val reason: String,\n) : ForgeError(\"unsupported operation '$operation': $reason\")\n\n/**\n* A provider exists but is not currently available.\n*/\npublic class ProviderUnavailable(\npublic val providerRef: String,\npublic val reason: String,\n) : ForgeError(\"provider '$providerRef' is unavailable: $reason\")\n\n/**\n* Provider authentication failed.",
          "documentation": ""
        },
        {
          "name": "public val operation: String,",
          "line": 150,
          "signature": "public val operation: String,\npublic val reason: String,\n) : ForgeError(\"telemetry error in '$operation': $reason\")\n\n/**\n* An operation is not supported by the current provider or configuration.\n*\n* @property operation The unsupported operation.\n* @property reason Why it is unsupported.\n*/\npublic class UnsupportedOperation(\npublic val operation: String,\npublic val reason: String,\n) : ForgeError(\"unsupported operation '$operation': $reason\")\n\n/**\n* A provider exists but is not currently available.\n*/\npublic class ProviderUnavailable(\npublic val providerRef: String,\npublic val reason: String,\n) : ForgeError(\"provider '$providerRef' is unavailable: $reason\")\n\n/**\n* Provider authentication failed.\n*/",
          "documentation": ""
        },
        {
          "name": "public val reason: String,",
          "line": 151,
          "signature": "public val reason: String,\n) : ForgeError(\"telemetry error in '$operation': $reason\")\n\n/**\n* An operation is not supported by the current provider or configuration.\n*\n* @property operation The unsupported operation.\n* @property reason Why it is unsupported.\n*/\npublic class UnsupportedOperation(\npublic val operation: String,\npublic val reason: String,\n) : ForgeError(\"unsupported operation '$operation': $reason\")\n\n/**\n* A provider exists but is not currently available.\n*/\npublic class ProviderUnavailable(\npublic val providerRef: String,\npublic val reason: String,\n) : ForgeError(\"provider '$providerRef' is unavailable: $reason\")\n\n/**\n* Provider authentication failed.\n*/\npublic class ProviderAuthenticationFailed(",
          "documentation": ""
        },
        {
          "name": "public class UnsupportedOperation(",
          "line": 160,
          "signature": "public class UnsupportedOperation(\npublic val operation: String,\npublic val reason: String,\n) : ForgeError(\"unsupported operation '$operation': $reason\")\n\n/**\n* A provider exists but is not currently available.\n*/\npublic class ProviderUnavailable(\npublic val providerRef: String,\npublic val reason: String,\n) : ForgeError(\"provider '$providerRef' is unavailable: $reason\")\n\n/**\n* Provider authentication failed.\n*/\npublic class ProviderAuthenticationFailed(\npublic val providerRef: String,\npublic val reason: String,\n) : ForgeError(\"provider '$providerRef' authentication failed: $reason\")\n\n/**\n* The provider does not support a required runtime capability.\n*/\npublic class CapabilityUnsupported(\npublic val providerRef: String,",
          "documentation": ""
        },
        {
          "name": "public val operation: String,",
          "line": 161,
          "signature": "public val operation: String,\npublic val reason: String,\n) : ForgeError(\"unsupported operation '$operation': $reason\")\n\n/**\n* A provider exists but is not currently available.\n*/\npublic class ProviderUnavailable(\npublic val providerRef: String,\npublic val reason: String,\n) : ForgeError(\"provider '$providerRef' is unavailable: $reason\")\n\n/**\n* Provider authentication failed.\n*/\npublic class ProviderAuthenticationFailed(\npublic val providerRef: String,\npublic val reason: String,\n) : ForgeError(\"provider '$providerRef' authentication failed: $reason\")\n\n/**\n* The provider does not support a required runtime capability.\n*/\npublic class CapabilityUnsupported(\npublic val providerRef: String,\npublic val capability: String,",
          "documentation": ""
        },
        {
          "name": "public val reason: String,",
          "line": 162,
          "signature": "public val reason: String,\n) : ForgeError(\"unsupported operation '$operation': $reason\")\n\n/**\n* A provider exists but is not currently available.\n*/\npublic class ProviderUnavailable(\npublic val providerRef: String,\npublic val reason: String,\n) : ForgeError(\"provider '$providerRef' is unavailable: $reason\")\n\n/**\n* Provider authentication failed.\n*/\npublic class ProviderAuthenticationFailed(\npublic val providerRef: String,\npublic val reason: String,\n) : ForgeError(\"provider '$providerRef' authentication failed: $reason\")\n\n/**\n* The provider does not support a required runtime capability.\n*/\npublic class CapabilityUnsupported(\npublic val providerRef: String,\npublic val capability: String,\n) : ForgeError(\"provider '$providerRef' does not support runtime capability '$capability'\")",
          "documentation": ""
        },
        {
          "name": "public class ProviderUnavailable(",
          "line": 168,
          "signature": "public class ProviderUnavailable(\npublic val providerRef: String,\npublic val reason: String,\n) : ForgeError(\"provider '$providerRef' is unavailable: $reason\")\n\n/**\n* Provider authentication failed.\n*/\npublic class ProviderAuthenticationFailed(\npublic val providerRef: String,\npublic val reason: String,\n) : ForgeError(\"provider '$providerRef' authentication failed: $reason\")\n\n/**\n* The provider does not support a required runtime capability.\n*/\npublic class CapabilityUnsupported(\npublic val providerRef: String,\npublic val capability: String,\n) : ForgeError(\"provider '$providerRef' does not support runtime capability '$capability'\")\n\n/**\n* Provider runtime negotiation failed.\n*/\npublic class ProviderNegotiationFailed(\npublic val providerRef: String,",
          "documentation": ""
        },
        {
          "name": "public val providerRef: String,",
          "line": 169,
          "signature": "public val providerRef: String,\npublic val reason: String,\n) : ForgeError(\"provider '$providerRef' is unavailable: $reason\")\n\n/**\n* Provider authentication failed.\n*/\npublic class ProviderAuthenticationFailed(\npublic val providerRef: String,\npublic val reason: String,\n) : ForgeError(\"provider '$providerRef' authentication failed: $reason\")\n\n/**\n* The provider does not support a required runtime capability.\n*/\npublic class CapabilityUnsupported(\npublic val providerRef: String,\npublic val capability: String,\n) : ForgeError(\"provider '$providerRef' does not support runtime capability '$capability'\")\n\n/**\n* Provider runtime negotiation failed.\n*/\npublic class ProviderNegotiationFailed(\npublic val providerRef: String,\npublic val reason: String,",
          "documentation": ""
        },
        {
          "name": "public val reason: String,",
          "line": 170,
          "signature": "public val reason: String,\n) : ForgeError(\"provider '$providerRef' is unavailable: $reason\")\n\n/**\n* Provider authentication failed.\n*/\npublic class ProviderAuthenticationFailed(\npublic val providerRef: String,\npublic val reason: String,\n) : ForgeError(\"provider '$providerRef' authentication failed: $reason\")\n\n/**\n* The provider does not support a required runtime capability.\n*/\npublic class CapabilityUnsupported(\npublic val providerRef: String,\npublic val capability: String,\n) : ForgeError(\"provider '$providerRef' does not support runtime capability '$capability'\")\n\n/**\n* Provider runtime negotiation failed.\n*/\npublic class ProviderNegotiationFailed(\npublic val providerRef: String,\npublic val reason: String,\n) : ForgeError(\"provider '$providerRef' negotiation failed: $reason\")",
          "documentation": ""
        },
        {
          "name": "public class ProviderAuthenticationFailed(",
          "line": 176,
          "signature": "public class ProviderAuthenticationFailed(\npublic val providerRef: String,\npublic val reason: String,\n) : ForgeError(\"provider '$providerRef' authentication failed: $reason\")\n\n/**\n* The provider does not support a required runtime capability.\n*/\npublic class CapabilityUnsupported(\npublic val providerRef: String,\npublic val capability: String,\n) : ForgeError(\"provider '$providerRef' does not support runtime capability '$capability'\")\n\n/**\n* Provider runtime negotiation failed.\n*/\npublic class ProviderNegotiationFailed(\npublic val providerRef: String,\npublic val reason: String,\n) : ForgeError(\"provider '$providerRef' negotiation failed: $reason\")\n\n/**\n* A provider session expired before the requested action completed.\n*/\npublic class ProviderSessionExpired(\npublic val providerRef: String,",
          "documentation": ""
        },
        {
          "name": "public val providerRef: String,",
          "line": 177,
          "signature": "public val providerRef: String,\npublic val reason: String,\n) : ForgeError(\"provider '$providerRef' authentication failed: $reason\")\n\n/**\n* The provider does not support a required runtime capability.\n*/\npublic class CapabilityUnsupported(\npublic val providerRef: String,\npublic val capability: String,\n) : ForgeError(\"provider '$providerRef' does not support runtime capability '$capability'\")\n\n/**\n* Provider runtime negotiation failed.\n*/\npublic class ProviderNegotiationFailed(\npublic val providerRef: String,\npublic val reason: String,\n) : ForgeError(\"provider '$providerRef' negotiation failed: $reason\")\n\n/**\n* A provider session expired before the requested action completed.\n*/\npublic class ProviderSessionExpired(\npublic val providerRef: String,\npublic val sessionId: String,",
          "documentation": ""
        },
        {
          "name": "public val reason: String,",
          "line": 178,
          "signature": "public val reason: String,\n) : ForgeError(\"provider '$providerRef' authentication failed: $reason\")\n\n/**\n* The provider does not support a required runtime capability.\n*/\npublic class CapabilityUnsupported(\npublic val providerRef: String,\npublic val capability: String,\n) : ForgeError(\"provider '$providerRef' does not support runtime capability '$capability'\")\n\n/**\n* Provider runtime negotiation failed.\n*/\npublic class ProviderNegotiationFailed(\npublic val providerRef: String,\npublic val reason: String,\n) : ForgeError(\"provider '$providerRef' negotiation failed: $reason\")\n\n/**\n* A provider session expired before the requested action completed.\n*/\npublic class ProviderSessionExpired(\npublic val providerRef: String,\npublic val sessionId: String,\n) : ForgeError(",
          "documentation": ""
        },
        {
          "name": "public class CapabilityUnsupported(",
          "line": 184,
          "signature": "public class CapabilityUnsupported(\npublic val providerRef: String,\npublic val capability: String,\n) : ForgeError(\"provider '$providerRef' does not support runtime capability '$capability'\")\n\n/**\n* Provider runtime negotiation failed.\n*/\npublic class ProviderNegotiationFailed(\npublic val providerRef: String,\npublic val reason: String,\n) : ForgeError(\"provider '$providerRef' negotiation failed: $reason\")\n\n/**\n* A provider session expired before the requested action completed.\n*/\npublic class ProviderSessionExpired(\npublic val providerRef: String,\npublic val sessionId: String,\n) : ForgeError(\n\"provider '$providerRef' session '$sessionId' expired before the requested action completed\"\n)\n\n/**\n* The provider does not support interrupts.\n*/",
          "documentation": ""
        },
        {
          "name": "public val providerRef: String,",
          "line": 185,
          "signature": "public val providerRef: String,\npublic val capability: String,\n) : ForgeError(\"provider '$providerRef' does not support runtime capability '$capability'\")\n\n/**\n* Provider runtime negotiation failed.\n*/\npublic class ProviderNegotiationFailed(\npublic val providerRef: String,\npublic val reason: String,\n) : ForgeError(\"provider '$providerRef' negotiation failed: $reason\")\n\n/**\n* A provider session expired before the requested action completed.\n*/\npublic class ProviderSessionExpired(\npublic val providerRef: String,\npublic val sessionId: String,\n) : ForgeError(\n\"provider '$providerRef' session '$sessionId' expired before the requested action completed\"\n)\n\n/**\n* The provider does not support interrupts.\n*/\npublic class ProviderInterruptUnsupported(",
          "documentation": ""
        },
        {
          "name": "public val capability: String,",
          "line": 186,
          "signature": "public val capability: String,\n) : ForgeError(\"provider '$providerRef' does not support runtime capability '$capability'\")\n\n/**\n* Provider runtime negotiation failed.\n*/\npublic class ProviderNegotiationFailed(\npublic val providerRef: String,\npublic val reason: String,\n) : ForgeError(\"provider '$providerRef' negotiation failed: $reason\")\n\n/**\n* A provider session expired before the requested action completed.\n*/\npublic class ProviderSessionExpired(\npublic val providerRef: String,\npublic val sessionId: String,\n) : ForgeError(\n\"provider '$providerRef' session '$sessionId' expired before the requested action completed\"\n)\n\n/**\n* The provider does not support interrupts.\n*/\npublic class ProviderInterruptUnsupported(\npublic val providerRef: String,",
          "documentation": ""
        },
        {
          "name": "public class ProviderNegotiationFailed(",
          "line": 192,
          "signature": "public class ProviderNegotiationFailed(\npublic val providerRef: String,\npublic val reason: String,\n) : ForgeError(\"provider '$providerRef' negotiation failed: $reason\")\n\n/**\n* A provider session expired before the requested action completed.\n*/\npublic class ProviderSessionExpired(\npublic val providerRef: String,\npublic val sessionId: String,\n) : ForgeError(\n\"provider '$providerRef' session '$sessionId' expired before the requested action completed\"\n)\n\n/**\n* The provider does not support interrupts.\n*/\npublic class ProviderInterruptUnsupported(\npublic val providerRef: String,\n) : ForgeError(\"provider '$providerRef' does not support session interrupts\")\n\n/**\n* The provider does not support resuming sessions.\n*/\npublic class ProviderResumeUnsupported(",
          "documentation": ""
        },
        {
          "name": "public val providerRef: String,",
          "line": 193,
          "signature": "public val providerRef: String,\npublic val reason: String,\n) : ForgeError(\"provider '$providerRef' negotiation failed: $reason\")\n\n/**\n* A provider session expired before the requested action completed.\n*/\npublic class ProviderSessionExpired(\npublic val providerRef: String,\npublic val sessionId: String,\n) : ForgeError(\n\"provider '$providerRef' session '$sessionId' expired before the requested action completed\"\n)\n\n/**\n* The provider does not support interrupts.\n*/\npublic class ProviderInterruptUnsupported(\npublic val providerRef: String,\n) : ForgeError(\"provider '$providerRef' does not support session interrupts\")\n\n/**\n* The provider does not support resuming sessions.\n*/\npublic class ProviderResumeUnsupported(\npublic val providerRef: String,",
          "documentation": ""
        },
        {
          "name": "public val reason: String,",
          "line": 194,
          "signature": "public val reason: String,\n) : ForgeError(\"provider '$providerRef' negotiation failed: $reason\")\n\n/**\n* A provider session expired before the requested action completed.\n*/\npublic class ProviderSessionExpired(\npublic val providerRef: String,\npublic val sessionId: String,\n) : ForgeError(\n\"provider '$providerRef' session '$sessionId' expired before the requested action completed\"\n)\n\n/**\n* The provider does not support interrupts.\n*/\npublic class ProviderInterruptUnsupported(\npublic val providerRef: String,\n) : ForgeError(\"provider '$providerRef' does not support session interrupts\")\n\n/**\n* The provider does not support resuming sessions.\n*/\npublic class ProviderResumeUnsupported(\npublic val providerRef: String,\n) : ForgeError(\"provider '$providerRef' does not support session resume\")",
          "documentation": ""
        },
        {
          "name": "public class ProviderSessionExpired(",
          "line": 200,
          "signature": "public class ProviderSessionExpired(\npublic val providerRef: String,\npublic val sessionId: String,\n) : ForgeError(\n\"provider '$providerRef' session '$sessionId' expired before the requested action completed\"\n)\n\n/**\n* The provider does not support interrupts.\n*/\npublic class ProviderInterruptUnsupported(\npublic val providerRef: String,\n) : ForgeError(\"provider '$providerRef' does not support session interrupts\")\n\n/**\n* The provider does not support resuming sessions.\n*/\npublic class ProviderResumeUnsupported(\npublic val providerRef: String,\n) : ForgeError(\"provider '$providerRef' does not support session resume\")\n\n/**\n* An internal SDK error that should not occur in normal operation.\n*\n* @property detail Diagnostic detail for the error.\n*/",
          "documentation": ""
        },
        {
          "name": "public val providerRef: String,",
          "line": 201,
          "signature": "public val providerRef: String,\npublic val sessionId: String,\n) : ForgeError(\n\"provider '$providerRef' session '$sessionId' expired before the requested action completed\"\n)\n\n/**\n* The provider does not support interrupts.\n*/\npublic class ProviderInterruptUnsupported(\npublic val providerRef: String,\n) : ForgeError(\"provider '$providerRef' does not support session interrupts\")\n\n/**\n* The provider does not support resuming sessions.\n*/\npublic class ProviderResumeUnsupported(\npublic val providerRef: String,\n) : ForgeError(\"provider '$providerRef' does not support session resume\")\n\n/**\n* An internal SDK error that should not occur in normal operation.\n*\n* @property detail Diagnostic detail for the error.\n*/\npublic class Internal(",
          "documentation": ""
        },
        {
          "name": "public val sessionId: String,",
          "line": 202,
          "signature": "public val sessionId: String,\n) : ForgeError(\n\"provider '$providerRef' session '$sessionId' expired before the requested action completed\"\n)\n\n/**\n* The provider does not support interrupts.\n*/\npublic class ProviderInterruptUnsupported(\npublic val providerRef: String,\n) : ForgeError(\"provider '$providerRef' does not support session interrupts\")\n\n/**\n* The provider does not support resuming sessions.\n*/\npublic class ProviderResumeUnsupported(\npublic val providerRef: String,\n) : ForgeError(\"provider '$providerRef' does not support session resume\")\n\n/**\n* An internal SDK error that should not occur in normal operation.\n*\n* @property detail Diagnostic detail for the error.\n*/\npublic class Internal(\npublic val detail: String,",
          "documentation": ""
        },
        {
          "name": "public class ProviderInterruptUnsupported(",
          "line": 210,
          "signature": "public class ProviderInterruptUnsupported(\npublic val providerRef: String,\n) : ForgeError(\"provider '$providerRef' does not support session interrupts\")\n\n/**\n* The provider does not support resuming sessions.\n*/\npublic class ProviderResumeUnsupported(\npublic val providerRef: String,\n) : ForgeError(\"provider '$providerRef' does not support session resume\")\n\n/**\n* An internal SDK error that should not occur in normal operation.\n*\n* @property detail Diagnostic detail for the error.\n*/\npublic class Internal(\npublic val detail: String,\ncause: Throwable?;",
          "documentation": ""
        },
        {
          "name": "public val providerRef: String,",
          "line": 211,
          "signature": "public val providerRef: String,\n) : ForgeError(\"provider '$providerRef' does not support session interrupts\")\n\n/**\n* The provider does not support resuming sessions.\n*/\npublic class ProviderResumeUnsupported(\npublic val providerRef: String,\n) : ForgeError(\"provider '$providerRef' does not support session resume\")\n\n/**\n* An internal SDK error that should not occur in normal operation.\n*\n* @property detail Diagnostic detail for the error.\n*/\npublic class Internal(\npublic val detail: String,\ncause: Throwable?;",
          "documentation": ""
        },
        {
          "name": "public class ProviderResumeUnsupported(",
          "line": 217,
          "signature": "public class ProviderResumeUnsupported(\npublic val providerRef: String,\n) : ForgeError(\"provider '$providerRef' does not support session resume\")\n\n/**\n* An internal SDK error that should not occur in normal operation.\n*\n* @property detail Diagnostic detail for the error.\n*/\npublic class Internal(\npublic val detail: String,\ncause: Throwable?;",
          "documentation": ""
        },
        {
          "name": "public val providerRef: String,",
          "line": 218,
          "signature": "public val providerRef: String,\n) : ForgeError(\"provider '$providerRef' does not support session resume\")\n\n/**\n* An internal SDK error that should not occur in normal operation.\n*\n* @property detail Diagnostic detail for the error.\n*/\npublic class Internal(\npublic val detail: String,\ncause: Throwable?;",
          "documentation": ""
        },
        {
          "name": "public class Internal(",
          "line": 226,
          "signature": "public class Internal(\npublic val detail: String,\ncause: Throwable?;",
          "documentation": ""
        },
        {
          "name": "public val detail: String,",
          "line": 227,
          "signature": "public val detail: String,\ncause: Throwable?;",
          "documentation": ""
        },
        {
          "name": "public typealias ForgeResult<T>;",
          "line": 235,
          "signature": "public typealias ForgeResult<T>;",
          "documentation": ""
        }
      ]
    },
    {
      "path": "forge-kt/forge-core/src/main/kotlin/com/l1fe/forge/core/Message.kt",
      "sha256": "d0049a742641c9dd753be67594a3f4917be8c4c9cfdc483791bba3b2412e6926",
      "artifactSha256": "e969dbbd658d1b70c9cdd8208b8ce766ebcc2414d99fdcf764198dba5d70379e",
      "url": "/reference/source/forge-kt/forge-core/src/main/kotlin/com/l1fe/forge/core/Message.kt.txt",
      "declarations": [
        {
          "name": "public enum class Role(public val value: String)",
          "line": 23,
          "signature": "public enum class Role(public val value: String)",
          "documentation": ""
        },
        {
          "name": "public sealed class MessagePart",
          "line": 50,
          "signature": "public sealed class MessagePart",
          "documentation": ""
        },
        {
          "name": "public data class Text(val text: String) : MessagePart()",
          "line": 59,
          "signature": "public data class Text(val text: String) : MessagePart()\n\n/**\n* An image content part, encoded as a data URI or URL.\n*\n* @property url The image URL or data URI (e.g., `data:image/png;base64,...`).",
          "documentation": ""
        },
        {
          "name": "public data class Image(",
          "line": 69,
          "signature": "public data class Image(\nval url: String,\n@SerialName(\"mime_type\")\nval mimeType: String,\n) : MessagePart()\n\n/**\n* A tool call request from the model.\n*\n* @property id Unique identifier for this tool call, used to correlate with [ToolResult].\n* @property name The name of the tool to invoke.\n* @property arguments The JSON-encoded arguments for the tool.\n*/\n@Serializable\n@SerialName(\"tool_call\")\npublic data class ToolCallPart(\nval id: String,\nval name: String,\nval arguments: String,\n) : MessagePart()\n\n/**\n* The result of a tool invocation.\n*\n* @property toolCallId The ID of the [ToolCallPart] this result corresponds to.\n* @property name The name of the tool that produced this result.",
          "documentation": ""
        },
        {
          "name": "public data class ToolCallPart(",
          "line": 84,
          "signature": "public data class ToolCallPart(\nval id: String,\nval name: String,\nval arguments: String,\n) : MessagePart()\n\n/**\n* The result of a tool invocation.\n*\n* @property toolCallId The ID of the [ToolCallPart] this result corresponds to.\n* @property name The name of the tool that produced this result.\n* @property content The text content returned by the tool.\n* @property isError Whether the tool execution resulted in an error.\n*/\n@Serializable\n@SerialName(\"tool_result\")\npublic data class ToolResultPart(\n@SerialName(\"tool_call_id\")\nval toolCallId: String,\nval name: String,\nval content: String,\n@SerialName(\"is_error\")\nval isError: Boolean;",
          "documentation": ""
        },
        {
          "name": "public data class ToolResultPart(",
          "line": 100,
          "signature": "public data class ToolResultPart(\n@SerialName(\"tool_call_id\")\nval toolCallId: String,\nval name: String,\nval content: String,\n@SerialName(\"is_error\")\nval isError: Boolean;",
          "documentation": ""
        },
        {
          "name": "public fun text(content: String): Text;",
          "line": 111,
          "signature": "public fun text(content: String): Text;",
          "documentation": ""
        },
        {
          "name": "public fun image(url: String, mimeType: String): Image;",
          "line": 114,
          "signature": "public fun image(url: String, mimeType: String): Image;",
          "documentation": ""
        },
        {
          "name": "public fun toolCall(id: String, name: String, arguments: String): ToolCallPart =",
          "line": 117,
          "signature": "public fun toolCall(id: String, name: String, arguments: String): ToolCallPart =",
          "documentation": ""
        },
        {
          "name": "public fun toolResult(",
          "line": 121,
          "signature": "public fun toolResult(\ntoolCallId: String,\nname: String,\ncontent: String,\nisError: Boolean;",
          "documentation": ""
        },
        {
          "name": "public data class ModelMessage(",
          "line": 142,
          "signature": "public data class ModelMessage(\nval role: Role,\nval parts: List<MessagePart>,\n)",
          "documentation": ""
        },
        {
          "name": "public fun textContent(): String?",
          "line": 151,
          "signature": "public fun textContent(): String?",
          "documentation": ""
        },
        {
          "name": "public fun toolCalls(): List<ToolCall> =",
          "line": 161,
          "signature": "public fun toolCalls(): List<ToolCall> =",
          "documentation": ""
        },
        {
          "name": "public fun hasToolCalls(): Boolean =",
          "line": 169,
          "signature": "public fun hasToolCalls(): Boolean =",
          "documentation": ""
        },
        {
          "name": "public fun system(content: String): ModelMessage =",
          "line": 174,
          "signature": "public fun system(content: String): ModelMessage =",
          "documentation": ""
        },
        {
          "name": "public fun user(content: String): ModelMessage =",
          "line": 178,
          "signature": "public fun user(content: String): ModelMessage =",
          "documentation": ""
        },
        {
          "name": "public fun assistant(content: String): ModelMessage =",
          "line": 182,
          "signature": "public fun assistant(content: String): ModelMessage =",
          "documentation": ""
        },
        {
          "name": "public fun assistantWithToolCalls(toolCalls: List<MessagePart.ToolCallPart>): ModelMessage =",
          "line": 186,
          "signature": "public fun assistantWithToolCalls(toolCalls: List<MessagePart.ToolCallPart>): ModelMessage =",
          "documentation": ""
        },
        {
          "name": "public fun toolResult(",
          "line": 190,
          "signature": "public fun toolResult(\ntoolCallId: String,\nname: String,\ncontent: String,\nisError: Boolean;",
          "documentation": ""
        }
      ]
    },
    {
      "path": "forge-kt/forge-core/src/main/kotlin/com/l1fe/forge/core/Model.kt",
      "sha256": "e3f48b5fe8b07c9896f3b4ae1fd970654c888ee88003391a2c4199d0defebf50",
      "artifactSha256": "bd910f41a4d6805b47d1df40637dbf595a525ded340857d146131f5e977ed282",
      "url": "/reference/source/forge-kt/forge-core/src/main/kotlin/com/l1fe/forge/core/Model.kt.txt",
      "declarations": [
        {
          "name": "public interface LanguageModel",
          "line": 23,
          "signature": "public interface LanguageModel",
          "documentation": ""
        },
        {
          "name": "public suspend fun generate(",
          "line": 34,
          "signature": "public suspend fun generate(\nmessages: List<ModelMessage>,\ntools: List<ToolDefinition>;",
          "documentation": ""
        },
        {
          "name": "public suspend fun stream(",
          "line": 49,
          "signature": "public suspend fun stream(\nmessages: List<ModelMessage>,\ntools: List<ToolDefinition>;",
          "documentation": ""
        },
        {
          "name": "public val supportsToolCalling: Boolean get();",
          "line": 61,
          "signature": "public val supportsToolCalling: Boolean get();",
          "documentation": ""
        },
        {
          "name": "public val supportsStructuredOutput: Boolean get();",
          "line": 69,
          "signature": "public val supportsStructuredOutput: Boolean get();",
          "documentation": ""
        },
        {
          "name": "public val supportsImageInput: Boolean get();",
          "line": 76,
          "signature": "public val supportsImageInput: Boolean get();",
          "documentation": ""
        },
        {
          "name": "public val supportsStreaming: Boolean get();",
          "line": 83,
          "signature": "public val supportsStreaming: Boolean get();",
          "documentation": ""
        }
      ]
    },
    {
      "path": "forge-kt/forge-core/src/main/kotlin/com/l1fe/forge/core/Output.kt",
      "sha256": "8c85a53183a2e743d174f6e9289715fd87a6521485a0a97a64c539c30a6bcec2",
      "artifactSha256": "9d593d95af26e2cb6dad959d8a8de0451d3fa7393c16c70de9c584016cb969a6",
      "url": "/reference/source/forge-kt/forge-core/src/main/kotlin/com/l1fe/forge/core/Output.kt.txt",
      "declarations": [
        {
          "name": "public enum class FinishReason",
          "line": 17,
          "signature": "public enum class FinishReason",
          "documentation": ""
        },
        {
          "name": "public fun isComplete(): Boolean;",
          "line": 46,
          "signature": "public fun isComplete(): Boolean;",
          "documentation": ""
        },
        {
          "name": "public fun isToolCall(): Boolean;",
          "line": 51,
          "signature": "public fun isToolCall(): Boolean;",
          "documentation": ""
        },
        {
          "name": "public data class Usage(",
          "line": 66,
          "signature": "public data class Usage(\n@SerialName(\"prompt_tokens\")\nval promptTokens: Long;",
          "documentation": ""
        },
        {
          "name": "public operator fun plus(other: Usage): Usage;",
          "line": 80,
          "signature": "public operator fun plus(other: Usage): Usage;",
          "documentation": ""
        },
        {
          "name": "public val ZERO: Usage;",
          "line": 88,
          "signature": "public val ZERO: Usage;",
          "documentation": ""
        },
        {
          "name": "public data class GenerateResult(",
          "line": 107,
          "signature": "public data class GenerateResult(\nval message: ModelMessage,\n@SerialName(\"finish_reason\")\nval finishReason: FinishReason,\nval usage: Usage;",
          "documentation": ""
        },
        {
          "name": "public fun text(): String?;",
          "line": 118,
          "signature": "public fun text(): String?;",
          "documentation": ""
        },
        {
          "name": "public fun hasToolCalls(): Boolean;",
          "line": 123,
          "signature": "public fun hasToolCalls(): Boolean;",
          "documentation": ""
        },
        {
          "name": "public fun toolCalls(): List<ToolCall>;",
          "line": 130,
          "signature": "public fun toolCalls(): List<ToolCall>;",
          "documentation": ""
        },
        {
          "name": "public sealed class StreamChunk",
          "line": 139,
          "signature": "public sealed class StreamChunk",
          "documentation": ""
        },
        {
          "name": "public data class TextDelta(val text: String) : StreamChunk()",
          "line": 148,
          "signature": "public data class TextDelta(val text: String) : StreamChunk()\n\n/**\n* A tool call delta chunk.\n*\n* @property id The tool call identifier.\n* @property name The tool name (may only appear in the first delta).\n* @property argumentsDelta Incremental JSON arguments string.\n*/\n@Serializable\n@SerialName(\"tool_call_delta\")\npublic data class ToolCallDelta(\nval id: String,\nval name: String?;",
          "documentation": ""
        },
        {
          "name": "public data class ToolCallDelta(",
          "line": 159,
          "signature": "public data class ToolCallDelta(\nval id: String,\nval name: String?;",
          "documentation": ""
        },
        {
          "name": "public data class Done(",
          "line": 174,
          "signature": "public data class Done(\n@SerialName(\"finish_reason\")\nval finishReason: FinishReason,\nval usage: Usage;",
          "documentation": ""
        },
        {
          "name": "public fun textDelta(text: String): TextDelta;",
          "line": 182,
          "signature": "public fun textDelta(text: String): TextDelta;",
          "documentation": ""
        },
        {
          "name": "public fun toolCallDelta(id: String, name: String?;",
          "line": 185,
          "signature": "public fun toolCallDelta(id: String, name: String?;",
          "documentation": ""
        },
        {
          "name": "public fun done(finishReason: FinishReason, usage: Usage;",
          "line": 189,
          "signature": "public fun done(finishReason: FinishReason, usage: Usage;",
          "documentation": ""
        }
      ]
    },
    {
      "path": "forge-kt/forge-core/src/main/kotlin/com/l1fe/forge/core/Provider.kt",
      "sha256": "837f7ce8c0e6e87f647e32ecc0358cfabaeb951e52454b419ca91306dc8b3fd8",
      "artifactSha256": "2e6f5f2bf5aa878167a612ee94a4aa4b597f92b8ef54bb21261e8789ea2de3bb",
      "url": "/reference/source/forge-kt/forge-core/src/main/kotlin/com/l1fe/forge/core/Provider.kt.txt",
      "declarations": [
        {
          "name": "public data class ProviderRef(",
          "line": 44,
          "signature": "public data class ProviderRef(\nval namespace: String,\nval model: String,\nval full: String,\n)",
          "documentation": ""
        },
        {
          "name": "public fun parse(input: String): ProviderRef",
          "line": 59,
          "signature": "public fun parse(input: String): ProviderRef",
          "documentation": ""
        },
        {
          "name": "public data class ProviderMetadata(",
          "line": 95,
          "signature": "public data class ProviderMetadata(\nval name: String,\nval namespace: String,\nval supportsToolCalling: Boolean;",
          "documentation": ""
        },
        {
          "name": "public enum class RuntimeCapability",
          "line": 109,
          "signature": "public enum class RuntimeCapability",
          "documentation": ""
        },
        {
          "name": "public data class ProviderRuntimeCapabilities(",
          "line": 126,
          "signature": "public data class ProviderRuntimeCapabilities(\nval baselineContract: Boolean;",
          "documentation": ""
        },
        {
          "name": "public fun withCapability(capability: RuntimeCapability): ProviderRuntimeCapabilities =",
          "line": 130,
          "signature": "public fun withCapability(capability: RuntimeCapability): ProviderRuntimeCapabilities =",
          "documentation": ""
        },
        {
          "name": "public fun supports(capability: RuntimeCapability): Boolean;",
          "line": 133,
          "signature": "public fun supports(capability: RuntimeCapability): Boolean;",
          "documentation": ""
        },
        {
          "name": "public fun baseline(): ProviderRuntimeCapabilities;",
          "line": 136,
          "signature": "public fun baseline(): ProviderRuntimeCapabilities;",
          "documentation": ""
        },
        {
          "name": "public data class ProviderNegotiationRequest(",
          "line": 146,
          "signature": "public data class ProviderNegotiationRequest(\nval providerRef: String,\nval requireBaselineContract: Boolean,\nval requiredCapabilities: List<RuntimeCapability>,\n)\n\n/**\n* Successful provider-session negotiation result.\n*/\n@Serializable\npublic data class ProviderNegotiationResult(\nval providerRef: String,\nval baselineContract: Boolean,\nval negotiatedCapabilities: List<RuntimeCapability>,\n)\n\n/**\n* Normalized provider-session states.\n*/\n@Serializable\npublic enum class ProviderSessionState",
          "documentation": ""
        },
        {
          "name": "public data class ProviderNegotiationResult(",
          "line": 156,
          "signature": "public data class ProviderNegotiationResult(\nval providerRef: String,\nval baselineContract: Boolean,\nval negotiatedCapabilities: List<RuntimeCapability>,\n)\n\n/**\n* Normalized provider-session states.\n*/\n@Serializable\npublic enum class ProviderSessionState",
          "documentation": ""
        },
        {
          "name": "public enum class ProviderSessionState",
          "line": 166,
          "signature": "public enum class ProviderSessionState",
          "documentation": ""
        },
        {
          "name": "public data class ProviderUsageSummary(",
          "line": 182,
          "signature": "public data class ProviderUsageSummary(\nval inputTokens: Long;",
          "documentation": ""
        },
        {
          "name": "public data class ProviderSessionEvent(",
          "line": 192,
          "signature": "public data class ProviderSessionEvent(\nval sessionId: String,\nval state: ProviderSessionState,\nval message: String?;",
          "documentation": ""
        },
        {
          "name": "public class ProviderRegistry",
          "line": 207,
          "signature": "public class ProviderRegistry",
          "documentation": ""
        },
        {
          "name": "public fun register(namespace: String, model: LanguageModel, meta: ProviderMetadata?;",
          "line": 218,
          "signature": "public fun register(namespace: String, model: LanguageModel, meta: ProviderMetadata?;",
          "documentation": ""
        },
        {
          "name": "public fun registerWithRuntime(",
          "line": 229,
          "signature": "public fun registerWithRuntime(\nproviderRef: String,\nmodel: LanguageModel,\nruntimeCapabilities: ProviderRuntimeCapabilities,\nmeta: ProviderMetadata?;",
          "documentation": ""
        },
        {
          "name": "public fun get(namespace: String): LanguageModel? =",
          "line": 259,
          "signature": "public fun get(namespace: String): LanguageModel? =",
          "documentation": ""
        },
        {
          "name": "public fun require(namespace: String): LanguageModel =",
          "line": 269,
          "signature": "public fun require(namespace: String): LanguageModel =",
          "documentation": ""
        },
        {
          "name": "public fun require(ref: ProviderRef): LanguageModel;",
          "line": 282,
          "signature": "public fun require(ref: ProviderRef): LanguageModel;",
          "documentation": ""
        },
        {
          "name": "public fun metadata(namespace: String): ProviderMetadata? =",
          "line": 290,
          "signature": "public fun metadata(namespace: String): ProviderMetadata? =",
          "documentation": ""
        },
        {
          "name": "public fun list(): List<String>;",
          "line": 298,
          "signature": "public fun list(): List<String>;",
          "documentation": ""
        },
        {
          "name": "public val size: Int get();",
          "line": 303,
          "signature": "public val size: Int get();",
          "documentation": ""
        },
        {
          "name": "public fun isEmpty(): Boolean;",
          "line": 308,
          "signature": "public fun isEmpty(): Boolean;",
          "documentation": ""
        },
        {
          "name": "public fun negotiate(request: ProviderNegotiationRequest): ProviderNegotiationResult",
          "line": 313,
          "signature": "public fun negotiate(request: ProviderNegotiationRequest): ProviderNegotiationResult",
          "documentation": ""
        },
        {
          "name": "public enum class ProviderFamily",
          "line": 354,
          "signature": "public enum class ProviderFamily",
          "documentation": ""
        },
        {
          "name": "public enum class AuthStrategy",
          "line": 361,
          "signature": "public enum class AuthStrategy",
          "documentation": ""
        },
        {
          "name": "public data class ProviderPreset(",
          "line": 370,
          "signature": "public data class ProviderPreset(\nval namespace: String,\nval family: ProviderFamily,\nval authStrategy: AuthStrategy,\n)\n\npublic typealias ProviderEnvironment;",
          "documentation": ""
        },
        {
          "name": "public typealias ProviderEnvironment;",
          "line": 376,
          "signature": "public typealias ProviderEnvironment;",
          "documentation": ""
        },
        {
          "name": "public typealias ProviderGenerateHandler;",
          "line": 377,
          "signature": "public typealias ProviderGenerateHandler;",
          "documentation": ""
        },
        {
          "name": "public typealias ProviderStreamHandler;",
          "line": 378,
          "signature": "public typealias ProviderStreamHandler;",
          "documentation": ""
        },
        {
          "name": "public data class ProviderExecutionRequest(",
          "line": 380,
          "signature": "public data class ProviderExecutionRequest(\nval providerRef: String,\nval namespace: String,\nval modelId: String,\nval family: ProviderFamily,\nval authStrategy: AuthStrategy,\nval credential: String,\nval baseUrl: String?,\nval messages: List<ModelMessage>,\nval tools: List<ToolDefinition>,\nval options: GenerateOptions,\n)\n\npublic data class ProviderInstallOptions(\nval environment: ProviderEnvironment?;",
          "documentation": ""
        },
        {
          "name": "public data class ProviderInstallOptions(",
          "line": 393,
          "signature": "public data class ProviderInstallOptions(\nval environment: ProviderEnvironment?;",
          "documentation": ""
        },
        {
          "name": "public fun approvedCodingProviderPresets(): List<ProviderPreset> =",
          "line": 471,
          "signature": "public fun approvedCodingProviderPresets(): List<ProviderPreset> =",
          "documentation": ""
        },
        {
          "name": "public fun approvedDirectProviderPresets(): List<ProviderPreset> =",
          "line": 480,
          "signature": "public fun approvedDirectProviderPresets(): List<ProviderPreset> =",
          "documentation": ""
        },
        {
          "name": "public fun approvedGatewayProviderPresets(): List<ProviderPreset> =",
          "line": 497,
          "signature": "public fun approvedGatewayProviderPresets(): List<ProviderPreset> =",
          "documentation": ""
        },
        {
          "name": "public fun registerOfficialCodingProviders(",
          "line": 506,
          "signature": "public fun registerOfficialCodingProviders(\nregistry: ProviderRegistry,\noptions: ProviderInstallOptions;",
          "documentation": ""
        },
        {
          "name": "public fun registerDefaultCoreDirectProviders(",
          "line": 608,
          "signature": "public fun registerDefaultCoreDirectProviders(\nregistry: ProviderRegistry,\noptions: ProviderInstallOptions;",
          "documentation": ""
        },
        {
          "name": "public fun registerOpenAiModel(",
          "line": 617,
          "signature": "public fun registerOpenAiModel(\nregistry: ProviderRegistry,\nmodelId: String,\noptions: ProviderInstallOptions;",
          "documentation": ""
        },
        {
          "name": "public fun registerAnthropicModel(",
          "line": 638,
          "signature": "public fun registerAnthropicModel(\nregistry: ProviderRegistry,\nmodelId: String,\noptions: ProviderInstallOptions;",
          "documentation": ""
        },
        {
          "name": "public fun registerGoogleModel(",
          "line": 658,
          "signature": "public fun registerGoogleModel(\nregistry: ProviderRegistry,\nmodelId: String,\noptions: ProviderInstallOptions;",
          "documentation": ""
        },
        {
          "name": "public fun registerXaiModel(registry: ProviderRegistry, modelId: String, options: ProviderInstallOptions;",
          "line": 678,
          "signature": "public fun registerXaiModel(registry: ProviderRegistry, modelId: String, options: ProviderInstallOptions;",
          "documentation": ""
        },
        {
          "name": "public fun registerDeepSeekModel(registry: ProviderRegistry, modelId: String, options: ProviderInstallOptions;",
          "line": 681,
          "signature": "public fun registerDeepSeekModel(registry: ProviderRegistry, modelId: String, options: ProviderInstallOptions;",
          "documentation": ""
        },
        {
          "name": "public fun registerMistralModel(registry: ProviderRegistry, modelId: String, options: ProviderInstallOptions;",
          "line": 684,
          "signature": "public fun registerMistralModel(registry: ProviderRegistry, modelId: String, options: ProviderInstallOptions;",
          "documentation": ""
        },
        {
          "name": "public fun registerCohereModel(registry: ProviderRegistry, modelId: String, options: ProviderInstallOptions;",
          "line": 687,
          "signature": "public fun registerCohereModel(registry: ProviderRegistry, modelId: String, options: ProviderInstallOptions;",
          "documentation": ""
        },
        {
          "name": "public fun registerGroqModel(registry: ProviderRegistry, modelId: String, options: ProviderInstallOptions;",
          "line": 690,
          "signature": "public fun registerGroqModel(registry: ProviderRegistry, modelId: String, options: ProviderInstallOptions;",
          "documentation": ""
        },
        {
          "name": "public fun registerMoonshotModel(registry: ProviderRegistry, modelId: String, options: ProviderInstallOptions;",
          "line": 693,
          "signature": "public fun registerMoonshotModel(registry: ProviderRegistry, modelId: String, options: ProviderInstallOptions;",
          "documentation": ""
        },
        {
          "name": "public fun registerZaiModel(registry: ProviderRegistry, modelId: String, options: ProviderInstallOptions;",
          "line": 696,
          "signature": "public fun registerZaiModel(registry: ProviderRegistry, modelId: String, options: ProviderInstallOptions;",
          "documentation": ""
        },
        {
          "name": "public fun registerMiniMaxModel(registry: ProviderRegistry, modelId: String, options: ProviderInstallOptions;",
          "line": 699,
          "signature": "public fun registerMiniMaxModel(registry: ProviderRegistry, modelId: String, options: ProviderInstallOptions;",
          "documentation": ""
        },
        {
          "name": "public fun registerOpenRouterModel(registry: ProviderRegistry, modelId: String, options: ProviderInstallOptions;",
          "line": 702,
          "signature": "public fun registerOpenRouterModel(registry: ProviderRegistry, modelId: String, options: ProviderInstallOptions;",
          "documentation": ""
        },
        {
          "name": "public fun registerBedrockModel(",
          "line": 705,
          "signature": "public fun registerBedrockModel(\nregistry: ProviderRegistry,\nmodelId: String,\noptions: ProviderInstallOptions;",
          "documentation": ""
        },
        {
          "name": "public fun registerVertexAiModel(",
          "line": 725,
          "signature": "public fun registerVertexAiModel(\nregistry: ProviderRegistry,\nmodelId: String,\noptions: ProviderInstallOptions;",
          "documentation": ""
        },
        {
          "name": "public fun registerMicrosoftFoundryModel(",
          "line": 745,
          "signature": "public fun registerMicrosoftFoundryModel(\nregistry: ProviderRegistry,\nmodelId: String,\noptions: ProviderInstallOptions;",
          "documentation": ""
        },
        {
          "name": "public fun registerFoundryModel(",
          "line": 765,
          "signature": "public fun registerFoundryModel(\nregistry: ProviderRegistry,\nmodelId: String,\noptions: ProviderInstallOptions;",
          "documentation": ""
        }
      ]
    },
    {
      "path": "forge-kt/forge-core/src/main/kotlin/com/l1fe/forge/core/Routing.kt",
      "sha256": "ae8c76417dc377fc96de6c77de411670efad1bca0051cfb0acc62abd45e52520",
      "artifactSha256": "c541966f14d20c02157ef81a456d8fb8c1284136f2fde8d41f612d2c917b12ec",
      "url": "/reference/source/forge-kt/forge-core/src/main/kotlin/com/l1fe/forge/core/Routing.kt.txt",
      "declarations": [
        {
          "name": "public enum class TaskMode",
          "line": 27,
          "signature": "public enum class TaskMode",
          "documentation": ""
        },
        {
          "name": "public fun asRoleName(): String;",
          "line": 51,
          "signature": "public fun asRoleName(): String;",
          "documentation": ""
        },
        {
          "name": "public enum class ExecutionTopology",
          "line": 68,
          "signature": "public enum class ExecutionTopology",
          "documentation": ""
        },
        {
          "name": "public data class RoutingContext(",
          "line": 105,
          "signature": "public data class RoutingContext(\nval domain: String?;",
          "documentation": ""
        },
        {
          "name": "public data class ResolvedRoute(",
          "line": 126,
          "signature": "public data class ResolvedRoute(\nval slotRole: String,\nval provider: ProviderRef,\nval modelCapabilities: ModelCapabilities;",
          "documentation": ""
        },
        {
          "name": "public data class ModelCapabilities(",
          "line": 148,
          "signature": "public data class ModelCapabilities(\nval textGeneration: Boolean;",
          "documentation": ""
        },
        {
          "name": "public interface ModelRouter",
          "line": 167,
          "signature": "public interface ModelRouter",
          "documentation": ""
        },
        {
          "name": "public fun name(): String",
          "line": 174,
          "signature": "public fun name(): String\n\n/**\n* Selects a slot from the topology.\n*\n* @param context The routing context describing the current task.\n* @param topology The model topology to select from.\n* @return A [ResolvedRoute] identifying the selected slot and provider.\n* @throws ForgeError.SchemaValidation if routing fails.\n*/\npublic fun route(context: RoutingContext, topology: ModelTopology): ResolvedRoute\n}\n\n/**\n* The default model router shipped with Forge.\n*\n* Implements a cascading match strategy:\n*\n* 1. If [RoutingContext.roleOverride] is set, return that slot directly.\n* 2. If the topology has a slot whose role matches [RoutingContext.domain], return it.\n* 3. If the topology has a slot whose role matches [RoutingContext.taskMode], return it.\n* 4. Otherwise, return the \"default\" slot.\n*/\npublic class DefaultModelRouter : ModelRouter",
          "documentation": ""
        },
        {
          "name": "public fun route(context: RoutingContext, topology: ModelTopology): ResolvedRoute",
          "line": 184,
          "signature": "public fun route(context: RoutingContext, topology: ModelTopology): ResolvedRoute\n}\n\n/**\n* The default model router shipped with Forge.\n*\n* Implements a cascading match strategy:\n*\n* 1. If [RoutingContext.roleOverride] is set, return that slot directly.\n* 2. If the topology has a slot whose role matches [RoutingContext.domain], return it.\n* 3. If the topology has a slot whose role matches [RoutingContext.taskMode], return it.\n* 4. Otherwise, return the \"default\" slot.\n*/\npublic class DefaultModelRouter : ModelRouter",
          "documentation": ""
        },
        {
          "name": "public class DefaultModelRouter : ModelRouter",
          "line": 197,
          "signature": "public class DefaultModelRouter : ModelRouter",
          "documentation": ""
        }
      ]
    },
    {
      "path": "forge-kt/forge-core/src/main/kotlin/com/l1fe/forge/core/Schema.kt",
      "sha256": "876b72893bde605b332ffd1d620ddbdd0d597dd7d525c96cbc69c6bedff0c57f",
      "artifactSha256": "6142821f42183e5ec4ed826ba2a015433cf8c7b1098bfef5d9f9affb2a811590",
      "url": "/reference/source/forge-kt/forge-core/src/main/kotlin/com/l1fe/forge/core/Schema.kt.txt",
      "declarations": [
        {
          "name": "public data class JsonSchema(",
          "line": 44,
          "signature": "public data class JsonSchema(\nval type: String;",
          "documentation": ""
        },
        {
          "name": "public fun validate(value: JsonElement, path: String;",
          "line": 68,
          "signature": "public fun validate(value: JsonElement, path: String;",
          "documentation": ""
        },
        {
          "name": "public fun string(",
          "line": 207,
          "signature": "public fun string(\ndescription: String?;",
          "documentation": ""
        },
        {
          "name": "public fun number(",
          "line": 221,
          "signature": "public fun number(\ndescription: String?;",
          "documentation": ""
        },
        {
          "name": "public fun integer(",
          "line": 228,
          "signature": "public fun integer(\ndescription: String?;",
          "documentation": ""
        },
        {
          "name": "public fun boolean(description: String?;",
          "line": 235,
          "signature": "public fun boolean(description: String?;",
          "documentation": ""
        },
        {
          "name": "public fun array(",
          "line": 239,
          "signature": "public fun array(\nitems: JsonSchema?;",
          "documentation": ""
        },
        {
          "name": "public fun `object`(",
          "line": 245,
          "signature": "public fun `object`(\nproperties: Map<String, JsonSchema>?;",
          "documentation": ""
        },
        {
          "name": "public fun nullSchema(description: String?;",
          "line": 259,
          "signature": "public fun nullSchema(description: String?;",
          "documentation": ""
        }
      ]
    },
    {
      "path": "forge-kt/forge-core/src/main/kotlin/com/l1fe/forge/core/Telemetry.kt",
      "sha256": "48850c58277ba408f6b7ab1e9d0cd6b2d43ae0f233d7b0a538a42be9ce065ad1",
      "artifactSha256": "62a0e3276ae64b5e57945b735fa85d47af57053f14323947a8a6dfe3911d25c6",
      "url": "/reference/source/forge-kt/forge-core/src/main/kotlin/com/l1fe/forge/core/Telemetry.kt.txt",
      "declarations": [
        {
          "name": "public sealed class SpanStatus",
          "line": 22,
          "signature": "public sealed class SpanStatus",
          "documentation": ""
        },
        {
          "name": "public data object Unset : SpanStatus()",
          "line": 26,
          "signature": "public data object Unset : SpanStatus()\n\n/** The operation completed successfully. */\n@Serializable\n@SerialName(\"ok\")\npublic data object Ok : SpanStatus()\n\n/**\n* The operation completed with an error.\n*\n* @property message A description of the error.\n*/\n@Serializable\n@SerialName(\"error\")\npublic data class Error(val message: String) : SpanStatus()\n}\n\n/**\n* A typed span attribute value.\n*\n* ANVIL Spec Section 12.2 -- Span Attributes\n*/\n@Serializable\npublic sealed class SpanAttribute",
          "documentation": ""
        },
        {
          "name": "public data object Ok : SpanStatus()",
          "line": 31,
          "signature": "public data object Ok : SpanStatus()\n\n/**\n* The operation completed with an error.\n*\n* @property message A description of the error.\n*/\n@Serializable\n@SerialName(\"error\")\npublic data class Error(val message: String) : SpanStatus()\n}\n\n/**\n* A typed span attribute value.\n*\n* ANVIL Spec Section 12.2 -- Span Attributes\n*/\n@Serializable\npublic sealed class SpanAttribute",
          "documentation": ""
        },
        {
          "name": "public data class Error(val message: String) : SpanStatus()",
          "line": 40,
          "signature": "public data class Error(val message: String) : SpanStatus()\n}\n\n/**\n* A typed span attribute value.\n*\n* ANVIL Spec Section 12.2 -- Span Attributes\n*/\n@Serializable\npublic sealed class SpanAttribute",
          "documentation": ""
        },
        {
          "name": "public sealed class SpanAttribute",
          "line": 49,
          "signature": "public sealed class SpanAttribute",
          "documentation": ""
        },
        {
          "name": "public data class StringValue(val value: String) : SpanAttribute()",
          "line": 53,
          "signature": "public data class StringValue(val value: String) : SpanAttribute()\n\n/** An integer attribute. */\n@Serializable\n@SerialName(\"int\")\npublic data class IntValue(val value: Long) : SpanAttribute()\n\n/** A floating-point attribute. */\n@Serializable\n@SerialName(\"float\")\npublic data class FloatValue(val value: Double) : SpanAttribute()\n\n/** A boolean attribute. */\n@Serializable\n@SerialName(\"bool\")\npublic data class BoolValue(val value: Boolean) : SpanAttribute()\n\npublic companion object",
          "documentation": ""
        },
        {
          "name": "public data class IntValue(val value: Long) : SpanAttribute()",
          "line": 58,
          "signature": "public data class IntValue(val value: Long) : SpanAttribute()\n\n/** A floating-point attribute. */\n@Serializable\n@SerialName(\"float\")\npublic data class FloatValue(val value: Double) : SpanAttribute()\n\n/** A boolean attribute. */\n@Serializable\n@SerialName(\"bool\")\npublic data class BoolValue(val value: Boolean) : SpanAttribute()\n\npublic companion object",
          "documentation": ""
        },
        {
          "name": "public data class FloatValue(val value: Double) : SpanAttribute()",
          "line": 63,
          "signature": "public data class FloatValue(val value: Double) : SpanAttribute()\n\n/** A boolean attribute. */\n@Serializable\n@SerialName(\"bool\")\npublic data class BoolValue(val value: Boolean) : SpanAttribute()\n\npublic companion object",
          "documentation": ""
        },
        {
          "name": "public data class BoolValue(val value: Boolean) : SpanAttribute()",
          "line": 68,
          "signature": "public data class BoolValue(val value: Boolean) : SpanAttribute()\n\npublic companion object",
          "documentation": ""
        },
        {
          "name": "public fun of(value: String): SpanAttribute;",
          "line": 72,
          "signature": "public fun of(value: String): SpanAttribute;",
          "documentation": ""
        },
        {
          "name": "public fun of(value: Long): SpanAttribute;",
          "line": 75,
          "signature": "public fun of(value: Long): SpanAttribute;",
          "documentation": ""
        },
        {
          "name": "public fun of(value: Int): SpanAttribute;",
          "line": 78,
          "signature": "public fun of(value: Int): SpanAttribute;",
          "documentation": ""
        },
        {
          "name": "public fun of(value: Double): SpanAttribute;",
          "line": 81,
          "signature": "public fun of(value: Double): SpanAttribute;",
          "documentation": ""
        },
        {
          "name": "public fun of(value: Boolean): SpanAttribute;",
          "line": 84,
          "signature": "public fun of(value: Boolean): SpanAttribute;",
          "documentation": ""
        },
        {
          "name": "public data class ForgeSpan(",
          "line": 101,
          "signature": "public data class ForgeSpan(\nval name: String,\nval spanId: String,\nval parentId: String?;",
          "documentation": ""
        },
        {
          "name": "public fun setAttribute(key: String, value: String)",
          "line": 111,
          "signature": "public fun setAttribute(key: String, value: String)",
          "documentation": ""
        },
        {
          "name": "public fun setAttribute(key: String, value: Long)",
          "line": 116,
          "signature": "public fun setAttribute(key: String, value: Long)",
          "documentation": ""
        },
        {
          "name": "public fun setAttribute(key: String, value: Double)",
          "line": 121,
          "signature": "public fun setAttribute(key: String, value: Double)",
          "documentation": ""
        },
        {
          "name": "public fun setAttribute(key: String, value: Boolean)",
          "line": 126,
          "signature": "public fun setAttribute(key: String, value: Boolean)",
          "documentation": ""
        },
        {
          "name": "public fun setOk()",
          "line": 131,
          "signature": "public fun setOk()",
          "documentation": ""
        },
        {
          "name": "public fun setError(message: String)",
          "line": 137,
          "signature": "public fun setError(message: String)",
          "documentation": ""
        },
        {
          "name": "public data class ForgeEvent(",
          "line": 152,
          "signature": "public data class ForgeEvent(\nval name: String,\nval timestamp: Instant;",
          "documentation": ""
        },
        {
          "name": "public interface TelemetryEmitter",
          "line": 166,
          "signature": "public interface TelemetryEmitter",
          "documentation": ""
        },
        {
          "name": "public fun emit(span: ForgeSpan)",
          "line": 168,
          "signature": "public fun emit(span: ForgeSpan)\n\n/** Emit an event. */\npublic fun emit(event: ForgeEvent)\n}\n\n/**\n* A telemetry emitter that discards all data.\n*\n* Used as the default when no telemetry backend is configured.\n*/\npublic object NoopEmitter : TelemetryEmitter",
          "documentation": ""
        },
        {
          "name": "public fun emit(event: ForgeEvent)",
          "line": 171,
          "signature": "public fun emit(event: ForgeEvent)\n}\n\n/**\n* A telemetry emitter that discards all data.\n*\n* Used as the default when no telemetry backend is configured.\n*/\npublic object NoopEmitter : TelemetryEmitter",
          "documentation": ""
        },
        {
          "name": "public object NoopEmitter : TelemetryEmitter",
          "line": 179,
          "signature": "public object NoopEmitter : TelemetryEmitter",
          "documentation": ""
        }
      ]
    },
    {
      "path": "forge-kt/forge-core/src/main/kotlin/com/l1fe/forge/core/Tool.kt",
      "sha256": "ff04a3cd4b61a4f57c68ac0a1afac4c58a8fb976a442edd767e76a59133a250b",
      "artifactSha256": "640912436c342c5983aaa23c921e8357ccfab88d7f188a919dc00c7a019f6f9d",
      "url": "/reference/source/forge-kt/forge-core/src/main/kotlin/com/l1fe/forge/core/Tool.kt.txt",
      "declarations": [
        {
          "name": "public enum class ToolTier",
          "line": 23,
          "signature": "public enum class ToolTier",
          "documentation": ""
        },
        {
          "name": "public fun requiresAuthorization(): Boolean;",
          "line": 60,
          "signature": "public fun requiresAuthorization(): Boolean;",
          "documentation": ""
        },
        {
          "name": "public data class ToolDefinition(",
          "line": 74,
          "signature": "public data class ToolDefinition(\nval name: String,\nval description: String,\nval parameters: JsonSchema;",
          "documentation": ""
        },
        {
          "name": "public class Builder(private val name: String)",
          "line": 88,
          "signature": "public class Builder(private val name: String)",
          "documentation": ""
        },
        {
          "name": "public fun description(description: String): Builder;",
          "line": 94,
          "signature": "public fun description(description: String): Builder;",
          "documentation": ""
        },
        {
          "name": "public fun parameters(parameters: JsonSchema): Builder;",
          "line": 97,
          "signature": "public fun parameters(parameters: JsonSchema): Builder;",
          "documentation": ""
        },
        {
          "name": "public fun tier(tier: ToolTier): Builder;",
          "line": 100,
          "signature": "public fun tier(tier: ToolTier): Builder;",
          "documentation": ""
        },
        {
          "name": "public fun build(): ToolDefinition",
          "line": 103,
          "signature": "public fun build(): ToolDefinition",
          "documentation": ""
        },
        {
          "name": "public fun builder(name: String): Builder;",
          "line": 111,
          "signature": "public fun builder(name: String): Builder;",
          "documentation": ""
        },
        {
          "name": "public data class ToolCall(",
          "line": 125,
          "signature": "public data class ToolCall(\nval id: String,\nval name: String,\nval arguments: String,\n)\n\n/**\n* The result of executing a tool.\n*\n* ANVIL Spec Section 8.4 -- Tool Result\n*\n* @property toolCallId The ID of the [ToolCall] this result corresponds to.\n* @property name The name of the tool that produced this result.\n* @property content The text content returned by the tool.\n* @property isError Whether the tool execution resulted in an error.\n*/\n@Serializable\npublic data class ToolResult(\n@SerialName(\"tool_call_id\")\nval toolCallId: String,\nval name: String,\nval content: String,\n@SerialName(\"is_error\")\nval isError: Boolean;",
          "documentation": ""
        },
        {
          "name": "public data class ToolResult(",
          "line": 142,
          "signature": "public data class ToolResult(\n@SerialName(\"tool_call_id\")\nval toolCallId: String,\nval name: String,\nval content: String,\n@SerialName(\"is_error\")\nval isError: Boolean;",
          "documentation": ""
        },
        {
          "name": "public fun success(toolCallId: String, name: String, content: String): ToolResult =",
          "line": 152,
          "signature": "public fun success(toolCallId: String, name: String, content: String): ToolResult =",
          "documentation": ""
        },
        {
          "name": "public fun error(toolCallId: String, name: String, errorMessage: String): ToolResult =",
          "line": 156,
          "signature": "public fun error(toolCallId: String, name: String, errorMessage: String): ToolResult =",
          "documentation": ""
        },
        {
          "name": "public sealed class ToolApproval",
          "line": 169,
          "signature": "public sealed class ToolApproval",
          "documentation": ""
        },
        {
          "name": "public data object Approve : ToolApproval()",
          "line": 174,
          "signature": "public data object Approve : ToolApproval()\n\n/**\n* Deny the tool call.\n*\n* @property reason The human-readable reason for denial.\n*/\n@Serializable\n@SerialName(\"deny\")\npublic data class Deny(val reason: String) : ToolApproval()\n\n/**\n* Approve the tool call with modified arguments.\n*\n* @property arguments The modified JSON-encoded arguments.\n*/\n@Serializable\n@SerialName(\"modify\")\npublic data class Modify(val arguments: String) : ToolApproval()\n}",
          "documentation": ""
        },
        {
          "name": "public data class Deny(val reason: String) : ToolApproval()",
          "line": 183,
          "signature": "public data class Deny(val reason: String) : ToolApproval()\n\n/**\n* Approve the tool call with modified arguments.\n*\n* @property arguments The modified JSON-encoded arguments.\n*/\n@Serializable\n@SerialName(\"modify\")\npublic data class Modify(val arguments: String) : ToolApproval()\n}",
          "documentation": ""
        },
        {
          "name": "public data class Modify(val arguments: String) : ToolApproval()",
          "line": 192,
          "signature": "public data class Modify(val arguments: String) : ToolApproval()\n}",
          "documentation": ""
        }
      ]
    },
    {
      "path": "forge-kt/forge-core/src/main/kotlin/com/l1fe/forge/core/Topology.kt",
      "sha256": "35ff40ad447faab71da94546b54daaca25688735b49bebd093578b98b902202e",
      "artifactSha256": "3778f69cc9d555c0c68a97f8b8198aba2ef20855d55029842838dcbd859ac79a",
      "url": "/reference/source/forge-kt/forge-core/src/main/kotlin/com/l1fe/forge/core/Topology.kt.txt",
      "declarations": [
        {
          "name": "public const val DEFAULT_ROLE: String;",
          "line": 24,
          "signature": "public const val DEFAULT_ROLE: String;",
          "documentation": ""
        },
        {
          "name": "public enum class CostPreference",
          "line": 35,
          "signature": "public enum class CostPreference",
          "documentation": ""
        },
        {
          "name": "public enum class LatencyPreference",
          "line": 58,
          "signature": "public enum class LatencyPreference",
          "documentation": ""
        },
        {
          "name": "public data class ModelSlot(",
          "line": 91,
          "signature": "public data class ModelSlot(\nval role: String,\nval primary: ProviderRef,\nval fallbacks: List<ProviderRef>;",
          "documentation": ""
        },
        {
          "name": "public data class ModelTopology(",
          "line": 118,
          "signature": "public data class ModelTopology(\nval name: String,\nval slots: Map<String, ModelSlot>,\nval defaultRole: String;",
          "documentation": ""
        },
        {
          "name": "public fun defaultSlot(): ModelSlot =",
          "line": 131,
          "signature": "public fun defaultSlot(): ModelSlot =",
          "documentation": ""
        },
        {
          "name": "public fun slotForRole(role: String): ModelSlot =",
          "line": 140,
          "signature": "public fun slotForRole(role: String): ModelSlot =",
          "documentation": ""
        },
        {
          "name": "public fun hasRole(role: String): Boolean;",
          "line": 149,
          "signature": "public fun hasRole(role: String): Boolean;",
          "documentation": ""
        },
        {
          "name": "public fun slotCount(): Int;",
          "line": 156,
          "signature": "public fun slotCount(): Int;",
          "documentation": ""
        },
        {
          "name": "public fun allProviderRefs(): List<ProviderRef>",
          "line": 164,
          "signature": "public fun allProviderRefs(): List<ProviderRef>",
          "documentation": ""
        },
        {
          "name": "public fun single(providerRef: ProviderRef): ModelTopology",
          "line": 185,
          "signature": "public fun single(providerRef: ProviderRef): ModelTopology",
          "documentation": ""
        },
        {
          "name": "public fun builder(): TopologyBuilder;",
          "line": 198,
          "signature": "public fun builder(): TopologyBuilder;",
          "documentation": ""
        },
        {
          "name": "public class TopologyBuilder",
          "line": 217,
          "signature": "public class TopologyBuilder",
          "documentation": ""
        },
        {
          "name": "public fun name(name: String): TopologyBuilder;",
          "line": 227,
          "signature": "public fun name(name: String): TopologyBuilder;",
          "documentation": ""
        },
        {
          "name": "public fun slot(role: String, primary: ProviderRef): TopologyBuilder;",
          "line": 238,
          "signature": "public fun slot(role: String, primary: ProviderRef): TopologyBuilder;",
          "documentation": ""
        },
        {
          "name": "public fun withFallback(role: String, fallback: ProviderRef): TopologyBuilder;",
          "line": 251,
          "signature": "public fun withFallback(role: String, fallback: ProviderRef): TopologyBuilder;",
          "documentation": ""
        },
        {
          "name": "public fun withRequiredCapability(role: String, cap: RuntimeCapability): TopologyBuilder;",
          "line": 266,
          "signature": "public fun withRequiredCapability(role: String, cap: RuntimeCapability): TopologyBuilder;",
          "documentation": ""
        },
        {
          "name": "public fun withCostPreference(role: String, pref: CostPreference): TopologyBuilder;",
          "line": 281,
          "signature": "public fun withCostPreference(role: String, pref: CostPreference): TopologyBuilder;",
          "documentation": ""
        },
        {
          "name": "public fun withLatencyPreference(role: String, pref: LatencyPreference): TopologyBuilder;",
          "line": 296,
          "signature": "public fun withLatencyPreference(role: String, pref: LatencyPreference): TopologyBuilder;",
          "documentation": ""
        },
        {
          "name": "public fun withScopeNarrowing(role: String, scopes: List<String>): TopologyBuilder;",
          "line": 311,
          "signature": "public fun withScopeNarrowing(role: String, scopes: List<String>): TopologyBuilder;",
          "documentation": ""
        },
        {
          "name": "public fun build(): ModelTopology",
          "line": 323,
          "signature": "public fun build(): ModelTopology",
          "documentation": ""
        }
      ]
    },
    {
      "path": "forge-kt/forge-core/src/main/kotlin/com/l1fe/forge/core/Types.kt",
      "sha256": "0812d958c2d44e628b984cd02a67e964229905d81a592401dea6581c64ebf2a1",
      "artifactSha256": "5ced39f9abeecec4f3e1ac1202c0110490aa55c5e5e6f4a868cacfaea0ac647f",
      "url": "/reference/source/forge-kt/forge-core/src/main/kotlin/com/l1fe/forge/core/Types.kt.txt",
      "declarations": [
        {
          "name": "public data class AgentDid(val value: String)",
          "line": 30,
          "signature": "public data class AgentDid(val value: String)",
          "documentation": ""
        },
        {
          "name": "public val namespace: String",
          "line": 54,
          "signature": "public val namespace: String\nget();",
          "documentation": ""
        },
        {
          "name": "public val kind: String",
          "line": 57,
          "signature": "public val kind: String\nget();",
          "documentation": ""
        },
        {
          "name": "public val identifier: String",
          "line": 60,
          "signature": "public val identifier: String\nget();",
          "documentation": ""
        },
        {
          "name": "public object AgentDidSerializer : KSerializer<AgentDid>",
          "line": 69,
          "signature": "public object AgentDidSerializer : KSerializer<AgentDid>",
          "documentation": ""
        },
        {
          "name": "public data class Timestamp(val instant: Instant) : Comparable<Timestamp>",
          "line": 90,
          "signature": "public data class Timestamp(val instant: Instant) : Comparable<Timestamp>",
          "documentation": ""
        },
        {
          "name": "public fun toIso8601(): String =",
          "line": 97,
          "signature": "public fun toIso8601(): String =",
          "documentation": ""
        },
        {
          "name": "public fun now(): Timestamp;",
          "line": 107,
          "signature": "public fun now(): Timestamp;",
          "documentation": ""
        },
        {
          "name": "public fun fromIso8601(iso8601: String): Timestamp =",
          "line": 116,
          "signature": "public fun fromIso8601(iso8601: String): Timestamp =",
          "documentation": ""
        },
        {
          "name": "public fun fromEpochMilli(epochMilli: Long): Timestamp =",
          "line": 125,
          "signature": "public fun fromEpochMilli(epochMilli: Long): Timestamp =",
          "documentation": ""
        },
        {
          "name": "public object TimestampSerializer : KSerializer<Timestamp>",
          "line": 133,
          "signature": "public object TimestampSerializer : KSerializer<Timestamp>",
          "documentation": ""
        }
      ]
    }
  ]
}
