{"version":3,"file":"reliability-mapping.d.ts","sourceRoot":"","sources":["../../../src/core/mission-domain/reliability-mapping.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAwB,KAAK,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;AAC/G,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D;;;;;;;;GAQG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,cAAc,GAAG,sBAAsB,CAoB1F;AAED;;;;;;GAMG;AACH,wBAAgB,+BAA+B,CAAC,OAAO,EAAE,cAAc,GAAG,cAAc,CAKvF","sourcesContent":["/**\n * Reliability Kernel mapping (2.3.0).\n *\n * Bridges the first-class mission domain and the Reliability Kernel's\n * MissionRuntime without duplicating completion semantics. A MissionRequest\n * that carries deterministic verification specs for its acceptance criteria can\n * initialize a real MissionRuntime contract; the Completion Gate and Evidence\n * Store remain the single source of verified success.\n */\n\nimport { buildMissionContract, type MissionDefinitionInput } from \"../reliability/mission-contract-factory.js\";\nimport { MissionRuntime } from \"../reliability/mission-runtime.js\";\nimport type { MissionRequest } from \"./mission-request.js\";\n\n/**\n * Map a MissionRequest to a Reliability Kernel MissionDefinitionInput.\n *\n * Criteria with a `verification` spec map 1:1 (source `user`, preserving the\n * deterministic verification spec). Criteria without a `verification` spec\n * cannot be mapped because the kernel requires every acceptance criterion to be\n * satisfiable only by authoritative evidence; the mapping fails explicitly\n * rather than fabricating a verification spec.\n */\nexport function toMissionRuntimeDefinition(request: MissionRequest): MissionDefinitionInput {\n\tconst criteria = request.acceptanceCriteria.map((criterion) => {\n\t\tif (!criterion.verification) {\n\t\t\tthrow new Error(\n\t\t\t\t`MissionRequest criterion \"${criterion.id}\" has no deterministic verification and cannot map to a MissionRuntime contract`,\n\t\t\t);\n\t\t}\n\t\treturn {\n\t\t\tid: criterion.id,\n\t\t\tdescription: criterion.description,\n\t\t\tsource: \"user\" as const,\n\t\t\tverification: criterion.verification,\n\t\t};\n\t});\n\n\treturn {\n\t\tmissionId: request.missionId,\n\t\tgoal: request.objective,\n\t\tcriteria,\n\t};\n}\n\n/**\n * Build a real Reliability Kernel MissionRuntime from a MissionRequest.\n *\n * Throws if any acceptance criterion is unverifiable (mapping is rejected\n * explicitly) or if the derived contract is invalid. The returned runtime is\n * the same authority used by the live AgentSession.\n */\nexport function createMissionRuntimeFromRequest(request: MissionRequest): MissionRuntime {\n\tconst definition = toMissionRuntimeDefinition(request);\n\t// Validate the contract before constructing the runtime.\n\tbuildMissionContract(definition);\n\treturn MissionRuntime.create(definition);\n}\n"]}