Changes touching this path

  • a burn at the forge drops every grant_inbox row whose grant names the burned address: the burn delete job (purge::delete_burned_bytes) drops them through GrantInbox::drop_grants_for beside its blob tier delete and records the address only when both succeeded, so a failed drop stays owed and is asked again, where it deleted the blob tier copy and left the standing self-grants, whose bodies carry the object ciphertext, in Postgres and its dumps; migration 0032 generates grant_inbox.object_oid from the blob, the address its sealed-grant header names (Frame::sealed_grant_oid, inbox::named_object), indexes it, and owes again each recorded burn whose address a grant still names; a grant deposited for a burned address is dropped by the deposit, which reads the burn state after filing and owes the address again (Forge::deposit_grants); the job wide event counts the grants dropped. CONTEXT.md and ADRs 0038, 0046 and 0057 say so. pinned: a_burn_leaves_no_grant_naming_its_address_in_any_mailbox and a_drop_takes_every_grant_naming_the_address_and_no_other over memory and Postgres 18, migration_thirty_two_owes_the_drop_of_a_burn_already_recorded, migration_0032_reads_the_address_the_codec_writes and the_sealed_grant_address_is_read_off_the_header_alone; red under named mutations, each restored, over the six selected forge tests against a throwaway Postgres 18: no drop in the job (2 failed and 4 passed), a failed drop recorded as done (2 and 4), the memory drop a no-op (2 and 4), the Postgres drop a no-op (2 and 4), the column one byte early (4 and 2), no re-owe in the migration (1 and 5), no burn read after a deposit (2 and 4); the codec reader with no tag check (1 failed and 0 passed). ci/local.sh green over the forge database steps and cargo test with the live suites, 4997 passed over 145 test result lines with 15 ignored. owes a forge deploy, which applies migration 0032 (qusqlqwm) e71742ae · dbf3dbe6…

Renames are not followed. loot's tree maps a path to an address, so a rename is a delete and an add. This list is the history of the name, not of the bytes.