{
  "id": "calibrare-sesizari",
  "slug": "calibrare-sesizari",
  "is_calibration": true,
  "app": {
    "name": "Oraș Test — Sesizări",
    "package_id": "org.example.orastest",
    "version": "4.8.1",
    "apk_sha256": "ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"
  },
  "owner": "Instituție fictivă pentru calibrare",
  "supplier": "Furnizor fictiv pentru calibrare",
  "journey": {
    "ro": "Trimiterea unei sesizări privind iluminatul public",
    "en": "Submitting a street-lighting report"
  },
  "device": {
    "model": "Pixel 8a (laborator)",
    "os": "Android 16",
    "locale": "ro-RO",
    "lane": "stock + instrumented"
  },
  "tested_at": "2026-08-05T10:12:00+03:00",
  "method_version": "PPR-1.0",
  "audit_level": "CAL",
  "headline": {
    "ro": "Un serviciu de analiză a pornit înainte ca alegerea opțională să fie afișată.",
    "en": "An analytics service started before the optional choice was shown."
  },
  "dek": {
    "ro": "Exemplu sintetic construit pentru a demonstra cum separăm o conexiune observată de o concluzie despre conținutul transmis.",
    "en": "Synthetic example showing how the product separates an observed connection from a conclusion about transmitted content."
  },
  "verdict": "observed_not_clearly_described",
  "states": [
    {
      "id": "before_choice",
      "label": {
        "ro": "Înainte să alegi",
        "en": "Before choice"
      },
      "service_result": {
        "ro": "Aplicația s-a deschis. Formularul nu fusese încă folosit.",
        "en": "The app opened. The form had not yet been used."
      },
      "events": [
        {
          "moment": "app_open",
          "policy": {
            "ro": "Politica menționează analize opționale după acord.",
            "en": "The policy describes optional analytics after consent."
          },
          "store": {
            "ro": "Magazinul declară colectarea activității în scop de analiză.",
            "en": "The store label declares app activity for analytics."
          },
          "device": {
            "ro": "Telefonul a contactat analytics.example la 420 ms după deschidere, înaintea ecranului de alegere.",
            "en": "The phone contacted analytics.example 420 ms after launch, before the choice screen."
          },
          "evidence_strength": "connection_observed",
          "limitations": {
            "ro": "Conținutul complet era criptat; numai destinația și metadatele conexiunii au fost stabilite.",
            "en": "The full content was encrypted; only destination and connection metadata were established."
          },
          "domains": [
            "api.orastest.example",
            "analytics.example"
          ]
        },
        {
          "moment": "choice_screen",
          "policy": {
            "ro": "Acordul este descris ca opțional.",
            "en": "Consent is described as optional."
          },
          "store": {
            "ro": "Magazinul nu descrie momentul inițializării.",
            "en": "The store label does not describe initialization timing."
          },
          "device": {
            "ro": "Ecranul de alegere a apărut după prima conexiune către serviciul de analiză.",
            "en": "The choice screen appeared after the first analytics connection."
          },
          "evidence_strength": "screen_and_connection",
          "limitations": {
            "ro": "Nu rezultă că un identificator personal a fost transmis.",
            "en": "This does not establish that a personal identifier was transmitted."
          },
          "domains": [
            "analytics.example"
          ]
        }
      ]
    },
    {
      "id": "refused",
      "label": {
        "ro": "După ce ai refuzat",
        "en": "After refusal"
      },
      "service_result": {
        "ro": "Sesizarea a putut fi trimisă fără analiza opțională.",
        "en": "The report could be submitted without optional analytics."
      },
      "events": [
        {
          "moment": "refusal",
          "policy": {
            "ro": "Politica spune că refuzul nu afectează serviciul de bază.",
            "en": "The policy says refusal does not affect the core service."
          },
          "store": {
            "ro": "Magazinul indică faptul că utilizatorul poate solicita ștergerea.",
            "en": "The store label says deletion can be requested."
          },
          "device": {
            "ro": "După refuz, nu au mai fost observate conexiuni către analytics.example în cele două rulări.",
            "en": "After refusal, no further connections to analytics.example were observed in two runs."
          },
          "evidence_strength": "repeated_non_observation",
          "limitations": {
            "ro": "Absența într-un traseu nu dovedește că serviciul nu poate fi folosit în alte funcții sau prin configurare la distanță.",
            "en": "Absence in one journey does not prove the service cannot appear in other features or under remote configuration."
          },
          "domains": []
        },
        {
          "moment": "submit",
          "policy": {
            "ro": "Politica descrie trimiterea fotografiei, localizării și textului către instituție.",
            "en": "The policy describes sending the photo, location and text to the institution."
          },
          "store": {
            "ro": "Magazinul declară fotografii și localizare pentru funcționalitatea aplicației.",
            "en": "The store label declares photos and location for app functionality."
          },
          "device": {
            "ro": "Valoarea sintetică LAMPA-7Q2 a fost observată în cererea către api.orastest.example.",
            "en": "The synthetic value LAMPA-7Q2 was observed in the request to api.orastest.example."
          },
          "evidence_strength": "exact_synthetic_token",
          "limitations": {
            "ro": "Valoarea dovedește transmiterea către endpointul serviciului; nu stabilește singură rolul juridic al fiecărui operator.",
            "en": "The value establishes transmission to the service endpoint; it does not by itself establish each operator’s legal role."
          },
          "domains": [
            "api.orastest.example"
          ]
        }
      ]
    },
    {
      "id": "accepted",
      "label": {
        "ro": "După ce ai acceptat",
        "en": "After acceptance"
      },
      "service_result": {
        "ro": "Serviciul de bază și analiza opțională au funcționat.",
        "en": "The core service and optional analytics operated."
      },
      "events": [
        {
          "moment": "acceptance",
          "policy": {
            "ro": "Politica descrie evenimente de utilizare pseudonimizate.",
            "en": "The policy describes pseudonymous usage events."
          },
          "store": {
            "ro": "Magazinul declară activitatea aplicației.",
            "en": "The store label declares app activity."
          },
          "device": {
            "ro": "Conexiunile către analytics.example au continuat. Un câmp event_name=report_submitted a fost lizibil; identificatorul complet nu a fost interpretat.",
            "en": "Connections to analytics.example continued. A readable event_name=report_submitted field was observed; the full identifier was not interpreted."
          },
          "evidence_strength": "readable_data_category",
          "limitations": {
            "ro": "Un nume de eveniment nu arată dacă furnizorul îl poate lega de o persoană.",
            "en": "An event name does not show whether the provider can link it to a person."
          },
          "domains": [
            "analytics.example"
          ]
        }
      ]
    },
    {
      "id": "withdrawn",
      "label": {
        "ro": "După retragere",
        "en": "After withdrawal"
      },
      "service_result": {
        "ro": "Sesizările au rămas disponibile.",
        "en": "Reporting remained available."
      },
      "events": [
        {
          "moment": "withdrawal",
          "policy": {
            "ro": "Politica promite oprirea analizelor viitoare.",
            "en": "The policy promises to stop future analytics."
          },
          "store": {
            "ro": "Magazinul nu oferă detalii despre retragere.",
            "en": "The store label gives no withdrawal detail."
          },
          "device": {
            "ro": "După retragere și repornire, analytics.example nu a mai fost contactat în două rulări.",
            "en": "After withdrawal and restart, analytics.example was not contacted in two runs."
          },
          "evidence_strength": "repeated_non_observation",
          "limitations": {
            "ro": "Testul nu verifică ștergerea datelor deja aflate pe server.",
            "en": "The test does not verify deletion of data already held server-side."
          },
          "domains": []
        }
      ]
    }
  ],
  "destinations": [
    {
      "domain": "api.orastest.example",
      "owner": "Instituția fictivă",
      "role": {
        "ro": "API al serviciului de sesizări",
        "en": "Reporting-service API"
      },
      "relationship": "first_party",
      "first_seen": "app_open",
      "states_seen": [
        "before_choice",
        "refused",
        "accepted",
        "withdrawn"
      ],
      "payload_evidence": "exact_synthetic_token",
      "payload_summary": {
        "ro": "Textul sintetic al sesizării a fost observat în payload.",
        "en": "The synthetic report text was observed in the payload."
      },
      "attribution_certainty": "documented"
    },
    {
      "domain": "analytics.example",
      "owner": "Analiză Exemplu SA",
      "role": {
        "ro": "serviciu comercial de analiză",
        "en": "commercial analytics service"
      },
      "relationship": "third_party",
      "first_seen": "app_open",
      "states_seen": [
        "before_choice",
        "accepted"
      ],
      "payload_evidence": "readable_data_category",
      "payload_summary": {
        "ro": "Destinația și un nume de eveniment au fost observate; identificatorul complet nu a fost stabilit.",
        "en": "The destination and an event name were observed; the full identifier was not established."
      },
      "attribution_certainty": "documented"
    }
  ],
  "claims": [
    {
      "id": "CAL-001",
      "classification": "observed_not_clearly_described",
      "statement": {
        "ro": "Serviciul de analiză a fost contactat înaintea afișării alegerii opționale.",
        "en": "The analytics service was contacted before the optional choice was shown."
      },
      "maximum_wording": {
        "ro": "Putem spune când a început conexiunea; nu putem spune că profilarea a avut loc.",
        "en": "We can state when the connection began; we cannot state that profiling occurred."
      },
      "status": "calibration"
    },
    {
      "id": "CAL-002",
      "classification": "declared_and_observed",
      "statement": {
        "ro": "Textul sintetic al sesizării a fost transmis către API-ul documentat al serviciului.",
        "en": "The synthetic report text was sent to the service’s documented API."
      },
      "maximum_wording": {
        "ro": "Valoarea exactă a părăsit dispozitivul în cererea observată.",
        "en": "The exact value left the device in the observed request."
      },
      "status": "calibration"
    }
  ],
  "repairs": [
    {
      "id": "REP-CAL-001",
      "actor": "Furnizor fictiv",
      "minimum_change": {
        "ro": "Inițializează SDK-ul de analiză numai după acceptarea explicită sau scoate-l din traseul de bază.",
        "en": "Initialize the analytics SDK only after explicit acceptance, or remove it from the core journey."
      },
      "verification": {
        "ro": "Repetă traseul pe instalare curată și confirmă absența conexiunii înainte de alegere.",
        "en": "Repeat the journey on a clean install and confirm no pre-choice connection."
      },
      "status": "proposed"
    }
  ],
  "limitations": {
    "ro": [
      "Aplicație și date complet fictive.",
      "Două rulări nu acoperă toate funcțiile.",
      "Atribuirea juridică nu rezultă numai din trafic."
    ],
    "en": [
      "The app and all data are fictional.",
      "Two runs do not cover every feature.",
      "Legal attribution does not follow from traffic alone."
    ]
  }
}
