test_08_first_clock_then_map_photo (test_stages.AnswerTests.test_08_first_clock_then_map_photo) ... ok
test_09_first_photo_is_shape (test_stages.AnswerTests.test_09_first_photo_is_shape) ... ok
test_10_source_rejects_unknown_and_duplicate (test_stages.AnswerTests.test_10_source_rejects_unknown_and_duplicate) ... ok
test_11_only_first_has_detail (test_stages.AnswerTests.test_11_only_first_has_detail) ... ok
test_12_snapshot_does_not_leak_truth_field (test_stages.AnswerTests.test_12_snapshot_does_not_leak_truth_field) ... ok
test_13_states_and_answers_frozen (test_stages.AnswerTests.test_13_states_and_answers_frozen) ... ok
test_14_empty_answers_keep_all (test_stages.ConsistencyTests.test_14_empty_answers_keep_all) ... ok
test_15_clock_first_remains_ambiguous (test_stages.ConsistencyTests.test_15_clock_first_remains_ambiguous) ... ok
test_16_photo_first_is_unique (test_stages.ConsistencyTests.test_16_photo_first_is_unique) ... ok
test_17_all_known_answers_are_conjoined (test_stages.ConsistencyTests.test_17_all_known_answers_are_conjoined) ... ok
test_18_reason_only_uses_observed_answer (test_stages.ConsistencyTests.test_18_reason_only_uses_observed_answer) ... ok
test_19_all_fixture_compatible_and_reasons (test_stages.ConsistencyTests.test_19_all_fixture_compatible_and_reasons) ... ok
test_20_stage3_cannot_toggle_or_submit (test_stages.ConsistencyTests.test_20_stage3_cannot_toggle_or_submit) ... ok
test_43_draw_each_stage_initial_and_checkpoint (test_stages.DrawingAndPackagingTests.test_43_draw_each_stage_initial_and_checkpoint) ... ok
test_44_draw_success_and_two_rejection_messages (test_stages.DrawingAndPackagingTests.test_44_draw_success_and_two_rejection_messages) ... ok
test_45_documented_snippets_exact (test_stages.DrawingAndPackagingTests.test_45_documented_snippets_exact) ... ok
test_46_diffs_are_exact (test_stages.DrawingAndPackagingTests.test_46_diffs_are_exact) ... ok
test_47_full_original_license_and_notice (test_stages.DrawingAndPackagingTests.test_47_full_original_license_and_notice) ... ok
test_48_optional_original_live_comparison (test_stages.DrawingAndPackagingTests.test_48_optional_original_live_comparison) ... skipped 'optional original source not supplied'
test_39_hold_ignored_until_release (test_stages.InputTests.test_39_hold_ignored_until_release) ... ok
test_40_multiple_fresh_keys_rejected (test_stages.InputTests.test_40_multiple_fresh_keys_rejected) ... ok
test_41_unsupported_keys_do_not_gate (test_stages.InputTests.test_41_unsupported_keys_do_not_gate) ... ok
test_42_terminal_ui_does_not_move (test_stages.InputTests.test_42_terminal_ui_does_not_move) ... ok
test_01_authored_level_exact (test_stages.ProjectionTests.test_01_authored_level_exact) ... ok
test_02_all_24_projections (test_stages.ProjectionTests.test_02_all_24_projections) ... ok
test_03_stage1_precision_exercise (test_stages.ProjectionTests.test_03_stage1_precision_exercise) ... ok
test_04_stage1_has_no_answers_or_future_mechanics (test_stages.ProjectionTests.test_04_stage1_has_no_answers_or_future_mechanics) ... ok
test_05_cursor_wrap (test_stages.ProjectionTests.test_05_cursor_wrap) ... ok
test_06_table_never_changes (test_stages.ProjectionTests.test_06_table_never_changes) ... ok
test_07_invalid_document_and_immutable_fact (test_stages.ProjectionTests.test_07_invalid_document_and_immutable_fact) ... ok
test_21_all_3584_original_transitions_both_final_stages (test_stages.ReportTests.test_21_all_3584_original_transitions_both_final_stages) ... ok
test_22_no_answer_no_report_even_true_guess (test_stages.ReportTests.test_22_no_answer_no_report_even_true_guess) ... ok
test_23_bounded_is_success_after_one_clock (test_stages.ReportTests.test_23_bounded_is_success_after_one_clock) ... ok
test_24_specific_after_one_photo (test_stages.ReportTests.test_24_specific_after_one_photo) ... ok
test_25_guessing_hidden_truth_alone_is_rejected (test_stages.ReportTests.test_25_guessing_hidden_truth_alone_is_rejected) ... ok
test_26_remaining_conflict_rejected (test_stages.ReportTests.test_26_remaining_conflict_rejected) ... ok
test_27_manual_report_route (test_stages.ReportTests.test_27_manual_report_route) ... ok
test_28_terminal_blocks_all_model_actions (test_stages.ReportTests.test_28_terminal_blocks_all_model_actions) ... ok
test_29_assist_does_not_read_anything (test_stages.ReportTests.test_29_assist_does_not_read_anything) ... ok
test_30_bad_toggle_is_noop (test_stages.ReportTests.test_30_bad_toggle_is_noop) ... ok
test_31_all_24_original_replay_traces (test_stages.UndoTests.test_31_all_24_original_replay_traces) ... ok
test_32_undo_erases_knowledge_not_only_selection (test_stages.UndoTests.test_32_undo_erases_knowledge_not_only_selection) ... ok
test_33_noop_has_no_history (test_stages.UndoTests.test_33_noop_has_no_history) ... ok
test_34_rejected_report_is_history (test_stages.UndoTests.test_34_rejected_report_is_history) ... ok
test_35_undo_success_is_allowed (test_stages.UndoTests.test_35_undo_success_is_allowed) ... ok
test_36_history_cap_and_recovery (test_stages.UndoTests.test_36_history_cap_and_recovery) ... ok
test_37_replay_cap_and_determinism (test_stages.UndoTests.test_37_replay_cap_and_determinism) ... ok
test_38_reset_clears_everything (test_stages.UndoTests.test_38_reset_clears_everything) ... ok

----------------------------------------------------------------------
Ran 48 tests in 0.133s

OK (skipped=1)
