SpecProof: UniFi Access API official documentation

Every claim below traces to a page and a verbatim quote in the source document, or to a file and line in code. Source PDF sha256 d204c8b9ad4d329f. Repository · IBM Bob session evidence

Results

Endpoint sections extracted
108/108 (100.0%)
Items with a grounded citation
1406/1406 (100.0%)
Sections verified after the loop
115/116 (99.1%)
Audited precision (blind sample)
40/40 (100.0%)
95% CI 91.2% - 100.0%
Human-confirmed findings
28
CONFIRMED in review

Machine-verified numbers and human-confirmed numbers are labeled separately. Values are truncated, never rounded up.

Self-correction loop

After attempt 1: 97/116 sections without extraction errors
After retry 1: 111/116 sections without extraction errors
After retry 2: 115/116 sections without extraction errors
Final (terminal status): 115/116 sections without extraction errors

Findings (63)

Model User requires `id`, which the documented response of S-3.5 does not contain.

highREJECTEDCLIENT_REQUIRES_UNDOCUMENTED_FIELD · F-c73ffe14 · S-3.5
artifacts/work/py-unifi-access/unifi_access_api/models/user.py:18
class User

Model User types `pin_code` as string; the PDF on page 13 documents it as object.

mediumCONFIRMEDCLIENT_TYPE_MISMATCH · F-1f37a3fc · S-3.5
artifacts/work/py-unifi-access/unifi_access_api/models/user.py:18
class User
Document, page 13
pin_code Object Token associated with the bound PIN code.

Model Door types `is_bind_hub` as boolean; the PDF on page 137 documents it as string.

mediumREJECTEDCLIENT_TYPE_MISMATCH · F-b21d3b42 · S-7.8
artifacts/work/py-unifi-access/unifi_access_api/models/door.py:89
class Door
Document, page 137
is_bind_hub T String to a hub device. It can only be used for

Community enum for `topic` differs from the PDF on page 158: missing none, extra ['all'].

mediumCONFIRMEDCOMMUNITY_ENUM_MISMATCH · F-b3aac90a · S-9.3
artifacts/work/community_openapi.yaml:4967
#/paths/~1api~1v1~1developer~1system~1logs~1export/post/requestBody/content/application~1json/schema/properties/topic/enum
Document, page 158
topic T String door_openings

Community enum for `topic` differs from the PDF on page 156: missing none, extra ['all'].

mediumCONFIRMEDCOMMUNITY_ENUM_MISMATCH · F-c0e391d0 · S-9.2
artifacts/work/community_openapi.yaml:4892
#/paths/~1api~1v1~1developer~1system~1logs/post/requestBody/content/application~1json/schema/properties/topic/enum
Document, page 156
topic T String door_openings

Community spec has `access_methods`, which the PDF section does not document.

infoCONFIRMEDCOMMUNITY_EXTRA_FIELD · F-317997a8 · S-8.3
artifacts/work/community_openapi.yaml:4795
#/paths/~1api~1v1~1developer~1devices~1{device_id}~1settings/put/requestBody/content/application~1json/schema/properties/access_methods

Community spec has `resources`, which the PDF section does not document.

infoCONFIRMEDCOMMUNITY_EXTRA_FIELD · F-661399aa · S-5.3
artifacts/work/community_openapi.yaml:3003
#/paths/~1api~1v1~1developer~1access_policies~1{id}/put/requestBody/content/application~1json/schema/properties/resources

Community spec has `resources`, which the PDF section does not document.

infoCONFIRMEDCOMMUNITY_EXTRA_FIELD · F-7926672f · S-5.2
artifacts/work/community_openapi.yaml:2909
#/paths/~1api~1v1~1developer~1access_policies/post/requestBody/content/application~1json/schema/properties/resources

Community spec omits `bt_tap`, which the PDF documents on page 151.

lowREJECTEDCOMMUNITY_MISSING_FIELD · F-00efb06c · S-8.3
artifacts/work/community_openapi.yaml:4794
#/paths/~1api~1v1~1developer~1devices~1{device_id}~1settings/put/requestBody/content/application~1json/schema/properties
Document, page 151
bt_tap F Object

Community spec omits `face`, which the PDF documents on page 151.

lowREJECTEDCOMMUNITY_MISSING_FIELD · F-057fc198 · S-8.3
artifacts/work/community_openapi.yaml:4794
#/paths/~1api~1v1~1developer~1devices~1{device_id}~1settings/put/requestBody/content/application~1json/schema/properties
Document, page 151
face F Object Face Unlock access method setting.

Community spec omits `Id`, which the PDF documents on page 159.

lowREJECTEDCOMMUNITY_MISSING_FIELD · F-0bb8a784 · S-9.4
artifacts/work/community_openapi.yaml
#/paths/~1api~1v1~1developer~1system~1logs~1resource~1{id}/get/requestBody/properties
Document, page 159
Id T String b5b172381fec","display_name":

Community spec omits `Id`, which the PDF documents on page 77.

lowREJECTEDCOMMUNITY_MISSING_FIELD · F-0e257d8c · S-5.4
artifacts/work/community_openapi.yaml
#/paths/~1api~1v1~1developer~1access_policies~1{id}/delete/requestBody/properties
Document, page 77
Id T String Identity ID of the access policy.

Community spec omits `mobile_wave`, which the PDF documents on page 151.

lowREJECTEDCOMMUNITY_MISSING_FIELD · F-22e2f0e9 · S-8.3
artifacts/work/community_openapi.yaml:4794
#/paths/~1api~1v1~1developer~1devices~1{device_id}~1settings/put/requestBody/content/application~1json/schema/properties
Document, page 151
mobile_wave F Object Mobile Wave access method setting.

Community spec omits `Id`, which the PDF documents on page 78.

lowREJECTEDCOMMUNITY_MISSING_FIELD · F-2a2ebe0e · S-5.5
artifacts/work/community_openapi.yaml
#/paths/~1api~1v1~1developer~1access_policies~1{id}/get/requestBody/properties
Document, page 78
Id T String Identity ID of the access policy.

Community spec omits `id`, which the PDF documents on page 105.

lowREJECTEDCOMMUNITY_MISSING_FIELD · F-6546c17f · S-6.4
artifacts/work/community_openapi.yaml
#/paths/~1api~1v1~1developer~1credentials~1nfc_cards~1sessions~1{id}/delete/requestBody/properties
Document, page 105
id T String from the API

Community spec omits `nfc`, which the PDF documents on page 151.

lowREJECTEDCOMMUNITY_MISSING_FIELD · F-6cf173af · S-8.3
artifacts/work/community_openapi.yaml:4794
#/paths/~1api~1v1~1developer~1devices~1{device_id}~1settings/put/requestBody/content/application~1json/schema/properties
Document, page 151
nfc F Object NFC access method setting.

Community spec omits `resource`, which the PDF documents on page 76.

lowCONFIRMEDCOMMUNITY_MISSING_FIELD · F-7c094e3d · S-5.3
artifacts/work/community_openapi.yaml:2999
#/paths/~1api~1v1~1developer~1access_policies~1{id}/put/requestBody/content/application~1json/schema/properties
Document, page 76
resource F Array[Object] the access policy. Omit this parameter /api/v1/developer/door_groups/topology;

Community spec omits `Id`, which the PDF documents on page 87.

lowREJECTEDCOMMUNITY_MISSING_FIELD · F-8ae38c53 · S-5.11
artifacts/work/community_openapi.yaml
#/paths/~1api~1v1~1developer~1access_policies~1holiday_groups~1{id}/get/requestBody/properties
Document, page 87
Id T String Identity ID of the holiday group.

Community spec omits `cert`, which the PDF documents on page 191.

lowREJECTEDCOMMUNITY_MISSING_FIELD · F-933cc645 · S-12.1
artifacts/work/community_openapi.yaml
#/paths/~1api~1v1~1developer~1api_server~1certificates/post/requestBody/content/application~1json/schema/properties
Document, page 191
cert T File Certificate server.crt

Community spec omits `Id`, which the PDF documents on page 89.

lowREJECTEDCOMMUNITY_MISSING_FIELD · F-9d686227 · S-5.12
artifacts/work/community_openapi.yaml
#/paths/~1api~1v1~1developer~1access_policies~1holiday_groups/get/requestBody/properties
Document, page 89
Id T String Identity ID of the holiday group.

Community spec omits `pin_code`, which the PDF documents on page 151.

