lib

Core libraries for Radroots
git clone https://radroots.dev/git/lib.git
Log | Files | Refs | README

verified_admission.v1.json (13888B)


      1 {
      2   "suite": "verified_event_admission",
      3   "contract_version": "1.0.0",
      4   "vectors": [
      5     {
      6       "id": "event_admit_verified_profile_001",
      7       "kind": "event.admit_verified.valid",
      8       "input": {
      9         "event": {
     10           "id": "b0450c4fb0a82cc829159646f90dc548503e8b7f850a434fd9ea58bf1b8d677f",
     11           "pubkey": "1b84c5567b126440995d3ed5aaba0565d71e1834604819ff9c17f5e9d5dd078f",
     12           "created_at": 1800000100,
     13           "kind": 0,
     14           "tags": [],
     15           "content": "{\"display_name\":\"Moss Street Farm\",\"bot\":false,\"website\":\"https://mossstreet.example\",\"picture\":42}",
     16           "sig": "e5448d11671bcf73aa8d56941aff9df46d4e9fb250596671950e5f3c9d747440523efd33d8b9ff4f2a2ef1bd4b79e0a7cf5850132172b1db4b642ef2b348f721"
     17         }
     18       },
     19       "expected": {
     20         "variant": "profile",
     21         "contract_id": "radroots.profile.metadata.v1",
     22         "event_id": "b0450c4fb0a82cc829159646f90dc548503e8b7f850a434fd9ea58bf1b8d677f"
     23       }
     24     },
     25     {
     26       "id": "event_admit_verified_root_update_002",
     27       "kind": "event.admit_verified.valid",
     28       "input": {
     29         "event": {
     30           "id": "fb3f42caf9db337a7f1c0d49cd8ba5191f08dc1c419ed0640f7ea48a924e3bf3",
     31           "pubkey": "79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798",
     32           "created_at": 1781632860,
     33           "kind": 1,
     34           "tags": [],
     35           "content": "The first strawberries are ready.",
     36           "sig": "dba0a86fee54304c2b419742f186e74d7edca5fc7234c8aa294651de9bc2f16bf829d46f36ec759a767c4ccd1841a73243eae89afd5f6c89b2243491bfbb5f50"
     37         }
     38       },
     39       "expected": {
     40         "variant": "root_post",
     41         "contract_id": "radroots.social.update.v1",
     42         "event_id": "fb3f42caf9db337a7f1c0d49cd8ba5191f08dc1c419ed0640f7ea48a924e3bf3"
     43       }
     44     },
     45     {
     46       "id": "event_admit_verified_root_photo_update_003",
     47       "kind": "event.admit_verified.valid",
     48       "input": {
     49         "event": {
     50           "id": "f06df29688089218b10424a85a070ecd9fe0e7143bf24622fdd5f031fbe00029",
     51           "pubkey": "79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798",
     52           "created_at": 1781635400,
     53           "kind": 1,
     54           "tags": [
     55             [
     56               "imeta",
     57               "url https://cdn.example/harvest.webp",
     58               "x aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
     59               "m image/webp",
     60               "dim 1200x900",
     61               "size 12345",
     62               "alt Harvest"
     63             ]
     64           ],
     65           "content": "Harvest https://cdn.example/harvest.webp",
     66           "sig": "2f0863959b972f639d028c65d9ca0c2b62d5ad57530ad4c810e67941d1d50ab249488f570b9905095db2df18440aac399907dda5ca0e8289c49e625ce8b0b28b"
     67         }
     68       },
     69       "expected": {
     70         "variant": "root_post",
     71         "contract_id": "radroots.social.photo_update.v1",
     72         "event_id": "f06df29688089218b10424a85a070ecd9fe0e7143bf24622fdd5f031fbe00029"
     73       }
     74     },
     75     {
     76       "id": "event_admit_verified_root_ask_004",
     77       "kind": "event.admit_verified.valid",
     78       "input": {
     79         "event": {
     80           "id": "5d15a6d516260b6d6cf4a7f2a22fcd349c2bee302fda2c92fa1679996290a1ac",
     81           "pubkey": "79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798",
     82           "created_at": 1781635220,
     83           "kind": 1,
     84           "tags": [
     85             ["t", " RADROOTS-ASK "],
     86             ["imeta", "url https://cdn.example/leaf.webp", "x malformed"]
     87           ],
     88           "content": "Question https://cdn.example/leaf.webp",
     89           "sig": "538636b2d163d1a392f4c3fced234ba6af5c9b3f1fc66e3bdbbe374287cf4e62adec6369056a3f096be1b268451c2fb25040ae8e0d67188284c2da18832c20d1"
     90         }
     91       },
     92       "expected": {
     93         "variant": "root_post",
     94         "contract_id": "radroots.social.ask.v1",
     95         "event_id": "5d15a6d516260b6d6cf4a7f2a22fcd349c2bee302fda2c92fa1679996290a1ac"
     96       }
     97     },
     98     {
     99       "id": "event_admit_verified_post_to_reply_005",
    100       "kind": "event.admit_verified.valid",
    101       "input": {
    102         "event": {
    103           "id": "2340fc3fec291f4d4429bf13bf23cc3b7ec8589aa5e6426a5fc5a25bfcf1a896",
    104           "pubkey": "79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798",
    105           "created_at": 1781000001,
    106           "kind": 1,
    107           "tags": [
    108             [
    109               "e",
    110               "1111111111111111111111111111111111111111111111111111111111111111",
    111               "",
    112               "root"
    113             ],
    114             ["p", "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"]
    115           ],
    116           "content": "Direct reply",
    117           "sig": "16afb66cf2e30450a1055d697044b0f27835352553f32f7ac8d18387cc27861dfde3bb820a8882c00f933c13d4c967df5d5db986cc228a80dd3d291841bf08cd"
    118         }
    119       },
    120       "expected": {
    121         "variant": "reply",
    122         "contract_id": "radroots.social.reply.v1",
    123         "event_id": "2340fc3fec291f4d4429bf13bf23cc3b7ec8589aa5e6426a5fc5a25bfcf1a896"
    124       }
    125     },
    126     {
    127       "id": "event_admit_verified_comment_006",
    128       "kind": "event.admit_verified.valid",
    129       "input": {
    130         "event": {
    131           "id": "3e424094d13c2870de9e63f295e54ffc68caf00caa125021236a8011d611c6a1",
    132           "pubkey": "585591529da0bab31b3b1b1f986611cf5f435dca84f978c89ee8a40cca7103df",
    133           "created_at": 1800000200,
    134           "kind": 1111,
    135           "tags": [
    136             ["E", "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "wss://victoria.example", "e0266e3cfb0d2886f91c73f5f868f3b98273713e5fcd97c081663f5518a4b3af"],
    137             ["K", "30402"],
    138             ["P", "e0266e3cfb0d2886f91c73f5f868f3b98273713e5fcd97c081663f5518a4b3af", "wss://victoria.example"],
    139             ["e", "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "wss://victoria.example", "e0266e3cfb0d2886f91c73f5f868f3b98273713e5fcd97c081663f5518a4b3af"],
    140             ["k", "30402"],
    141             ["p", "e0266e3cfb0d2886f91c73f5f868f3b98273713e5fcd97c081663f5518a4b3af", "wss://victoria.example"]
    142           ],
    143           "content": "Are these carrots available Saturday?",
    144           "sig": "bdec382660fb50d0c3beb8f57b7f0a3b89cea7469b02b5e92e476550bd61f2d3ce7cdcec538d2a8ad8ab5c19807717af798c36a2e05a4b949b628b4993b9ebd1"
    145         }
    146       },
    147       "expected": {
    148         "variant": "comment",
    149         "contract_id": "radroots.social.comment.v1",
    150         "event_id": "3e424094d13c2870de9e63f295e54ffc68caf00caa125021236a8011d611c6a1"
    151       }
    152     },
    153     {
    154       "id": "event_admit_verified_deletion_request_007",
    155       "kind": "event.admit_verified.valid",
    156       "input": {
    157         "event": {
    158           "id": "00d55f2b604090c5eb56a9e445de1e1c31fc86690fd2f368e5a7b7a8ea37a08f",
    159           "pubkey": "79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798",
    160           "created_at": 50,
    161           "kind": 5,
    162           "tags": [
    163             ["e", "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"]
    164           ],
    165           "content": "",
    166           "sig": "58cfd1dc2401701c5121367820b0fbac7e5a05f184bd781a8918731a1ed4a8f2e50dee2260ff1b8c4b9c1ac7767e376d9860aabf5fb46dcf460b0cdac215ad3c"
    167         }
    168       },
    169       "expected": {
    170         "variant": "deletion_request",
    171         "contract_id": "radroots.social.deletion_request.v1",
    172         "event_id": "00d55f2b604090c5eb56a9e445de1e1c31fc86690fd2f368e5a7b7a8ea37a08f"
    173       }
    174     },
    175     {
    176       "id": "event_admit_verified_food_availability_008",
    177       "kind": "event.admit_verified.valid",
    178       "input": {
    179         "event": {
    180           "id": "794251d2341134908ee28526447cb8a54bdd608917166fd3678f65e578fbb8c7",
    181           "pubkey": "79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798",
    182           "created_at": 1700000060,
    183           "kind": 30402,
    184           "tags": [
    185             ["d", "nantes-carrots"],
    186             ["title", "Nantes Carrots"],
    187             ["summary", "Fresh bunches"],
    188             ["published_at", "1700000000"],
    189             ["location", "Central Saanich, BC"],
    190             ["price", "3", "CAD"],
    191             ["radroots:price_unit", "lb"],
    192             ["status", "active"],
    193             ["t", "vegetables"],
    194             ["g", "c28hr"]
    195           ],
    196           "content": "Carrots available this week.",
    197           "sig": "b9d0da50b69689fdd71adc0d698b3e2d04e53c94ec31e23496b4d2fdb96bc1719c5d626881f407682f287f2a5d2bc57159f70a8cd3d1aaae96bd1394c5b1ea0a"
    198         }
    199       },
    200       "expected": {
    201         "variant": "food_availability",
    202         "contract_id": "radroots.food.availability.v1",
    203         "event_id": "794251d2341134908ee28526447cb8a54bdd608917166fd3678f65e578fbb8c7"
    204       }
    205     },
    206     {
    207       "id": "event_admit_verified_operational_fallback_009",
    208       "kind": "event.admit_verified.valid",
    209       "input": {
    210         "event": {
    211           "id": "6739ed38175521d1b8a64592ec3407332ee24449e1e7353fd8f721c0995b9d8f",
    212           "pubkey": "585591529da0bab31b3b1b1f986611cf5f435dca84f978c89ee8a40cca7103df",
    213           "created_at": 1700000000,
    214           "kind": 30402,
    215           "tags": [
    216             ["d", "AAAAAAAAAAAAAAAAAAAAAg"],
    217             ["p", "585591529da0bab31b3b1b1f986611cf5f435dca84f978c89ee8a40cca7103df"],
    218             ["a", "30340:585591529da0bab31b3b1b1f986611cf5f435dca84f978c89ee8a40cca7103df:AAAAAAAAAAAAAAAAAAAAAA"],
    219             ["key", "carrot-nantes"],
    220             ["title", "Nantes Carrots"],
    221             ["category", "produce"],
    222             ["summary", "Fresh bunches harvested in Saanich"],
    223             ["published_at", "1700000000"],
    224             ["radroots:primary_bin", "bunch"],
    225             ["radroots:bin", "bunch", "1", "each"],
    226             ["radroots:price", "bunch", "4", "CAD", "1", "each"],
    227             ["price", "4", "CAD"],
    228             ["inventory", "24"],
    229             ["status", "active"],
    230             ["delivery", "pickup"],
    231             ["location", "Saanich Peninsula", "Victoria", "BC", "CA"],
    232             ["g", "c28hr"]
    233           ],
    234           "content": "# Nantes Carrots\n\nFresh bunches harvested in Saanich",
    235           "sig": "ef3413c4ac4be3f748fcb51b3e5b9b03c590f5f814dbd6ab3f2f2c26dbc87eb1347cefbe97abacce60f0c4530848695e766d3a950350c72089813b3318a3f944"
    236         }
    237       },
    238       "expected": {
    239         "variant": "contract_validated",
    240         "contract_id": "radroots.operational_listing.published.v1",
    241         "event_id": "6739ed38175521d1b8a64592ec3407332ee24449e1e7353fd8f721c0995b9d8f"
    242       }
    243     },
    244     {
    245       "id": "event_admit_verified_unsupported_kind_010",
    246       "kind": "event.admit_verified.invalid",
    247       "input": {
    248         "event": {
    249           "id": "a07878757d705d3cd848b9264791d699069068a5f0a575112f351367b0987958",
    250           "pubkey": "1b84c5567b126440995d3ed5aaba0565d71e1834604819ff9c17f5e9d5dd078f",
    251           "created_at": 1800000104,
    252           "kind": 65535,
    253           "tags": [],
    254           "content": "maximum-kind",
    255           "sig": "d79b19843a0bfd769c02c73866d44a3a06f7b11e107a5257971b60e700aa25565802fd3a7eed4042fe8db7d709a465e5f61478eb8291178831bf48f6b0980671"
    256         }
    257       },
    258       "expected": {
    259         "error_variant": "contract_match",
    260         "error_code": "unsupported_kind",
    261         "event_id": "a07878757d705d3cd848b9264791d699069068a5f0a575112f351367b0987958"
    262       }
    263     },
    264     {
    265       "id": "event_admit_verified_generic_nip99_excluded_011",
    266       "kind": "event.admit_verified.invalid",
    267       "input": {
    268         "event": {
    269           "id": "0d65719b6e73a64f55d95c38ba46e25e222a893d4ec0cdfe83747b1269118d3d",
    270           "pubkey": "79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798",
    271           "created_at": 1700000060,
    272           "kind": 30402,
    273           "tags": [
    274             ["d", "generic-offer"],
    275             ["title", "Generic Offer"]
    276           ],
    277           "content": "Carrots available this week.",
    278           "sig": "e533df401a4c6ddfd7dcfd2b3525e9fb8938748dcdc9492aa617ec50d966554511853704929b88b7fe791f3a36659f341b20245182574dd5e5353fa80f57d441"
    279         }
    280       },
    281       "expected": {
    282         "error_variant": "contract_match",
    283         "error_code": "unsupported_shape",
    284         "event_id": "0d65719b6e73a64f55d95c38ba46e25e222a893d4ec0cdfe83747b1269118d3d"
    285       }
    286     },
    287     {
    288       "id": "event_admit_verified_operational_invalid_shape_012",
    289       "kind": "event.admit_verified.invalid",
    290       "input": {
    291         "event": {
    292           "id": "c9e41f7d91b036e21fdce11ab88a5eda6cc19c93875f160f7632b1a844a59d40",
    293           "pubkey": "79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798",
    294           "created_at": 1700000060,
    295           "kind": 30402,
    296           "tags": [
    297             ["radroots:bin"],
    298             ["delivery"]
    299           ],
    300           "content": "Carrots available this week.",
    301           "sig": "1fc38e6183061bb64f2337941b96a6cc75067b85aa46b4780bd395f62961b54569872c51090bec9f97185add686e3e6e11a1aa0c593d63266c433a614f2d90af"
    302         }
    303       },
    304       "expected": {
    305         "error_variant": "contract_validation",
    306         "error_code": "missing_tag",
    307         "event_id": "c9e41f7d91b036e21fdce11ab88a5eda6cc19c93875f160f7632b1a844a59d40"
    308       }
    309     },
    310     {
    311       "id": "event_admit_verified_ambiguous_food_markers_013",
    312       "kind": "event.admit_verified.invalid",
    313       "input": {
    314         "event": {
    315           "id": "1e40dd34180c85871cc1a7369290876e004d56890ebca9a619f4c1f61e46d866",
    316           "pubkey": "79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798",
    317           "created_at": 1700000060,
    318           "kind": 30402,
    319           "tags": [
    320             ["radroots:price_unit"],
    321             ["radroots:price"]
    322           ],
    323           "content": "Carrots available this week.",
    324           "sig": "1da60ee3d831adae2aeb61df60c2e14f7168b696cf50a9362f326119d5c4d5a03dd8d6da1c9b10a29c3dd4ffbbfbe76404d758ee149bb56b13e2fe14eece385f"
    325         }
    326       },
    327       "expected": {
    328         "error_variant": "food_availability",
    329         "error_code": "food_profile_ambiguous",
    330         "event_id": "1e40dd34180c85871cc1a7369290876e004d56890ebca9a619f4c1f61e46d866"
    331       }
    332     }
    333   ]
    334 }