{"schema":"sps.review_site_evidence_contract.v1","site":"chan-woo.com","status":"LOCAL_REVIEW_SITE_REPORTED_BY_USER; PUBLIC_URL_NOT_VERIFIED; NO_BROWSER_CONNECTION_OR_SITE_INSPECTION_THIS_TURN","purpose":"Read-only art and technical QA of exact game-production originals, rigs, motions, Godot scenes and runtime proof. Former chat functionality is out of scope.","what_author_can_examine_if_supplied":[{"type":"PNG_STILLS","possible":true,"scope":"Original whole-scene art, author input, Godot native A/B, front/back/left/right/top/bottom views, frame-to-frame comparison at declared pixel sizes","limit":"No rear surface or hidden geometry truth from a single static image"},{"type":"BROWSER_INTERACTIVE_GLB_VIEWER","possible":"CONDITIONAL","scope":"Attempt interactive multi-angle look after public accessible URL is supplied, website permits access and browser/WebGL works","limit":"Cannot preclaim WebGL viewer supported or that rotation actually worked; must report what was visibly controlled"},{"type":"RAW_GLB_OR_GLTF_BINARY","possible":"CONDITIONAL_IF_EXACT_FILE_ATTACHED_OR_READABLE","scope":"Inspect nodes, meshes, materials, texture refs, skins, joint hierarchy, animations and metadata with available parser tools","limit":"Structural existence alone is not good weighting, actual deformation quality or gameplay correctness"},{"type":"VIDEO_AND_CLIPS","possible":"CONDITIONAL_IF_BROWSER_OR_FILES_PROVIDE_ACTUAL_VIDEO","scope":"Motion timing, pose continuity, root sliding, contact issues, camera occlusion by actual played motion","limit":"No bone-weight introspection from video alone; compressed/too small views hide defects"},{"type":"GODOT_CAPTURE_AND_TEST_JSON","possible":true,"scope":"Inspect measured runtime screens/video, frame dimensions, source fingerprints, import/test logs, known collision/nav paths, QA results","limit":"Cannot turn test JSON claims into independently run Godot tests or approve unshown mobile frame/interaction"},{"type":"LIVE_GAMEPLAY_LOCAL_DESKTOP_OR_MOBILE","possible":"UNKNOWN_WITHOUT_USER_EXPOSED_CONTROL_OR_EVIDENCE","scope":"Only when user supplies a controllable UI session or recorded screen+inputs+logs; no assumed access to the user's machine","limit":"Static web viewer is not actual game environment"}],"minimum_asset_receipt":{"required":["asset_id_exact","source_original_sha256","candidate_file_sha256","filename","byte_count","mime_type","original_author_reference_sha256","generation_input_art_sha256","production_stage","review_stage","hold_flags"],"recommended":["service_aliases_bound_to_one_asset_id","glb_triangle_count","mesh_names","materials_count","embedded_texture_sizes","node_transforms","source_pivot","raw_AABB_xyz","target_presentation_extent_and_uniform_scale","uploaded_at_kst","renderer_version","camera_config_sha256"],"non_negotiable":"A screenshot without exact original SHA and asset ID is visual context, not a verified 3D asset identity receipt"},"proof_sets_by_asset_type":{"TERRAIN_MAP":{"required_views":["floor-only full-frame native Godot oblique 1600x900 or declared exact original size","front, back, left, right, overhead, low-angle cliff/underside close-up of floor GLB","waterline, bridge landings, pier joint A/B measured contact close-ups","native all-assets full map long-shot same camera"],"required_structure":["exact terrain GLB original SHA and transform/bounds","mesh material+UV slots and texture references","source-to-assembled instance transform table","visual contact gap table","render engine version and camera pos/target/orthographic_size"],"required_runtime":["start-to-exit and detour traversals with overlays hidden in art screenshot but movement captured separately","collision shape and navmesh data if claimed","known seam sampling metrics","mobile screenshot/fps/memory if mobile is to be claimed"],"no_shortcuts":["isolated object PNG alone does not complete map","input art alone does not prove real mesh Y-inlet cut","single overhead screenshot does not prove continuous cliff bevels"]},"CHARACTER_MODEL_RIG":{"required_views":["official original FRONT and applicable sides","exact GLB FRONT/OWNLEFT/OWNRIGHT/BACK full-body neutral rest, consistent camera scale","joint-sensitive hands, shoulders, elbows, knees and feet close-ups","skin weight heatmap or joint-by-vertex diagnostics if tool available"],"required_structure":["exact source GLB SHA, meshes, armature root, bone hierarchy, skin.joints, inverseBindMatrices, influences/weights, socket names","animation clips with channel targets, duration, frequency and loop semantics"],"required_motion":["neutral/idle","walk with foot contact","run","turn","main action clip","side/back video of at least one complete cycle; hands/feet close-ups on difficult poses"],"necessary_distinction":"Bone and animation-channel existence = STRUCTURE_PRESENT only, NEVER RIG_ART_ALLOW, MOTION_ALLOW or IN_GAME_RUNTIME_PASS"},"GAME_RUNTIME":{"required":["game build hash/version and scene ID","native video from actual game with visible start/action/end or input trace","source asset manifest with hashes","test reproducibility and explicit PASS/FAIL rows","target device resolution, platform, camera and performance","separate art review screenshots with UI hidden and with UI actual"],"limitation":"Captured video and test logs support, but do not replace independent repeatable input/control or on-device test when requested"}},"asset_page_data_contract_example":{"asset_id":"TEMP_MAP02_COAST_MACRO_TERRAIN_AUTHOR_INPUT01","stage":"INPUT_ART_ONLY","source_input_png_sha256":"7387698307ee61bc90c2a537336e333dc055e939488acc2877218a0ef9e22f14","generated_mesh":null,"current_art_status":"INPUT_ART_ALLOW_WITH_TODO","current_geometry_status":"UNKNOWN","current_rig_status":"NOT_APPLICABLE","current_runtime_status":"NOT_TESTED","evidence_items":[{"type":"original_author_input","sha256":"7387698307ee61bc90c2a537336e333dc055e939488acc2877218a0ef9e22f14"},{"type":"coast_floor_water_look_target","sha256":"635e1ef854981947040ebb8ba6010bb93c01aec5c2426ba5e28be960c59a956c"}],"hold_flags":["GLB_NOT_YET_EXISTING","WATERLINE_AND_PHYSICS_UNKNOWN"],"reviewer_notes":[]},"review_status_fields":{"art_status":["ART_ALLOW","ART_CONDITIONAL","ART_HOLD","INPUT_ART_ALLOW","UNKNOWN"],"geometry_status":["STRUCTURE_PASS","STRUCTURE_FAIL","STRUCTURE_PRESENT_UNREVIEWED","UNKNOWN"],"rig_status":["RIG_ART_ALLOW","RIG_ART_CONDITIONAL","RIG_HOLD","STRUCTURE_PRESENT_ONLY","UNKNOWN","NOT_APPLICABLE"],"motion_status":["MOTION_ALLOW","MOTION_CONDITIONAL","MOTION_HOLD","CLIP_PRESENT_UNREVIEWED","UNKNOWN","NOT_APPLICABLE"],"runtime_status":["TECH_PASS","TECH_FAIL","PARTIAL","NOT_TESTED","UNKNOWN"],"complete_game_map":[false,true],"requirements":"Do not collapse material/art/rig/motion/physics/mobile/gameplay into one single PASS bit. Preserve earlier HOLDs until their exact evidence and revision are reviewed."},"access_and_publication":{"public_url_ready":false,"contacted_url_this_turn":false,"credentials_requested":false,"site_modified":false,"review_approach_when_ready":"Owner supplies exact public URL and asset page plus files/metadata; attempt visible browser inspection, fall back to fixed A/B native images + videos + exact raw GLB and validation JSON; explicitly label every inspected surface and unknown."},"historical_snapshot_notice":"Original author specification snapshot from before deployment on2026-10-23; its public_url_ready=false and not-visited fields describe that historical snapshot, not current availability.","current_publication_status_url":"/deployment-status.json","actual_site_review_url":"/reviews/SITE-AUTHOR-REVIEW1.json"}