# D3D-004-LAB1 — Learner guide

Build `3D Delivery Budget and Interoperability Validation Pack v1` from visible synthetic evidence.

1. Read `fixtures/baseline_observations.json`; it is the clean reference for mutation comparison and contains no final verdict.
2. Copy `evidence/evidence_pack.template.json` to a new file.
3. Populate fields only from available evidence. Do not invent decisive values. Keep `used_extensions`, `required_extensions`, and target support separate, and record transform tolerance/reference/measured delta explicitly.
4. Apply the published primary-state precedence in the lesson/evidence contract. If you use `INTEROPERABLE_WITH_KNOWN_DIFFERENCES`, every retained difference needs `description`, `impact`, `acceptance_status=ACCEPTED`, and an `acceptance_ref`.
5. Choose `final_state` and write `decision_rationale` yourself.
6. Run `python run_checks.py evidence/<your-file>.json`.
7. Compare each mutation to the clean baseline using `fixtures/FIXTURE_DELTA_MANIFEST.json`: budget-half, unsupported-extension, and round-trip semantic drift. Do not copy the baseline verdict.
8. For `transfer/transfer_fixture.json`, rebuild the gates for the offline USD-centric target.

The checker validates JSON shape/ranges and declared-state consistency under the published precedence. It does not verify that your observations are true, approve the asset, or supply a hidden answer key.

**Safety/rights boundary:** use only supplied synthetic/rights-cleared fixtures. No customer/private asset, credential, paid cloud action, publication, or production mutation is required.
