field_ios

In-the-field app for Radroots on iOS
git clone https://radroots.dev/git/field_ios.git
Log | Files | Refs | README | LICENSE

local-social-persona-results.v2.schema.json (6122B)


      1 {
      2   "$schema": "https://json-schema.org/draft/2020-12/schema",
      3   "$id": "https://radroots.org/schemas/ios/local-social-persona-results.v2.schema.json",
      4   "title": "Tera iOS local-social measured persona result",
      5   "type": "object",
      6   "additionalProperties": false,
      7   "required": [
      8     "schema", "schema_version", "run_id", "test_invocation", "source",
      9     "app_build_sha256", "endpoint_policy_sha256", "fixture_sha256", "fixture_schema_sha256",
     10     "attempt_schema_sha256", "result_schema_sha256", "simulator",
     11     "result_bundle_sha256", "attachments", "personas", "flow_counts",
     12     "accepted_events", "event_kind_counts", "accepted_uploads", "retrievals",
     13     "distinct_identities", "unknown_attempts", "duplicate_attempts",
     14     "expected_failure_rejections", "events_accepted_during_expected_failures",
     15     "accepted_connections", "rejected_connections", "non_loopback_attempts",
     16     "unintended_publications", "final_candidate_data_loss", "accessibility",
     17     "forward_repairs", "complete_matrix_rerun"
     18   ],
     19   "properties": {
     20     "schema": {"const": "tera.ios.local-social.persona-results.v2"},
     21     "schema_version": {"const": 2},
     22     "run_id": {"$ref": "#/$defs/run_id"},
     23     "test_invocation": {"$ref": "#/$defs/test_invocation"},
     24     "source": {"$ref": "#/$defs/source"},
     25     "app_build_sha256": {"$ref": "#/$defs/sha256"},
     26     "endpoint_policy_sha256": {"$ref": "#/$defs/sha256"},
     27     "fixture_sha256": {"$ref": "#/$defs/sha256"},
     28     "fixture_schema_sha256": {"$ref": "#/$defs/sha256"},
     29     "attempt_schema_sha256": {"$ref": "#/$defs/sha256"},
     30     "result_schema_sha256": {"$ref": "#/$defs/sha256"},
     31     "simulator": {"$ref": "#/$defs/simulator"},
     32     "result_bundle_sha256": {"$ref": "#/$defs/sha256"},
     33     "attachments": {
     34       "type": "array", "minItems": 15, "maxItems": 15,
     35       "items": {
     36         "type": "object", "additionalProperties": false,
     37         "required": ["attempt_id", "sha256"],
     38         "properties": {
     39           "attempt_id": {"type": "string", "pattern": "^P0[1-5]-A0[1-3]$"},
     40           "sha256": {"$ref": "#/$defs/sha256"}
     41         }
     42       }
     43     },
     44     "personas": {
     45       "type": "array", "minItems": 5, "maxItems": 5,
     46       "items": {
     47         "type": "object", "additionalProperties": false,
     48         "required": ["alias", "public_identity_sha256", "subscriptions", "attempt_ids"],
     49         "properties": {
     50           "alias": {"enum": ["P01", "P02", "P03", "P04", "P05"]},
     51           "public_identity_sha256": {"$ref": "#/$defs/nonzero_sha256"},
     52           "subscriptions": {"type": "integer", "minimum": 1, "maximum": 4096},
     53           "attempt_ids": {
     54             "type": "array", "minItems": 3, "maxItems": 3, "uniqueItems": true,
     55             "items": {"type": "string", "pattern": "^P0[1-5]-A0[1-3]$"}
     56           }
     57         }
     58       }
     59     },
     60     "flow_counts": {"$ref": "#/$defs/flow_counts"},
     61     "accepted_events": {"const": 15},
     62     "event_kind_counts": {
     63       "type": "object", "additionalProperties": false,
     64       "required": ["1", "31923", "30402"],
     65       "properties": {"1": {"const": 9}, "31923": {"const": 3}, "30402": {"const": 3}}
     66     },
     67     "accepted_uploads": {"const": 3},
     68     "retrievals": {"const": 3},
     69     "distinct_identities": {"const": 5},
     70     "unknown_attempts": {"const": 0},
     71     "duplicate_attempts": {"const": 0},
     72     "expected_failure_rejections": {"const": 2},
     73     "events_accepted_during_expected_failures": {"const": 0},
     74     "accepted_connections": {"type": "integer", "minimum": 1, "maximum": 61440},
     75     "rejected_connections": {"type": "integer", "minimum": 0, "maximum": 61440},
     76     "non_loopback_attempts": {"const": 0},
     77     "unintended_publications": {"const": 0},
     78     "final_candidate_data_loss": {"const": 0},
     79     "accessibility": {
     80       "type": "object", "additionalProperties": false,
     81       "required": ["locale", "content_size", "reduce_motion", "semantic_attempts", "keyboard_focus_attempts", "voiceover_user_observed"],
     82       "properties": {
     83         "locale": {"const": "en_US"},
     84         "content_size": {"const": "accessibility-extra-extra-extra-large"},
     85         "reduce_motion": {"const": true},
     86         "semantic_attempts": {"type": "integer", "minimum": 3, "maximum": 15},
     87         "keyboard_focus_attempts": {"const": 3},
     88         "voiceover_user_observed": {"const": false}
     89       }
     90     },
     91     "forward_repairs": {
     92       "type": "array", "maxItems": 16, "uniqueItems": true,
     93       "items": {"type": "string", "pattern": "^[0-9a-f]{40}$"}
     94     },
     95     "complete_matrix_rerun": {"const": true}
     96   },
     97   "$defs": {
     98     "sha256": {"type": "string", "pattern": "^[0-9a-f]{64}$"},
     99     "nonzero_sha256": {"type": "string", "pattern": "^(?!0{64}$)[0-9a-f]{64}$"},
    100     "run_id": {"type": "string", "pattern": "^[a-z0-9][a-z0-9-]{6,62}[a-z0-9]$"},
    101     "test_invocation": {
    102       "type": "object", "additionalProperties": false,
    103       "required": ["target", "identifier", "action", "configuration"],
    104       "properties": {
    105         "target": {"const": "TeraUITests"},
    106         "identifier": {"const": "TeraUITests/testLocalSocialDeterministicPersonas"},
    107         "action": {"const": "test"},
    108         "configuration": {"const": "Debug"}
    109       }
    110     },
    111     "source": {
    112       "type": "object", "additionalProperties": false,
    113       "required": ["commit", "tree"],
    114       "properties": {
    115         "commit": {"type": "string", "pattern": "^[0-9a-f]{40}$"},
    116         "tree": {"type": "string", "pattern": "^[0-9a-f]{40}$"}
    117       }
    118     },
    119     "simulator": {
    120       "type": "object", "additionalProperties": false,
    121       "required": ["udid", "os", "architecture"],
    122       "properties": {
    123         "udid": {"type": "string", "pattern": "^[A-F0-9-]{36}$"},
    124         "os": {"type": "string", "pattern": "^iOS (1[89]|[2-9][0-9]|[1-9][0-9]{2,})(\\.[0-9]+){1,2}$", "maxLength": 32},
    125         "architecture": {"const": "arm64"}
    126       }
    127     },
    128     "flow_counts": {
    129       "type": "object", "additionalProperties": false,
    130       "required": ["Update", "PhotoUpdate", "Ask", "Event", "FoodAvailability"],
    131       "properties": {
    132         "Update": {"const": 3}, "PhotoUpdate": {"const": 3}, "Ask": {"const": 3},
    133         "Event": {"const": 3}, "FoodAvailability": {"const": 3}
    134       }
    135     }
    136   }
    137 }