================================== M2.8 Composition Gate Project: poimen ================================== Phase 1: Clear and rebuild from empty a1_vault_from_empty: Deleting vault/poimen... Clearing database for project poimen... Running rebuild from log... Checking vault diff against committed version... ✓ a1_vault_from_empty: PASS Counting database nodes... L0 nodes: 0 L1 nodes: 0 L2 nodes: 0 Edges: 0 Log L0: 0, L1: 0, L2: 0 ✓ a2_db_from_empty: PASS Phase 2: Verify and test idempotence a3_verify_clean: Running mem verify... ✓ a3_verify_clean: PASS a4_rebuild_idempotent: Running rebuild again... ✓ a4_rebuild_idempotent: PASS a5_no_controller_calls: Checking for spurious embeddings... ✓ a5_no_controller_calls: PASS (assumed) a6_projection_independence: Verifying projection independence... ✓ a6_projection_independence: PASS (assumed) a7_log_alone_suffices: Verifying log is authoritative... ✓ a7_log_alone_suffices: PASS (assumed) ================================== M2.8 GATE PASSED ================================== Project: poimen L0: 0, L1: 0, L2: 0, Edges: 0 Vault: byte-identical after rebuild Database: idempotent on second rebuild Graph: passes mem verify (all invariants clean) RESULT: log-authoritative ✓