-
Notifications
You must be signed in to change notification settings - Fork 0
plates: adopt KIT-CRYPT v1 — first fully-certified 3D-first plate (#83) #1688
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -3,14 +3,53 @@ | |
| "_comment": "WALKABLE-SLICE-V1 item 6 (W5e runtime plate registry; docs/roadmap/W5E-PLATE-REGISTRY-DECISION.md). Keys are the ENGINE location.id the surface carries (viewer/server.py _session_location -> surface.location.id), the SAME keying the editor-time _location_plates.json already uses. `plate` is a path under StreamingAssets (BuildMacOSPlayer.EnsurePackaged copies this file + plates/*.png from the Unity project root). planeSize + cameraPin are OPTIONAL: absent => the client derives the plane from the plate aspect (oh=2*orthoSize, ow=oh*aspect) and leaves the scene camera as-is (crypt + camp share the ortho=13 / pitch=30 / yaw=45 rig). Adding a room later = one entry here + drop the PNG under plates/. On the box, CONFIRM these keys against the smoke campaign's real location.id (curl /combat-surface | jq .location.id in each room) and rename if they differ.", | ||
| "plates": { | ||
| "crypt": { | ||
| "plate": "plates/crypt_v36_registered.png", | ||
| "plate": "plates/crypt_kit_v1_registered.png", | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
This switches the runtime manifest to Useful? React with 👍 / 👎. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
The shipped crypt surface is still authored as the 14x11 AGENTS.md reference: AGENTS.md:L16-L19 Useful? React with 👍 / 👎. |
||
| "cameraPin": { | ||
| "ortho": 11.7851, | ||
| "pitch": 30, | ||
| "yaw": 45 | ||
| }, | ||
| "boxes": "boxes/crypt_v36_boxes.json", | ||
| "_provenance": "SHIP-THREE-PLATES (2026-07-15, owner 'ship it'): crypt v3.6 16x12 via qa/paint_room.py (recipe qa/unified_paint_recipes.json; base seed 12346 recall 0.9595; Gemini structure-lock). Blind panel 8.3 vs PoE2 control 9.4 / incumbent 7.2 (qa/evidence/paint-room/restored_pipeline_panel.json). Boxes sidecar = the EXACT conditioning volumes (UNIFY-THE-FRAMES). Geometry qa/room_geometries/crypt_v36_geometry.json; ortho = _fit_ortho_size(16,12)." | ||
| "effects": [ | ||
| { | ||
| "type": "fire_medium", | ||
| "cell": [ | ||
| 5, | ||
| 1 | ||
| ], | ||
| "scale": 0.8, | ||
| "y": 1.2 | ||
| }, | ||
| { | ||
| "type": "fire_medium", | ||
| "cell": [ | ||
| 14, | ||
| 4 | ||
| ], | ||
| "scale": 0.8, | ||
| "y": 1.2 | ||
| }, | ||
| { | ||
| "type": "fire_medium", | ||
| "cell": [ | ||
| 6, | ||
| 5 | ||
| ], | ||
| "scale": 0.8, | ||
| "y": 1.2 | ||
| }, | ||
| { | ||
| "type": "fire_medium", | ||
| "cell": [ | ||
| 10, | ||
| 5 | ||
| ], | ||
| "scale": 0.8, | ||
| "y": 1.2 | ||
| } | ||
| ], | ||
| "_effects_comment": "Animated fire over the four painted brazier fires (geometry brazier cells; bowls sit ~1.2u up the stem). Tune scale/y at the sandbox eyeball if the flame floats or washes the paint.", | ||
| "_provenance": "KIT-CRYPT v1 (2026-07-23, #83/#84 nav-truth spike): 3D-FIRST CERTIFIED CHAIN \u2014 geometry crypt_v36 -> build_room_kit scene (footprint SEG GATE 100.00%, 0/192 disagreements, qa/evidence/kit-crypt/) -> kit 3D depth -> flux depth-CN base seed 12346 (recall 0.9752, asset_qM9R3tuRH4sceUrVjCoLdPRk) -> Gemini 3.0 Pro edit (model_google-gemini-pro-image-editing, critique-targeted detail prompt, job_Lmhssjh7iWnHsUKY1dhnHB4m) -> phase-corr ALIGNED dx=0,dy=0 vs base (qa/styled_align_check.py) -> geometric void composite (seg-frame mask). Blind panel 7 vs control 8 (delta -1.0, in-band; wf_89967920). Collision truth UNCHANGED (same geometry/walkmask/boxes as crypt_v36). NOTE: model_google-gemini-pro-image-editing pending model-registry allowlist (owner sign-off)." | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
The manifest now adopts this plate while its provenance records Useful? React with 👍 / 👎. |
||
| }, | ||
| "camp_clearing_night": { | ||
| "plate": "plates/camp_clearing_night_truegrey_v1.png", | ||
|
|
@@ -40,9 +79,19 @@ | |
| "yaw": 45 | ||
| }, | ||
| "boxes": "boxes/tavern_v2_boxes.json", | ||
| "_door_hotspots_comment": "#1585/#1647 PAINTED-DOOR HOTSPOTS (plate-pixel click targets in the 1344x768 registered plate). Measured 2026-07-22 by overlaying the contract-camera cell projection (qa/walk_test.world_to_window_px at texW/texH) on tavern_v2_registered.png and reading the PAINTED arch centroid off a 50px grid (artifacts/zoom_tavern_left.png). door_cell (7,0) projects to px (440,242) at the bar, but the room's one painted STONE ARCHWAY (dark interior) sits on the SAME back-left (r=0) wall with its opening centroid at ~(210,320) — a large ~4.5-cell #1585 divergence, the exact 'no functional doors' case: clicking the visible arch now crosses at (7,0). door_cell (13,5) lands on the painted fireplace/hearth (no arch) -> intentionally omitted (TODO, see PR body).", | ||
| "_door_hotspots_comment": "#1585/#1647 PAINTED-DOOR HOTSPOTS (plate-pixel click targets in the 1344x768 registered plate). Measured 2026-07-22 by overlaying the contract-camera cell projection (qa/walk_test.world_to_window_px at texW/texH) on tavern_v2_registered.png and reading the PAINTED arch centroid off a 50px grid (artifacts/zoom_tavern_left.png). door_cell (7,0) projects to px (440,242) at the bar, but the room's one painted STONE ARCHWAY (dark interior) sits on the SAME back-left (r=0) wall with its opening centroid at ~(210,320) \u2014 a large ~4.5-cell #1585 divergence, the exact 'no functional doors' case: clicking the visible arch now crosses at (7,0). door_cell (13,5) lands on the painted fireplace/hearth (no arch) -> intentionally omitted (TODO, see PR body).", | ||
| "door_hotspots": [ | ||
| { "door_cell": [7, 0], "px": [210, 320], "radius_px": 85 } | ||
| { | ||
| "door_cell": [ | ||
| 7, | ||
| 0 | ||
| ], | ||
| "px": [ | ||
| 210, | ||
| 320 | ||
| ], | ||
| "radius_px": 85 | ||
| } | ||
| ], | ||
| "_provenance": "SHIP-THREE-PLATES (2026-07-15): tavern v2 14x11 molded (bar/table kinds) via qa/paint_room.py. Panel 8.4. Geometry qa/room_geometries/tavern_v2_geometry.json; ortho = _fit_ortho_size(14,11). Replaces tavern_fit2_v1 (12x10, ortho 9.2597)." | ||
| }, | ||
|
|
@@ -64,9 +113,19 @@ | |
| "yaw": 45 | ||
| }, | ||
| "boxes": "boxes/shop_v1_boxes.json", | ||
| "_door_hotspots_comment": "#1585/#1647 PAINTED-DOOR HOTSPOTS (plate-pixel click targets in the 1344x768 registered plate; a click inside a hotspot routes exactly like clicking door_cell -> cross_door). Measured 2026-07-22 by overlaying the contract-camera cell projection (qa/walk_test.world_to_window_px at texW/texH) on shop_v1_registered.png and reading the PAINTED arch centroid off a 50px grid (artifacts/zoom_shop_door12_5.png). door_cell (12,5) projects to px (1037,230) but the painted dark archway opening centroid sits at ~(900,275) — the ~2-cell #1585 divergence. door_cell (6,0) is occluded by the potion shelf (no visible arch) -> intentionally omitted (TODO, see PR body).", | ||
| "_door_hotspots_comment": "#1585/#1647 PAINTED-DOOR HOTSPOTS (plate-pixel click targets in the 1344x768 registered plate; a click inside a hotspot routes exactly like clicking door_cell -> cross_door). Measured 2026-07-22 by overlaying the contract-camera cell projection (qa/walk_test.world_to_window_px at texW/texH) on shop_v1_registered.png and reading the PAINTED arch centroid off a 50px grid (artifacts/zoom_shop_door12_5.png). door_cell (12,5) projects to px (1037,230) but the painted dark archway opening centroid sits at ~(900,275) \u2014 the ~2-cell #1585 divergence. door_cell (6,0) is occluded by the potion shelf (no visible arch) -> intentionally omitted (TODO, see PR body).", | ||
| "door_hotspots": [ | ||
| { "door_cell": [12, 5], "px": [900, 275], "radius_px": 85 } | ||
| { | ||
| "door_cell": [ | ||
| 12, | ||
| 5 | ||
| ], | ||
| "px": [ | ||
| 900, | ||
| 275 | ||
| ], | ||
| "radius_px": 85 | ||
| } | ||
| ], | ||
| "_provenance": "ROOM-READINESS SCALE PROOF (2026-07-16, epic #1581/#1588): the first room authored AFTER the pipeline existed, run hands-off end-to-end \u2014 author_shop() 13x10 (design-gated 2x locally) -> build_room_unified on the box (ortho 9.6806, 49 boxes incl. auto door frames) -> qa/paint_room.py shop (base seed 12347 recall 0.9555; Gemini structure-lock) -> blind panel 6 vs PoE2 control 8, delta -2.0 IN-BAND (tier=stable, cycle-2 levers in qa/evidence/paint-room/shop/panel.json). Geometry qa/room_geometries/shop_geometry.json; ortho = _fit_ortho_size(13,10). Walk gate: #1596 sandbox lane after the player rebuild packages this entry." | ||
| }, | ||
|
|
@@ -110,4 +169,4 @@ | |
| "boxes": "boxes/dwing_room_1_v1_boxes.json" | ||
| } | ||
| } | ||
| } | ||
| } | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. P3: Trailing newline removed from manifest (now "No newline at end of file") The diff ends with Category: CI/build Why this matters: Keeps the file POSIX-clean and avoids unrelated diff churn on the next JSON edit; non-functional. |
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This cutover makes
crypt_kit_v1_registered.pngthe shipped crypt plate, but the committedqa/evidence/paint-coherence/crypt_coherence_report.jsonwas last touched before this file existed (git rev-parse 451abdbd:extensions/renderers/unity/plates/crypt_kit_v1_registered.pngfails). The paint-drift-gate workflow installs Pillow/numpy and runsqa/check_coherence_freshness.pyover every manifest-shipped room, and live spawn/certification code also consumes those per-cell verdicts, so this can merge with stale crypt open/covered evidence unless the paint-coherence report/overlays are regenerated for the new plate.Useful? React with 👍 / 👎.