{
  "code": "HUM-01",
  "slug": "source-handling",
  "title": "Source Handling",
  "category": "Collection",
  "status": "Current",
  "version": "2.0.4-wip",
  "summary": "Human sources are relationships with access, motivation, reliability, vulnerability, and independent agency.",
  "keywords": [
    "HUMINT",
    "source",
    "recruitment",
    "handling",
    "motivation",
    "reliability",
    "protection"
  ],
  "mission_phases": [
    "Access",
    "Collect",
    "Validate",
    "Extract"
  ],
  "canonical": "https://iarpg.com/standard/source-handling",
  "json": "https://iarpg.com/records/source-handling.json",
  "requirements": [
    {
      "level": "MUST",
      "text": "Represent source access, motivation, placement, reliability history, and protection risk separately."
    },
    {
      "level": "MUST",
      "text": "Store source statements as reports with attribution and context, not as direct game truth."
    },
    {
      "level": "SHOULD",
      "text": "Allow sources to refuse, misunderstand, omit, exaggerate, or change cooperation based on treatment and risk."
    },
    {
      "level": "MAY",
      "text": "Permit source relationships to outlive individual operations and change future access."
    }
  ],
  "research": [
    {
      "label": "HUMINT operatives",
      "href": "/docs/report/intelligence-operative-archetypes-and-tradecraft#humint-operatives",
      "note": "Case officers, agents, sources, and relationship-centered collection."
    },
    {
      "label": "State intelligence and HUMINT operatives",
      "href": "/docs/report/typology-of-intelligence-operatives-and-tradecraft-frameworks-a-comprehensive-architecture-for-clandestine-beh#state-intelligence-architecture-and-humint-operatives",
      "note": "Source and case officer roles within an operational system."
    }
  ],
  "related": [
    "collection-discipline-selection",
    "observation-report-interpretation-and-hypothesis",
    "cover-identity-and-congruence"
  ],
  "release": "IARPG-OPS-2",
  "revised_utc": "2026-07-20T12:04:07Z",
  "purpose": "Define how players and synthetic characters gather information while preserving source class, access path, reliability, and collection limitations.",
  "rationale": "Collection is useful only when the game can explain where information came from and what the collector could actually observe.",
  "game_interaction": [
    "Approach source",
    "Observe environment",
    "Collect signal or document",
    "Record access limitations"
  ],
  "inputs": [
    "Collection requirement",
    "Source profile",
    "Access plan"
  ],
  "outputs": [
    "Source report",
    "Observation",
    "Collection log"
  ],
  "state_transitions": [
    {
      "from": "not-applicable",
      "event": "record requirement evaluated",
      "to": "conforming-or-documented-exception"
    }
  ],
  "evidence_and_provenance": [
    "The implementation records the source, UTC event time, mission identifier, responsible role, and reason code for consequential state changes.",
    "Generated dialogue and player interpretation are not stored as authoritative facts without a separate verification event."
  ],
  "ui_requirements": [
    "Show the record code and requirement level at the point of use.",
    "Expose the reason for blocked, failed, escalated, or irreversible actions.",
    "Provide a direct link to the canonical standard and machine-readable record."
  ],
  "accessibility_requirements": [
    "Essential information is available without reliance on color, audio, motion, or a VR-only gesture.",
    "Keyboard, screen-reader, reduced-motion, seated-play, and high-contrast equivalents are documented where the interaction applies."
  ],
  "telemetry_events": [
    {
      "name": "standard.source-handling.evaluated",
      "required_fields": [
        "event_id",
        "timestamp_utc",
        "mission_id",
        "record_code",
        "result",
        "reason_code"
      ]
    }
  ],
  "abuse_and_exploit_cases": [
    "A participant attempts to omit required context so another role accepts a misleading task.",
    "A generated or user-authored statement is presented as server-authoritative without verification.",
    "A consequential state transition occurs without a durable reason code."
  ],
  "failure_behavior": "Fail closed for irreversible or settlement-bearing actions. Preserve the current state, show the missing requirement, and allow correction or documented exception review.",
  "recovery_behavior": "Restore from the last authoritative event, retain the rejected transition in the audit log, and require a new validated event before continuing.",
  "example_implementation": "A mission interface evaluates HUM-01 before advancing the relevant state and writes the result to the local event log with a UTC timestamp and reason code.",
  "roles": [
    "Operative",
    "Handler",
    "Intelligence Analyst"
  ],
  "authority_types": [
    "Civil administration",
    "Military command",
    "Commercial intelligence service",
    "International verification body",
    "Scientific consortium",
    "Independent investigative network"
  ],
  "collection_disciplines": [],
  "interaction_types": [
    "Approach source",
    "Observe environment",
    "Collect signal or document"
  ],
  "evidence_requirement": "Reviewable provenance required",
  "conformance_level": "Level B — Playable",
  "implementation_maturity": "Published WIP",
  "related_examples": [
    "port-access-anomaly-investigation"
  ],
  "revision_history": [
    {
      "version": "1.0.0",
      "date_utc": "2026-07-19",
      "note": "Initial IARPG-OPS-1 publication."
    },
    {
      "version": "2.0.1-wip",
      "date_utc": "2026-07-19",
      "note": "Expanded for IARPG-OPS-2 workbench, simulation, evidence, accessibility, telemetry, and machine-readable publication."
    },
    {
      "version": "2.0.2-wip",
      "date_utc": "2026-07-19T16:42:07Z",
      "change": "Reviewed for operation-package lifecycle compatibility and local tool integration."
    },
    {
      "version": "2.0.3-wip",
      "date_utc": "2026-07-19T18:45:50Z",
      "note": "Reviewed for integrity-aware package verification, merge, multi-role replay, custody comparison, batch review, backup, publication preview, and release-promotion workflows."
    },
    {
      "version": "2.0.4-wip",
      "date_utc": "2026-07-20T12:04:07Z",
      "note": "Reviewed for canonicalization, round-trip portability, recovery, provenance, compatibility, accessibility, hosting evidence, and stable-promotion gates."
    }
  ]
}
