# Independent local technical scoring review

**PASS** within the bounded executed scope. No technical scoring blocker found. Frozen package: `/data/exp_offload/2787/task_v019_partial`; task version 0.1.9. The original 483-file manifest matches before and after, with no extra files. All review outputs are in this review directory.

This is not an official ALE acceptance or difficulty verdict. The review applied the ALE local-review and RealtimeCUA scoring protocols, using only the current frozen package and public scoring sources.

| Check | Verdict | Evidence |
|---|---|---|
| contract | PASS | Task text, public scoring explanation, rubric and implementation agree on eight weighted semantic checks totaling 100%, with strict success reported separately. `task.json:9`, `SCORING.md:3`, `rubric.json:12`, `partial_score.py:7`, `partial_score.py:14` |
| dependency | PASS | Window recess credit requires window shape/location; native removal of the torus yields 0.85 and zero credit for both window criteria. `SCORING.md:24`, `rubric.json:44`, `partial_score.py:15`, `controls/missing_window/result.json` |
| eligibility | PASS | Sealed trusted record, hash-verified captured artifact, successful native reopen and editable geometry gate all partial credit. No save, corrupt native and empty scene each scored zero in native controls. `reward.py:44`, `reward.py:47`, `reward.py:49`, `reward.py:53`, `reward.py:60`, `partial_score.py:12`, `controls_summary.json` |
| fault_classification | PASS | Capture/reference/config/runtime/renderer faults use null. Inspector process failures are checked against native reference health before candidate failure; renderer failure with extracted editable geometry is null regardless of partial/full completion. Mock fault tests for both completeness states passed. `reward.py:38`, `reward.py:41`, `reward.py:57`, `reward.py:61`, `reward.py:72`, `reward.py:76`, `tests/test_render_fault.py:13`, `pytest.log` |
| equivalence | PASS | Native reference and a translated, uniformly scaled, renamed native project both scored 1.0. Unit controls additionally cover arbitrary Z rotations, duplicate surface vertices and unused vertices. `private/geometry.py:29`, `private/geometry.py:34`, `private/geometry.py:54`, `controls/equivalent/result.json`, `tests/test_contracts.py:96`, `pytest.log` |
| semantic_partial | PASS | Credit is recomputed from native extracted geometry, not candidate self-report or unweighted low-level pass fraction. Wrong-fin analytic control yields 0.70; missing-window native control yields 0.85; native reference yields 1.0. `private/inspect_blend.py:5`, `private/geometry.py:55`, `private/geometry.py:65`, `partial_score.py:15`, `tests/test_partial.py:18`, `controls_summary.json` |
| manifest | PASS | All 483 frozen original files match supplied SHA-256 manifest before and after review; no extra original files. Review-local execution clone was byte-verified before execution. `manifest_before.json`, `manifest_after.json`, `clone_integrity.json` |

Executed native controls used the actual Blender 4.2.23 runtime with auto-execution disabled. Reference: 1.0; translated/scaled/renamed equivalent: 1.0; missing window: 0.85 with neither window credit; empty scene: 0; corrupt native file: 0 after healthy reference control; no save: 0. Artifacts, proof renders and results are under `controls/` and `controls_summary.json`. All 69 packaged tests passed in 23.71 seconds (`pytest.log`), including full/partial renderer-fault null classification.

Limits:
- Local technical scoring review only; no official ALE acceptance, difficulty or professional-source eligibility conclusion.
- No model rollout, live browser/GUI timing trial, OSWorld integration or adversarial filesystem isolation test was performed.
- Native controls exercised actual Blender 4.2.23 reopen, geometry extraction and CPU proof rendering; fault injection was mocked at subprocess boundary and is not an exhaustive operating-system fault campaign.
- Global normalization can couple component checks, as publicly disclosed in SCORING.md:20 and rubric.json:66. Binary-per-criterion thresholds approximate multiview geometry, not full mesh/topology equivalence.
- One native reference perspective proof image was visually inspected; full independent multi-view artistic QC remains outside this bounded review.
- First pytest attempt encountered the pre-existing /tmp/pytest-of-root symlink and was stopped; definitive rerun used review-local --basetemp and passed all 69 tests. No global temporary-path changes were made.

Public practice checked on 2026-10-27: [ALE task API and error semantics](https://agents-last-exam.org/docs/ale/pages/add-task.html) and [merged fine-grained scoring example #35](https://github.com/rdi-berkeley/agents-last-exam/pull/35). These support the local scoring approach; they do not establish official weights or acceptance.
