[M11b-2d-A1a] 收口提交内容:仅刷新 3 份 pytest 留证件(响应 QC 退回项 #1/#9 可复核性)。 - m11b2d_a1_pytest.txt / m11b2d_a1_collect_only.txt:头部补 INTERPRETER 绝对路径 + PYTEST_VERSION + PYTHON_VERSION + WORKDIR + GIT_HEAD,输出为 modules/world_sync 工作目录内实测原样全量输出。 - m11b2d_a1_pytest_ref_11aac66.txt:按 QC 改法 (b) 在 modules/world_sync 工作目录内以临时改写方式重跑对照实验,rootdir 与 CMD 一致(原件 rootdir 指向已删除的 tmp_diag/wsdiag 副本),并补 NOTE/PYTHON_VERSION;跑完测试文件按 HEAD 字节流还原(md5 d17cf7d68e3bfbef70c4f6b38a5bb643 一致,git status 归零)。 - tests/test_m11b2_single_tx.py 与 tests/_m11b2_compat.py 本任务零改动(git diff 为空),故未 add。
61 lines
5.2 KiB
Plaintext
61 lines
5.2 KiB
Plaintext
# CMD: cd modules/world_sync && /d/pipeline/workspaces/0/sdlc_general/modules/world_sync/.venv/bin/python -m pytest tests/test_m11b2_single_tx.py --collect-only -q
|
||
# DATE: 2026-09-22T23:30:05+08:00
|
||
# INTERPRETER: /d/pipeline/workspaces/0/sdlc_general/modules/world_sync/.venv/bin/python
|
||
# PYTEST_VERSION: pytest 9.1.1
|
||
# PYTHON_VERSION: Python 3.10.12
|
||
# WORKDIR: /d/pipeline/workspaces/0/sdlc_general/modules/world_sync
|
||
# GIT_HEAD: 932bcd80724380098b2a545d00ed75e31fbd75d8 (932bcd8)
|
||
# TASK: M11b-2d-A1a 留证刷新(collect-only 可收集性证明,响应 QC #9)
|
||
# NOTE: 以下为上述命令完整原样输出。48 items collected / 0 collection error 是本项验收点,与用例是否 PASSED 无关;rootdir 与 # CMD/# WORKDIR 一致。
|
||
tests/test_m11b2_single_tx.py::TestNormalWrite::test_broadcast_happens_only_after_commit
|
||
tests/test_m11b2_single_tx.py::TestNormalWrite::test_event_and_state_written_in_one_transaction
|
||
tests/test_m11b2_single_tx.py::TestNormalWrite::test_event_row_is_append_only_without_version_backfill
|
||
tests/test_m11b2_single_tx.py::TestNormalWrite::test_multi_entity_state_updates
|
||
tests/test_m11b2_single_tx.py::TestNormalWrite::test_payload_serialised_into_payload_json_column
|
||
tests/test_m11b2_single_tx.py::TestNormalWrite::test_snapshot_written_in_same_transaction
|
||
tests/test_m11b2_single_tx.py::TestNormalWrite::test_trace_is_begin_commit_broadcast_in_that_order
|
||
tests/test_m11b2_single_tx.py::TestNormalWrite::test_update_path_bumps_version_server_side
|
||
tests/test_m11b2_single_tx.py::TestAtomicRollback::test_append_only_guard_rejects_event_update_and_base_write
|
||
tests/test_m11b2_single_tx.py::TestAtomicRollback::test_errors_are_never_swallowed
|
||
tests/test_m11b2_single_tx.py::TestAtomicRollback::test_failed_write_leaves_no_event_row
|
||
tests/test_m11b2_single_tx.py::TestAtomicRollback::test_immutable_column_in_set_guard
|
||
tests/test_m11b2_single_tx.py::TestAtomicRollback::test_missing_not_null_column_guard
|
||
tests/test_m11b2_single_tx.py::TestAtomicRollback::test_multi_entity_partial_failure_rolls_back_first_write
|
||
tests/test_m11b2_single_tx.py::TestAtomicRollback::test_optimistic_lock_conflict_rolls_back_everything
|
||
tests/test_m11b2_single_tx.py::TestAtomicRollback::test_unknown_column_guard
|
||
tests/test_m11b2_single_tx.py::TestAtomicRollback::test_update_statement_never_sets_immutable_columns
|
||
tests/test_m11b2_single_tx.py::TestIdempotency::test_derived_idem_key_is_stable_for_same_params
|
||
tests/test_m11b2_single_tx.py::TestIdempotency::test_different_payload_is_not_deduped
|
||
tests/test_m11b2_single_tx.py::TestIdempotency::test_duplicate_event_uid_dedups_without_second_write
|
||
tests/test_m11b2_single_tx.py::TestIdempotency::test_idem_key_param_is_accepted
|
||
tests/test_m11b2_single_tx.py::TestConcurrency::test_concurrent_duplicate_event_only_one_writes
|
||
tests/test_m11b2_single_tx.py::TestConcurrency::test_stale_base_version_raises_conflict_and_keeps_state
|
||
tests/test_m11b2_single_tx.py::TestConcurrency::test_two_concurrent_writers_same_entity_no_lost_update
|
||
tests/test_m11b2_single_tx.py::TestValidation::test_client_supplied_state_version_is_ignored
|
||
tests/test_m11b2_single_tx.py::TestValidation::test_missing_required_params_rejected
|
||
tests/test_m11b2_single_tx.py::TestValidation::test_missing_tenant_rejected
|
||
tests/test_m11b2_single_tx.py::TestValidation::test_read_states_enforces_tenant_scope
|
||
tests/test_m11b2_single_tx.py::TestValidation::test_state_update_item_requires_entity_id
|
||
tests/test_m11b2_single_tx.py::TestValidation::test_state_update_item_requires_state
|
||
tests/test_m11b2_single_tx.py::TestValidation::test_state_updates_must_be_array
|
||
tests/test_m11b2_single_tx.py::TestLatency::test_each_write_reports_latency_and_sla
|
||
tests/test_m11b2_single_tx.py::TestLatency::test_p99_under_200ms
|
||
tests/test_m11b2_single_tx.py::TestLatency::test_percentile_helper_contract
|
||
tests/test_m11b2_single_tx.py::TestScopeAndSqlContract::test_column_contract_is_single_sourced_from_models
|
||
tests/test_m11b2_single_tx.py::TestScopeAndSqlContract::test_ddl_available_for_both_dialects
|
||
tests/test_m11b2_single_tx.py::TestScopeAndSqlContract::test_for_update_clause_degrades_by_dialect
|
||
tests/test_m11b2_single_tx.py::TestScopeAndSqlContract::test_no_broadcast_or_polling_in_write_sources
|
||
tests/test_m11b2_single_tx.py::TestScopeAndSqlContract::test_placeholder_style_per_dialect
|
||
tests/test_m11b2_single_tx.py::TestScopeAndSqlContract::test_transaction_lifecycle_is_balanced
|
||
tests/test_m11b2_single_tx.py::TestRetiredContractCases::test_before_commit_hook_failure_rolls_back_everything
|
||
tests/test_m11b2_single_tx.py::TestRetiredContractCases::test_duplicate_event_raises_event_write_error
|
||
tests/test_m11b2_single_tx.py::TestRetiredContractCases::test_event_row_state_version_aligned_with_written_state
|
||
tests/test_m11b2_single_tx.py::TestRetiredContractCases::test_failure_raises_world_sync_exception_family
|
||
tests/test_m11b2_single_tx.py::TestRetiredContractCases::test_key_mismatch_between_event_and_state_rejected
|
||
tests/test_m11b2_single_tx.py::TestRetiredContractCases::test_module_level_helper_uses_configured_writer
|
||
tests/test_m11b2_single_tx.py::TestRetiredContractCases::test_plan_assembly_is_side_effect_free
|
||
tests/test_m11b2_single_tx.py::TestRetiredContractCases::test_unserialisable_payload_rejected
|
||
|
||
48 tests collected in 0.05s
|
||
# RC=0
|