You've already forked lv-civdef-drone-threat-public-address
Import UAPF package
269 lines
8.3 KiB
YAML
269 lines
8.3 KiB
YAML
kind: uapf.resources.mapping
|
|
|
|
# ---------------------------------------------------------------------------
|
|
# Targets — the institutions, systems and agents that execute work in this
|
|
# process. Only primary binding targets are listed; consulted/informed parties
|
|
# (VARAM, IZM, NATO Baltic Air Policing, the Government Crisis Management
|
|
# Council) are recorded in binding `notes` and in docs/02-raci.md.
|
|
# Endpoints and credentials below are ILLUSTRATIVE placeholders for a draft.
|
|
# ---------------------------------------------------------------------------
|
|
targets:
|
|
- id: nbs.air-surveillance
|
|
type: system_api
|
|
name: NBS air surveillance and radar network
|
|
description: Detection and tracking feed for airborne objects near the eastern border.
|
|
capabilities:
|
|
- lv.gov.civdef.air_surveillance_feed
|
|
endpoint: "https://surveillance.mil.lv/api/v1"
|
|
authentication:
|
|
method: mtls
|
|
availability:
|
|
schedule: always
|
|
timezone: Europe/Riga
|
|
|
|
- id: nbs.joint-staff
|
|
type: human_role
|
|
name: NBS Joint Staff (Apvienotais stabs), operational duty
|
|
description: Holds threat-classification and notification-request authority.
|
|
availability:
|
|
schedule: always
|
|
timezone: Europe/Riga
|
|
|
|
- id: nbs.air-defence
|
|
type: human_role
|
|
name: NBS air-defence units (pretgaisa aizsardziba)
|
|
description: Ground air-defence; coordinates interception, including with NATO Baltic Air Policing.
|
|
|
|
- id: vugd.duty
|
|
type: human_role
|
|
name: VUGD operational duty / 112 (State Fire and Rescue Service)
|
|
description: Receives 112 calls and executes site fire and rescue response.
|
|
|
|
- id: vugd.cell-broadcast
|
|
type: system_api
|
|
name: Cell-broadcast system (sunu apraide), operated by VUGD
|
|
description: Public early-warning cell-broadcast platform.
|
|
capabilities:
|
|
- lv.gov.civdef.cell_broadcast
|
|
endpoint: "https://cb.vugd.gov.lv/api/v1"
|
|
authentication:
|
|
method: api_key
|
|
configRef: secrets/vugd-cell-broadcast
|
|
availability:
|
|
schedule: always
|
|
timezone: Europe/Riga
|
|
|
|
- id: vp.duty
|
|
type: human_role
|
|
name: State Police (Valsts policija) operational duty
|
|
description: Scene security, access control and public order at incident sites.
|
|
|
|
- id: kvc
|
|
type: human_role
|
|
name: Crisis Management Centre (Krizes vadibas centrs)
|
|
description: Cross-institutional crisis coordination and after-action review.
|
|
|
|
- id: am
|
|
type: human_role
|
|
name: Ministry of Defence (Aizsardzibas ministrija)
|
|
description: Public communication, origin attribution oversight and algorithm governance.
|
|
|
|
- id: municipal.civil-protection
|
|
type: human_role
|
|
name: Municipal civil-protection commissions (cooperation territories)
|
|
description: Local civil-protection response and resident enquiry handling.
|
|
|
|
- id: agent.threat-assessment
|
|
type: ai_agent
|
|
name: Civil-defence threat-assessment assistant
|
|
description: AI assistant that recommends air-threat severity; advisory only.
|
|
capabilities:
|
|
- ai.classify
|
|
- ai.complete
|
|
endpoint: "mcp://agents/civdef-threat-assessment"
|
|
authentication:
|
|
method: did
|
|
|
|
- id: mcp.osint-monitor
|
|
type: mcp_tool
|
|
name: OSINT / disinformation monitoring MCP tool
|
|
description: MCP tool that surfaces and classifies disinformation about the incident.
|
|
capabilities:
|
|
- ai.classify
|
|
endpoint: "mcp://lv-civdef/osint-monitor"
|
|
authentication:
|
|
method: oauth2
|
|
configRef: secrets/osint-monitor-oauth
|
|
|
|
# ---------------------------------------------------------------------------
|
|
# Bindings — each process / decision / case element bound to exactly one
|
|
# primary target. mode: manual = human only, assisted = AI suggests / human
|
|
# approves, autonomous = system executes, supervised = system executes with
|
|
# monitoring.
|
|
# ---------------------------------------------------------------------------
|
|
bindings:
|
|
# --- BPMN process tasks ---
|
|
- source:
|
|
type: bpmn.task
|
|
ref: "Task_Classify"
|
|
targetId: nbs.air-surveillance
|
|
mode: supervised
|
|
requiredCapabilities:
|
|
- lv.gov.civdef.air_surveillance_feed
|
|
contract:
|
|
timeout: "60s"
|
|
notes: "NBS Joint Staff supervises classification of the surveillance feed."
|
|
|
|
- source:
|
|
type: bpmn.task
|
|
ref: "Task_RequestBroadcast"
|
|
targetId: nbs.joint-staff
|
|
mode: manual
|
|
contract:
|
|
timeout: "5m"
|
|
fallback:
|
|
escalationPath:
|
|
- kvc
|
|
onTimeout: escalate
|
|
notes: >-
|
|
GAP G2: in the AS-IS algorithm this request is the single trigger. The
|
|
escalation path to KVC is a proposed v0.3 fallback authority, not yet
|
|
institutionally agreed.
|
|
|
|
- source:
|
|
type: bpmn.task
|
|
ref: "Task_CellBroadcast"
|
|
targetId: vugd.cell-broadcast
|
|
mode: autonomous
|
|
requiredCapabilities:
|
|
- lv.gov.civdef.cell_broadcast
|
|
contract:
|
|
timeout: "30s"
|
|
retries:
|
|
maxAttempts: 2
|
|
backoffMs: 2000
|
|
notes: "VUGD operational duty owns the platform; dispatch is automated on request."
|
|
|
|
- source:
|
|
type: bpmn.task
|
|
ref: "Task_NotifyAgencies"
|
|
targetId: nbs.joint-staff
|
|
mode: assisted
|
|
notes: >-
|
|
Parallel notification to KVC, IeM and municipal civil-protection
|
|
commissions. KVC, IeM and municipalities are informed parties.
|
|
|
|
- source:
|
|
type: bpmn.task
|
|
ref: "Task_CoordBAP"
|
|
targetId: nbs.air-defence
|
|
mode: manual
|
|
notes: >-
|
|
NBS air-defence coordinates the response; air interception is executed by
|
|
NATO Baltic Air Policing per Decision_InterceptionAuthorization rationale
|
|
R_BAP_AIR. NATO BAP is an external party reached through this binding.
|
|
|
|
- source:
|
|
type: bpmn.task
|
|
ref: "Task_LocalResponse"
|
|
targetId: municipal.civil-protection
|
|
mode: manual
|
|
notes: >-
|
|
State Police support scene response; the Ministry of Education and
|
|
Science (IZM) is consulted for school-closure guidance (GAP G8).
|
|
|
|
- source:
|
|
type: bpmn.task
|
|
ref: "Task_AllClear"
|
|
targetId: vugd.cell-broadcast
|
|
mode: autonomous
|
|
contract:
|
|
timeout: "30s"
|
|
notes: "All-clear broadcast issued on NBS Joint Staff declaration."
|
|
|
|
# --- DMN decisions ---
|
|
- source:
|
|
type: dmn.decision
|
|
ref: "Decision_AirThreatSeverity"
|
|
targetId: agent.threat-assessment
|
|
mode: assisted
|
|
requiredCapabilities:
|
|
- ai.classify
|
|
notes: "AI recommends severity; NBS Joint Staff confirms. Advisory only per guardrails."
|
|
|
|
- source:
|
|
type: dmn.decision
|
|
ref: "Decision_CellBroadcastScope"
|
|
targetId: nbs.joint-staff
|
|
mode: manual
|
|
notes: "VARAM consulted on the cell-broadcast platform; message templates are typed (GAP G3)."
|
|
|
|
- source:
|
|
type: dmn.decision
|
|
ref: "Decision_InterceptionAuthorization"
|
|
targetId: nbs.joint-staff
|
|
mode: manual
|
|
notes: "Safety criteria made explicit and inspectable (GAP G7)."
|
|
|
|
# --- CMMN case human tasks ---
|
|
- source:
|
|
type: cmmn.humanTask
|
|
ref: "HT_DebrisSearch"
|
|
targetId: nbs.joint-staff
|
|
mode: manual
|
|
notes: "State Police support crash-site localisation."
|
|
|
|
- source:
|
|
type: cmmn.humanTask
|
|
ref: "HT_FireSuppression"
|
|
targetId: vugd.duty
|
|
mode: manual
|
|
|
|
- source:
|
|
type: cmmn.humanTask
|
|
ref: "HT_SceneSecurity"
|
|
targetId: vp.duty
|
|
mode: manual
|
|
|
|
- source:
|
|
type: cmmn.humanTask
|
|
ref: "HT_MunicipalQA"
|
|
targetId: municipal.civil-protection
|
|
mode: manual
|
|
|
|
- source:
|
|
type: cmmn.humanTask
|
|
ref: "HT_TechExam"
|
|
targetId: nbs.joint-staff
|
|
mode: manual
|
|
|
|
- source:
|
|
type: cmmn.humanTask
|
|
ref: "HT_OriginAttribution"
|
|
targetId: nbs.joint-staff
|
|
mode: assisted
|
|
notes: "Ministry of Defence consulted; AI may assist analysis but not attribute autonomously."
|
|
|
|
- source:
|
|
type: cmmn.humanTask
|
|
ref: "HT_DisinfoMonitor"
|
|
targetId: mcp.osint-monitor
|
|
mode: assisted
|
|
requiredCapabilities:
|
|
- ai.classify
|
|
notes: "Disinformation surfaced and classified via MCP tool; human reviews before correction."
|
|
|
|
- source:
|
|
type: cmmn.humanTask
|
|
ref: "HT_Press"
|
|
targetId: am
|
|
mode: manual
|
|
notes: "KVC consulted; public communication requires human oversight per guardrails."
|
|
|
|
- source:
|
|
type: cmmn.humanTask
|
|
ref: "HT_AfterAction"
|
|
targetId: kvc
|
|
mode: manual
|
|
notes: "Ministry of Defence accountable; Government Crisis Management Council informed."
|