kind: uapf.resources.mapping # Host-readable contract for the seven capability-backed service tasks in # this package. Algorithm Card references live on the BPMN service tasks # themselves (uapf24:algorithmCardRef attribute) per UAPF v2.4.0+. The # targets below are dispatch endpoints only. targets: - id: agent.intake_normalizer type: system_api name: Signal normalizer description: Host capability intake.normalize@1, governed by the normalize_signal Algorithm Card. capabilities: - capability.intake.normalize - id: agent.classifier type: ai_agent name: Incident taxonomy classifier description: Host capability ai.classify@1 (LLM-backed), governed by the classify_incident Algorithm Card. capabilities: - capability.ai.classify - id: agent.priority_suggester type: ai_agent name: Priority suggester description: Host capability ai.suggest_priority@1, governed by the suggest_priority Algorithm Card. capabilities: - capability.ai.suggest_priority - id: agent.dmn_evaluator type: system_api name: DMN decision evaluator description: Host capability dmn.evaluate@1, governed by the evaluate_dmn Algorithm Card. Invoked three times in the BPMN with different decision_id input. capabilities: - capability.dmn.evaluate - id: agent.response_drafter type: ai_agent name: Customer response drafter description: Host capability ai.draft_response@1, governed by the draft_response Algorithm Card. Requires human approval before send. capabilities: - capability.ai.draft_response - id: agent.incident_updater type: system_api name: Incident state writer description: Host capability incident.update@1, governed by the update_incident Algorithm Card. Applies field patches and FSM transitions. capabilities: - capability.incident.update - id: agent.event_emitter type: system_api name: Case event emitter description: Host capability event.emit@1, governed by the emit_event Algorithm Card. Append-only timeline writer. capabilities: - capability.event.emit bindings: - source: { type: bpmn.serviceTask, ref: Task_NormalizeSignal } targetId: agent.intake_normalizer mode: autonomous contract: input: - { name: signal_id, type: string, required: true } output: - { name: normalized_payload, type: object } - { name: dedupe_hash, type: string } - { name: source_kind, type: string } timeout: "5s" requiredCapabilities: [capability.intake.normalize] - source: { type: bpmn.serviceTask, ref: Task_ClassifyIncident } targetId: agent.classifier mode: autonomous contract: input: - { name: payload, type: object, required: true } - { name: text, type: string } output: - { name: taxonomy_code, type: string } - { name: confidence, type: number, description: "0.0-1.0 model confidence" } - { name: reasoning, type: string } - { name: label_hint, type: string } timeout: "30s" requiredCapabilities: [capability.ai.classify] - source: { type: bpmn.serviceTask, ref: Task_SuggestPriority } targetId: agent.priority_suggester mode: autonomous contract: input: - { name: severity, type: string, required: true } - { name: service_tier, type: string, required: true } - { name: classification, type: string, required: true } output: - { name: priority, type: string } - { name: reason, type: string } timeout: "30s" requiredCapabilities: [capability.ai.suggest_priority] - source: { type: bpmn.serviceTask, ref: Task_EvaluatePriorityDmn } targetId: agent.dmn_evaluator mode: autonomous contract: input: - { name: package_id, type: string, required: true } - { name: decision_id, type: string, required: true } - { name: inputs, type: object, required: true } output: - { name: output, type: object } - { name: hit_rule_ids, type: array } - { name: hit_policy, type: string } timeout: "5s" requiredCapabilities: [capability.dmn.evaluate] - source: { type: bpmn.serviceTask, ref: Task_EvaluateOwnershipDmn } targetId: agent.dmn_evaluator mode: autonomous contract: input: - { name: package_id, type: string, required: true } - { name: decision_id, type: string, required: true } - { name: inputs, type: object, required: true } output: - { name: output, type: object } - { name: hit_rule_ids, type: array } - { name: hit_policy, type: string } timeout: "5s" requiredCapabilities: [capability.dmn.evaluate] - source: { type: bpmn.serviceTask, ref: Task_EvaluateRoutingDmn } targetId: agent.dmn_evaluator mode: autonomous contract: input: - { name: package_id, type: string, required: true } - { name: decision_id, type: string, required: true } - { name: inputs, type: object, required: true } output: - { name: output, type: object } - { name: hit_rule_ids, type: array } - { name: hit_policy, type: string } timeout: "5s" requiredCapabilities: [capability.dmn.evaluate] - source: { type: bpmn.serviceTask, ref: Task_UpdateIncident } targetId: agent.incident_updater mode: autonomous contract: input: - { name: case_id, type: string, required: true } - { name: patch, type: object, required: true } - { name: status, type: string } - { name: reason, type: string } output: - { name: case_id, type: string } - { name: new_status, type: string } - { name: success, type: boolean } - { name: event_ids, type: array } timeout: "10s" requiredCapabilities: [capability.incident.update] - source: { type: bpmn.serviceTask, ref: Task_DraftResponse } targetId: agent.response_drafter mode: supervised contract: input: - { name: case_id, type: string, required: true } - { name: locale, type: string } - { name: what_happened, type: string, required: true } - { name: eta_minutes, type: number } output: - { name: subject_lv, type: string } - { name: subject_en, type: string } - { name: body_lv, type: string } - { name: body_en, type: string } - { name: locale, type: string } timeout: "60s" requiredCapabilities: [capability.ai.draft_response] - source: { type: bpmn.serviceTask, ref: Task_EmitEvent } targetId: agent.event_emitter mode: autonomous contract: input: - { name: case_id, type: string, required: true } - { name: type, type: string, required: true } - { name: payload, type: object } - { name: actor_label, type: string } output: - { name: event_id, type: string } - { name: recorded_at, type: string } timeout: "5s" requiredCapabilities: [capability.event.emit]