lowREJECTEDCOMMUNITY_MISSING_FIELD · F-9e0f7761 · S-8.3
artifacts/work/community_openapi.yaml:4794
#/paths/~1api~1v1~1developer~1devices~1{device_id}~1settings/put/requestBody/content/application~1json/schema/properties
Document, page 151
pin_code F Object PIN access method setting.

Community spec omits `wave`, which the PDF documents on page 151.

lowREJECTEDCOMMUNITY_MISSING_FIELD · F-a5b8c679 · S-8.3
artifacts/work/community_openapi.yaml:4794
#/paths/~1api~1v1~1developer~1devices~1{device_id}~1settings/put/requestBody/content/application~1json/schema/properties
Document, page 151
wave F Object Hand Wave access method setting.

Community spec omits `bt_button`, which the PDF documents on page 151.

lowREJECTEDCOMMUNITY_MISSING_FIELD · F-a7ca89ef · S-8.3
artifacts/work/community_openapi.yaml:4794
#/paths/~1api~1v1~1developer~1devices~1{device_id}~1settings/put/requestBody/content/application~1json/schema/properties
Document, page 151
bt_button F Object

Community spec omits `path`, which the PDF documents on page 160.

lowREJECTEDCOMMUNITY_MISSING_FIELD · F-acc5c7d6 · S-9.5
artifacts/work/community_openapi.yaml
#/paths/~1api~1v1~1developer~1system~1static~1{path}/get/requestBody/properties
Document, page 160
path T String

Community spec omits `file`, which the PDF documents on page 51.

lowREJECTEDCOMMUNITY_MISSING_FIELD · F-af2adf84 · S-3.30
artifacts/work/community_openapi.yaml
#/paths/~1api~1v1~1developer~1users~1{id}~1avatar/post/requestBody/content/application~1json/schema/properties
Document, page 51
file T File Profile picture image file to upload.

Community spec omits `id`, which the PDF documents on page 104.

lowREJECTEDCOMMUNITY_MISSING_FIELD · F-ca1d797f · S-6.3
artifacts/work/community_openapi.yaml
#/paths/~1api~1v1~1developer~1credentials~1nfc_cards~1sessions~1{id}/get/requestBody/properties
Document, page 104
id T String from the API

Community spec omits `resource`, which the PDF documents on page 74.

lowCONFIRMEDCOMMUNITY_MISSING_FIELD · F-cea82680 · S-5.2
artifacts/work/community_openapi.yaml:2905
#/paths/~1api~1v1~1developer~1access_policies/post/requestBody/content/application~1json/schema/properties
Document, page 74
resource F Array[Object] /api/v1/developer/door_groups/topology;

Community spec omits `touch_pass`, which the PDF documents on page 152.

lowREJECTEDCOMMUNITY_MISSING_FIELD · F-d938154e · S-8.3
artifacts/work/community_openapi.yaml:4794
#/paths/~1api~1v1~1developer~1devices~1{device_id}~1settings/put/requestBody/content/application~1json/schema/properties
Document, page 152
touch_pass F Object Touch Pass access method setting.

Community spec omits `qr_code`, which the PDF documents on page 151.

lowREJECTEDCOMMUNITY_MISSING_FIELD · F-f4d19869 · S-8.3
artifacts/work/community_openapi.yaml:4794
#/paths/~1api~1v1~1developer~1devices~1{device_id}~1settings/put/requestBody/content/application~1json/schema/properties
Document, page 151
qr_code F Object QR code access method setting.

Community spec omits `bt_shake`, which the PDF documents on page 151.

lowREJECTEDCOMMUNITY_MISSING_FIELD · F-fa8911b9 · S-8.3
artifacts/work/community_openapi.yaml:4794
#/paths/~1api~1v1~1developer~1devices~1{device_id}~1settings/put/requestBody/content/application~1json/schema/properties
Document, page 151
bt_shake F Object

Community spec omits `file`, which the PDF documents on page 124.

lowREJECTEDCOMMUNITY_MISSING_FIELD · F-fcda0304 · S-6.19
artifacts/work/community_openapi.yaml
#/paths/~1api~1v1~1developer~1credentials~1nfc_cards~1import/post/requestBody/content/application~1json/schema/properties
Document, page 124
file T File A CSV file containing NFC IDs or optional aliases.

Community spec omits `key`, which the PDF documents on page 191.

lowREJECTEDCOMMUNITY_MISSING_FIELD · F-fd1c6e5e · S-12.1
artifacts/work/community_openapi.yaml
#/paths/~1api~1v1~1developer~1api_server~1certificates/post/requestBody/content/application~1json/schema/properties
Document, page 191
key T File Private Key server.key

Community spec marks `room_name` as required; the PDF row on page 153 marks it optional (F).

mediumCONFIRMEDCOMMUNITY_REQUIRED_MISMATCH · F-47123097 · S-8.4
artifacts/work/community_openapi.yaml:4833
#/paths/~1api~1v1~1developer~1devices~1{device_id}~1doorbell/post/requestBody/content/application~1json/schema/required
Document, page 153
room_name F String

Document sample is not valid JSON

mediumCONFIRMEDSPEC_MALFORMED_SAMPLE · F-0156e6d0 · S-11.5
Document, page 177
curl -XPUT '{{host}}/api/v1/developer/webhooks/endpoints/a22ee283-c91f-432b-9d0f-

Document sample is not valid JSON

mediumCONFIRMEDSPEC_MALFORMED_SAMPLE · F-13962a9e · S-3.4
Document, page 17
"code": "SUCCESS",

Document sample is not valid JSON

mediumCONFIRMEDSPEC_MALFORMED_SAMPLE · F-2d465646 · S-11.4
Document, page 175
curl -XPOST '{{host}}/api/v1/developer/webhooks/endpoints'

Document sample is not valid JSON

mediumCONFIRMEDSPEC_MALFORMED_SAMPLE · F-64374118 · S-5.9
Document, page 85
curl -XPUT '{{host}}/api/v1/developer/access_policies/holiday_groups/7be7a7a0-818f-4f76-

Document sample is not valid JSON

mediumCONFIRMEDSPEC_MALFORMED_SAMPLE · F-93d0b6a1 · S-10.1
Document, page 162
curl -XPOST '{{host}}/api/v1/developer/users/identity/invitations'

Document sample is not valid JSON

mediumCONFIRMEDSPEC_MALFORMED_SAMPLE · F-c704b394 · S-3.24
Document, page 43
"code": "SUCCESS",

Document sample is not valid JSON

mediumCONFIRMEDSPEC_MALFORMED_SAMPLE · F-d0f1ee66 · S-6.15
Document, page 119
curl --location --request PUT

Sample omits deleted, which the document marks required

mediumREJECTEDSPEC_SAMPLE_INCOMPLETE · F-040d4cd9 · S-10.6
Document, page 169
"code": "SUCCESS",
Document, page 169
deleted T Boolean Indicate whether a resource is disabled.

Sample omits deleted, which the document marks required

mediumREJECTEDSPEC_SAMPLE_INCOMPLETE · F-103cd2b4 · S-10.2
Document, page 163
deleted T Boolean Indicate whether the resource is disabled.
Document, page 164
"code": "SUCCESS",

Sample omits id, which the document marks required

mediumREJECTEDSPEC_SAMPLE_INCOMPLETE · F-2ce06a9c · S-10.6
Document, page 169
"code": "SUCCESS",
Document, page 169
id T String user group. /api/v1/developer/user_groups

Sample omits id, which the document marks required

mediumREJECTEDSPEC_SAMPLE_INCOMPLETE · F-3202ab46 · S-10.4
Document, page 166
"code": "SUCCESS",
Document, page 166
id T String user. /api/v1/developer/users

Sample omits name, which the document marks required

mediumREJECTEDSPEC_SAMPLE_INCOMPLETE · F-37cb6094 · S-10.2
Document, page 163
name T String Name of the resources.
Document, page 164
"code": "SUCCESS",

Sample omits actor, which the document marks required

mediumREJECTEDSPEC_SAMPLE_INCOMPLETE · F-4896b535 · S-9.2
Document, page 156
actor T Object Information about the event operator.
Document, page 157
"code": "SUCCESS",

Sample omits event, which the document marks required

mediumREJECTEDSPEC_SAMPLE_INCOMPLETE · F-57e3eddb · S-9.2
Document, page 157
"code": "SUCCESS",
Document, page 157
event T Object Basic information about the event.

Sample omits deleted, which the document marks required

mediumREJECTEDSPEC_SAMPLE_INCOMPLETE · F-88db75e8 · S-10.4
Document, page 166
"code": "SUCCESS",
Document, page 166
deleted T Boolean Indicate whether a resource is disabled.

