SamLee c75e30559a feat(production): 放宽 Shot 输入覆盖并按真实血缘计算素材使用 2 дней назад
..
README.md 0bbe1f1cff 合同清理:迁移评估规则并删除旧协议重复实现 3 дней назад
__init__.py f331965bd6 收敛制品绑定协议并扁平化项目目录 4 дней назад
test_evaluation.py 7263ec9e17 合同:拒绝跨业务来源范围绑定素材 2 дней назад
test_production_assembly.py 377abb07b6 覆盖率:根据 Segment 实际 ArtifactGraph 重算 ProductionCoverage 2 дней назад
test_production_coverage.py c75e30559a feat(production): 放宽 Shot 输入覆盖并按真实血缘计算素材使用 2 дней назад
test_production_evaluation.py c75e30559a feat(production): 放宽 Shot 输入覆盖并按真实血缘计算素材使用 2 дней назад
test_production_naming_hygiene.py 41f0558eb9 编排:顺序运行 Global Data 与 Production 2 дней назад
test_production_planning.py 3d7ab29e28 复用:按照历史 ArtifactGraph 判断 Segment 是否仍可 REUSE 2 дней назад
test_production_progress.py babdccdb0e 合同:升级 Production 0.7 并定义 Progress Review 与 ADAPT 2 дней назад
test_production_validation.py babdccdb0e 合同:升级 Production 0.7 并定义 Progress Review 与 ADAPT 2 дней назад

README.md

Production 合同测试迁移账本

本表记录协议命名清理时,从安全快照中的旧 test_production_evaluation.py 迁出的断言。当前测试 均使用唯一的 Production 0.6 无后缀模型;没有恢复旧模型、Reader 或兼容解析。

旧测试 处理 当前测试
test_contract_names_follow_existing_lifecycle_vocabulary 删除纯旧断言:默认 schema 为 0.4;保留无 Spec/无版本尾缀的命名约束 test_production_naming_hygiene.py::test_current_source_paths_and_python_symbols_have_no_protocol_suffix
test_catalog_preserves_exact_values_and_segment_scopes 迁移 test_production_planning.py::test_catalog_preserves_content_scope_order_and_brief_identity
test_catalog_rejects_path_label_with_replaced_content 迁移为 content subtest 同上
test_plan_requires_exact_inputs_for_each_segment_scope 迁移缺失输入和精确覆盖 test_production_planning.py::test_plan_requires_exact_inputs_for_each_segment_scope
test_plan_reports_exact_input_assigned_to_wrong_segment 迁移错段输入及身份字段断言 同上
test_plan_rejects_active_artifact_without_satisfied_binding 扩展迁移 active、superseded、Expectation 三种边界 test_production_planning.py::test_plan_rejects_inactive_superseded_and_unproven_artifacts
test_plan_rejects_wrong_global_data_delivery_uri 旧 Plan URI 字段已删除;迁移为 PlanningPackage 精确文档引用和 Brief URI 一致性 test_production_planning.py::test_planning_package_binds_exact_authoritative_documents
test_plan_rejects_timeline_gap 扩展迁移 timeline、shot 连续性和时长 test_production_planning.py::test_plan_rejects_timeline_shot_gaps_duration_and_scope_escape
test_materialized_package_contains_exact_brief_and_artifact 迁移为当前 Package 精确重算 test_production_planning.py::test_segment_package_is_exact_recomputation_of_current_inputs
test_segment_package_rejects_replaced_exact_value 迁移 input value 与 timeline 两个 subtest 同上
test_artifact_graph_preserves_multi_upstream_lineage 迁移 test_production_evaluation.py::test_artifact_graph_supports_multi_upstream_lineage
test_artifact_graph_rejects_unreachable_planned_input 迁移 test_production_evaluation.py::test_artifact_graph_rejects_unreachable_planned_input
test_segment_delivery_materializes_candidate_and_graph 已由当前重算测试覆盖 test_production_evaluation.py::test_segment_delivery_and_artifact_graph_are_recomputable
test_segment_delivery_rejects_missing_or_failed_tool_evidence 已迁移 test_production_evaluation.py::test_failed_tool_evidence_is_rejected
test_segment_delivery_rejects_mutable_source_uri_generation 迁移为 direct subtest test_production_evaluation.py::test_mutable_source_uri_is_rejected_on_accepted_tool_trace
test_segment_delivery_rejects_mutable_source_uri_probe_bypass 迁移为 probe subtest 同上
test_segment_delivery_ignores_superseded_mutable_probe 迁移为未进入正式血缘的 probe 不污染结果 test_production_evaluation.py::test_unused_mutable_probe_does_not_taint_formal_output
test_segment_delivery_traces_mutable_probe_into_formal_output 迁移 test_production_evaluation.py::test_mutable_probe_taints_transitive_formal_output
test_segment_delivery_rejects_missing_shot_and_wrong_type 迁移全部三个错误码 test_production_evaluation.py::test_delivery_rejects_missing_shot_and_non_video_binding
test_segment_delivery_rejects_wrong_ass_mime 已迁移 test_production_evaluation.py::test_primary_artifact_type_and_ass_mime_are_enforced
test_segment_delivery_rejects_graph_missing_upstream 迁移 formal mapping 与上游覆盖两个错误码 test_production_evaluation.py::test_delivery_rejects_formal_lineage_missing_upstream
test_shot_lineage_cannot_borrow_final_input_coverage 迁移并保留“整图覆盖不能代替 Shot 覆盖”的反向断言 test_production_evaluation.py::test_shot_lineage_cannot_borrow_final_input_coverage
test_segment_validation_report_recomputes_fake_pass 已迁移 test_production_evaluation.py::test_validation_report_recomputes_fake_pass
test_segment_validation_report_requires_all_six_criteria 已迁移 Candidate/Report 共用规则 test_production_evaluation.py::test_validator_requires_all_six_criteria

