Skip to content

Commit c94203f

Browse files
committed
Add original source physical palette edits, independent ray-locality court and private SHA-sealed raster receipts to existing hosted source workflow
1 parent e0133be commit c94203f

1 file changed

Lines changed: 40 additions & 1 deletion

File tree

‎.github/workflows/corpus370-operational-shader-palette-source-v1.yml‎

Lines changed: 40 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,10 @@ on:
77
- 'tools/truth_foundry/blender_corpus370_operational_palette_independent_court_v1.py'
88
- 'tools/corpus/compile_corpus370_operational_palette_joint_v1.py'
99
- 'tests/corpus/test_corpus370_operational_palette_joint_v1.py'
10+
- 'tools/corpus/court_corpus370_operational_palette_pixel_consequence_v1.py'
11+
- 'tools/truth_foundry/blender_corpus370_operational_palette_physical_render_v1.py'
12+
- 'tools/truth_foundry/blender_corpus370_operational_palette_physical_independent_ray_court_v1.py'
13+
- 'tests/corpus/test_corpus370_operational_palette_pixel_consequence_v1.py'
1014
- '.github/workflows/corpus370-operational-shader-palette-source-v1.yml'
1115
workflow_dispatch:
1216
permissions:
@@ -25,7 +29,7 @@ jobs:
2529
python-version: '3.11'
2630
- run: python -m pip install 'numpy>=1.26,<3' 'pytest>=8,<10'
2731
- run: |
28-
python -m pytest -q tests/corpus/test_corpus370_operational_edit_algebra_v1.py tests/corpus/test_corpus370_operational_native_support_v1.py tests/corpus/test_corpus370_operational_palette_joint_v1.py
32+
python -m pytest -q tests/corpus/test_corpus370_operational_edit_algebra_v1.py tests/corpus/test_corpus370_operational_native_support_v1.py tests/corpus/test_corpus370_operational_palette_joint_v1.py tests/corpus/test_corpus370_operational_palette_pixel_consequence_v1.py
2933
original-blender-palette:
3034
needs: joint-contracts
3135
runs-on: ubuntu-24.04
@@ -114,6 +118,7 @@ jobs:
114118
(d/('source.'+os.environ['EXT'])).write_bytes(source)
115119
(d/'rest.npz').write_bytes(exact(lambda p:sid in p and p.endswith('/SOURCE_REST_GEOMETRY_V1.npz')))
116120
(d/'policy.json').write_bytes(exact(lambda p:sid in p and p.endswith('/SOURCE_REST_RENDER_CANDIDATE.json')))
121+
(d/'camera.json').write_bytes(exact(lambda p:sid in p and p.endswith('/camera_bundle.json')))
117122
# Restore exact GLB texture dependency if present; no texture replacement or synthesis.
118123
if os.environ['SUBJECT']=='CAT':
119124
material=exact(lambda p:p.endswith('/Models/GLB format/Textures/colormap.png'))
@@ -131,6 +136,15 @@ jobs:
131136
"$BLENDER_EXE" --background --factory-startup --threads 2 --python-exit-code 1 --python tools/truth_foundry/blender_corpus370_operational_palette_v1.py -- --source "$D/source.$EXT" --source-sha256 "$SOURCE_SHA" --v18a-npz "$D/v18a.npz" --rest-npz "$D/rest.npz" --source-policy "$D/policy.json" --output-dir "$RUNNER_TEMP/od-palette-out-$SUBJECT"
132137
"$BLENDER_EXE" --background --factory-startup --threads 2 --python-exit-code 1 --python tools/truth_foundry/blender_corpus370_operational_palette_independent_court_v1.py -- --source "$D/source.$EXT" --source-sha256 "$SOURCE_SHA" --v18a-npz "$D/v18a.npz" --reference-rest-npz "$D/rest.npz" --source-policy "$D/policy.json" --facts "$RUNNER_TEMP/od-palette-out-$SUBJECT/PRIVATE_ORIGINAL_SHADER_CONSTANT_PALETTE_FACTS_V1.json" --output-dir "$RUNNER_TEMP/od-palette-out-$SUBJECT"
133138
python -m tools.corpus.compile_corpus370_operational_palette_joint_v1 --native-evidence "$D/native.json" --source-palette "$RUNNER_TEMP/od-palette-out-$SUBJECT/PRIVATE_ORIGINAL_SHADER_CONSTANT_PALETTE_FACTS_V1.json" --palette-court "$RUNNER_TEMP/od-palette-out-$SUBJECT/PRIVATE_INDEPENDENT_ORIGINAL_SHADER_PALETTE_COURT_V1.json" --v18a-npz "$D/v18a.npz" --joint-evidence "$RUNNER_TEMP/od-palette-out-$SUBJECT/PRIVATE_PALETTE_NATIVE_JOINT_EVIDENCE_V1.json" --joint-decision "$RUNNER_TEMP/od-palette-out-$SUBJECT/PRIVATE_PALETTE_NATIVE_JOINT_DECISION_V1.json" --summary "$RUNNER_TEMP/od-palette-out-$SUBJECT/PRIVATE_PALETTE_NATIVE_JOINT_SUMMARY_V1.json"
139+
- name: Real Triceratops physical palette edit and independent original source-ray court
140+
if: matrix.subject == 'TRICERATOPS'
141+
run: |
142+
set -euo pipefail
143+
umask 077
144+
P="$RUNNER_TEMP/od-physical-TRICERATOPS"
145+
C="$RUNNER_TEMP/od-physical-source-court-TRICERATOPS"
146+
"$BLENDER_EXE" --background --factory-startup --threads 2 --python-exit-code 1 --python tools/truth_foundry/blender_corpus370_operational_palette_physical_render_v1.py -- --source "$D/source.$EXT" --source-sha256 "$SOURCE_SHA" --source-policy "$D/policy.json" --camera-bundle "$D/camera.json" --source-palette "$RUNNER_TEMP/od-palette-out-$SUBJECT/PRIVATE_ORIGINAL_SHADER_CONSTANT_PALETTE_FACTS_V1.json" --v18a-npz "$D/v18a.npz" --output-dir "$P"
147+
"$BLENDER_EXE" --background --factory-startup --threads 2 --python-exit-code 1 --python tools/truth_foundry/blender_corpus370_operational_palette_physical_independent_ray_court_v1.py -- --source "$D/source.$EXT" --source-sha256 "$SOURCE_SHA" --source-policy "$D/policy.json" --camera-bundle "$D/camera.json" --source-palette "$RUNNER_TEMP/od-palette-out-$SUBJECT/PRIVATE_ORIGINAL_SHADER_CONSTANT_PALETTE_FACTS_V1.json" --render-manifest "$P/PRIVATE_ORIGINAL_PHYSICAL_PALETTE_RENDER_MANIFEST_V1.json" --render-root "$P" --output-dir "$C"
134148
- name: Immutable private upload and checksum readback
135149
run: |
136150
set -euo pipefail
@@ -151,4 +165,29 @@ jobs:
151165
done
152166
test "$GOT" = 1
153167
done
168+
if [ "$SUBJECT" = TRICERATOPS ]; then
169+
SRC="$RUNNER_TEMP/od-physical-TRICERATOPS"
170+
COURT="$RUNNER_TEMP/od-physical-source-court-TRICERATOPS"
171+
OUT="$DEST/physical_source_edit"
172+
for F in "PRIVATE_ORIGINAL_PHYSICAL_PALETTE_RENDER_MANIFEST_V1.json" "PRIVATE_INDEPENDENT_ORIGINAL_PHYSICAL_PALETTE_RAY_COURT_V1.json"; do
173+
case "$F" in
174+
PRIVATE_INDEPENDENT*) FROM="$COURT/$F" ;;
175+
*) FROM="$SRC/$F" ;;
176+
esac
177+
rclone copyto "$FROM" "$OUT/$F" --checksum --retries 3
178+
rclone cat "$OUT/$F" > "$D/physical-readback-$F"
179+
cmp "$FROM" "$D/physical-readback-$F"
180+
done
181+
for V in 0 2 4 6; do
182+
for LABEL in BASELINE EDIT_0 EDIT_1 EDIT_2; do
183+
FROM="$SRC/$LABEL/V$V.png"
184+
TO="$OUT/$LABEL/V$V.png"
185+
test -s "$FROM"
186+
rclone copyto "$FROM" "$TO" --checksum --retries 3
187+
rclone cat "$TO" > "$D/physical-readback-$LABEL-V$V.png"
188+
cmp "$FROM" "$D/physical-readback-$LABEL-V$V.png"
189+
done
190+
done
191+
echo "TRICERATOPS_ORIGINAL_PHYSICAL_EDIT_SOURCE_RAY_COURT_SEALED__NO_OWNER_AUTHORITY"
192+
fi
154193
echo "SOURCE_PALETTE_JOINT_SHA_READBACK_VERIFIED__NO_GRAPHICS_OWNER"

0 commit comments

Comments
 (0)