Map Viewport in the Python host model

Curated view fields are writable; the owner must be a paper-space block and
frozen layers must exist. staged_python_viewport_lifecycle_over_real_ipc
passes every gate except a paper-space canvas oracle, so the kind is
recorded as integration-tested.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Felix RiestraandClaude Sonnet 5 committed 2026-09-20 15:09:23 +02:00
1 parent 2e4d77dc09
commit 9075e53511
10 files changed
+219 -14

No files matched your search

@@ -432,6 +432,26 @@
"fade",
"clip_boundary_vertices",
"clip_inverted"
],
"Viewport": [
"layer",
"center",
"width",
"height",
"status",
"view_center",
"view_direction",
"view_target",
"lens_length",
"front_clip_z",
"back_clip_z",
"view_height",
"twist_angle",
"custom_scale",
"frozen_layers",
"render_mode",
"circle_sides",
"ucs_icon_visible"
]
},
"readable": {
@@ -503,6 +523,36 @@
"class_version",
"definition_handle",
"definition_reactor_handle"
],
"Viewport": [
"id",
"snap_base",
"snap_spacing",
"grid_spacing",
"snap_angle",
"clip_boundary_handle",
"style_sheet",
"ucs_at_origin",
"ucs_per_viewport",
"ucs_origin",
"ucs_x_axis",
"ucs_y_axis",
"ucs_handle",
"base_ucs_handle",
"ucs_ortho_type",
"elevation",
"shade_plot_mode",
"grid_flags",
"grid_major",
"background_handle",
"shade_plot_handle",
"visual_style_handle",
"sun_handle",
"default_lighting",
"default_lighting_type",
"brightness",
"contrast",
"ambient_color"
]
},
"aliases": {