Sample omits name, which the document marks required

mediumREJECTEDSPEC_SAMPLE_INCOMPLETE · F-90f85c70 · S-10.4
Document, page 166
"code": "SUCCESS",
Document, page 166
name T String Name of the resources.

Sample omits week_schedule, which the document marks required

mediumCONFIRMEDSPEC_SAMPLE_INCOMPLETE · F-959533e6 · S-5.16
Document, page 98
"code": "SUCCESS",
Document, page 98
week_schedule T Object

Sample omits id, which the document marks required

mediumREJECTEDSPEC_SAMPLE_INCOMPLETE · F-9ee3d244 · S-10.2
Document, page 163
id T String Identity ID of the resources.
Document, page 164
"code": "SUCCESS",

Sample omits msg, which the document marks required

mediumCONFIRMEDSPEC_SAMPLE_INCOMPLETE · F-b2274bf9 · S-9.2
Document, page 157
"code": "SUCCESS",

Sample omits name, which the document marks required

mediumREJECTEDSPEC_SAMPLE_INCOMPLETE · F-ee160a81 · S-10.6
Document, page 169
"code": "SUCCESS",
Document, page 169
name T String Name of the resources.

Sample omits id, which the document marks required

mediumCONFIRMEDSPEC_SAMPLE_INCOMPLETE · F-f718c698 · S-5.15
Document, page 96
id T String /api/v1/developer/access_policies
Document, page 97
"code": "SUCCESS",

Sample value type contradicts the documented type of resources

highCONFIRMEDSPEC_SELF_INCONSISTENCY · F-0f3b02b5 · S-7.4
Document, page 131
resources F Array[String] this parameter if it doesn't need to /api/v1/developer/door_groups/topology
Document, page 132
"code": "SUCCESS",

Sample value violates the documented enum for visit_reason

highCONFIRMEDSPEC_SELF_INCONSISTENCY · F-2518a1ed · S-4.2
Document, page 52
visit_reason String Visit reason: enum reason {Interview,Business,Cooperation,Others}
Document, page 56
"visit_reason": "Interviemw",

Sample value type contradicts the documented type of the sample

highCONFIRMEDSPEC_SELF_INCONSISTENCY · F-318d603b · S-8.1
Document, page 147
"code": "SUCCESS",

Sample value type contradicts the documented type of touch_pass

highCONFIRMEDSPEC_SELF_INCONSISTENCY · F-41067aa7 · S-3.5
Document, page 13
touch_pass Array[Object]
Document, page 20
"code": "SUCCESS",

Sample value type contradicts the documented type of is_bind_hub

highCONFIRMEDSPEC_SELF_INCONSISTENCY · F-4406a47e · S-7.8
Document, page 137
is_bind_hub T String to a hub device. It can only be used for
Document, page 138
"code": "SUCCESS",

Sample value type contradicts the documented type of resources

highCONFIRMEDSPEC_SELF_INCONSISTENCY · F-623698f4 · S-7.3
Document, page 129
resources T String All doors contained under the group.
Document, page 130
"code": "SUCCESS",

Sample value type contradicts the documented type of is_bind_hub

highCONFIRMEDSPEC_SELF_INCONSISTENCY · F-72ea066d · S-7.7
Document, page 136
"code": "SUCCESS",
Document, page 136
is_bind_hub T String to a hub device. It can only be used for

Sample value type contradicts the documented type of resources

highCONFIRMEDSPEC_SELF_INCONSISTENCY · F-895887db · S-7.2
Document, page 128
"code": "SUCCESS",
Document, page 128
resources T Array[String] Collection of door ID. /api/v1/developer/door_groups/topology

Sample value violates the documented enum for visit_reason

highCONFIRMEDSPEC_SELF_INCONSISTENCY · F-a96f5336 · S-4.5
Document, page 52
visit_reason String Visit reason: enum reason {Interview,Business,Cooperation,Others}
Document, page 63
"first_name": "Test", "last_name": "L", "remarks": "", "mobile_phone": ""

Endpoints (108)

