Skip to content

DADBEAR route manifest hash rewrites through oracle#249

Draft
adamlevineagent wants to merge 2 commits into
mainfrom
george/dadbear-execute-change-manifest
Draft

DADBEAR route manifest hash rewrites through oracle#249
adamlevineagent wants to merge 2 commits into
mainfrom
george/dadbear-execute-change-manifest

Conversation

@adamlevineagent

@adamlevineagent adamlevineagent commented Jun 22, 2026

Copy link
Copy Markdown
Owner

Summary

  • route L0 change-manifest post-apply file hash rewrites through db::set_file_content_hash instead of raw-updating pyramid_file_hashes
  • preserve oracle invariants for absolute-path / excluded-path filtering and row creation semantics
  • strengthen the L0 change-manifest regression test to prove existing node_ids survive the hash rewrite
  • add the requested change-manifest mirror proof: the apply path writes the change_manifest node-metadata record, then a delete+rebuild restores the pyramid_change_manifests projection from the store

Context

DADBEAR EXECUTE change-manifest lane after #246, #247, and #248, per PP dispatch msg/partner-prime/2026-06-22/dm-631e3a / msg/partner-prime/2026-06-22/dm-3e3053 / follow-up msg/partner-prime/2026-06-22/dm-4baa4c.

Change-manifest grep result

  • production persistence goes through persist_change_manifest_with_bus -> db::save_change_manifest, or direct db::save_change_manifest in reroll
  • db::save_change_manifest is the centralized insert path and mirrors kind="change_manifest" node metadata
  • raw pyramid_change_manifests mutation sites are limited to schema/save path, projection rebuild from node-metadata store, and tests/fixtures; no separate production raw change-manifest bypass was found

Evidence

  • git diff --check
  • cargo test -q test_apply_supersession_manifest_l0_file_change_updates_hash_and_distilled -- --nocapture
    • includes node_ids preservation
    • includes change_manifest mirror-record assertion
    • includes DELETE FROM pyramid_change_manifests + rebuild_pyramid_node_metadata_from_store restoration assertion
  • five DADBEAR guard loop:
    • cargo test -q edge_survives_endpoint_supersession -- --nocapture
    • cargo test -q faq_link_survives_related_node_supersession -- --nocapture
    • cargo test -q targeted_evidence_resolves_real_source_not_placeholder -- --nocapture
    • cargo test -q test_apply_supersession_manifest_l0_file_change_updates_hash_and_distilled -- --nocapture
    • cargo test -q test_set_file_content_hash_preserves_node_ids_order_independent -- --nocapture
  • guard list confirmed all five DADBEAR tests are registered:
    • pyramid::dadbear_supervisor::edge_check_apply_tests::edge_survives_endpoint_supersession
    • pyramid::dadbear_supervisor::faq_redistill_apply_tests::faq_link_survives_related_node_supersession
    • pyramid::db::tests::test_set_file_content_hash_preserves_node_ids_order_independent
    • pyramid::prompt_materializer::tests::targeted_evidence_resolves_real_source_not_placeholder
    • pyramid::stale_helpers_upper::tests::test_apply_supersession_manifest_l0_file_change_updates_hash_and_distilled

Draft for PP/Claude gate. No self-merge.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant