Compare commits

..
Author SHA1 Message Date
Codex 5531edf0fa docs: retain original eec4677 Phase 0 baseline failures 2026-10-20 21:48:19 +08:00
2 changed files with 162 additions and 15 deletions

No files matched your search

@@ -0,0 +1,149 @@
CelerisLab Phase 0 baseline — original candidate SHA eec4677db1308e2a9ce4e5f195c994356c11de13
106 isolated groups; 764 primary pytest test IDs; 741 passed, 22 failed, 1 skipped; 0 collection errors, 0 timeouts.
Host: 595 passed / 20 failed / 1 skipped. GPU: 146 passed / 2 failed.
Python 3.10.13; NumPy 1.26.4; pytest 9.1.1; PyCUDA 2026.1; SciPy 1.14.1; CUDA 12.4; Tesla V100-SXM2-16GB.
CUDA_VISIBLE_DEVICES bound per GPU worker. Host mocks and real CUDA ran in separate processes; each group had a 900-second timeout.
No source/test edits, no changed tolerance, no refreshed frozen hash, no long physics or performance runs.
This report contains test IDs/errors only. Full logs remain on Horsea under /home/frank14f/CelerisLab-phase0-evidence-20261020/.
11 source provenance failures bind historical experimental manifests (47b05bc8... for DFG/Jet CV; a233c903... window); they are not new physical qualification.
The channel GPU bitwise discrepancy remains unresolved: 1/4320 values; maximum absolute difference 2.3283064e-10; relative 1.7676595e-07.
Shifted-storage test input is FP64 because NumPy where(float32 scalar, np.nan) promotes it; library requires shifted raw FP32.
Current scheduler uses _advance(index,...); two tests still instrument removed _advance_child.
Failed IDs and original error excerpts:
1. tests/unit/test_channel_root.py::test_actual_closure_read_conflicts
Location: tests/unit/test_channel_root.py:53: in test_actual_closure_read_conflicts
Error: E ValueError: block_cell must be integer index(es) in [0, 960)
Category: test_fixture_numpy_uint64_to_float64
Log: run-004/stdout.log
2. tests/unit/test_jet_circle_cv.py::Host::test_source_pin
Location: tests/unit/test_jet_circle_cv.py:135: in test_source_pin
Error: E RuntimeError: Source hash mismatch: src/CelerisLab/lbm/channel.py
Category: frozen_source_manifest_constraint
Log: run-010/stdout.log
3. tests/unit/test_re100.py::test_production_unmodified
Location: tests/unit/test_re100.py:71: in test_production_unmodified
Error: E AssertionError: src/CelerisLab/lbm/channel.py | E assert '40d0354e5dc9...f4cd75ab5a095' == '2d5b5ff43414...b58d498dd8b0f' | E | E - 2d5b5ff43414cb35633ac4ce90ce2c3a3353950b25c168e1c2ab58d498dd8b0f
Category: frozen_source_manifest_constraint
Log: run-027/stdout.log
4. tests/unit/test_refined_dfg.py::test_source_pin
Location: tests/unit/test_refined_dfg.py:20: in test_source_pin
Error: E RuntimeError: Source mismatch: src/CelerisLab/lbm/kernels/blocks.cu
Category: frozen_source_manifest_constraint
Log: run-028/stdout.log
5. tests/unit/test_refined_dfg.py::test_full_requires_completed_pilot
Location: tests/unit/test_refined_dfg.py:146: in test_full_requires_completed_pilot
Error: E RuntimeError: Source mismatch: src/CelerisLab/lbm/kernels/blocks.cu
Category: frozen_source_manifest_constraint
Log: run-028/stdout.log
6. tests/unit/test_refined_dfg.py::test_pilot_validation_and_calibration
Location: tests/unit/test_refined_dfg.py:226: in test_pilot_validation_and_calibration
Error: E RuntimeError: Source mismatch: src/CelerisLab/lbm/kernels/blocks.cu
Category: frozen_source_manifest_constraint
Log: run-028/stdout.log
7. tests/unit/test_refined_dfg.py::test_reject_malformed_pilot_receipts
Location: tests/unit/test_refined_dfg.py:236: in test_reject_malformed_pilot_receipts
Error: E RuntimeError: Source mismatch: src/CelerisLab/lbm/kernels/blocks.cu
Category: frozen_source_manifest_constraint
Log: run-028/stdout.log
8. tests/unit/test_refined_dfg.py::test_reject_collision_receipts
Location: tests/unit/test_refined_dfg.py:326: in test_reject_collision_receipts
Error: E RuntimeError: Source mismatch: src/CelerisLab/lbm/kernels/blocks.cu
Category: frozen_source_manifest_constraint
Log: run-028/stdout.log
9. tests/unit/test_refined_dfg.py::test_record_actual_checkout_separately
Location: tests/unit/test_refined_dfg.py:344: in test_record_actual_checkout_separately
Error: E RuntimeError: Source mismatch: src/CelerisLab/lbm/kernels/blocks.cu
Category: frozen_source_manifest_constraint
Log: run-028/stdout.log
10. tests/unit/test_refined_dfg.py::test_window_plan_preserves_physics
Location: tests/unit/test_refined_dfg.py:354: in test_window_plan_preserves_physics
Error: E RuntimeError: Source mismatch: src/CelerisLab/lbm/kernels/blocks.cu
Category: frozen_source_manifest_constraint
Log: run-028/stdout.log
11. tests/unit/test_refined_dfg.py::test_reject_observation_mode_receipts
Location: tests/unit/test_refined_dfg.py:365: in test_reject_observation_mode_receipts
Error: E RuntimeError: Source mismatch: src/CelerisLab/lbm/kernels/blocks.cu
Category: frozen_source_manifest_constraint
Log: run-028/stdout.log
12. tests/unit/test_shifted_storage.py::ShiftedStorage::test_shifted_density_and_tag_validation
Location: tests/unit/test_shifted_storage.py:82: in test_shifted_density_and_tag_validation
Error: E ValueError: shifted stored populations must be FP32
Category: test_fixture_numpy_where_dtype
Log: run-037/stdout.log
13. tests/unit/test_validation_source_provenance.py::test_manifests_cover_current_source_and_preserve_origin
Location: tests/unit/test_validation_source_provenance.py:40: in test_manifests_cover_current_source_and_preserve_origin
Error: E AssertionError: src/CelerisLab/lbm/channel.py | E assert '40d0354e5dc9...f4cd75ab5a095' == '2d5b5ff43414...b58d498dd8b0f' | E | E - 2d5b5ff43414cb35633ac4ce90ce2c3a3353950b25c168e1c2ab58d498dd8b0f
Category: frozen_source_manifest_constraint
Log: run-049/stdout.log
14. tests/validation/multigrid/test_block_stepper.py::CpuContracts::test_initialize_rejects_bad_state_before_upload
Location: tests/validation/multigrid/test_block_stepper.py:212: in test_initialize_rejects_bad_state_before_upload
Error: E AttributeError: 'PeriodicBlockStepper' object has no attribute '_ddf_shifting'
Category: test_fixture_or_assertion_stale_api
Log: run-058/stdout.log
15. tests/validation/multigrid/test_channel_root_gpu.py::ChannelRootGPU::test_uniform_matched_root
Location: tests/validation/multigrid/test_channel_root_gpu.py:95: in test_uniform_matched_root
Error: E AssertionError: | E Arrays are not equal | E | E Mismatched elements: 1 / 4320 (0.0231%)
Category: gpu_bitwise_parity_contract_failure_unresolved
Log: run-060/stdout.log
16. tests/validation/multigrid/test_fine_surface_gpu.py::test_missing_surface_device_buffer_rejects_before_launch[surface_velocity_gpu]
Location: tests/validation/multigrid/test_fine_surface_gpu.py:284: in test_missing_surface_device_buffer_rejects_before_launch
Error: E AttributeError: can't set attribute 'fine_boundary'
Category: test_fixture_or_assertion_stale_api
Log: run-070/stdout.log
17. tests/validation/multigrid/test_fine_surface_gpu.py::test_missing_surface_device_buffer_rejects_before_launch[link_exchange_gpu]
Location: tests/validation/multigrid/test_fine_surface_gpu.py:284: in test_missing_surface_device_buffer_rejects_before_launch
Error: E AttributeError: can't set attribute 'fine_boundary'
Category: test_fixture_or_assertion_stale_api
Log: run-070/stdout.log
18. tests/validation/multigrid/test_refinement_followup.py::FaultGuardsCPU::test_activation_failure_retains_resources_for_retry
Location: tests/validation/multigrid/test_refinement_followup.py:134: in test_activation_failure_retains_resources_for_retry
Error: E AttributeError: can't set attribute 'fine_layout'
Category: test_fixture_or_assertion_stale_api
Log: run-083/stdout.log
19. tests/validation/multigrid/test_refinement_followup.py::FaultGuardsCPU::test_failed_download_blocks_read_and_step
Location: tests/validation/multigrid/test_refinement_followup.py:121: in test_failed_download_blocks_read_and_step
Error: E AttributeError: can't set attribute 'fine_layout'
Category: test_fixture_or_assertion_stale_api
Log: run-083/stdout.log
20. tests/validation/multigrid/test_refinement_followup.py::FaultGuardsCPU::test_kernel_contracts_reject_before_upload
Location: RuntimeError: level config chain is inconsistent with the pair tables
Error: E AssertionError: "omega/tau" does not match "level config chain is inconsistent with the pair tables"
Category: test_fixture_or_assertion_stale_api
Log: run-083/stdout.log
21. tests/validation/multigrid/test_refinement_three_level.py::ThreeLevelCPU::test_four_halo_bfl_steps_and_fresh_middle_feeds
Location: tests/validation/multigrid/test_refinement_three_level.py:83: in test_four_halo_bfl_steps_and_fresh_middle_feeds
Error: E AttributeError: 'FixedPatchStepper' object has no attribute '_advance_child'
Category: test_instrumentation_stale_private_method
Log: run-092/stdout.log
22. tests/validation/multigrid/test_refinement_three_level.py::ThreeLevelGPU::test_nonequilibrium_masks_and_fresh_middle_feeds
Location: tests/validation/multigrid/test_refinement_three_level.py:175: in test_nonequilibrium_masks_and_fresh_middle_feeds
Error: E AttributeError: 'FixedPatchStepper' object has no attribute '_advance_child'
Category: test_instrumentation_stale_private_method
Log: run-093/stdout.log
SKIP: tests/unit/test_union_refinement.py::AdapterNumerics::test_eight_steps_bitwise
Reason: ADAPTER_DIR external CPU adapter not configured.
@@ -80,12 +80,11 @@ class ThreeLevelCPU(unittest.TestCase):
f, g = run._levels[1:]
b = g.boundary
events, feeds = [], []
advance, gather = run._advance, run._gather_halo
def record_feed(index, buffer, **kw): # index 2: L1 hop feeds L2
if index == 2:
self.assertIs(buffer, (f.current, f.spare)[len(feeds)])
feeds.append(buffer)
advance(index, buffer, **kw)
advance, gather = run._advance_child, run._gather_halo
def record_feed(buffer, **kw):
self.assertIs(buffer, (f.current, f.spare)[len(feeds)])
feeds.append(buffer)
advance(buffer, **kw)
def record_halo(level, buffer, **kw):
if level is g:
events.append(("halo", buffer))
@@ -96,7 +95,7 @@ class ThreeLevelCPU(unittest.TestCase):
self.assertIs(kind, g.kind)
events.append(("step", src))
g.kernel.side_effect = record_step
with patch.object(run, "_advance", side_effect=record_feed), \
with patch.object(run, "_advance_child", side_effect=record_feed), \
patch.object(run, "_gather_halo", side_effect=record_halo):
run.step()
self.assertEqual(feeds, [f.current, f.spare])
@@ -106,8 +105,8 @@ class ThreeLevelCPU(unittest.TestCase):
self.assertGreater(len(np.unique(b.tables["block"])), 1)
# Negative control: reusing L1's old source at the midpoint must fail.
feeds.clear()
with patch.object(run, "_advance", side_effect=lambda index, buffer, **kw:
record_feed(index, f.current if index == 2 else buffer, **kw)):
with patch.object(run, "_advance_child", side_effect=lambda buffer, **kw:
record_feed(f.current, **kw)):
with self.assertRaises(AssertionError):
run.step()
run.close()
@@ -173,12 +172,11 @@ class ThreeLevelGPU(unittest.TestCase):
p1, p2 = run.patch, run.child_patch
run.initialize(state(16, 16, 1), state(*p1.fine_shape, 2), state(*p2.fine_shape, 3))
f = run._levels[1]
feeds, original = [], run._advance
def record(index, buffer, **kw): # index 2: L1 hop feeds L2
if index == 2:
feeds.append(int(buffer))
original(index, buffer, **kw)
with patch.object(run, "_advance", side_effect=record):
feeds, original = [], run._advance_child
def record(buffer, **kw):
feeds.append(int(buffer))
original(buffer, **kw)
with patch.object(run, "_advance_child", side_effect=record):
cur, spare = int(f.current), int(f.spare)
run.step(1)
self.assertEqual(feeds, [cur, spare]) # current G, then the new G of hop 1