S-3.2POST/api/v1/developer/usersVERIFIED1886/6
S-3.3PUT/api/v1/developer/users/:idVERIFIED129298/8
S-3.4GET/api/v1/developer/users/:idVERIFIED_WITH_SPEC_FINDINGS224243/3
S-3.5GET/api/v1/developer/usersVERIFIED_WITH_SPEC_FINDINGS125254/4
S-3.6PUT/api/v1/developer/users/:id/access_policiesVERIFIED1773/3
S-3.7PUT/api/v1/developer/users/:id/nfc_cardsVERIFIED1884/4
S-3.8PUT/api/v1/developer/users/:id/nfc_cards/deleteVERIFIED1773/3
S-3.9PUT/api/v1/developer/users/:id/pin_codesVERIFIED1773/3
S-3.10DELETE/api/v1/developer/users/:id/pin_codesVERIFIED1772/2
S-3.11POST/api/v1/developer/user_groupsVERIFIED1883/3
S-3.12GET/api/v1/developer/user_groupsVERIFIED1551/1
S-3.13GET/api/v1/developer/user_groups/:idVERIFIED1662/2
S-3.14PUT/api/v1/developer/user_groups/:idVERIFIED1884/4
S-3.15DELETE/api/v1/developer/user_groups/:idVERIFIED1772/2
S-3.16POST/api/v1/developer/user_groups/:id/usersVERIFIED1772/2
S-3.17POST/api/v1/developer/user_groups/:id/users/deleteVERIFIED1772/2
S-3.18GET/api/v1/developer/user_groups/:id/usersVERIFIED123232/2
S-3.19GET/api/v1/developer/user_groups/:id/users/allVERIFIED123232/2
S-3.20GET/api/v1/developer/users/:id/access_policiesVERIFIED1773/3
S-3.21PUT/api/v1/developer/user_groups/:id/access_policiesVERIFIED1773/3
S-3.22GET/api/v1/developer/user_groups/:id/access_policiesVERIFIED1662/2
S-3.23DELETE/api/v1/developer/users/:idVERIFIED1772/2
S-3.24GET/api/v1/developer/users/searchVERIFIED_WITH_SPEC_FINDINGS228287/7
S-3.25PUT/api/v1/developer/users/:user_id/touch_passes/:touch_pass_idVERIFIED119193/3
S-3.26DELETE/api/v1/developer/users/:user_id/touch_passes/:touch_pass_idVERIFIED121213/3
S-3.27PUT/api/v1/developer/users/touch_passes/assignVERIFIED119191/1
S-3.28PUT/api/v1/developer/users/:id/license_platesVERIFIED1662/2
S-3.29DELETE/api/v1/developer/users/:user_id/license_plates/:license_plate_idVERIFIED1883/3
S-3.30POST/api/v1/developer/users/:id/avatarVERIFIED1883/3
S-4.2POST/api/v1/developer/visitorsVERIFIED_WITH_SPEC_FINDINGS1202017/17
S-4.3GET/api/v1/developer/visitors/:idVERIFIED2552/2
S-4.4GET/api/v1/developer/visitorsQUARANTINED310106/6
S-4.5PUT/api/v1/developer/visitors/:idVERIFIED_WITH_SPEC_FINDINGS2222218/18
S-4.6DELETE/api/v1/developer/visitors/:idVERIFIED1553/3
S-4.7PUT/api/v1/developer/visitors/:id/nfc_cardsVERIFIED2664/4
S-4.8PUT/api/v1/developer/visitors/:id/nfc_cards/deleteVERIFIED2553/3
S-4.9PUT/api/v1/developer/visitors/:id/pin_codesVERIFIED2553/3
S-4.10DELETE/api/v1/developer/visitors/:id/pin_codesVERIFIED2442/2
S-4.11PUT/api/v1/developer/visitors/:id/qr_codesVERIFIED3442/2
S-4.12DELETE/api/v1/developer/visitors/:id/qr_codesVERIFIED3442/2
S-4.13PUT/api/v1/developer/visitors/:id/license_platesVERIFIED3442/2
S-4.14DELETE/api/v1/developer/visitors/:visitor_id/license_plates/:license_plate_idVERIFIED3553/3
S-5.2POST/api/v1/developer/access_policiesVERIFIED116166/6
S-5.3PUT/api/v1/developer/access_policies/:idVERIFIED115157/7
S-5.4DELETE/api/v1/developer/access_policies/:idVERIFIED1772/2
S-5.5GET/api/v1/developer/access_policies/:idVERIFIED111112/2
S-5.6GET/api/v1/developer/access_policiesVERIFIED110101/1
S-5.8POST/api/v1/developer/access_policies/holiday_groupsVERIFIED1202010/10
S-5.9PUT/api/v1/developer/access_policies/holiday_groups/:idVERIFIED_WITH_SPEC_FINDINGS1202011/11
S-5.10DELETE/api/v1/developer/access_policies/holiday_groups/:idVERIFIED1772/2
S-5.11GET/api/v1/developer/access_policies/holiday_groups/:idVERIFIED111112/2
S-5.12GET/api/v1/developer/access_policies/holiday_groupsVERIFIED112122/2
S-5.14POST/api/v1/developer/access_policies/schedulesVERIFIED1222210/10
S-5.15PUT/api/v1/developer/access_policies/schedules/:idVERIFIED_WITH_SPEC_FINDINGS1222211/11
S-5.16GET/api/v1/developer/access_policies/schedules/:idVERIFIED_WITH_SPEC_FINDINGS115152/2
S-5.17GET/api/v1/developer/access_policies/schedulesVERIFIED113131/1
S-5.18DELETE/api/v1/developer/access_policies/schedules/:idVERIFIED2772/2
S-6.1POST/api/v1/developer/credentials/pin_codesVERIFIED1771/1
S-6.2POST/api/v1/developer/credentials/nfc_cards/sessionsVERIFIED1993/3
S-6.3GET/api/v1/developer/credentials/nfc_cards/sessions/:idVERIFIED1772/2
S-6.4DELETE/api/v1/developer/credentials/nfc_cards/sessions/:idVERIFIED1662/2
S-6.7GET/api/v1/developer/credentials/nfc_cards/tokens/:tokenVERIFIED116162/2
S-6.8GET/api/v1/developer/credentials/nfc_cards/tokensVERIFIED117173/3
S-6.9DELETE/api/v1/developer/credentials/nfc_cards/tokens/:tokenVERIFIED1772/2
S-6.10PUT/api/v1/developer/credentials/nfc_cards/tokens/:tokenVERIFIED1773/3
S-6.12GET/api/v1/developer/credentials/touch_passesVERIFIED124244/4
S-6.13GET/api/v1/developer/credentials/touch_passes/searchVERIFIED121212/2
S-6.14GET/api/v1/developer/credentials/touch_passes/assignableVERIFIED117171/1
S-6.15PUT/api/v1/developer/credentials/touch_passes/:idVERIFIED_WITH_SPEC_FINDINGS128287/7
S-6.16GET/api/v1/developer/credentials/touch_passes/:idVERIFIED121212/2
S-6.17POST/api/v1/developer/credentials/touch_passesVERIFIED118182/2
S-6.18GET/api/v1/developer/credentials/qr_codes/download/:visitor_idVERIFIED1552/2
S-6.19POST/api/v1/developer/credentials/nfc_cards/importVERIFIED1772/2
S-7.1GET/api/v1/developer/door_groups/topologyVERIFIED117171/1
S-7.2POST/api/v1/developer/door_groupsVERIFIED_WITH_SPEC_FINDINGS113133/3
S-7.3GET/api/v1/developer/door_groups/:idVERIFIED_WITH_SPEC_FINDINGS214142/2
S-7.4PUT/api/v1/developer/door_groups/:idVERIFIED_WITH_SPEC_FINDINGS213134/4
S-7.5GET/api/v1/developer/door_groupsVERIFIED110101/1
S-7.6DELETE/api/v1/developer/door_groups/:idVERIFIED1772/2
S-7.7GET/api/v1/developer/doors/:idVERIFIED_WITH_SPEC_FINDINGS115152/2
S-7.8GET/api/v1/developer/doorsVERIFIED_WITH_SPEC_FINDINGS114141/1
S-7.9PUT/api/v1/developer/doors/:id/unlockVERIFIED1994/4
S-7.10PUT/api/v1/developer/doors/:id/lock_ruleVERIFIED2994/4
S-7.11GET/api/v1/developer/doors/:id/lock_ruleVERIFIED2992/2
S-7.12PUT/api/v1/developer/doors/settings/emergencyVERIFIED2773/3
S-7.13GET/api/v1/developer/doors/settings/emergencyVERIFIED1771/1
S-8.1GET/api/v1/developer/devicesVERIFIED_WITH_SPEC_FINDINGS110102/2
S-8.2GET/api/v1/developer/devices/:device_id/settingsVERIFIED131312/2
S-8.3PUT/api/v1/developer/devices/:device_id/settingsVERIFIED1333325/25
S-8.4POST/api/v1/developer/devices/:device_id/doorbellVERIFIED110104/4
S-9.2POST/api/v1/developer/system/logsVERIFIED_WITH_SPEC_FINDINGS117177/7
S-9.3POST/api/v1/developer/system/logs/exportVERIFIED111116/6
S-9.4GET/api/v1/developer/system/logs/resource/:idVERIFIED1662/2
S-9.5GET/api/v1/developer/system/static/:pathVERIFIED1552/2
S-10.1POST/api/v1/developer/users/identity/invitationsVERIFIED_WITH_SPEC_FINDINGS1883/3
S-10.2GET/api/v1/developer/users/identity/assignmentsVERIFIED_WITH_SPEC_FINDINGS112122/2
S-10.3POST/api/v1/developer/users/:id/identity/assignmentsVERIFIED110104/4
S-10.4GET/api/v1/developer/users/:id/identity/assignmentsVERIFIED_WITH_SPEC_FINDINGS111112/2
S-10.5POST/api/v1/developer/user_groups/:id/identity/assignmentsVERIFIED110104/4
S-10.6GET/api/v1/developer/user_groups/:id/identity/assignmentsVERIFIED_WITH_SPEC_FINDINGS111112/2
S-11.1GET/api/v1/developer/devices/notificationsVERIFIED1220/0
S-11.3GET/api/v1/developer/webhooks/endpointsVERIFIED111111/1
S-11.4POST/api/v1/developer/webhooks/endpointsVERIFIED_WITH_SPEC_FINDINGS110104/4
S-11.5PUT/api/v1/developer/webhooks/endpoints/:idVERIFIED_WITH_SPEC_FINDINGS110105/5
S-11.6DELETE/api/v1/developer/webhooks/endpoints/:idVERIFIED1772/2
S-11.7POSTVERIFIED1331/1
S-12.1POST/api/v1/developer/api_server/certificatesVERIFIED1883/3
S-12.2DELETE/api/v1/developer/api_server/certificatesVERIFIED1661/1

Community spec and client code

Community OpenAPI comparison

30 candidate findings, 8 human-confirmed
  • COMMUNITY_ENUM_MISMATCH: 2
  • COMMUNITY_EXTRA_FIELD: 3
  • COMMUNITY_MISSING_FIELD: 24
  • COMMUNITY_REQUIRED_MISMATCH: 1

Client conformance (py-unifi-access)

3 candidate findings, 1 human-confirmed
  • CLIENT_REQUIRES_UNDOCUMENTED_FIELD: 1
  • CLIENT_TYPE_MISMATCH: 2

Spec self-consistency

30 candidate findings, 19 human-confirmed
  • SPEC_MALFORMED_SAMPLE: 7
  • SPEC_SAMPLE_INCOMPLETE: 14
  • SPEC_SELF_INCONSISTENCY: 9

How this was built

