test_deterministic_id_changes_input (test_phase0.TestCanonical.test_deterministic_id_changes_input) ... ok
test_deterministic_id_same_input (test_phase0.TestCanonical.test_deterministic_id_same_input) ... ok
test_dict_order_is_deterministic (test_phase0.TestCanonical.test_dict_order_is_deterministic) ... ok
test_cloud_request_schema (test_phase0.TestCloudRuntime.test_cloud_request_schema) ... ok
test_export_checked_before_execution (test_phase0.TestCloudRuntime.test_export_checked_before_execution) ... ok
test_export_policy_revision_mismatch (test_phase0.TestCloudRuntime.test_export_policy_revision_mismatch) ... ok
test_mock_response_schema_and_determinism (test_phase0.TestCloudRuntime.test_mock_response_schema_and_determinism) ... ok
test_request_response_id_mismatch_rejected (test_phase0.TestCloudRuntime.test_request_response_id_mismatch_rejected) ... ok
test_response_current_revision_passes (test_phase0.TestCloudRuntime.test_response_current_revision_passes) ... ok
test_response_stale_current_world_rejected (test_phase0.TestCloudRuntime.test_response_stale_current_world_rejected) ... ok
test_backend_schema (test_phase0.TestContracts.test_backend_schema) ... ok
test_backend_world_write_authority_rejected (test_phase0.TestContracts.test_backend_world_write_authority_rejected) ... ok
test_obligation_rejects_preferred_below_minimum (test_phase0.TestContracts.test_obligation_rejects_preferred_below_minimum) ... ok
test_obligation_schema (test_phase0.TestContracts.test_obligation_schema) ... ok
test_observer_rejects_negative_revision (test_phase0.TestContracts.test_observer_rejects_negative_revision) ... ok
test_observer_roundtrip_and_schema (test_phase0.TestContracts.test_observer_roundtrip_and_schema) ... ok
test_truth_generated_writeback_rejected (test_phase0.TestContracts.test_truth_generated_writeback_rejected) ... ok
test_truth_inferred_writeback_rejected (test_phase0.TestContracts.test_truth_inferred_writeback_rejected) ... ok
test_truth_record_schema (test_phase0.TestContracts.test_truth_record_schema) ... ok
test_canonical_write_requires_explicit_writeback (test_phase0.TestFirewall.test_canonical_write_requires_explicit_writeback) ... ok
test_export_allowed (test_phase0.TestFirewall.test_export_allowed) ... ok
test_export_denied (test_phase0.TestFirewall.test_export_denied) ... ok
test_generated_cannot_world_write (test_phase0.TestFirewall.test_generated_cannot_world_write) ... ok
test_identity_obligation_requires_identity_verification (test_phase0.TestFirewall.test_identity_obligation_requires_identity_verification) ... ok
test_change_semantics_changes_plan_id (test_phase0.TestOSRIR.test_change_semantics_changes_plan_id) ... ok
test_ir_schema (test_phase0.TestOSRIR.test_ir_schema) ... ok
test_same_semantic_input_same_plan_id (test_phase0.TestOSRIR.test_same_semantic_input_same_plan_id) ... ok
test_duplicate_backend_rejected (test_phase0.TestRegistry.test_duplicate_backend_rejected) ... ok
test_registration_has_no_execution_side_effect (test_phase0.TestRegistry.test_registration_has_no_execution_side_effect) ... ok
test_sorted_capability_listing (test_phase0.TestRegistry.test_sorted_capability_listing) ... ok
test_all_schema_files_are_valid_json_schema (test_phase0.TestSchemaFiles.test_all_schema_files_are_valid_json_schema) ... ok
test_cloud_is_gated_without_observer_authority (test_phase1.TestCandidateGates.test_cloud_is_gated_without_observer_authority) ... ok
test_deadline_is_hard_gate (test_phase1.TestCandidateGates.test_deadline_is_hard_gate) ... ok
test_forbidden_mode_is_hard_gate (test_phase1.TestCandidateGates.test_forbidden_mode_is_hard_gate) ... ok
test_identity_fidelity_is_hard_gate (test_phase1.TestCandidateGates.test_identity_fidelity_is_hard_gate) ... ok
test_provenance_is_hard_gate (test_phase1.TestCandidateGates.test_provenance_is_hard_gate) ... ok
test_required_output_prevents_semantic_overlay_from_impersonating_pixels (test_phase1.TestCandidateGates.test_required_output_prevents_semantic_overlay_from_impersonating_pixels) ... ok
test_semantic_obligation_can_select_semantic_output (test_phase1.TestCandidateGates.test_semantic_obligation_can_select_semantic_output) ... ok
test_compilation_does_not_construct_backend (test_phase1.TestCompiler.test_compilation_does_not_construct_backend) ... ok
test_compile_minimum_plan_and_schema (test_phase1.TestCompiler.test_compile_minimum_plan_and_schema) ... ok
test_degraded_plan_when_only_minimum_fits (test_phase1.TestCompiler.test_degraded_plan_when_only_minimum_fits) ... ok
test_duplicate_obligation_ids_rejected (test_phase1.TestCompiler.test_duplicate_obligation_ids_rejected) ... ok
test_fallback_chain_is_emitted (test_phase1.TestCompiler.test_fallback_chain_is_emitted) ... ok
test_generated_selection_inserts_structural_verification (test_phase1.TestCompiler.test_generated_selection_inserts_structural_verification) ... ok
test_invalid_reuse_identity_is_not_candidate (test_phase1.TestCompiler.test_invalid_reuse_identity_is_not_candidate) ... ok
test_no_feasible_plan_when_budget_cannot_close_minimums (test_phase1.TestCompiler.test_no_feasible_plan_when_budget_cannot_close_minimums) ... ok
test_no_feasible_plan_when_minimum_depth_unavailable (test_phase1.TestCompiler.test_no_feasible_plan_when_minimum_depth_unavailable) ... ok
test_preferred_upgrade_when_budget_allows (test_phase1.TestCompiler.test_preferred_upgrade_when_budget_allows) ... ok
test_same_semantics_same_plan_id_independent_of_obligation_order (test_phase1.TestCompiler.test_same_semantics_same_plan_id_independent_of_obligation_order) ... ok
test_valid_reuse_emits_no_rerender_zero_cost (test_phase1.TestCompiler.test_valid_reuse_emits_no_rerender_zero_cost) ... ok
test_world_writeback_obligation_has_no_feasible_candidate (test_phase1.TestCompiler.test_world_writeback_obligation_has_no_feasible_candidate) ... ok
test_solver_finds_cross_resource_combination_not_naive_local_only (test_phase1.TestGlobalBudgetClosure.test_solver_finds_cross_resource_combination_not_naive_local_only) ... ok
test_solver_reports_no_feasible_when_all_combinations_over_budget (test_phase1.TestGlobalBudgetClosure.test_solver_reports_no_feasible_when_all_combinations_over_budget) ... ok
test_addition_primary_falls_back_to_raster (test_phase2.TestCommitResolution.test_addition_primary_falls_back_to_raster) ... ok
test_all_available_candidates_invalid_blocks (test_phase2.TestCommitResolution.test_all_available_candidates_invalid_blocks) ... ok
test_compilation_is_lazy_but_execution_constructs_backends (test_phase2.TestCommitResolution.test_compilation_is_lazy_but_execution_constructs_backends) ... ok
test_contract_mismatch_blocks_primary_then_fallback_can_commit (test_phase2.TestCommitResolution.test_contract_mismatch_blocks_primary_then_fallback_can_commit) ... ok
test_failed_primary_constructs_fallback_lazily (test_phase2.TestCommitResolution.test_failed_primary_constructs_fallback_lazily) ... ok
test_identity_primary_falls_back (test_phase2.TestCommitResolution.test_identity_primary_falls_back) ... ok
test_missing_provenance_primary_falls_back (test_phase2.TestCommitResolution.test_missing_provenance_primary_falls_back) ... ok
test_omission_primary_falls_back (test_phase2.TestCommitResolution.test_omission_primary_falls_back) ... ok
test_primary_valid_commits (test_phase2.TestCommitResolution.test_primary_valid_commits) ... ok
test_stale_primary_falls_back (test_phase2.TestCommitResolution.test_stale_primary_falls_back) ... ok
test_fallbacks_include_executable_candidate_nodes (test_phase2.TestCompilerPhase2Handoff.test_fallbacks_include_executable_candidate_nodes) ... ok
test_phase2_capability_revision_default (test_phase2.TestCompilerPhase2Handoff.test_phase2_capability_revision_default) ... ok
test_artifact_rejects_duplicate_objects (test_phase2.TestPhase2Contracts.test_artifact_rejects_duplicate_objects) ... ok
test_packaged_schemas_match_repo_contracts (test_phase2.TestPhase2Contracts.test_packaged_schemas_match_repo_contracts) ... ok
test_reference_rejects_required_outside_allowed (test_phase2.TestPhase2Contracts.test_reference_rejects_required_outside_allowed) ... ok
test_render_artifact_schema (test_phase2.TestPhase2Contracts.test_render_artifact_schema) ... ok
test_verification_reference_schema (test_phase2.TestPhase2Contracts.test_verification_reference_schema) ... ok
test_generated_reuse_preserves_truth_class_and_commits_without_backend_execution (test_phase2.TestReuseTruthPreservation.test_generated_reuse_preserves_truth_class_and_commits_without_backend_execution) ... ok
test_generated_reuse_with_addition_fails_structural_verification (test_phase2.TestReuseTruthPreservation.test_generated_reuse_with_addition_fails_structural_verification) ... ok
test_addition_violation (test_phase2.TestVerificationEngine.test_addition_violation) ... ok
test_identity_mismatch (test_phase2.TestVerificationEngine.test_identity_mismatch) ... ok
test_missing_provenance (test_phase2.TestVerificationEngine.test_missing_provenance) ... ok
test_omission_violation (test_phase2.TestVerificationEngine.test_omission_violation) ... ok
test_required_classes_derived_non_identity (test_phase2.TestVerificationEngine.test_required_classes_derived_non_identity) ... ok
test_required_classes_generated_identity_obligation (test_phase2.TestVerificationEngine.test_required_classes_generated_identity_obligation) ... ok
test_structure_mismatch (test_phase2.TestVerificationEngine.test_structure_mismatch) ... ok
test_valid_generated_artifact_passes (test_phase2.TestVerificationEngine.test_valid_generated_artifact_passes) ... ok
test_camera_cut_clears_all_scopes (test_phase3.TestCameraCutGlobalInvalidation.test_camera_cut_clears_all_scopes) ... ok
test_camera_cut_on_empty_cache_still_advances_generation (test_phase3.TestCameraCutGlobalInvalidation.test_camera_cut_on_empty_cache_still_advances_generation) ... ok
test_cache_installs_directly_from_phase2_run (test_phase3.TestPhase2TemporalHandoff.test_cache_installs_directly_from_phase2_run) ... ok
test_phase2_run_exposes_committed_artifact (test_phase3.TestPhase2TemporalHandoff.test_phase2_run_exposes_committed_artifact) ... ok
test_anchor_carrier_hash_rejects_tampering (test_phase3.TestTemporalContracts.test_anchor_carrier_hash_rejects_tampering) ... ok
test_anchor_schema_and_determinism (test_phase3.TestTemporalContracts.test_anchor_schema_and_determinism) ... ok
test_base_frame_schema (test_phase3.TestTemporalContracts.test_base_frame_schema) ... ok
test_commit_candidate_must_match_artifact (test_phase3.TestTemporalContracts.test_commit_candidate_must_match_artifact) ... ok
test_only_visible_committed_artifact_can_install (test_phase3.TestTemporalContracts.test_only_visible_committed_artifact_can_install) ... ok
test_packaged_schemas_match_repo_contracts (test_phase3.TestTemporalContracts.test_packaged_schemas_match_repo_contracts) ... ok
test_motion_changes_output_hash (test_phase3.TestTemporalDeterminism.test_motion_changes_output_hash) ... ok
test_same_inputs_same_output_hash_and_receipt_id (test_phase3.TestTemporalDeterminism.test_same_inputs_same_output_hash_and_receipt_id) ... ok
test_anchor_expiration_invalidates_scope (test_phase3.TestTemporalReconstruction.test_anchor_expiration_invalidates_scope) ... ok
test_average_confidence_counts_full_frame_not_only_reused (test_phase3.TestTemporalReconstruction.test_average_confidence_counts_full_frame_not_only_reused) ... ok
test_backward_motion_samples_anchor_coordinate (test_phase3.TestTemporalReconstruction.test_backward_motion_samples_anchor_coordinate) ... ok
test_camera_revision_limit_invalidates_scope (test_phase3.TestTemporalReconstruction.test_camera_revision_limit_invalidates_scope) ... ok
test_depth_mismatch_drops_to_base (test_phase3.TestTemporalReconstruction.test_depth_mismatch_drops_to_base) ... ok
test_derived_anchor_keeps_derived_truth (test_phase3.TestTemporalReconstruction.test_derived_anchor_keeps_derived_truth) ... ok
test_disocclusion_forces_base_pixel (test_phase3.TestTemporalReconstruction.test_disocclusion_forces_base_pixel) ... ok
test_frame_rewind_invalidates_scope (test_phase3.TestTemporalReconstruction.test_frame_rewind_invalidates_scope) ... ok
test_inferred_anchor_preserves_inferred_truth (test_phase3.TestTemporalReconstruction.test_inferred_anchor_preserves_inferred_truth) ... ok
test_low_confidence_everywhere_does_not_launder_anchor_truth (test_phase3.TestTemporalReconstruction.test_low_confidence_everywhere_does_not_launder_anchor_truth) ... ok
test_no_anchor_returns_base_with_derived_truth (test_phase3.TestTemporalReconstruction.test_no_anchor_returns_base_with_derived_truth) ... ok
test_one_anchor_produces_multiple_local_frames (test_phase3.TestTemporalReconstruction.test_one_anchor_produces_multiple_local_frames) ... ok
test_out_of_bounds_motion_falls_back_to_base (test_phase3.TestTemporalReconstruction.test_out_of_bounds_motion_falls_back_to_base) ... ok
test_world_revision_change_invalidates_scope (test_phase3.TestTemporalReconstruction.test_world_revision_change_invalidates_scope) ... ok
test_zero_motion_reuses_anchor_and_preserves_generated_truth (test_phase3.TestTemporalReconstruction.test_zero_motion_reuses_anchor_and_preserves_generated_truth) ... ok
test_camera_only_frame_has_no_changed_world_objects (test_phase4.TestEngineAdapter.test_camera_only_frame_has_no_changed_world_objects) ... ok
test_capability_identifies_offline_fixture (test_phase4.TestEngineAdapter.test_capability_identifies_offline_fixture) ... ok
test_capture_detects_changed_object (test_phase4.TestEngineAdapter.test_capture_detects_changed_object) ... ok
test_hazard_toggle_is_world_change (test_phase4.TestEngineAdapter.test_hazard_toggle_is_world_change) ... ok
test_jsonl_fixture_loads_four_frames (test_phase4.TestEngineAdapter.test_jsonl_fixture_loads_four_frames) ... ok
test_malformed_jsonl_reports_line (test_phase4.TestEngineAdapter.test_malformed_jsonl_reports_line) ... ok
test_camera_schema (test_phase4.TestEngineContracts.test_camera_schema) ... ok
test_capability_schema (test_phase4.TestEngineContracts.test_capability_schema) ... ok
test_capture_receipt_schema (test_phase4.TestEngineContracts.test_capture_receipt_schema) ... ok
test_mask_unknown_object_rejected (test_phase4.TestEngineContracts.test_mask_unknown_object_rejected) ... ok
test_motion_must_be_integer (test_phase4.TestEngineContracts.test_motion_must_be_integer) ... ok
test_object_schema (test_phase4.TestEngineContracts.test_object_schema) ... ok
test_packet_hash_is_deterministic (test_phase4.TestEngineContracts.test_packet_hash_is_deterministic) ... ok
test_packet_hash_rejects_tamper (test_phase4.TestEngineContracts.test_packet_hash_rejects_tamper) ... ok
test_packet_schema (test_phase4.TestEngineContracts.test_packet_schema) ... ok
test_rgb_shape_mismatch_rejected (test_phase4.TestEngineContracts.test_rgb_shape_mismatch_rejected) ... ok
test_bridge_runs_phase3_without_anchor_as_base (test_phase4.TestEngineTemporalBridge.test_bridge_runs_phase3_without_anchor_as_base) ... ok
test_camera_cut_clears_temporal_cache_via_engine_bridge (test_phase4.TestEngineTemporalBridge.test_camera_cut_clears_temporal_cache_via_engine_bridge) ... ok
test_camera_only_frame_does_not_change_world_revision (test_phase4.TestEngineTemporalBridge.test_camera_only_frame_does_not_change_world_revision) ... ok
test_object_motion_creates_disocclusion_at_changed_mapping (test_phase4.TestEngineTemporalBridge.test_object_motion_creates_disocclusion_at_changed_mapping) ... ok
test_rgb_projects_to_luma_temporal_base (test_phase4.TestEngineTemporalBridge.test_rgb_projects_to_luma_temporal_base) ... ok
test_godot_exporter_contains_required_engine_paths (test_phase4.TestGodotReferenceProject.test_godot_exporter_contains_required_engine_paths) ... ok
test_godot_exporter_declares_motion_proxy_limit (test_phase4.TestGodotReferenceProject.test_godot_exporter_declares_motion_proxy_limit) ... ok
test_godot_project_contains_no_network_client_calls (test_phase4.TestGodotReferenceProject.test_godot_project_contains_no_network_client_calls) ... ok
test_live_godot_export_smoke (test_phase4.TestGodotReferenceProject.test_live_godot_export_smoke) ... skipped 'Godot binary not installed in validation environment'
test_packaged_schemas_match_repo_contracts (test_phase4.TestGodotReferenceProject.test_packaged_schemas_match_repo_contracts) ... ok
test_project_targets_current_stable_baseline (test_phase4.TestGodotReferenceProject.test_project_targets_current_stable_baseline) ... ok
test_export_denied_before_backend_call (test_phase5.TestCarrierAndExport.test_export_denied_before_backend_call) ... ok
test_object_roi_is_bounded_and_png_valid (test_phase5.TestCarrierAndExport.test_object_roi_is_bounded_and_png_valid) ... ok
test_committed_cloud_anchor_drives_multiple_local_frames_without_more_cloud_calls (test_phase5.TestCloudToTemporal.test_committed_cloud_anchor_drives_multiple_local_frames_without_more_cloud_calls) ... ok
test_live_vertex_single_call (test_phase5.TestOptionalLiveVertex.test_live_vertex_single_call) ... skipped 'live Vertex test requires explicit OSR_ENABLE_LIVE_VERTEX=1 and Google credentials'
test_cloud_primary_commits_when_identity_not_required (test_phase5.TestPhase2CloudIntegration.test_cloud_primary_commits_when_identity_not_required) ... ok
test_export_denied_cloud_falls_back_without_provider_call (test_phase5.TestPhase2CloudIntegration.test_export_denied_cloud_falls_back_without_provider_call) ... ok
test_identity_required_cloud_is_rejected_then_lazy_local_fallback_commits (test_phase5.TestPhase2CloudIntegration.test_identity_required_cloud_is_rejected_then_lazy_local_fallback_commits) ... ok
test_remote_error_falls_back_and_preserves_failure_receipt (test_phase5.TestPhase2CloudIntegration.test_remote_error_falls_back_and_preserves_failure_receipt) ... ok
test_camera_revision_advance_rejects_late_result (test_phase5.TestPhase5Runtime.test_camera_revision_advance_rejects_late_result) ... ok
test_mask_constrained_composition_changes_only_target_object_pixels (test_phase5.TestPhase5Runtime.test_mask_constrained_composition_changes_only_target_object_pixels) ... ok
test_world_revision_advance_rejects_late_result (test_phase5.TestPhase5Runtime.test_world_revision_advance_rejects_late_result) ... ok
test_carrier_request_response_receipt_schemas (test_phase5.TestPhase5Schemas.test_carrier_request_response_receipt_schemas) ... ok
test_packaged_schemas_match_repo_contracts (test_phase5.TestPhase5Schemas.test_packaged_schemas_match_repo_contracts) ... ok
test_construction_is_lazy_and_missing_credentials_do_not_call_transport (test_phase5.TestVertexAdapter.test_construction_is_lazy_and_missing_credentials_do_not_call_transport) ... ok
test_invalid_image_payload_is_rejected (test_phase5.TestVertexAdapter.test_invalid_image_payload_is_rejected) ... ok
test_known_model_location_is_validated (test_phase5.TestVertexAdapter.test_known_model_location_is_validated) ... ok
test_vertex_payload_contains_input_image_and_call_cap (test_phase5.TestVertexAdapter.test_vertex_payload_contains_input_image_and_call_cap) ... ok

----------------------------------------------------------------------
Ran 151 tests in 0.294s

OK (skipped=2)