旧 Production Execution 测试

test_production_execution.py 描述的是已删除的 0.5 跨 Run previous assembly 复用协议。当前协议改为同一 Run 内按 AcceptedSegmentRef、精确 Package 身份和 Plan 历史计算 REUSE;仍然成立的 不变量映射如下。

旧测试 处理 当前测试
test_v05_models_are_strict_and_keep_existing_vocabulary 删除 0.5 默认版本断言;严格 0.6 与命名约束保留 test_production_evaluation.py::test_current_records_are_strict_and_reject_old_schematest_production_naming_hygiene.py
test_verified_previous_source_has_one_ref_and_one_record 旧 previous-source 容器删除;一份 AcceptedRef 对应一份正式 Bundle test_segment_acceptance.py::test_complete_current_pass_bundle_can_be_accepted
test_exact_document_identity_is_byte_sensitive 迁移为 PlanningPackage 和 standalone Package 精确字节身份 test_production_planning.py::test_planning_package_binds_exact_authoritative_documentstest_segment_entry.py::test_thread_binds_exact_segment_package_bytes
test_segment_reuse_identity_ignores_run_version_and_paths 迁移为当前同 Run 复用身份 test_production_planning.py::test_reuse_identity_ignores_absolute_placement_paths_and_version
test_production_package_rejects_a_different_segment_anchor 迁移为封印输入不可变和 Assembly 业务身份检查 test_production_planning.py::test_replan_package_cannot_change_sealed_inputstest_production_assembly.py::test_changed_business_identity_cannot_enter_assembly
test_previous_source_must_be_an_older_run_version 纯旧跨 Run 来源协议删除;当前只允许同 Run 历史 Plan test_production_graph.py::test_recovery_selects_latest_pass_not_newer_than_plan_version
test_package_evaluator_owns_previous_source_identity 旧来源模型删除;当前由代码计算精确 REUSE 身份 test_production_planning.py::test_directive_is_computed_per_ready_segment
test_segment_directive_requires_explicit_compatible_reuse 迁移 test_production_planning.py::test_directive_is_computed_per_ready_segment
test_replacement_matrix_is_bound_to_previous_source 旧矩阵删除;迁移为授权 Replan 范围和依赖后继 test_production_planning.py::test_repair_scope_includes_dependency_descendantstest_replan_preserves_unprotected_pass_segments
test_production_package_materialization_reuses_only_unchanged_segments 迁移为 Graph 的 EXECUTE/REUSE 选择 test_production_graph.py::test_directive_is_execute_without_history_and_reuse_with_exact_identity
test_previous_source_requires_complete_ordered_segments 旧来源容器删除;完整性由当前 Assembly Package 检查 test_production_assembly.py::test_materializer_rejects_incomplete_accepted_segments
test_previous_segments_must_come_from_referenced_source 迁移为当前 SegmentPackage 精确引用 test_production_assembly.py::test_current_execution_must_bind_current_segment_package
test_previous_source_must_be_complete_assembly_package 纯旧跨 Run Assembly 来源删除 test_production_assembly.py::test_materializer_rejects_incomplete_accepted_segments
test_assembly_package_is_the_only_valid_previous_source 纯旧跨 Run来源类型删除;当前事实源是 AcceptedRef test_segment_acceptance.py::test_complete_current_pass_bundle_can_be_accepted
test_legacy_previous_final_field_is_not_part_of_v05 纯旧字段兼容测试删除;当前模型 extra="forbid" test_production_evaluation.py::test_current_records_are_strict_and_reject_old_schema
test_unchanged_segment_can_be_explicitly_reused_across_runs 跨 Run 复用删除;同 Run 精确复用保留 test_production_graph.py::test_directive_is_execute_without_history_and_reuse_with_exact_identity
test_current_package_and_assembly_contracts_are_closed 迁移 test_production_assembly.py::test_reuses_existing_assembly_contract_without_data_loss
test_production_package_rejects_forged_top_level_refs 迁移为 PlanningPackage/ProductionPackage 精确引用 test_production_planning.py::test_planning_package_binds_exact_authoritative_documentstest_production_package_contains_no_directive_list
test_accepted_segment_ref_revalidates_full_v04_bundle 迁移为当前 Bundle 反向重验与篡改拒绝 test_segment_acceptance.py::test_complete_current_pass_bundle_can_be_acceptedtest_tampered_subtitle_is_rejected_before_acceptance

