polyweave-gamekit 0.1.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- polyweave/__init__.py +66 -0
- polyweave/__main__.py +7 -0
- polyweave/kernel/__init__.py +1 -0
- polyweave/kernel/cache.py +182 -0
- polyweave/kernel/codes.py +1344 -0
- polyweave/kernel/config.py +1147 -0
- polyweave/kernel/describe.py +400 -0
- polyweave/kernel/doors.py +75 -0
- polyweave/kernel/errors.py +291 -0
- polyweave/kernel/files.py +69 -0
- polyweave/kernel/git.py +75 -0
- polyweave/kernel/image.py +90 -0
- polyweave/kernel/jobs/__init__.py +30 -0
- polyweave/kernel/jobs/children.py +64 -0
- polyweave/kernel/jobs/process.py +262 -0
- polyweave/kernel/jobs/record.py +211 -0
- polyweave/kernel/jobs/report.py +92 -0
- polyweave/kernel/jobs/runner.py +420 -0
- polyweave/kernel/jobs/stages.py +63 -0
- polyweave/kernel/jobs/worker.py +201 -0
- polyweave/kernel/layer.py +489 -0
- polyweave/kernel/post/__init__.py +165 -0
- polyweave/kernel/post/files.py +68 -0
- polyweave/kernel/post/mesh.py +150 -0
- polyweave/kernel/post/pixels.py +358 -0
- polyweave/kernel/post/voxels.py +302 -0
- polyweave/kernel/provenance.py +1167 -0
- polyweave/layers/__init__.py +1 -0
- polyweave/layers/engine/__init__.py +1 -0
- polyweave/layers/engine/capture.py +1020 -0
- polyweave/layers/engine/codes.py +441 -0
- polyweave/layers/engine/contrast.py +382 -0
- polyweave/layers/engine/driving.py +1669 -0
- polyweave/layers/engine/engine.py +589 -0
- polyweave/layers/engine/flashes.py +237 -0
- polyweave/layers/engine/frame_cost.py +289 -0
- polyweave/layers/engine/godot/__init__.py +63 -0
- polyweave/layers/engine/godot/addons/polyweave_driver/driver.gd +879 -0
- polyweave/layers/engine/godot/addons/polyweave_voxels/voxel.gdshader +25 -0
- polyweave/layers/engine/godot/addons/polyweave_voxels/voxel_draw.gd +117 -0
- polyweave/layers/engine/godot/addons/polyweave_voxels/voxel_model.gd +127 -0
- polyweave/layers/engine/godot/addons/polyweave_voxels/voxels.gd +73 -0
- polyweave/layers/engine/godot/first_screen.gd +35 -0
- polyweave/layers/engine/godot/parse_all.gd +26 -0
- polyweave/layers/engine/godot/perf_run.gd +57 -0
- polyweave/layers/engine/godot/preset_run.gd +71 -0
- polyweave/layers/engine/godot/quiet_draw.gd +23 -0
- polyweave/layers/engine/integrity.py +329 -0
- polyweave/layers/engine/layer.py +101 -0
- polyweave/layers/engine/offscreen.py +397 -0
- polyweave/layers/engine/pack.py +134 -0
- polyweave/layers/engine/perf.py +144 -0
- polyweave/layers/engine/presets.py +186 -0
- polyweave/layers/engine/pressure.py +264 -0
- polyweave/layers/engine/runs.py +131 -0
- polyweave/layers/engine/settings.py +66 -0
- polyweave/layers/engine/states.py +165 -0
- polyweave/layers/engine/tables.py +235 -0
- polyweave/layers/engine/testing.py +248 -0
- polyweave/layers/geometry/__init__.py +604 -0
- polyweave/layers/geometry/blend.py +215 -0
- polyweave/layers/geometry/build.py +210 -0
- polyweave/layers/geometry/codes.py +341 -0
- polyweave/layers/geometry/cost.py +426 -0
- polyweave/layers/geometry/custom.py +149 -0
- polyweave/layers/geometry/expr.py +215 -0
- polyweave/layers/geometry/finish.py +671 -0
- polyweave/layers/geometry/fracture.py +208 -0
- polyweave/layers/geometry/kit.py +189 -0
- polyweave/layers/geometry/layer.py +152 -0
- polyweave/layers/geometry/looks/__init__.py +87 -0
- polyweave/layers/geometry/looks/finish.py +15 -0
- polyweave/layers/geometry/looks/fuzz.py +23 -0
- polyweave/layers/geometry/make.py +611 -0
- polyweave/layers/geometry/mesh_buy.py +192 -0
- polyweave/layers/geometry/normalise.py +994 -0
- polyweave/layers/geometry/ops/__init__.py +69 -0
- polyweave/layers/geometry/ops/_shared.py +97 -0
- polyweave/layers/geometry/ops/annulus.py +31 -0
- polyweave/layers/geometry/ops/bevel.py +36 -0
- polyweave/layers/geometry/ops/blend.py +66 -0
- polyweave/layers/geometry/ops/carve.py +41 -0
- polyweave/layers/geometry/ops/cells.py +48 -0
- polyweave/layers/geometry/ops/crowned.py +30 -0
- polyweave/layers/geometry/ops/custom.py +23 -0
- polyweave/layers/geometry/ops/inflate.py +70 -0
- polyweave/layers/geometry/ops/mesh.py +40 -0
- polyweave/layers/geometry/ops/mirror.py +55 -0
- polyweave/layers/geometry/ops/model.py +125 -0
- polyweave/layers/geometry/ops/paint.py +59 -0
- polyweave/layers/geometry/ops/plate.py +62 -0
- polyweave/layers/geometry/ops/primitive.py +54 -0
- polyweave/layers/geometry/ops/prism.py +56 -0
- polyweave/layers/geometry/ops/transform.py +51 -0
- polyweave/layers/geometry/ops/union.py +44 -0
- polyweave/layers/geometry/outline.py +409 -0
- polyweave/layers/geometry/page.py +22 -0
- polyweave/layers/geometry/port.py +387 -0
- polyweave/layers/geometry/render/__init__.py +781 -0
- polyweave/layers/geometry/render/blender.py +959 -0
- polyweave/layers/geometry/render/rig.py +221 -0
- polyweave/layers/geometry/representations/__init__.py +66 -0
- polyweave/layers/geometry/representations/mesh.py +133 -0
- polyweave/layers/geometry/representations/voxels/__init__.py +69 -0
- polyweave/layers/geometry/representations/voxels/colour.py +124 -0
- polyweave/layers/geometry/representations/voxels/compare.py +163 -0
- polyweave/layers/geometry/representations/voxels/fit.py +421 -0
- polyweave/layers/geometry/representations/voxels/model.py +1029 -0
- polyweave/layers/geometry/representations/voxels/sheet.py +281 -0
- polyweave/layers/geometry/review.py +435 -0
- polyweave/layers/geometry/settings.py +62 -0
- polyweave/layers/geometry/shape.py +276 -0
- polyweave/layers/geometry/solid.py +1125 -0
- polyweave/layers/geometry/solver.py +222 -0
- polyweave/layers/geometry/surface.py +297 -0
- polyweave/layers/geometry/texture.py +307 -0
- polyweave/layers/geometry/tuning.py +140 -0
- polyweave/layers/geometry/units.py +314 -0
- polyweave/layers/kits/__init__.py +1259 -0
- polyweave/layers/kits/access/core/access.gd +216 -0
- polyweave/layers/kits/access/core/filter.gdshader +31 -0
- polyweave/layers/kits/access/core/filters.gd +64 -0
- polyweave/layers/kits/access/core/flash_run.gd +42 -0
- polyweave/layers/kits/access/core/options.gd +47 -0
- polyweave/layers/kits/access/core/proof.gd +345 -0
- polyweave/layers/kits/access/fixture/flash.gd +11 -0
- polyweave/layers/kits/access/fixture/flash.tscn +10 -0
- polyweave/layers/kits/access/fixture/main.tscn +35 -0
- polyweave/layers/kits/access/fixture/polyweave_access.gd +10 -0
- polyweave/layers/kits/access/fixture/project.godot +9 -0
- polyweave/layers/kits/access/fixture/shake.gd +8 -0
- polyweave/layers/kits/access/fixture/shake.tscn +8 -0
- polyweave/layers/kits/access/kit.toml +22 -0
- polyweave/layers/kits/audio/core/audio.gd +276 -0
- polyweave/layers/kits/audio/core/options.gd +23 -0
- polyweave/layers/kits/audio/core/proof.gd +334 -0
- polyweave/layers/kits/audio/fixture/main.tscn +3 -0
- polyweave/layers/kits/audio/fixture/polyweave_audio.gd +15 -0
- polyweave/layers/kits/audio/fixture/project.godot +9 -0
- polyweave/layers/kits/audio/fixture/sounds/confirm.wav +0 -0
- polyweave/layers/kits/audio/fixture/sounds/focus.wav +0 -0
- polyweave/layers/kits/audio/kit.toml +20 -0
- polyweave/layers/kits/codes.py +39 -0
- polyweave/layers/kits/crash/core/catcher.gd +30 -0
- polyweave/layers/kits/crash/core/log.gd +161 -0
- polyweave/layers/kits/crash/core/proof.gd +70 -0
- polyweave/layers/kits/crash/fixture/main.gd +8 -0
- polyweave/layers/kits/crash/fixture/main.tscn +6 -0
- polyweave/layers/kits/crash/fixture/project.godot +9 -0
- polyweave/layers/kits/crash/kit.toml +19 -0
- polyweave/layers/kits/credits/core/credits.gd +83 -0
- polyweave/layers/kits/credits/core/proof.gd +104 -0
- polyweave/layers/kits/credits/fixture/art/badge.png +0 -0
- polyweave/layers/kits/credits/fixture/art/badge.png.prov.json +34 -0
- polyweave/layers/kits/credits/fixture/art/mark.png +0 -0
- polyweave/layers/kits/credits/fixture/art/mark.png.prov.json +33 -0
- polyweave/layers/kits/credits/fixture/credits.json +24 -0
- polyweave/layers/kits/credits/fixture/main.tscn +3 -0
- polyweave/layers/kits/credits/fixture/polyweave.toml +4 -0
- polyweave/layers/kits/credits/fixture/project.godot +9 -0
- polyweave/layers/kits/credits/fixture/source/badge.png +0 -0
- polyweave/layers/kits/credits/fixture/source/mark.png +0 -0
- polyweave/layers/kits/credits/kit.toml +21 -0
- polyweave/layers/kits/credits/scene/credits.tscn +11 -0
- polyweave/layers/kits/determinism/core/proof.gd +100 -0
- polyweave/layers/kits/determinism/core/random.gd +69 -0
- polyweave/layers/kits/determinism/core/recorder.gd +76 -0
- polyweave/layers/kits/determinism/fixture/main.gd +16 -0
- polyweave/layers/kits/determinism/fixture/main.tscn +6 -0
- polyweave/layers/kits/determinism/fixture/polyweave_random.gd +8 -0
- polyweave/layers/kits/determinism/fixture/polyweave_state.gd +8 -0
- polyweave/layers/kits/determinism/fixture/project.godot +16 -0
- polyweave/layers/kits/determinism/fixture/record.json +4 -0
- polyweave/layers/kits/determinism/kit.toml +18 -0
- polyweave/layers/kits/dialogue/core/dialogue.gd +150 -0
- polyweave/layers/kits/dialogue/core/proof.gd +184 -0
- polyweave/layers/kits/dialogue/fixture/art/luna.png +0 -0
- polyweave/layers/kits/dialogue/fixture/i18n/strings.csv +6 -0
- polyweave/layers/kits/dialogue/fixture/main.tscn +3 -0
- polyweave/layers/kits/dialogue/fixture/polyweave_dialogue.gd +11 -0
- polyweave/layers/kits/dialogue/fixture/project.godot +9 -0
- polyweave/layers/kits/dialogue/kit.toml +21 -0
- polyweave/layers/kits/dialogue/scene/dialogue_box.tscn +41 -0
- polyweave/layers/kits/graphics/core/graphics.gd +162 -0
- polyweave/layers/kits/graphics/core/options.gd +18 -0
- polyweave/layers/kits/graphics/core/proof.gd +68 -0
- polyweave/layers/kits/graphics/fixture/main.tscn +17 -0
- polyweave/layers/kits/graphics/fixture/project.godot +9 -0
- polyweave/layers/kits/graphics/kit.toml +19 -0
- polyweave/layers/kits/language/core/language.gd +178 -0
- polyweave/layers/kits/language/core/options.gd +19 -0
- polyweave/layers/kits/language/core/proof.gd +125 -0
- polyweave/layers/kits/language/fixture/fonts/kana.ttf +0 -0
- polyweave/layers/kits/language/fixture/i18n/strings.csv +7 -0
- polyweave/layers/kits/language/fixture/main.tscn +39 -0
- polyweave/layers/kits/language/fixture/polyweave_language.gd +7 -0
- polyweave/layers/kits/language/fixture/project.godot +9 -0
- polyweave/layers/kits/language/kit.toml +22 -0
- polyweave/layers/kits/launch/core/proof.gd +134 -0
- polyweave/layers/kits/launch/core/scenes.gd +142 -0
- polyweave/layers/kits/launch/core/splash.gd +78 -0
- polyweave/layers/kits/launch/fixture/logo.png +0 -0
- polyweave/layers/kits/launch/fixture/main.tscn +3 -0
- polyweave/layers/kits/launch/fixture/polyweave_launch.gd +6 -0
- polyweave/layers/kits/launch/fixture/project.godot +8 -0
- polyweave/layers/kits/launch/kit.toml +20 -0
- polyweave/layers/kits/launch/scene/splash.tscn +13 -0
- polyweave/layers/kits/layer.py +27 -0
- polyweave/layers/kits/menus/core/confirm.gd +13 -0
- polyweave/layers/kits/menus/core/menu.gd +108 -0
- polyweave/layers/kits/menus/core/pause.gd +54 -0
- polyweave/layers/kits/menus/core/proof.gd +146 -0
- polyweave/layers/kits/menus/fixture/main.tscn +3 -0
- polyweave/layers/kits/menus/fixture/project.godot +15 -0
- polyweave/layers/kits/menus/kit.toml +21 -0
- polyweave/layers/kits/menus/scene/main_menu.tscn +17 -0
- polyweave/layers/kits/options/core/options_screen.gd +159 -0
- polyweave/layers/kits/options/core/proof.gd +256 -0
- polyweave/layers/kits/options/core/settings.gd +285 -0
- polyweave/layers/kits/options/fixture/main.tscn +3 -0
- polyweave/layers/kits/options/fixture/polyweave_options.gd +31 -0
- polyweave/layers/kits/options/fixture/project.godot +8 -0
- polyweave/layers/kits/options/kit.toml +31 -0
- polyweave/layers/kits/options/scene/options_screen.tscn +13 -0
- polyweave/layers/kits/players/core/players.gd +237 -0
- polyweave/layers/kits/players/core/proof.gd +234 -0
- polyweave/layers/kits/players/fixture/main.tscn +3 -0
- polyweave/layers/kits/players/fixture/project.godot +20 -0
- polyweave/layers/kits/players/kit.toml +23 -0
- polyweave/layers/kits/presence/core/presence.gd +176 -0
- polyweave/layers/kits/presence/core/proof.gd +118 -0
- polyweave/layers/kits/presence/fixture/main.tscn +3 -0
- polyweave/layers/kits/presence/fixture/project.godot +9 -0
- polyweave/layers/kits/presence/kit.toml +20 -0
- polyweave/layers/kits/prompts/core/icons/generic/dpad_down_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/generic/dpad_down_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/generic/dpad_left_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/generic/dpad_left_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/generic/dpad_right_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/generic/dpad_right_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/generic/dpad_up_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/generic/dpad_up_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/generic/east_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/generic/east_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/generic/l_stick_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/generic/l_stick_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/generic/lb_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/generic/lb_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/generic/ls_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/generic/ls_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/generic/lt_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/generic/lt_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/generic/north_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/generic/north_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/generic/r_stick_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/generic/r_stick_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/generic/rb_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/generic/rb_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/generic/rs_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/generic/rs_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/generic/rt_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/generic/rt_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/generic/select_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/generic/select_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/generic/south_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/generic/south_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/generic/start_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/generic/start_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/generic/west_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/generic/west_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_0_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_0_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_1_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_1_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_2_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_2_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_3_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_3_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_4_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_4_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_5_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_5_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_6_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_6_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_7_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_7_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_8_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_8_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_9_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_9_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_a_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_a_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_alt_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_alt_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_b_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_b_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_backspace_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_backspace_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_c_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_c_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_ctrl_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_ctrl_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_d_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_d_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_down_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_down_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_e_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_e_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_enter_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_enter_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_escape_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_escape_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_f_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_f_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_g_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_g_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_h_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_h_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_i_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_i_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_j_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_j_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_k_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_k_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_l_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_l_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_left_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_left_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_m_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_m_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_n_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_n_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_o_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_o_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_p_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_p_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_q_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_q_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_r_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_r_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_right_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_right_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_s_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_s_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_shift_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_shift_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_space_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_space_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_t_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_t_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_tab_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_tab_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_u_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_u_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_up_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_up_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_v_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_v_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_w_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_w_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_x_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_x_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_y_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_y_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_z_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/key_z_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/mouse_left_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/mouse_left_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/mouse_middle_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/mouse_middle_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/mouse_right_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/keyboard/mouse_right_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/playstation/dpad_down_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/playstation/dpad_down_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/playstation/dpad_left_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/playstation/dpad_left_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/playstation/dpad_right_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/playstation/dpad_right_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/playstation/dpad_up_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/playstation/dpad_up_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/playstation/east_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/playstation/east_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/playstation/l_stick_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/playstation/l_stick_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/playstation/lb_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/playstation/lb_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/playstation/ls_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/playstation/ls_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/playstation/lt_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/playstation/lt_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/playstation/north_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/playstation/north_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/playstation/r_stick_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/playstation/r_stick_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/playstation/rb_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/playstation/rb_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/playstation/rs_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/playstation/rs_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/playstation/rt_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/playstation/rt_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/playstation/select_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/playstation/select_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/playstation/south_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/playstation/south_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/playstation/start_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/playstation/start_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/playstation/west_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/playstation/west_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/switch/dpad_down_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/switch/dpad_down_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/switch/dpad_left_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/switch/dpad_left_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/switch/dpad_right_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/switch/dpad_right_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/switch/dpad_up_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/switch/dpad_up_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/switch/east_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/switch/east_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/switch/l_stick_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/switch/l_stick_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/switch/lb_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/switch/lb_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/switch/ls_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/switch/ls_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/switch/lt_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/switch/lt_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/switch/north_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/switch/north_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/switch/r_stick_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/switch/r_stick_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/switch/rb_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/switch/rb_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/switch/rs_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/switch/rs_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/switch/rt_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/switch/rt_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/switch/select_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/switch/select_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/switch/south_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/switch/south_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/switch/start_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/switch/start_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/switch/west_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/switch/west_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/xbox/dpad_down_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/xbox/dpad_down_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/xbox/dpad_left_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/xbox/dpad_left_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/xbox/dpad_right_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/xbox/dpad_right_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/xbox/dpad_up_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/xbox/dpad_up_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/xbox/east_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/xbox/east_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/xbox/l_stick_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/xbox/l_stick_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/xbox/lb_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/xbox/lb_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/xbox/ls_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/xbox/ls_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/xbox/lt_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/xbox/lt_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/xbox/north_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/xbox/north_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/xbox/r_stick_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/xbox/r_stick_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/xbox/rb_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/xbox/rb_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/xbox/rs_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/xbox/rs_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/xbox/rt_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/xbox/rt_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/xbox/select_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/xbox/select_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/xbox/south_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/xbox/south_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/xbox/start_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/xbox/start_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/icons/xbox/west_64.png +0 -0
- polyweave/layers/kits/prompts/core/icons/xbox/west_64.png.prov.json +28 -0
- polyweave/layers/kits/prompts/core/prompt_icon.gd +19 -0
- polyweave/layers/kits/prompts/core/prompts.gd +562 -0
- polyweave/layers/kits/prompts/core/proof.gd +334 -0
- polyweave/layers/kits/prompts/fixture/main.tscn +3 -0
- polyweave/layers/kits/prompts/fixture/project.godot +28 -0
- polyweave/layers/kits/prompts/icons/generic.icons.toml +84 -0
- polyweave/layers/kits/prompts/icons/keyboard.icons.toml +216 -0
- polyweave/layers/kits/prompts/icons/playstation.icons.toml +86 -0
- polyweave/layers/kits/prompts/icons/switch.icons.toml +83 -0
- polyweave/layers/kits/prompts/icons/xbox.icons.toml +88 -0
- polyweave/layers/kits/prompts/kit.toml +30 -0
- polyweave/layers/kits/prompts/proof.accept.toml +10 -0
- polyweave/layers/kits/prompts/scene/prompt_legend.tscn +15 -0
- polyweave/layers/kits/remap/core/bindings.gd +618 -0
- polyweave/layers/kits/remap/core/icons/remap/listening_64.png +0 -0
- polyweave/layers/kits/remap/core/icons/remap/listening_64.png.prov.json +28 -0
- polyweave/layers/kits/remap/core/icons/remap/reset_64.png +0 -0
- polyweave/layers/kits/remap/core/icons/remap/reset_64.png.prov.json +28 -0
- polyweave/layers/kits/remap/core/options.gd +11 -0
- polyweave/layers/kits/remap/core/pad_screen.gd +370 -0
- polyweave/layers/kits/remap/core/pads/playstation.json +29 -0
- polyweave/layers/kits/remap/core/pads/playstation.png +0 -0
- polyweave/layers/kits/remap/core/pads/playstation.png.prov.json +38 -0
- polyweave/layers/kits/remap/core/pads/switch.json +29 -0
- polyweave/layers/kits/remap/core/pads/switch.png +0 -0
- polyweave/layers/kits/remap/core/pads/switch.png.prov.json +30 -0
- polyweave/layers/kits/remap/core/pads/xbox.json +29 -0
- polyweave/layers/kits/remap/core/pads/xbox.png +0 -0
- polyweave/layers/kits/remap/core/pads/xbox.png.prov.json +38 -0
- polyweave/layers/kits/remap/core/proof.gd +507 -0
- polyweave/layers/kits/remap/core/remap_menu.gd +398 -0
- polyweave/layers/kits/remap/fixture/main.tscn +3 -0
- polyweave/layers/kits/remap/fixture/project.godot +24 -0
- polyweave/layers/kits/remap/icons/remap.icons.toml +20 -0
- polyweave/layers/kits/remap/kit.toml +45 -0
- polyweave/layers/kits/remap/pads/pads.accept.toml +26 -0
- polyweave/layers/kits/remap/pads/playstation.svg +34 -0
- polyweave/layers/kits/remap/pads/switch.svg +94 -0
- polyweave/layers/kits/remap/pads/xbox.svg +34 -0
- polyweave/layers/kits/remap/proof.accept.toml +10 -0
- polyweave/layers/kits/remap/scene/remap_menu.tscn +15 -0
- polyweave/layers/kits/saves/core/proof.gd +148 -0
- polyweave/layers/kits/saves/core/saves.gd +192 -0
- polyweave/layers/kits/saves/fixture/main.tscn +3 -0
- polyweave/layers/kits/saves/fixture/polyweave_saves.gd +14 -0
- polyweave/layers/kits/saves/fixture/project.godot +8 -0
- polyweave/layers/kits/saves/kit.toml +21 -0
- polyweave/layers/kits/settings.py +17 -0
- polyweave/layers/kits/state/core/proof.gd +36 -0
- polyweave/layers/kits/state/core/state.gd +85 -0
- polyweave/layers/kits/state/fixture/level.gd +7 -0
- polyweave/layers/kits/state/fixture/main.tscn +13 -0
- polyweave/layers/kits/state/fixture/player.gd +3 -0
- polyweave/layers/kits/state/fixture/polyweave_state.gd +9 -0
- polyweave/layers/kits/state/fixture/project.godot +9 -0
- polyweave/layers/kits/state/kit.toml +18 -0
- polyweave/layers/kits/tables/core/proof.gd +93 -0
- polyweave/layers/kits/tables/core/tables.gd +120 -0
- polyweave/layers/kits/tables/fixture/data/enemies.csv +4 -0
- polyweave/layers/kits/tables/fixture/data/tables.toml +12 -0
- polyweave/layers/kits/tables/fixture/project.godot +7 -0
- polyweave/layers/kits/tables/fixture/tables/enemies.gd +26 -0
- polyweave/layers/kits/tables/kit.toml +19 -0
- polyweave/layers/kits/tests/core/proof.gd +29 -0
- polyweave/layers/kits/tests/core/test.gd +54 -0
- polyweave/layers/kits/tests/fixture/project.godot +8 -0
- polyweave/layers/kits/tests/fixture/tests/legacy_test.gd +14 -0
- polyweave/layers/kits/tests/fixture/tests/sums_test.gd +7 -0
- polyweave/layers/kits/tests/kit.toml +18 -0
- polyweave/layers/motion/__init__.py +1 -0
- polyweave/layers/motion/camera.py +724 -0
- polyweave/layers/motion/clip.py +758 -0
- polyweave/layers/motion/codes.py +155 -0
- polyweave/layers/motion/layer.py +52 -0
- polyweave/layers/motion/motion.py +78 -0
- polyweave/layers/motion/settings.py +37 -0
- polyweave/layers/motion/skeleton.py +677 -0
- polyweave/layers/motion/sprites.py +287 -0
- polyweave/layers/motion/timeline.py +422 -0
- polyweave/layers/picture/__init__.py +1 -0
- polyweave/layers/picture/codes.py +114 -0
- polyweave/layers/picture/copies.py +193 -0
- polyweave/layers/picture/fitting.py +206 -0
- polyweave/layers/picture/layer.py +61 -0
- polyweave/layers/picture/page.py +224 -0
- polyweave/layers/picture/panel.py +1727 -0
- polyweave/layers/picture/picture.py +668 -0
- polyweave/layers/picture/scenario.py +191 -0
- polyweave/layers/picture/settings.py +69 -0
- polyweave/layers/picture/style.py +695 -0
- polyweave/layers/picture/variation.py +637 -0
- polyweave/layers/picture/vector.py +476 -0
- polyweave/layers/reference/__init__.py +1 -0
- polyweave/layers/reference/layer.py +90 -0
- polyweave/layers/reference/reference.py +592 -0
- polyweave/layers/reference/reference_compare.py +285 -0
- polyweave/layers/reference/reference_concept.py +391 -0
- polyweave/layers/reference/reference_events.py +415 -0
- polyweave/layers/reference/reference_objects.py +590 -0
- polyweave/layers/reference/reference_regions.py +224 -0
- polyweave/layers/reference/reference_register.py +167 -0
- polyweave/layers/reference/reference_transcription.py +237 -0
- polyweave/layers/reference/settings.py +44 -0
- polyweave/layers/sound/__init__.py +1 -0
- polyweave/layers/sound/codes.py +213 -0
- polyweave/layers/sound/layer.py +70 -0
- polyweave/layers/sound/licences.py +93 -0
- polyweave/layers/sound/music.py +1049 -0
- polyweave/layers/sound/music_draft.py +413 -0
- polyweave/layers/sound/music_heard.py +387 -0
- polyweave/layers/sound/music_render.py +729 -0
- polyweave/layers/sound/page.py +20 -0
- polyweave/layers/sound/settings.py +74 -0
- polyweave/layers/sound/sfx.py +570 -0
- polyweave/layers/sound/sfxr.py +334 -0
- polyweave/layers/sound/sound.py +893 -0
- polyweave/layers/sound/sound_buy.py +932 -0
- polyweave/layers/sound/sound_loop.py +270 -0
- polyweave/layers/sound/sound_stems.py +180 -0
- polyweave/layers/store/__init__.py +1 -0
- polyweave/layers/store/codes.py +191 -0
- polyweave/layers/store/compose.py +218 -0
- polyweave/layers/store/icons.py +417 -0
- polyweave/layers/store/layer.py +42 -0
- polyweave/layers/store/store.py +298 -0
- polyweave/layers/store/stores/steam.toml +61 -0
- polyweave/layers/store/video.py +575 -0
- polyweave/layers/vfx/__init__.py +1 -0
- polyweave/layers/vfx/codes.py +42 -0
- polyweave/layers/vfx/layer.py +50 -0
- polyweave/layers/vfx/page.py +26 -0
- polyweave/layers/vfx/vfx.py +1599 -0
- polyweave/layers/words/__init__.py +1 -0
- polyweave/layers/words/codes.py +175 -0
- polyweave/layers/words/layer.py +79 -0
- polyweave/layers/words/page.py +35 -0
- polyweave/layers/words/settings.py +42 -0
- polyweave/layers/words/svgtext.py +301 -0
- polyweave/layers/words/words.py +894 -0
- polyweave/layers/words/world.py +956 -0
- polyweave/loop/__init__.py +1 -0
- polyweave/loop/accept.py +861 -0
- polyweave/loop/calibrate.py +405 -0
- polyweave/loop/declared.py +98 -0
- polyweave/loop/extend.py +597 -0
- polyweave/loop/ladder.py +139 -0
- polyweave/loop/loop.py +808 -0
- polyweave/loop/measure.py +1446 -0
- polyweave/loop/person.py +179 -0
- polyweave/loop/review.py +743 -0
- polyweave/loop/review_page/locales/en.json +244 -0
- polyweave/loop/review_page/locales/pt-BR.json +244 -0
- polyweave/loop/review_page/screen/GLTFLoader.js +1 -0
- polyweave/loop/review_page/screen/OrbitControls.js +1 -0
- polyweave/loop/review_page/screen/index.css +2 -0
- polyweave/loop/review_page/screen/index.html +13 -0
- polyweave/loop/review_page/screen/inter-cyrillic-ext-wght-normal.woff2 +0 -0
- polyweave/loop/review_page/screen/inter-cyrillic-wght-normal.woff2 +0 -0
- polyweave/loop/review_page/screen/inter-greek-ext-wght-normal.woff2 +0 -0
- polyweave/loop/review_page/screen/inter-greek-wght-normal.woff2 +0 -0
- polyweave/loop/review_page/screen/inter-latin-ext-wght-normal.woff2 +0 -0
- polyweave/loop/review_page/screen/inter-latin-wght-normal.woff2 +0 -0
- polyweave/loop/review_page/screen/inter-vietnamese-wght-normal.woff2 +0 -0
- polyweave/loop/review_page/screen/plus-jakarta-sans-latin-ext-wght-normal.woff2 +0 -0
- polyweave/loop/review_page/screen/plus-jakarta-sans-latin-wght-normal.woff2 +0 -0
- polyweave/loop/review_page/screen/plus-jakarta-sans-vietnamese-wght-normal.woff2 +0 -0
- polyweave/loop/review_page/screen/review.js +60 -0
- polyweave/loop/review_page/screen/stamp.json +15 -0
- polyweave/loop/review_page/screen/three.module.js +4220 -0
- polyweave/loop/review_text.py +78 -0
- polyweave/loop/search.py +864 -0
- polyweave/loop/trace.py +157 -0
- polyweave/loop/verdict.py +1007 -0
- polyweave/services/__init__.py +1 -0
- polyweave/services/client.py +174 -0
- polyweave/services/elevenlabs.py +221 -0
- polyweave/services/generated.py +184 -0
- polyweave/services/ideogram.py +276 -0
- polyweave/services/meshy.py +85 -0
- polyweave/services/purchase.py +849 -0
- polyweave/services/rodin.py +82 -0
- polyweave/services/scenario.py +199 -0
- polyweave/services/schema.py +266 -0
- polyweave/services/service.py +388 -0
- polyweave/services/tripo.py +86 -0
- polyweave/surface/__init__.py +1 -0
- polyweave/surface/adoption.py +171 -0
- polyweave/surface/brief.py +313 -0
- polyweave/surface/capabilities.py +263 -0
- polyweave/surface/census.py +245 -0
- polyweave/surface/cli.py +196 -0
- polyweave/surface/commands.py +454 -0
- polyweave/surface/migrate.py +573 -0
- polyweave/surface/moved.toml +137 -0
- polyweave/surface/newgame.py +169 -0
- polyweave/surface/project.py +1041 -0
- polyweave/surface/quote.py +81 -0
- polyweave/surface/report.py +95 -0
- polyweave/surface/revision.py +689 -0
- polyweave/surface/server.py +396 -0
- polyweave_gamekit-0.1.0.dist-info/METADATA +126 -0
- polyweave_gamekit-0.1.0.dist-info/RECORD +685 -0
- polyweave_gamekit-0.1.0.dist-info/WHEEL +4 -0
- polyweave_gamekit-0.1.0.dist-info/entry_points.txt +2 -0
- polyweave_gamekit-0.1.0.dist-info/licenses/LICENSE +21 -0
polyweave/__init__.py
ADDED
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
"""polyweave — a game's parts declared rather than dialled in.
|
|
2
|
+
|
|
3
|
+
Nothing is imported here on purpose. The caller is an agent whose turn is the budget,
|
|
4
|
+
and a package that pulls in its whole surface to answer one call spends that budget
|
|
5
|
+
before the call happens.
|
|
6
|
+
|
|
7
|
+
The one function here keeps that rule: `readable()` imports `sys` inside itself, and a
|
|
8
|
+
caller that never calls it pays nothing for it.
|
|
9
|
+
|
|
10
|
+
The package is laid out by which way its dependencies are meant to run (§PW499):
|
|
11
|
+
|
|
12
|
+
- `kernel/`: errors and doors, the operation registry, config, jobs, files, the cache,
|
|
13
|
+
the post-checks and the provenance record. It knows no medium.
|
|
14
|
+
- `loop/`: accept, measure, search, calibrate, verdict, review, brief, revision and the
|
|
15
|
+
loop's own ledger: what every medium is declared, measured, searched and judged by.
|
|
16
|
+
- `layers/<medium>/`: geometry (with render), picture, sound, words, vfx, motion,
|
|
17
|
+
engine, reference, store and kits. A measure reading one medium lives with it.
|
|
18
|
+
- `services/`: what was bought from a paid service, and what the service accepts.
|
|
19
|
+
- `surface/`: the server, the command line, the census, capabilities and the calls
|
|
20
|
+
that adopt a project whole.
|
|
21
|
+
|
|
22
|
+
A module that fits no layer cleanly sits with the layer that owns its data.
|
|
23
|
+
"""
|
|
24
|
+
|
|
25
|
+
__version__ = "0.1.0"
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
def readable() -> list[str]:
|
|
29
|
+
"""Write this process's output as UTF-8, and say which streams moved (§PW73).
|
|
30
|
+
|
|
31
|
+
Nothing in this package prints its prose. A refusal's message and remedy, and every
|
|
32
|
+
line a run reports, are returned for the caller to print — so the encoding of the
|
|
33
|
+
stream they land on is the caller's process to set, not this one's.
|
|
34
|
+
|
|
35
|
+
Left unset on a Windows desk it is the locale's. An em dash then goes out as the
|
|
36
|
+
single byte 0x97, which is correct cp1252 and nothing is lost writing it; what reads
|
|
37
|
+
the pipe decodes UTF-8, where that byte is not a character, and shows a lozenge. The
|
|
38
|
+
loss is at the far end, which is the worse end: the process that wrote the line saw
|
|
39
|
+
nothing wrong and has nothing to report.
|
|
40
|
+
|
|
41
|
+
A library must not reconfigure a process it does not own, so this is a call and not
|
|
42
|
+
something that happens on import. One line at the top of a runner, before it prints:
|
|
43
|
+
|
|
44
|
+
polyweave.readable()
|
|
45
|
+
|
|
46
|
+
It returns the streams it changed, which is empty where they were already UTF-8, and
|
|
47
|
+
it is safe to call twice. `sys` is the only import, so it costs nothing to the turn
|
|
48
|
+
of a caller that never uses it.
|
|
49
|
+
"""
|
|
50
|
+
import sys
|
|
51
|
+
|
|
52
|
+
moved = []
|
|
53
|
+
for name in ("stdout", "stderr"):
|
|
54
|
+
stream = getattr(sys, name, None)
|
|
55
|
+
if stream is None or not hasattr(stream, "reconfigure"):
|
|
56
|
+
continue
|
|
57
|
+
if (getattr(stream, "encoding", "") or "").lower().replace("-", "") == "utf8":
|
|
58
|
+
continue
|
|
59
|
+
try:
|
|
60
|
+
stream.reconfigure(encoding="utf-8")
|
|
61
|
+
except (AttributeError, ValueError, OSError):
|
|
62
|
+
# A stream that cannot be reconfigured is one somebody else already wrapped,
|
|
63
|
+
# and taking it over would be the reach this call exists to avoid.
|
|
64
|
+
continue
|
|
65
|
+
moved.append(name)
|
|
66
|
+
return moved
|
polyweave/__main__.py
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"""What every layer stands on: errors, the registry, config, jobs, records."""
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
"""Renders are content-addressed, so the same picture is paid for once.
|
|
2
|
+
|
|
3
|
+
The evidence is §PW14: a search revisits neighbourhoods and a caller re-runs the same
|
|
4
|
+
render across sessions, and without a cache every one of those is paid again at the full
|
|
5
|
+
price of a path trace.
|
|
6
|
+
|
|
7
|
+
The key is the provenance record's own subset — the input hashes, the parameter values,
|
|
8
|
+
the renderer version, the colour pipeline and the seed. Everything that can change the
|
|
9
|
+
output is in it and nothing that cannot, which is what makes a hit **safe to return**
|
|
10
|
+
rather than merely likely to be right.
|
|
11
|
+
|
|
12
|
+
key = provenance.cache_key(provenance.planned(...)) # before anything is rendered
|
|
13
|
+
hit = look(key, work=...) # or None
|
|
14
|
+
put(key, artefact, record, work=...) # after a miss
|
|
15
|
+
|
|
16
|
+
Two things matter more than they look. **A hit is reported as a hit**, because a caller
|
|
17
|
+
timing a sweep needs to know what it actually measured. And **preview rungs are cached
|
|
18
|
+
too**, since those are the renders a search asks for thousands of times while the full
|
|
19
|
+
ones are asked for once.
|
|
20
|
+
"""
|
|
21
|
+
|
|
22
|
+
from __future__ import annotations
|
|
23
|
+
|
|
24
|
+
import contextlib
|
|
25
|
+
import json
|
|
26
|
+
import os
|
|
27
|
+
import shutil
|
|
28
|
+
import time
|
|
29
|
+
from pathlib import Path
|
|
30
|
+
|
|
31
|
+
from .errors import PolyweaveError
|
|
32
|
+
from .files import read_text_retrying, write_atomic
|
|
33
|
+
|
|
34
|
+
#: Under the project, so it can be inspected and deleted by hand. `[paths] work` is the
|
|
35
|
+
#: only location the plugin chooses for itself, and it belongs in `.gitignore`.
|
|
36
|
+
DIRECTORY = "cache"
|
|
37
|
+
|
|
38
|
+
#: What a project may hold before the least recently used are dropped.
|
|
39
|
+
MAX_BYTES = 8_000_000_000
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
def where(work: str | Path) -> Path:
|
|
43
|
+
return Path(work) / DIRECTORY
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
def slot(key: str, work: str | Path, suffix: str = ".png") -> tuple[Path, Path]:
|
|
47
|
+
"""The artefact and its record, fanned out by the key's first two characters."""
|
|
48
|
+
if not key or len(key) < 4:
|
|
49
|
+
raise PolyweaveError(
|
|
50
|
+
"prov.bad-key",
|
|
51
|
+
f"{key!r} is not a cache key",
|
|
52
|
+
"compute it with cache_key over a provenance record",
|
|
53
|
+
)
|
|
54
|
+
folder = where(work) / key[:2]
|
|
55
|
+
return folder / f"{key}{suffix}", folder / f"{key}.json"
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
def look(key: str, *, work: str | Path, suffix: str = ".png") -> dict | None:
|
|
59
|
+
"""What this key holds, or nothing.
|
|
60
|
+
|
|
61
|
+
A record whose artefact is missing is **dropped rather than repaired**: half an
|
|
62
|
+
entry is a hit waiting to return a file that is not there.
|
|
63
|
+
"""
|
|
64
|
+
artefact, record = slot(key, work, suffix)
|
|
65
|
+
if not record.is_file():
|
|
66
|
+
return None
|
|
67
|
+
if not artefact.is_file():
|
|
68
|
+
with contextlib.suppress(OSError):
|
|
69
|
+
record.unlink()
|
|
70
|
+
return None
|
|
71
|
+
text = read_text_retrying(record)
|
|
72
|
+
if text is None: # pragma: no cover - removed between the two reads
|
|
73
|
+
return None
|
|
74
|
+
try:
|
|
75
|
+
held = json.loads(text)
|
|
76
|
+
except json.JSONDecodeError:
|
|
77
|
+
with contextlib.suppress(OSError):
|
|
78
|
+
record.unlink()
|
|
79
|
+
artefact.unlink()
|
|
80
|
+
return None
|
|
81
|
+
_touch(artefact)
|
|
82
|
+
return {
|
|
83
|
+
"key": key,
|
|
84
|
+
"artefact": artefact,
|
|
85
|
+
"record": held,
|
|
86
|
+
"bytes": artefact.stat().st_size,
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
def put(key: str, artefact: str | Path, record: dict, *, work: str | Path) -> dict:
|
|
91
|
+
"""Keep this artefact under its key, with the record that says what produced it."""
|
|
92
|
+
source = Path(artefact)
|
|
93
|
+
if not source.is_file():
|
|
94
|
+
raise PolyweaveError(
|
|
95
|
+
"prov.missing-artefact",
|
|
96
|
+
f"nothing is at {source} to cache",
|
|
97
|
+
"write the artefact before caching it",
|
|
98
|
+
)
|
|
99
|
+
held, beside = slot(key, work, source.suffix or ".png")
|
|
100
|
+
held.parent.mkdir(parents=True, exist_ok=True)
|
|
101
|
+
shutil.copy2(source, held)
|
|
102
|
+
write_atomic(beside, json.dumps(record, indent=2, sort_keys=True) + "\n")
|
|
103
|
+
return {"key": key, "artefact": held, "bytes": held.stat().st_size}
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
def take(hit: dict, out: str | Path) -> Path:
|
|
107
|
+
"""Copy a hit out to where the caller wanted it written."""
|
|
108
|
+
destination = Path(out)
|
|
109
|
+
destination.parent.mkdir(parents=True, exist_ok=True)
|
|
110
|
+
shutil.copy2(hit["artefact"], destination)
|
|
111
|
+
return destination
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
def entries(work: str | Path) -> list[dict]:
|
|
115
|
+
"""Every entry, newest use first."""
|
|
116
|
+
found = []
|
|
117
|
+
root = where(work)
|
|
118
|
+
if not root.is_dir():
|
|
119
|
+
return found
|
|
120
|
+
for record in root.rglob("*.json"):
|
|
121
|
+
key = record.stem
|
|
122
|
+
artefact = next(
|
|
123
|
+
(p for p in record.parent.glob(f"{key}.*") if p.suffix != ".json"), None
|
|
124
|
+
)
|
|
125
|
+
if artefact is None:
|
|
126
|
+
with contextlib.suppress(OSError):
|
|
127
|
+
record.unlink()
|
|
128
|
+
continue
|
|
129
|
+
stat = artefact.stat()
|
|
130
|
+
found.append(
|
|
131
|
+
{
|
|
132
|
+
"key": key,
|
|
133
|
+
"artefact": artefact,
|
|
134
|
+
"record": record,
|
|
135
|
+
"bytes": stat.st_size + record.stat().st_size,
|
|
136
|
+
"used": stat.st_mtime,
|
|
137
|
+
}
|
|
138
|
+
)
|
|
139
|
+
return sorted(found, key=lambda e: e["used"], reverse=True)
|
|
140
|
+
|
|
141
|
+
|
|
142
|
+
def stats(work: str | Path) -> dict:
|
|
143
|
+
held = entries(work)
|
|
144
|
+
return {
|
|
145
|
+
"entries": len(held),
|
|
146
|
+
"bytes": sum(e["bytes"] for e in held),
|
|
147
|
+
"where": str(where(work)),
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
|
|
151
|
+
def evict(*, work: str | Path, max_bytes: int = MAX_BYTES) -> dict:
|
|
152
|
+
"""Drop the least recently used until the store is under its ceiling."""
|
|
153
|
+
held = entries(work)
|
|
154
|
+
total = sum(e["bytes"] for e in held)
|
|
155
|
+
dropped = []
|
|
156
|
+
for entry in reversed(held): # oldest use first
|
|
157
|
+
if total <= max_bytes:
|
|
158
|
+
break
|
|
159
|
+
for path in (entry["artefact"], entry["record"]):
|
|
160
|
+
with contextlib.suppress(OSError):
|
|
161
|
+
path.unlink()
|
|
162
|
+
total -= entry["bytes"]
|
|
163
|
+
dropped.append(entry["key"])
|
|
164
|
+
return {"dropped": dropped, "bytes": total, "entries": len(held) - len(dropped)}
|
|
165
|
+
|
|
166
|
+
|
|
167
|
+
def forget(key: str, *, work: str | Path, suffix: str = ".png") -> bool:
|
|
168
|
+
artefact, record = slot(key, work, suffix)
|
|
169
|
+
gone = False
|
|
170
|
+
for path in (artefact, record):
|
|
171
|
+
if path.is_file():
|
|
172
|
+
with contextlib.suppress(OSError):
|
|
173
|
+
path.unlink()
|
|
174
|
+
gone = True
|
|
175
|
+
return gone
|
|
176
|
+
|
|
177
|
+
|
|
178
|
+
def _touch(path: Path) -> None:
|
|
179
|
+
"""Mark an entry as used now, which is what least-recently-used is measured on."""
|
|
180
|
+
with contextlib.suppress(OSError):
|
|
181
|
+
now = time.time()
|
|
182
|
+
os.utime(path, (now, now))
|