{"world":"london","tenant":"public","generatedAt":"2026-11-03T20:05:34.667Z","featured":{"question":"How busy is Trafalgar Square right now?","place":{"slug":"trafalgar-square","name":"Trafalgar Square","lat":51.508,"lng":-0.128},"counts":{"bicycle":1,"car":4,"person":15},"total":20,"camera":{"id":"tfl_jamcam:tfl-JamCams_00001.06502","name":"Trafalgar Square"},"verdict":"about usual","percentile":0.384,"percentileCi":[0.31,0.465],"n":147,"basis":"hour_of_day","higherThanAtThisHour":"51 of 147 previous readings at this camera at this hour of day, over the last 30 days","boundedClaim":"below this camera's median","boundedClaimConfidence":"95%","hourOfDayN":147,"whyNoVerdict":null,"verdictState":"stated","minReadingsForVerdict":12,"verdictSupportedAt":"direction","excludedOtherDetectors":{},"clipSha256":"52e65e76942aed6a2366b8928dbabdbb67e2094295559d9ce33f3561aa47751c","clipAgeS":831,"frameIndex":135,"frameCount":271,"detectorFnId":"cpu_detect_coco@4d9812b3db3df883","detectorModel":"fasterrcnn_mobilenet_v3_large_fpn","countedFrom":"retained_clip","tamperEvidence":"recomputable_from_source","receiptCid":"ef919a2599640146fe5db4aeeaa3188ffa45a9927a10c8d60113a3352df937ae","receipt":{"alg":"ed25519","kid":"geoqa-2026-06","signer":"geoqa","signedAt":"2026-11-03T19:51:33.121126+00:00","pubkeyB64":"yQOKkNB+c+zl9kxxanwcNTZLgtHBsLvQH+q8pECrm/Q="},"verified":{"url":"/api/world-model/verify/by-cid/ef919a2599640146fe5db4aeeaa3188ffa45a9927a10c8d60113a3352df937ae","state":"backend-unreachable","valid":null,"reason":"verifier unreachable; nothing was checked. Retry.","verifiedOffline":null,"checkedAt":"2026-11-03T20:05:25.521Z","requestId":null,"retryWillHelp":true,"checks":[],"signedAt":null,"doesNotEstablish":[]},"areaNote":"counts are from ONE camera of 267 within 5000 m. That is an answer about this junction, not about the area","camerasInRadius":267,"camerasSkipped":[],"selectedBecause":"nearest with a retained clip"},"trend":{"verdict":"quieter","because":"on the 222 cameras that reported in BOTH windows, mean objects per readable observation went 17.8 -> 14.7 (-3.1)","camerasInBoth":222,"meanThen":17.8,"meanNow":14.7,"windowHours":3,"camerasInRadius":267,"detectorFnId":"cpu_detect_coco@4d9812b3db3df883","singleDetector":true,"series":[{"from":"2026-11-03T17:05:23.850310+00:00","to":"2026-11-03T17:35:23.850310+00:00","objectsTotal":8555,"cameras":226},{"from":"2026-11-03T17:35:23.850310+00:00","to":"2026-11-03T18:05:23.850310+00:00","objectsTotal":8694,"cameras":229},{"from":"2026-11-03T18:05:23.850310+00:00","to":"2026-11-03T18:35:23.850310+00:00","objectsTotal":8881,"cameras":233},{"from":"2026-11-03T18:35:23.850310+00:00","to":"2026-11-03T19:05:23.850310+00:00","objectsTotal":8241,"cameras":230},{"from":"2026-11-03T19:05:23.850310+00:00","to":"2026-11-03T19:35:23.850310+00:00","objectsTotal":9062,"cameras":241},{"from":"2026-11-03T19:35:23.850310+00:00","to":"2026-11-03T20:05:23.850310+00:00","objectsTotal":9320,"cameras":240}],"provenanceClass":"deterministic_index","detectorFnIdsInWindow":{"cpu_detect_coco@4d9812b3db3df883":3491},"excludedOtherDetector":0,"foldedAsEquivalent":{},"mixedDetectorNote":null},"places":[{"slug":"aldgate","name":"Aldgate","cameraName":"Whitechapel High St/Mansell St","cameraId":"tfl_jamcam:tfl-JamCams_00001.02100","cameraPoint":{"lat":51.5144,"lng":-0.0741},"cameraDistanceM":114.9,"counts":{"car":9,"person":1},"total":10,"observedAgeS":1519.5,"clipSha256":"77762212d84f82961a6d33618ece67798fc97f39f07b25cf402770b45862b361","detectorFnId":"cpu_detect_coco@4d9812b3db3df883","countedFrom":"retained_clip","showable":true,"unobservable":null,"thumb":"/cards/aldgate/thumb.png","frameScene":"scene","nearbyObservable":null,"clipProvenance":{"url":"/api/world-model/verify/by-cid/77762212d84f82961a6d33618ece67798fc97f39f07b25cf402770b45862b361","state":"backend-unreachable","valid":null,"reason":"verifier unreachable; nothing was checked. Retry.","verifiedOffline":null,"checkedAt":"2026-11-03T20:05:34.186Z","requestId":null,"retryWillHelp":true,"checks":[],"signedAt":null,"doesNotEstablish":[]}},{"slug":"canary-wharf","name":"Canary Wharf","cameraName":"ASPEN WAY - UPPER BANK STREET","cameraId":"tfl_jamcam:tfl-JamCams_00002.00605","cameraPoint":{"lat":51.50706,"lng":-0.0162},"cameraDistanceM":307.9,"counts":{"car":9,"motorcycle":1,"person":3,"truck":1},"total":14,"observedAgeS":1658.7,"clipSha256":"06a818de135128687515408f16b8c08678a34d655cb9ef5f5604c4143fa143db","detectorFnId":"cpu_detect_coco@4d9812b3db3df883","countedFrom":"retained_clip","showable":true,"unobservable":null,"thumb":"/cards/canary-wharf/thumb.png","frameScene":"scene","nearbyObservable":null,"clipProvenance":{"url":"/api/world-model/verify/by-cid/06a818de135128687515408f16b8c08678a34d655cb9ef5f5604c4143fa143db","state":"backend-unreachable","valid":null,"reason":"verifier unreachable; nothing was checked. Retry.","verifiedOffline":null,"checkedAt":"2026-11-03T20:05:34.187Z","requestId":null,"retryWillHelp":true,"checks":[],"signedAt":null,"doesNotEstablish":[]}},{"slug":"elephant-and-castle","name":"Elephant and Castle","cameraName":"Elephant & Castle/Walworth Road","cameraId":"tfl_jamcam:tfl-JamCams_00001.03604","cameraPoint":{"lat":51.4934,"lng":-0.1005},"cameraDistanceM":183.9,"counts":{"bus":1,"car":10,"person":19},"total":30,"observedAgeS":1235.2,"clipSha256":"bdc10522f26e59d9ecefbcfae822f0b104bc426ec10f99aef03ea6219ebeaee7","detectorFnId":"cpu_detect_coco@4d9812b3db3df883","countedFrom":"retained_clip","showable":true,"unobservable":null,"thumb":"/cards/elephant-and-castle/thumb.png","frameScene":"scene","nearbyObservable":null,"clipProvenance":{"url":"/api/world-model/verify/by-cid/bdc10522f26e59d9ecefbcfae822f0b104bc426ec10f99aef03ea6219ebeaee7","state":"backend-unreachable","valid":null,"reason":"verifier unreachable; nothing was checked. Retry.","verifiedOffline":null,"checkedAt":"2026-11-03T20:05:34.187Z","requestId":null,"retryWillHelp":true,"checks":[],"signedAt":null,"doesNotEstablish":[]}},{"slug":"hammersmith-broadway","name":"Hammersmith Broadway","cameraName":"Hammersmith Bway/Shepherds Bush Rd","cameraId":"tfl_jamcam:tfl-JamCams_00001.06643","cameraPoint":{"lat":51.493,"lng":-0.22387},"cameraDistanceM":56.4,"counts":{"car":4,"person":3},"total":7,"observedAgeS":1377.1,"clipSha256":"3d18eb32051324c1c7ea18928e5346bf2870949c46ac2faf7f2cb380a59bf40c","detectorFnId":"cpu_detect_coco@4d9812b3db3df883","countedFrom":"retained_clip","showable":true,"unobservable":null,"thumb":"/cards/hammersmith-broadway/thumb.png","frameScene":"scene","nearbyObservable":null,"clipProvenance":{"url":"/api/world-model/verify/by-cid/3d18eb32051324c1c7ea18928e5346bf2870949c46ac2faf7f2cb380a59bf40c","state":"backend-unreachable","valid":null,"reason":"verifier unreachable; nothing was checked. Retry.","verifiedOffline":null,"checkedAt":"2026-11-03T20:05:34.188Z","requestId":null,"retryWillHelp":true,"checks":[],"signedAt":null,"doesNotEstablish":[]}},{"slug":"hyde-park-corner","name":"Hyde Park Corner","cameraName":"Hyde Park Corner","cameraId":"tfl_jamcam:tfl-JamCams_00001.06515","cameraPoint":{"lat":51.5021,"lng":-0.15238},"cameraDistanceM":152.3,"counts":{"bus":2,"car":14,"person":3,"truck":1},"total":20,"observedAgeS":1508.7,"clipSha256":"317eecfedcc8ea8b2cc29a790be4e2dad868d306fc6b41efdf6e655a6ce5e68c","detectorFnId":"cpu_detect_coco@4d9812b3db3df883","countedFrom":"retained_clip","showable":true,"unobservable":null,"thumb":"/cards/hyde-park-corner/thumb.png","frameScene":"scene","nearbyObservable":null,"clipProvenance":{"url":"/api/world-model/verify/by-cid/317eecfedcc8ea8b2cc29a790be4e2dad868d306fc6b41efdf6e655a6ce5e68c","state":"backend-unreachable","valid":null,"reason":"verifier unreachable; nothing was checked. Retry.","verifiedOffline":null,"checkedAt":"2026-11-03T20:05:34.188Z","requestId":null,"retryWillHelp":true,"checks":[],"signedAt":null,"doesNotEstablish":[]}},{"slug":"marble-arch","name":"Marble Arch","cameraName":"A4202 Park Lane/North Row","cameraId":"tfl_jamcam:tfl-JamCams_00001.08863","cameraPoint":{"lat":51.5127,"lng":-0.15787},"cameraDistanceM":88.6,"counts":{"bus":1,"car":5,"person":12},"total":18,"observedAgeS":945.5,"clipSha256":"b73ce36d2bd23aa05685d389a3725689e91c693acfb31caca270b4489b207556","detectorFnId":"cpu_detect_coco@4d9812b3db3df883","countedFrom":"retained_clip","showable":true,"unobservable":null,"thumb":"/cards/marble-arch/thumb.png","frameScene":"scene","nearbyObservable":null,"clipProvenance":{"url":"/api/world-model/verify/by-cid/b73ce36d2bd23aa05685d389a3725689e91c693acfb31caca270b4489b207556","state":"backend-unreachable","valid":null,"reason":"verifier unreachable; nothing was checked. Retry.","verifiedOffline":null,"checkedAt":"2026-11-03T20:05:34.188Z","requestId":null,"retryWillHelp":true,"checks":[],"signedAt":null,"doesNotEstablish":[]}},{"slug":"old-street","name":"Old Street","cameraName":"City Road/Old Street","cameraId":"tfl_jamcam:tfl-JamCams_00001.07350","cameraPoint":{"lat":51.5262,"lng":-0.08771},"cameraDistanceM":67,"counts":{"bicycle":1,"bus":1,"car":17,"person":13,"truck":1},"total":33,"observedAgeS":1654,"clipSha256":"0fa29b6ab96c20068ea8db9c8baf7452825385faed9d7233993df60af9c90f7c","detectorFnId":"cpu_detect_coco@4d9812b3db3df883","countedFrom":"retained_clip","showable":true,"unobservable":null,"thumb":"/cards/old-street/thumb.png","frameScene":"scene","nearbyObservable":null,"clipProvenance":{"url":"/api/world-model/verify/by-cid/0fa29b6ab96c20068ea8db9c8baf7452825385faed9d7233993df60af9c90f7c","state":"backend-unreachable","valid":null,"reason":"verifier unreachable; nothing was checked. Retry.","verifiedOffline":null,"checkedAt":"2026-11-03T20:05:34.189Z","requestId":null,"retryWillHelp":true,"checks":[],"signedAt":null,"doesNotEstablish":[]}},{"slug":"oxford-circus","name":"Oxford Circus","cameraName":"Regent St/Conduit St","cameraId":"tfl_jamcam:tfl-JamCams_00001.07451","cameraPoint":{"lat":51.5132,"lng":-0.14091},"cameraDistanceM":282.8,"counts":{"car":13,"person":29},"total":42,"observedAgeS":944.3,"clipSha256":"a5daf6d377e8bfeac4a39a6d8b951d3ce12c5b6e9bfd7550e50c60d8e0d6f44f","detectorFnId":"cpu_detect_coco@4d9812b3db3df883","countedFrom":"retained_clip","showable":true,"unobservable":null,"thumb":"/cards/oxford-circus/thumb.png","frameScene":"scene","nearbyObservable":null,"clipProvenance":{"url":"/api/world-model/verify/by-cid/a5daf6d377e8bfeac4a39a6d8b951d3ce12c5b6e9bfd7550e50c60d8e0d6f44f","state":"backend-unreachable","valid":null,"reason":"verifier unreachable; nothing was checked. Retry.","verifiedOffline":null,"checkedAt":"2026-11-03T20:05:34.189Z","requestId":null,"retryWillHelp":true,"checks":[],"signedAt":null,"doesNotEstablish":[]}},{"slug":"piccadilly-circus","name":"Piccadilly Circus","cameraName":"Piccadilly Circus","cameraId":"tfl_jamcam:tfl-JamCams_00001.07450","cameraPoint":{"lat":51.5096,"lng":-0.13484},"cameraDistanceM":87.7,"counts":{"car":5,"person":11},"total":16,"observedAgeS":1375.3,"clipSha256":"59c64532ec5fed59b05093de7616ce0414f8c59d0bde3eb33bdc74546922d337","detectorFnId":"cpu_detect_coco@4d9812b3db3df883","countedFrom":"retained_clip","showable":true,"unobservable":null,"thumb":"/cards/piccadilly-circus/thumb.png","frameScene":"scene","nearbyObservable":null,"clipProvenance":{"url":"/api/world-model/verify/by-cid/59c64532ec5fed59b05093de7616ce0414f8c59d0bde3eb33bdc74546922d337","state":"backend-unreachable","valid":null,"reason":"verifier unreachable; nothing was checked. Retry.","verifiedOffline":null,"checkedAt":"2026-11-03T20:05:34.189Z","requestId":null,"retryWillHelp":true,"checks":[],"signedAt":null,"doesNotEstablish":[]}},{"slug":"tower-bridge","name":"Tower Bridge","cameraName":"Tooley St/Boss St","cameraId":"tfl_jamcam:tfl-JamCams_00001.03506","cameraPoint":{"lat":51.502,"lng":-0.07681},"cameraDistanceM":403.7,"counts":{"bus":1,"car":12,"person":3,"truck":1},"total":17,"observedAgeS":1368.3,"clipSha256":"5021fe4f03399587e6a0fd4eb5c7621642777daf602f109a5ae2be8b476f78b5","detectorFnId":"cpu_detect_coco@4d9812b3db3df883","countedFrom":"retained_clip","showable":true,"unobservable":null,"thumb":"/cards/tower-bridge/thumb.png","frameScene":"scene","nearbyObservable":null,"clipProvenance":{"url":"/api/world-model/verify/by-cid/5021fe4f03399587e6a0fd4eb5c7621642777daf602f109a5ae2be8b476f78b5","state":"backend-unreachable","valid":null,"reason":"verifier unreachable; nothing was checked. Retry.","verifiedOffline":null,"checkedAt":"2026-11-03T20:05:34.190Z","requestId":null,"retryWillHelp":true,"checks":[],"signedAt":null,"doesNotEstablish":[]}},{"slug":"trafalgar-square","name":"Trafalgar Square","cameraName":"Trafalgar Square","cameraId":"tfl_jamcam:tfl-JamCams_00001.06502","cameraPoint":{"lat":51.5074,"lng":-0.12765},"cameraDistanceM":127.9,"counts":{"bicycle":1,"car":4,"person":15},"total":20,"observedAgeS":812,"clipSha256":"52e65e76942aed6a2366b8928dbabdbb67e2094295559d9ce33f3561aa47751c","detectorFnId":"cpu_detect_coco@4d9812b3db3df883","countedFrom":"retained_clip","showable":true,"unobservable":null,"thumb":"/cards/trafalgar-square/thumb.png","frameScene":"scene","nearbyObservable":null,"clipProvenance":{"url":"/api/world-model/verify/by-cid/52e65e76942aed6a2366b8928dbabdbb67e2094295559d9ce33f3561aa47751c","state":"backend-unreachable","valid":null,"reason":"verifier unreachable; nothing was checked. Retry.","verifiedOffline":null,"checkedAt":"2026-11-03T20:05:34.190Z","requestId":null,"retryWillHelp":true,"checks":[],"signedAt":null,"doesNotEstablish":[]}},{"slug":"vauxhall-cross","name":"Vauxhall Cross","cameraName":"Vauxhall Cross","cameraId":"tfl_jamcam:tfl-JamCams_00001.04256","cameraPoint":{"lat":51.4864,"lng":-0.12372},"cameraDistanceM":80.4,"counts":{"car":14,"motorcycle":1},"total":15,"observedAgeS":1374.2,"clipSha256":"630beda89f600494af73b85f2c183cd8b06df52320e5b0e713ab09ab9e7e0242","detectorFnId":"cpu_detect_coco@4d9812b3db3df883","countedFrom":"retained_clip","showable":true,"unobservable":null,"thumb":"/cards/vauxhall-cross/thumb.png","frameScene":"scene","nearbyObservable":null,"clipProvenance":{"url":"/api/world-model/verify/by-cid/630beda89f600494af73b85f2c183cd8b06df52320e5b0e713ab09ab9e7e0242","state":"backend-unreachable","valid":null,"reason":"verifier unreachable; nothing was checked. Retry.","verifiedOffline":null,"checkedAt":"2026-11-03T20:05:34.191Z","requestId":null,"retryWillHelp":true,"checks":[],"signedAt":null,"doesNotEstablish":[]}}],"together":{"busiest_by_count":[{"slug":"Charing Cross Rd/Cranbourne St","objects":30},{"slug":"Shaftesbury Ave/High Holborn","objects":20},{"slug":"Piccadilly/Whitehorse St","objects":15}],"densest_by_street_seen":[{"slug":"Piccadilly/Whitehorse St","vehicles_per_100m_seen":50,"vehicles":11,"viewed_depth_m":22},{"slug":"Horseferry Rd/Marsham St","vehicles_per_100m_seen":27.1,"vehicles":14,"viewed_depth_m":51.6},{"slug":"Lambeth Plc Rd/Royal St","vehicles_per_100m_seen":15.2,"vehicles":10,"viewed_depth_m":65.8}],"the_two_rankings_differ":true,"means":"Charing Cross Rd/Cranbourne St has the most objects in frame; Piccadilly/Whitehorse St has the most vehicles per 100 m of street it can see. Counting answers 'where is there most', dividing answers 'where is it worst', and the second needs the ranges the detector measured. The divisor is the furthest object in each frame, so it is a lower bound on what each camera can see and the densities are upper bounds: some of this difference is where the traffic happened to stand, not how crowded the street is","most_exposed_now":{"slug":"Charing Cross Rd/Cranbourne St","value":140,"unit":"ug/m^3 x people","from":{"people":28,"pm25_ug_m3":5,"pm25_observed_at":"2026-11-03T19:00:00Z"}}},"coverage":{"camerasInRadius5km":267,"placesShowable":12,"placesTotal":12,"placesClipProvenanceVerified":0},"notes":{"counts":"counts come from the panel's own S3 metadata, written when it was painted -- they describe THAT panel, not the street right now","detector":"counted_from is the SOURCE (which bytes were counted); detector_fn_id is what counted them. Only counts sharing an fn_id are comparable -- the prompt list is part of the sum","showable":"places[].showable is false where the camera served an operator notice instead of a street. A notice card is a legitimate signed observation and a bad thing to feature, because it paints patterns that mean 'not seen'","map":"every place carries camera_point {lat,lng}: where the CAMERA is, resolved from the registry, never the centre of the named place. camera_point is null when the camera is unknown -- leave those off a map rather than guessing a pin"},"errors":["verify ef919a25: backend-unreachable","verify 77762212: backend-unreachable","verify 06a818de: backend-unreachable","verify bdc10522: backend-unreachable","verify 3d18eb32: backend-unreachable","verify 317eecfe: backend-unreachable","verify a5daf6d3: backend-unreachable","verify b73ce36d: backend-unreachable","verify 0fa29b6a: backend-unreachable","verify 5021fe4f: backend-unreachable","verify 52e65e76: backend-unreachable","verify 59c64532: backend-unreachable","verify 630beda8: backend-unreachable"],"source":{"perception":"geoqa-perception /cards, /trend, /at","verify":"/api/world-model/verify/by-cid/{cid}","trend_vocabulary":"/platform/contract trend_verdicts.comparisons"},"derivation":[{"step":"select_camera","ran":true,"produced":"camera tfl_jamcam:tfl-JamCams_00001.06502 (nearest with a retained clip)","from":["place:51.508,-0.128","cameras_in_radius:267"],"provenance_class":"deterministic_index","computed_by":"geoqa-perception","checkable":"the skipped list and the selection reason are published; a reader can see which cameras were passed over and why"},{"step":"retain_clip","ran":true,"produced":"clip bytes, hashed and kept, with a signed receipt over them","from":["camera:tfl_jamcam:tfl-JamCams_00001.06502"],"provenance_class":"direct_sensor","computed_by":"geoqa-perception","checkable":"fetch the clip by its sha256 and re-hash the bytes; the receipt commits to the hash, camera, time, cell and s3 key"},{"step":"detect","ran":true,"produced":"counts {\"bicycle\":1,\"car\":4,\"person\":15} over frame 135 of 271","from":["clip_sha256:52e65e76942aed6a2366b8928dbabdbb67e2094295559d9ce33f3561aa47751c","detector_fn_id:cpu_detect_coco@4d9812b3db3df883"],"provenance_class":"deterministic_index","computed_by":"geoqa-perception","checkable":"fetch the clip, decode the cited frame, re-run the detector named by detector_fn_id; the counts must reproduce"},{"step":"compare_to_baseline","ran":true,"produced":"percentile 0.384 over n=147 readings, basis hour_of_day, 95% interval [0.31, 0.465]","from":["readings_under:cpu_detect_coco@4d9812b3db3df883"],"provenance_class":"deterministic_index","computed_by":"geoqa-perception","checkable":"the series is a function of the readings under one detector id; readings under a different id are excluded rather than mixed, and the excluded ids are published"},{"step":"place_the_reading","ran":true,"produced":"verdictState=stated (about usual); the interval must be narrower than 0.5 of the range to place a reading","from":["percentile_ci:[0.31, 0.465]","basis:hour_of_day"],"provenance_class":"deterministic_index","computed_by":"geo.qa","checkable":"a pure function of the published interval: placeable(ci) is (hi - lo) < 0.5. Hold the interval and you get the same answer without asking us. It is deliberately NOT a function of n: forty readings of a street that never varies place nothing"},{"step":"verify_receipt","ran":false,"why_not":"the verifier could not be reached, so the signature was neither confirmed nor refuted: verifier unreachable; nothing was checked. Retry.","produced":null,"from":["receipt_cid:ef919a2599640146fe5db4aeeaa3188ffa45a9927a10c8d60113a3352df937ae"],"provenance_class":"attested_execution","computed_by":"geo.qa","checkable":"re-run it against the keyless route: /api/world-model/verify/by-cid/ef919a2599640146fe5db4aeeaa3188ffa45a9927a10c8d60113a3352df937ae; the public key is published at the perception service's /verify/key"}],"cards_read":{"how":"reused","state_id":"state:4d090b20ce402acc82e26c2076fb9438","refreshed":["feature.observed_age_seconds","places[0].observed_age_seconds","places[10].observed_age_seconds","places[11].observed_age_seconds","places[1].observed_age_seconds","places[2].observed_age_seconds","places[3].observed_age_seconds","places[4].observed_age_seconds","places[5].observed_age_seconds","places[6].observed_age_seconds","places[7].observed_age_seconds","places[8].observed_age_seconds","places[9].observed_age_seconds"],"bytes_saved_note":"the service said the answer had not changed and sent only the fields derived from when we asked"},"what_the_derivation_covers":{"proves":"the ORDER and the INPUTS of the steps that produced the featured answer, each addressed so it can be resolved rather than believed","does_not_prove":"that the answer is true. A derivation says how a number was reached, never that the street looks like the number says. Checking a step is a separate act from trusting the result","how_to_check_a_step":"each step publishes `checkable` with the exact procedure, or `not_checkable_because` naming what is missing; a step that did not run is present with ran:false rather than omitted","steps_not_performed_here":"the perception service's VLM stages (reason, synthesize) do not run on this host -- there is no GPU, and its /health reports the routes needing those stages as unavailable and not transient. Nothing in this trace is model_output, and no step is claimed as ours that another party computed: see computed_by"},"what_the_signature_covers":{"proves":"these bytes are ours, from this camera, at this time, unaltered (geoqa.clip.v1 commits to clip_sha256, camera_id, captured_at, cell64, lat, lng, bytes, media, s3_key, source_url)","does_not_prove":"the counts shown beside it -- the receipt does not contain them","how_to_check_a_count":"fetch the clip by its sha256, decode the cited frame, re-run the detector named in detectorFnId; the counts must reproduce","does_not_cover_the_trend":"the trend verdict is a deterministic index over the observation series, which carries no per-reading byte reference; check its method and paired-camera reasoning, not a signature","does_not_cover_the_state_address":"cards_read.state_id is an ADDRESS, not a receipt. It says two answers are the same reading, so a consumer holding it can be told nothing changed instead of being sent the body again. It says nothing about whether the reading is true, and no signature covers it. Do not render it beside a verification badge"}}