旧顺序 Run 与 Assembly 测试

tests/production/test_run.py 在本轮清理基线前已由正式 Production Graph 替代;本表仍记录其 10 项行为去向。旧 Assembly 文件与带版本尾缀文件则合并为 唯一 test_production_assembly.py

旧测试 当前测试
test_full_execute_then_completed_noop_changes_nothing test_production_graph.py::test_runtime_e2e_completed_noop_and_tamper_fail_closed
test_final_with_any_missing_upstream_is_read_only_rejection test_finalizer_rejects_tampered_assembly_media_before_committest_finalizer_uses_only_prevalidated_canonical_tail
test_pass_report_without_final_only_finishes_commit test_formal_pass_chain_finalizes_and_completed_run_revalidates
test_candidate_without_report_does_not_reinvoke_validator test_production_graph.py::test_validator_candidate_checkpoint_builds_report_without_model
test_readiness_without_candidate_invokes_validator_once test_production_graph.py::test_readiness_checkpoint_invokes_validator_once
test_failed_report_is_terminal_and_second_run_is_read_only test_failed_terminal_resume_is_zero_write_and_zero_node_call
test_validator_is_inside_real_run_lock test_production_graph.py::test_production_validator_runs_inside_the_real_run_lock
test_resume_after_readiness_failure_reuses_assembly_delivery test_production_graph.py::test_readiness_failure_reuses_existing_assembly_delivery
test_reuse_directives_do_not_run_segment_executor test_directive_is_execute_without_history_and_reuse_with_exact_identity
test_segment_unknown_outcome_stops_before_assembly test_production_graph.py::test_segment_unknown_outcome_is_terminal_before_replan_or_assembly
旧 Assembly:Delivery Graph、Coverage、工具证据 test_production_assembly.py::test_reuses_existing_assembly_contract_without_data_losstest_delivery_rejects_remote_artifacts_and_wrong_tool_outputs
旧 Assembly:Artifact 存储身份 test_segment_artifact_identity_includes_storage_facts
旧 Assembly:正式路径必须本地 test_delivery_rejects_remote_artifacts_and_wrong_tool_outputs
带尾缀 Assembly:身份、完整性、当前 Package、工具版本目录 test_changed_business_identity_cannot_enter_assemblytest_materializer_rejects_incomplete_accepted_segmentstest_current_execution_must_bind_current_segment_packagetest_assembly_uses_versioned_tool_namespace