PartBuilt or produced byEvidence
Deterministic engine (ingest, segment, verify, loop, compare, conformance, metrics, report)Claude CodeCommits with Refs: T01-T06, T09-T12; docs/AI_USAGE_LOG.md
Spec extraction: reading the PDF and writing cited contractsIBM Bob 2.0 (spec-auditor mode, specproof-extract skill)artifacts/contract/*.json (producer ibm-bob); bob_sessions/INDEX.md
Chapter fan-out and parallel extractionIBM Bob 2.0 subagents and background tasksT08 session exports
Retry loop over verifier feedbackIBM Bob 2.0 (/sp-loop), judged only by the deterministic verifierartifacts/feedback/, verification/*_attempt*.json
Client model to section mappingIBM Bob 2.0 (spec-auditor mode), validated deterministicallyartifacts/conformance/mapping.yaml
Verification verdictsDeterministic Python only; no model judges its own outputsrc/specproof/verify/ (no LLM calls)

Methodology

RuleCheck
V1Contract JSON is valid against the schema
V2Each quote appears verbatim on its cited page; names appear in their quotes; enum values appear in their citations; samples are verbatim
V2bRequired flag and type match the single-line table row
V3The document's own samples parse as JSON and validate against the extracted contract
V4Method and path match the deterministic segmenter's hints
V5Every table row the detector finds is present in the contract

A sample conflict becomes a finding about the document only when both sides are grounded in the document. Otherwise the section is retried (at most 3 attempts) or quarantined.

Limitations

Prior art

WorkWhat it doesWhat it does not do
SpeCrawler (arXiv 2402.11625, 2024)LLM pipeline that generates OpenAPI specs from API documentationPer-claim citations, deterministic verification, code conformance
Trail of Bits Spec-to-Code Compliance CheckerLLM audit of code against a spec, citing sections and linesThe LLM judges compliance; no machine contract; no sample replay
Community UniFi OpenAPI (YuDefine)One-off conversion of this PDF with MinerU + ClaudeVerification; the authors warn of omissions and errors
OpenAPI diff tools (oasdiff, openapi-diff)Diff two machine-readable specsA machine-readable spec must already exist
Contract testing (Pact, Schemathesis)Test against a machine-readable contractA machine-readable contract must already exist

Lineage

Artifactsha256StageProducer
artifacts/conformance/mapping.yamld57320de564bmapexternal
artifacts/conformance/test_sample_replay.pyc81171c4f89aconformdeterministic
artifacts/contract/S-10.1.json3a161bb2749eextractexternal
artifacts/contract/S-10.2.json44966fb5decfextractexternal
artifacts/contract/S-10.3.json548ae0ab801fextractexternal
artifacts/contract/S-10.4.json628194523e6bextractexternal
artifacts/contract/S-10.5.json1e10cba2718aextractexternal
artifacts/contract/S-10.6.jsona2a86366d2f8extractexternal
artifacts/contract/S-11.1.jsonf8560e7b1d16extractexternal
artifacts/contract/S-11.3.jsonba5f8e87b85bextractexternal
artifacts/contract/S-11.4.json91aaebec6ca0extractexternal
artifacts/contract/S-11.5.json80a73ff9ab0fextractexternal
artifacts/contract/S-11.6.json0bd6cbaebdb8extractexternal
artifacts/contract/S-11.7.jsonfeda930c2834extractexternal
artifacts/contract/S-12.1.jsondd1e64e90084extractexternal
artifacts/contract/S-12.2.jsone93b85c8fb70extractexternal
artifacts/contract/S-2.8.jsonb02e19975250extractexternal
artifacts/contract/S-3.1.json4f507923b1adextractexternal
artifacts/contract/S-3.10.json71f298f64704extractexternal
artifacts/contract/S-3.11.json1cf4b57df15cextractexternal
artifacts/contract/S-3.12.json462d4db3fc21extractexternal
artifacts/contract/S-3.13.jsona1dcc8f7f069extractexternal
artifacts/contract/S-3.14.jsonf84987652ba9extractexternal
artifacts/contract/S-3.15.json96a4f341503eextractexternal
artifacts/contract/S-3.16.json3f1bf5053786extractexternal
artifacts/contract/S-3.17.json1d575e856111extractexternal
artifacts/contract/S-3.18.json03c58b6ce4fbextractexternal
artifacts/contract/S-3.19.jsonc368123637c6extractexternal
artifacts/contract/S-3.2.json5ea8c7b55be7extractibm-bob
artifacts/contract/S-3.20.json71b6be5ca8b0extractexternal
artifacts/contract/S-3.21.json5a080b95504cextractexternal
artifacts/contract/S-3.22.json9429541f29d5extractexternal
artifacts/contract/S-3.23.json50b378489421extractexternal
artifacts/contract/S-3.24.json20a509d9f8f9extractexternal
artifacts/contract/S-3.25.jsona757a6ab3dbfextractexternal
artifacts/contract/S-3.26.json005f0feb8f6fextractexternal
artifacts/contract/S-3.27.jsonae43675b0cb0extractexternal
artifacts/contract/S-3.28.json9c70704ae8c9extractexternal
artifacts/contract/S-3.29.json64e6c92f9defextractexternal
artifacts/contract/S-3.3.jsoncc00b4ec18feextractexternal
artifacts/contract/S-3.30.json0bcf089555fbextractexternal
artifacts/contract/S-3.4.json889b92e2e164extractexternal
artifacts/contract/S-3.5.jsone8b59b74ad3bextractexternal
artifacts/contract/S-3.6.json36a320f79558extractexternal
artifacts/contract/S-3.7.json333417fc7621extractexternal
artifacts/contract/S-3.8.jsonc260ba349710extractexternal
artifacts/contract/S-3.9.json95af076004d2extractexternal
artifacts/contract/S-4.1.json1ddc6e8e228eextractibm-bob
artifacts/contract/S-4.10.json09f41177833fextractexternal
artifacts/contract/S-4.11.json193bfba5a029extractexternal
artifacts/contract/S-4.12.json03f7cc9b8bd8extractexternal
artifacts/contract/S-4.13.json5d6e9c58381dextractexternal
artifacts/contract/S-4.14.jsonc6895795b0f5extractexternal
artifacts/contract/S-4.2.json4271a52e1fddextractibm-bob
artifacts/contract/S-4.3.json9352bee488f4extractexternal
artifacts/contract/S-4.4.json685a55229c1eextractexternal
artifacts/contract/S-4.5.json4a45ed006195extractexternal
artifacts/contract/S-4.6.jsonebf8f4b0a2f1extractibm-bob
artifacts/contract/S-4.7.jsonc8e1fd24a6e2extractexternal
artifacts/contract/S-4.8.jsoncf411d798b67extractexternal
artifacts/contract/S-4.9.jsonb947122bb4acextractexternal
artifacts/contract/S-5.1.json83f04a79c6baextractexternal
artifacts/contract/S-5.10.json5aae5d82d384extractexternal
artifacts/contract/S-5.11.json2cd91a0155d1extractexternal
artifacts/contract/S-5.12.json7f9178ff0b33extractexternal
artifacts/contract/S-5.13.json50b2f96af3b0extractexternal
artifacts/contract/S-5.14.json7cb508b02e99extractexternal
artifacts/contract/S-5.15.json75858fab09e6extractexternal
artifacts/contract/S-5.16.json009439be9e13extractexternal
artifacts/contract/S-5.17.json23f179b63a41extractexternal
artifacts/contract/S-5.18.jsonb22d85ca9a84extractexternal
artifacts/contract/S-5.2.jsonc6e3385c4167extractexternal
artifacts/contract/S-5.3.json607d88990b57extractexternal
artifacts/contract/S-5.4.json07d3eb92aee2extractexternal
artifacts/contract/S-5.5.jsonbdc1331c4488extractexternal
artifacts/contract/S-5.6.jsonddff1fb99116extractexternal
artifacts/contract/S-5.7.json3b9c641e4e72extractexternal
artifacts/contract/S-5.8.jsond26b0af2a56fextractexternal
artifacts/contract/S-5.9.json5c4094f09c17extractexternal
artifacts/contract/S-6.1.json4f2c051d9a5cextractexternal
artifacts/contract/S-6.10.jsoncd9ee4677c90extractexternal
artifacts/contract/S-6.11.json0364c8308555extractexternal
artifacts/contract/S-6.12.json033de9e565f8extractexternal
artifacts/contract/S-6.13.jsone0e22bcf2415extractexternal
artifacts/contract/S-6.14.jsonbce29ef76df3extractexternal
artifacts/contract/S-6.15.jsonf28055206398extractexternal
artifacts/contract/S-6.16.jsonf0c54e7aae37extractexternal
artifacts/contract/S-6.17.json1a27a90cb94aextractexternal
artifacts/contract/S-6.18.jsonafa2e3e0c3caextractexternal
artifacts/contract/S-6.19.jsond21185795d02extractexternal
artifacts/contract/S-6.2.jsonf02f11c87240extractexternal
artifacts/contract/S-6.3.jsonc97e61dff26bextractexternal
artifacts/contract/S-6.4.json63fa4361b4d3extractexternal
artifacts/contract/S-6.6.json012a0b4844a6extractexternal
artifacts/contract/S-6.7.jsonbf0e6348096aextractexternal
artifacts/contract/S-6.8.json6a4d24d6946aextractexternal
artifacts/contract/S-6.9.json98170cb29c2eextractexternal
artifacts/contract/S-7.1.json8d7a9a71dfddextractexternal
artifacts/contract/S-7.10.jsonec1b20a73ef4extractexternal
artifacts/contract/S-7.11.jsonf117ba5db90bextractexternal
artifacts/contract/S-7.12.json8449660733feextractexternal
artifacts/contract/S-7.13.json0ad134a4406cextractexternal
artifacts/contract/S-7.2.json56ad245b0bfbextractexternal
artifacts/contract/S-7.3.jsonbab4474e112bextractexternal
artifacts/contract/S-7.4.jsone27ee5d9a97cextractexternal
artifacts/contract/S-7.5.json6aa708698e26extractexternal
artifacts/contract/S-7.6.json7fc7420941c3extractexternal
artifacts/contract/S-7.7.json93f71f974ef1extractexternal
artifacts/contract/S-7.8.jsona683aee33a54extractexternal
artifacts/contract/S-7.9.json348e6db8a450extractexternal
artifacts/contract/S-8.1.json2a5fdf103a81extractexternal
artifacts/contract/S-8.2.jsonecaf2189d2d0extractexternal
artifacts/contract/S-8.3.jsoncefab533beb1extractexternal
artifacts/contract/S-8.4.jsonc8f01fe6bd4cextractexternal
artifacts/contract/S-9.2.jsonf551150c7dbbextractexternal
artifacts/contract/S-9.3.jsone44400cc8047extractexternal
artifacts/contract/S-9.4.jsona4e8687d2074extractexternal
artifacts/contract/S-9.5.jsondf98497f5d62extractexternal
artifacts/determinism.json674fb6ac0ccadeterminismdeterministic
artifacts/eval_result.json1f0a334313d0evaldeterministic
artifacts/feedback/S-3.24.md61d5e7fd9079classifydeterministic
artifacts/feedback/S-3.4.md1c4a45278e8cclassifydeterministic
artifacts/feedback/S-4.10.mddd5099698b7aclassifydeterministic
artifacts/feedback/S-4.11.md14b0ad416bccclassifydeterministic
artifacts/feedback/S-4.12.md5f998ac677c0classifydeterministic
artifacts/feedback/S-4.13.mdce4f3cfc3304classifydeterministic
artifacts/feedback/S-4.14.mdfa115874697dclassifydeterministic
artifacts/feedback/S-4.3.md7d2304ebbae3classifydeterministic
artifacts/feedback/S-4.4.md3c0ff3554540classifydeterministic
artifacts/feedback/S-4.5.md12abb2745e79classifydeterministic
artifacts/feedback/S-4.7.md12b37068647dclassifydeterministic
artifacts/feedback/S-4.8.mdb2ac9dae60abclassifydeterministic
artifacts/feedback/S-4.9.mdf09cb1376a4dclassifydeterministic
artifacts/feedback/S-5.18.md400e17705f11classifydeterministic
artifacts/feedback/S-7.10.mdbde920882188classifydeterministic
artifacts/feedback/S-7.11.md304b578e02e5classifydeterministic
artifacts/feedback/S-7.12.md6703ec261ec9classifydeterministic
artifacts/feedback/S-7.3.md1d0aa86cc3cdclassifydeterministic
artifacts/feedback/S-7.4.md388c836766aeclassifydeterministic
artifacts/findings.json80ef3c9eea23reportdeterministic
artifacts/findings.sarif355945b5c28dreportdeterministic
artifacts/findings/community.json6d57dac5d1ebcomparedeterministic
artifacts/findings/conformance.jsonf55b0362067bconformdeterministic
artifacts/findings/spec.json3ce9596168b8classifydeterministic
artifacts/metrics.json1a22b8cdbf1cmetricsdeterministic
artifacts/openapi.specproof.yaml4f08cd94b083exportdeterministic
artifacts/report/index.html3979fb073c21reportdeterministic
artifacts/sections_index.jsone96d2804f8fdsegmentdeterministic
artifacts/status.json78b2e65bda4dclassifydeterministic
artifacts/verification/S-10.1.jsona6e8bd2c12baverifydeterministic
artifacts/verification/S-10.1_attempt1.jsona6e8bd2c12baverifydeterministic
artifacts/verification/S-10.2.json2f916329925cverifydeterministic
artifacts/verification/S-10.2_attempt1.json2f916329925cverifydeterministic
artifacts/verification/S-10.3.json60f7837d770bverifydeterministic
artifacts/verification/S-10.3_attempt1.json60f7837d770bverifydeterministic
artifacts/verification/S-10.4.json0be67a3a711cverifydeterministic
artifacts/verification/S-10.4_attempt1.json0be67a3a711cverifydeterministic
artifacts/verification/S-10.5.json395c7cd9a0a7verifydeterministic
artifacts/verification/S-10.5_attempt1.json395c7cd9a0a7verifydeterministic
artifacts/verification/S-10.6.json33436c6bb83bverifydeterministic
artifacts/verification/S-10.6_attempt1.json33436c6bb83bverifydeterministic
artifacts/verification/S-11.1.json9d3e4712196averifydeterministic
artifacts/verification/S-11.1_attempt1.json9d3e4712196averifydeterministic
artifacts/verification/S-11.3.json2c1b5768cb5bverifydeterministic
artifacts/verification/S-11.3_attempt1.json2c1b5768cb5bverifydeterministic
artifacts/verification/S-11.4.json95a7bcc6ec96verifydeterministic
artifacts/verification/S-11.4_attempt1.json95a7bcc6ec96verifydeterministic
artifacts/verification/S-11.5.json718da37eac40verifydeterministic
artifacts/verification/S-11.5_attempt1.json718da37eac40verifydeterministic
artifacts/verification/S-11.6.json2063f97e0e68verifydeterministic
artifacts/verification/S-11.6_attempt1.json2063f97e0e68verifydeterministic
artifacts/verification/S-11.7.json73a32d502e3cverifydeterministic
artifacts/verification/S-11.7_attempt1.json73a32d502e3cverifydeterministic
artifacts/verification/S-12.1.jsonaae982560483verifydeterministic
artifacts/verification/S-12.1_attempt1.jsonaae982560483verifydeterministic
artifacts/verification/S-12.2.jsoncbff4f7223c0verifydeterministic
artifacts/verification/S-12.2_attempt1.jsoncbff4f7223c0verifydeterministic
artifacts/verification/S-2.8.json59a197edd1e4verifydeterministic
artifacts/verification/S-2.8_attempt1.json59a197edd1e4verifydeterministic
artifacts/verification/S-3.1.jsonfef77abec33everifydeterministic
artifacts/verification/S-3.10.json8e7b9c893689verifydeterministic
artifacts/verification/S-3.10_attempt1.json8e7b9c893689verifydeterministic
artifacts/verification/S-3.11.json511e35a17b64verifydeterministic
artifacts/verification/S-3.11_attempt1.json511e35a17b64verifydeterministic
artifacts/verification/S-3.12.jsonc45e617af589verifydeterministic
artifacts/verification/S-3.12_attempt1.jsonc45e617af589verifydeterministic
artifacts/verification/S-3.13.json9c191db5f969verifydeterministic
artifacts/verification/S-3.13_attempt1.json9c191db5f969verifydeterministic
artifacts/verification/S-3.14.json792ba797dd59verifydeterministic
artifacts/verification/S-3.14_attempt1.json792ba797dd59verifydeterministic
artifacts/verification/S-3.15.jsoncf0f17a7d55bverifydeterministic
artifacts/verification/S-3.15_attempt1.jsoncf0f17a7d55bverifydeterministic
artifacts/verification/S-3.16.json3409b5cbf721verifydeterministic
artifacts/verification/S-3.16_attempt1.json3409b5cbf721verifydeterministic
artifacts/verification/S-3.17.json657b5c776a42verifydeterministic
artifacts/verification/S-3.17_attempt1.json657b5c776a42verifydeterministic
artifacts/verification/S-3.18.json22f8fff7dbf2verifydeterministic
artifacts/verification/S-3.18_attempt1.json22f8fff7dbf2verifydeterministic
artifacts/verification/S-3.19.jsonae8d466ca7cbverifydeterministic
artifacts/verification/S-3.19_attempt1.jsonae8d466ca7cbverifydeterministic
artifacts/verification/S-3.1_attempt1.jsonfef77abec33everifydeterministic
artifacts/verification/S-3.2.jsonce2f04ce6895verifydeterministic
artifacts/verification/S-3.20.json0d260b289fa4verifydeterministic
artifacts/verification/S-3.20_attempt1.json0d260b289fa4verifydeterministic
artifacts/verification/S-3.21.jsond6b39c0e9df2verifydeterministic
artifacts/verification/S-3.21_attempt1.jsond6b39c0e9df2verifydeterministic
artifacts/verification/S-3.22.json620df9abeb5bverifydeterministic
artifacts/verification/S-3.22_attempt1.json620df9abeb5bverifydeterministic
artifacts/verification/S-3.23.json266f09f4071bverifydeterministic
artifacts/verification/S-3.23_attempt1.json266f09f4071bverifydeterministic
artifacts/verification/S-3.24.json0bb528cba52bverifydeterministic
artifacts/verification/S-3.24_attempt1.jsona4ad8e12db28verifydeterministic
artifacts/verification/S-3.24_attempt2.json0bb528cba52bverifydeterministic
artifacts/verification/S-3.25.jsondafeed0ed03fverifydeterministic
artifacts/verification/S-3.25_attempt1.jsondafeed0ed03fverifydeterministic
artifacts/verification/S-3.26.jsonea7957ec6212verifydeterministic
artifacts/verification/S-3.26_attempt1.jsonea7957ec6212verifydeterministic
artifacts/verification/S-3.27.json72410223613dverifydeterministic
artifacts/verification/S-3.27_attempt1.json72410223613dverifydeterministic
artifacts/verification/S-3.28.jsond08701a2ab96verifydeterministic
artifacts/verification/S-3.28_attempt1.jsond08701a2ab96verifydeterministic
artifacts/verification/S-3.29.jsonb1997a432178verifydeterministic
artifacts/verification/S-3.29_attempt1.jsonb1997a432178verifydeterministic
artifacts/verification/S-3.2_attempt1.jsonce2f04ce6895verifydeterministic
artifacts/verification/S-3.3.json10cf4aebf1e7verifydeterministic
artifacts/verification/S-3.30.json19a67ebdf532verifydeterministic
artifacts/verification/S-3.30_attempt1.json19a67ebdf532verifydeterministic
artifacts/verification/S-3.3_attempt1.json10cf4aebf1e7verifydeterministic
artifacts/verification/S-3.4.json9a590b95dca2verifydeterministic
artifacts/verification/S-3.4_attempt1.jsona9f771e7eaa8verifydeterministic
artifacts/verification/S-3.4_attempt2.json9a590b95dca2verifydeterministic
artifacts/verification/S-3.5.json552574cdb0dbverifydeterministic
artifacts/verification/S-3.5_attempt1.json552574cdb0dbverifydeterministic
artifacts/verification/S-3.6.json0b72314040b4verifydeterministic
artifacts/verification/S-3.6_attempt1.json0b72314040b4verifydeterministic
artifacts/verification/S-3.7.jsonb72163395d9bverifydeterministic
artifacts/verification/S-3.7_attempt1.jsonb72163395d9bverifydeterministic
artifacts/verification/S-3.8.json8c6d5524fc98verifydeterministic
artifacts/verification/S-3.8_attempt1.json8c6d5524fc98verifydeterministic
artifacts/verification/S-3.9.json07181ef94a9averifydeterministic
artifacts/verification/S-3.9_attempt1.json07181ef94a9averifydeterministic
artifacts/verification/S-4.1.json366945e24f7cverifydeterministic
artifacts/verification/S-4.10.json8262e58b36f5verifydeterministic
artifacts/verification/S-4.10_attempt1.json320f7d872f4cverifydeterministic
artifacts/verification/S-4.10_attempt2.json8262e58b36f5verifydeterministic
artifacts/verification/S-4.11.jsonf2bb568e279averifydeterministic
artifacts/verification/S-4.11_attempt1.jsone02cd2f015a4verifydeterministic
artifacts/verification/S-4.11_attempt2.json2d4a0d6cec4averifydeterministic
artifacts/verification/S-4.11_attempt3.jsonf2bb568e279averifydeterministic
artifacts/verification/S-4.12.json1b641875fa00verifydeterministic
artifacts/verification/S-4.12_attempt1.jsoncc467e02751dverifydeterministic
artifacts/verification/S-4.12_attempt2.json296922c7d608verifydeterministic
artifacts/verification/S-4.12_attempt3.json1b641875fa00verifydeterministic
artifacts/verification/S-4.13.jsona496812d71f0verifydeterministic
artifacts/verification/S-4.13_attempt1.json58089fbc2b3fverifydeterministic
artifacts/verification/S-4.13_attempt2.jsonec35b9f1e20everifydeterministic
artifacts/verification/S-4.13_attempt3.jsona496812d71f0verifydeterministic
artifacts/verification/S-4.14.jsonff1f9d85f920verifydeterministic
artifacts/verification/S-4.14_attempt1.json15c3d4bc2e17verifydeterministic
artifacts/verification/S-4.14_attempt2.json15a841f34600verifydeterministic
artifacts/verification/S-4.14_attempt3.jsonff1f9d85f920verifydeterministic
artifacts/verification/S-4.1_attempt1.json366945e24f7cverifydeterministic
artifacts/verification/S-4.2.json50516f227065verifydeterministic
artifacts/verification/S-4.2_attempt1.json50516f227065verifydeterministic
artifacts/verification/S-4.3.json5ffd90977674verifydeterministic
artifacts/verification/S-4.3_attempt1.json63f251dec02bverifydeterministic
artifacts/verification/S-4.3_attempt2.json5ffd90977674verifydeterministic
artifacts/verification/S-4.4.json1b6d2e8c1345verifydeterministic
artifacts/verification/S-4.4_attempt1.json3f1fc4e5ea90verifydeterministic
artifacts/verification/S-4.4_attempt2.jsond5329c67b881verifydeterministic
artifacts/verification/S-4.4_attempt3.json1b6d2e8c1345verifydeterministic
artifacts/verification/S-4.5.json4148aebb6e64verifydeterministic
artifacts/verification/S-4.5_attempt1.json4c2ae0ed6c19verifydeterministic
artifacts/verification/S-4.5_attempt2.json4148aebb6e64verifydeterministic
artifacts/verification/S-4.6.jsonad5e1b7cc22everifydeterministic
artifacts/verification/S-4.6_attempt1.jsonad5e1b7cc22everifydeterministic
artifacts/verification/S-4.7.json36049c06e1f0verifydeterministic
artifacts/verification/S-4.7_attempt1.json24c654241b23verifydeterministic
artifacts/verification/S-4.7_attempt2.json36049c06e1f0verifydeterministic
artifacts/verification/S-4.8.json2c2ed703d037verifydeterministic
artifacts/verification/S-4.8_attempt1.jsone528fd827105verifydeterministic
artifacts/verification/S-4.8_attempt2.json2c2ed703d037verifydeterministic
artifacts/verification/S-4.9.json85395870af6bverifydeterministic
artifacts/verification/S-4.9_attempt1.jsoncd59d45c4dbbverifydeterministic
artifacts/verification/S-4.9_attempt2.json85395870af6bverifydeterministic
artifacts/verification/S-5.1.jsonb186baf70e86verifydeterministic
artifacts/verification/S-5.10.json1f8496c30774verifydeterministic
artifacts/verification/S-5.10_attempt1.json1f8496c30774verifydeterministic
artifacts/verification/S-5.11.json0952110bbca0verifydeterministic
artifacts/verification/S-5.11_attempt1.json0952110bbca0verifydeterministic
artifacts/verification/S-5.12.json35f78a8f6d98verifydeterministic
artifacts/verification/S-5.12_attempt1.json35f78a8f6d98verifydeterministic
artifacts/verification/S-5.13.json5ab1b50f2aedverifydeterministic
artifacts/verification/S-5.13_attempt1.json5ab1b50f2aedverifydeterministic
artifacts/verification/S-5.14.json5f2b40e30594verifydeterministic
artifacts/verification/S-5.14_attempt1.json5f2b40e30594verifydeterministic
artifacts/verification/S-5.15.jsone287d1fda0b5verifydeterministic
artifacts/verification/S-5.15_attempt1.jsone287d1fda0b5verifydeterministic
artifacts/verification/S-5.16.json58394a2c49f6verifydeterministic
artifacts/verification/S-5.16_attempt1.json58394a2c49f6verifydeterministic
artifacts/verification/S-5.17.jsond8180f37a8e0verifydeterministic
artifacts/verification/S-5.17_attempt1.jsond8180f37a8e0verifydeterministic
artifacts/verification/S-5.18.jsonfcbabd8299d8verifydeterministic
artifacts/verification/S-5.18_attempt1.json06465fc4433cverifydeterministic
artifacts/verification/S-5.18_attempt2.jsonfcbabd8299d8verifydeterministic
artifacts/verification/S-5.1_attempt1.jsonb186baf70e86verifydeterministic
artifacts/verification/S-5.2.json1ff4d877606fverifydeterministic
artifacts/verification/S-5.2_attempt1.json1ff4d877606fverifydeterministic
artifacts/verification/S-5.3.json3a3b5bcddff8verifydeterministic
artifacts/verification/S-5.3_attempt1.json3a3b5bcddff8verifydeterministic
artifacts/verification/S-5.4.json22d8a72b3ad2verifydeterministic
artifacts/verification/S-5.4_attempt1.json22d8a72b3ad2verifydeterministic
artifacts/verification/S-5.5.jsona6026344df5averifydeterministic
artifacts/verification/S-5.5_attempt1.jsona6026344df5averifydeterministic
artifacts/verification/S-5.6.json6eb1aa550b80verifydeterministic
artifacts/verification/S-5.6_attempt1.json6eb1aa550b80verifydeterministic
artifacts/verification/S-5.7.json965c771f5c63verifydeterministic
artifacts/verification/S-5.7_attempt1.json965c771f5c63verifydeterministic
artifacts/verification/S-5.8.jsonf6b71404b97everifydeterministic
artifacts/verification/S-5.8_attempt1.jsonf6b71404b97everifydeterministic
artifacts/verification/S-5.9.json4c03cc7df804verifydeterministic
artifacts/verification/S-5.9_attempt1.json4c03cc7df804verifydeterministic
artifacts/verification/S-6.1.json33b2ed0b8430verifydeterministic
artifacts/verification/S-6.10.jsond8e820188dc9verifydeterministic
artifacts/verification/S-6.10_attempt1.jsond8e820188dc9verifydeterministic
artifacts/verification/S-6.11.jsonbb0f59ee7238verifydeterministic
artifacts/verification/S-6.11_attempt1.jsonbb0f59ee7238verifydeterministic
artifacts/verification/S-6.12.json79b6a33cb0f4verifydeterministic
artifacts/verification/S-6.12_attempt1.json79b6a33cb0f4verifydeterministic
artifacts/verification/S-6.13.json41f2190373beverifydeterministic
artifacts/verification/S-6.13_attempt1.json41f2190373beverifydeterministic
artifacts/verification/S-6.14.json9388be8ea0d7verifydeterministic
artifacts/verification/S-6.14_attempt1.json9388be8ea0d7verifydeterministic
artifacts/verification/S-6.15.jsonae1948407404verifydeterministic
artifacts/verification/S-6.15_attempt1.jsonae1948407404verifydeterministic
artifacts/verification/S-6.16.json9909454828f3verifydeterministic
artifacts/verification/S-6.16_attempt1.json9909454828f3verifydeterministic
artifacts/verification/S-6.17.json6719e7f67b75verifydeterministic
artifacts/verification/S-6.17_attempt1.json6719e7f67b75verifydeterministic
artifacts/verification/S-6.18.json4c3e4ed18004verifydeterministic
artifacts/verification/S-6.18_attempt1.json4c3e4ed18004verifydeterministic
artifacts/verification/S-6.19.jsonc9b0ddd3828bverifydeterministic
artifacts/verification/S-6.19_attempt1.jsonc9b0ddd3828bverifydeterministic
artifacts/verification/S-6.1_attempt1.json33b2ed0b8430verifydeterministic
artifacts/verification/S-6.2.json6bb147b3a4adverifydeterministic
artifacts/verification/S-6.2_attempt1.json6bb147b3a4adverifydeterministic
artifacts/verification/S-6.3.jsonc5b9e7d9f696verifydeterministic
artifacts/verification/S-6.3_attempt1.jsonc5b9e7d9f696verifydeterministic
artifacts/verification/S-6.4.json29ec172fd804verifydeterministic
artifacts/verification/S-6.4_attempt1.json29ec172fd804verifydeterministic
artifacts/verification/S-6.6.jsone7fc84f2c66dverifydeterministic
artifacts/verification/S-6.6_attempt1.jsone7fc84f2c66dverifydeterministic
artifacts/verification/S-6.7.json57070959fbaaverifydeterministic
artifacts/verification/S-6.7_attempt1.json57070959fbaaverifydeterministic
artifacts/verification/S-6.8.json1ce4a63e0dffverifydeterministic
artifacts/verification/S-6.8_attempt1.json1ce4a63e0dffverifydeterministic
artifacts/verification/S-6.9.jsonf57d4a86e51everifydeterministic
artifacts/verification/S-6.9_attempt1.jsonf57d4a86e51everifydeterministic
artifacts/verification/S-7.1.jsondbe30bb7df92verifydeterministic
artifacts/verification/S-7.10.jsonce13deeddecaverifydeterministic
artifacts/verification/S-7.10_attempt1.jsond480d9f4b126verifydeterministic
artifacts/verification/S-7.10_attempt2.jsonce13deeddecaverifydeterministic
artifacts/verification/S-7.11.json74413767845dverifydeterministic
artifacts/verification/S-7.11_attempt1.json7ba425b9357bverifydeterministic
artifacts/verification/S-7.11_attempt2.json74413767845dverifydeterministic
artifacts/verification/S-7.12.json3513ba74f823verifydeterministic
artifacts/verification/S-7.12_attempt1.json302d77a645d5verifydeterministic
artifacts/verification/S-7.12_attempt2.json3513ba74f823verifydeterministic
artifacts/verification/S-7.13.jsonf60924bd760bverifydeterministic
artifacts/verification/S-7.13_attempt1.jsonf60924bd760bverifydeterministic
artifacts/verification/S-7.1_attempt1.jsondbe30bb7df92verifydeterministic
artifacts/verification/S-7.2.json9e8b9f62320dverifydeterministic
artifacts/verification/S-7.2_attempt1.json9e8b9f62320dverifydeterministic
artifacts/verification/S-7.3.json69d00bb92e85verifydeterministic
artifacts/verification/S-7.3_attempt1.jsonf9f4e5403abfverifydeterministic
artifacts/verification/S-7.3_attempt2.json69d00bb92e85verifydeterministic
artifacts/verification/S-7.4.jsone0651a2a0aa4verifydeterministic
artifacts/verification/S-7.4_attempt1.json3017b0488f6fverifydeterministic
artifacts/verification/S-7.4_attempt2.jsone0651a2a0aa4verifydeterministic
artifacts/verification/S-7.5.jsonf1883afe65b4verifydeterministic
artifacts/verification/S-7.5_attempt1.jsonf1883afe65b4verifydeterministic
artifacts/verification/S-7.6.jsonde3e734d0547verifydeterministic
artifacts/verification/S-7.6_attempt1.jsonde3e734d0547verifydeterministic
artifacts/verification/S-7.7.json1ce05fc53c4cverifydeterministic
artifacts/verification/S-7.7_attempt1.json1ce05fc53c4cverifydeterministic
artifacts/verification/S-7.8.json51be57772e10verifydeterministic
artifacts/verification/S-7.8_attempt1.json51be57772e10verifydeterministic
artifacts/verification/S-7.9.json12e8f63fed4fverifydeterministic
artifacts/verification/S-7.9_attempt1.json12e8f63fed4fverifydeterministic
artifacts/verification/S-8.1.jsonef77ca40b066verifydeterministic
artifacts/verification/S-8.1_attempt1.jsonef77ca40b066verifydeterministic
artifacts/verification/S-8.2.json9f246df2210cverifydeterministic
artifacts/verification/S-8.2_attempt1.json9f246df2210cverifydeterministic
artifacts/verification/S-8.3.json229cf3f5e7bdverifydeterministic
artifacts/verification/S-8.3_attempt1.json229cf3f5e7bdverifydeterministic
artifacts/verification/S-8.4.json97334efabeabverifydeterministic
artifacts/verification/S-8.4_attempt1.json97334efabeabverifydeterministic
artifacts/verification/S-9.2.json9f1f769d6430verifydeterministic
artifacts/verification/S-9.2_attempt1.json9f1f769d6430verifydeterministic
artifacts/verification/S-9.3.jsonf21917170dc3verifydeterministic
artifacts/verification/S-9.3_attempt1.jsonf21917170dc3verifydeterministic
artifacts/verification/S-9.4.jsonb2a6417f842cverifydeterministic
artifacts/verification/S-9.4_attempt1.jsonb2a6417f842cverifydeterministic
artifacts/verification/S-9.5.json5692452c8c4cverifydeterministic
artifacts/verification/S-9.5_attempt1.json5692452c8c4cverifydeterministic
artifacts/work/pages.jsonl321734601047ingestdeterministic
artifacts/work/sections.jsonle3e9efc39465segmentdeterministic