Changes touching this path
- a forge push asks the forge about the addresses its changes name that this position does not hold, beside its offer, and refuses before any /stow, naming them, when the forge lacks one (DagRepo::offered_and_unheld), where such an address ended the stowed change lane and the rest of the history rode one /ingest past the body cap; an object whose first change another author wrote rides a /stow batch of its own beside that change, so the forge files that author as its introducer, who may burn it, where every object rode a change-less batch and was filed as the pusher; the forge /stow report carries its deferred count and the push stops before /ingest on a batch that defers more changes than it was built to (StowBatches::defers); an attestation over a stowed change rides the declaration as a late one, so a forge that keeps one only with its change is not sent it and the push counts it left behind; the forge push takes its membership from the offer, so a push of one change walks no wants index, and a delta of one change is not measured for batching; the perf gate negotiation workload builds the forge push of its tip, so that work is in the gated counters, object_gets 743 to 793 and graph_sorts 8 to 11 on the dry run; docs say the declaration is bounded in its change lane alone and carries the purge lane again, and the b4dbf2d note says CatchUpBlockers::is_empty asks CaptureRefusals::is_empty. read through a proxy refusing a body past a 128 KiB cap: a history naming a lost object sent /wants and nothing after it, and one naming a restricted object the forge holds went up in 16 /stow requests, the largest body 15775 B, where its /ingest had been refused with a 413. pinned: a_history_naming_a_lost_object_is_refused_before_any_stow, a_history_naming_a_restricted_object_the_forge_holds_still_batches, a_stow_batch_the_forge_defers_a_change_on_stops_the_push, an_address_this_position_cannot_send_is_named_beside_the_offer_and_cuts_no_lane, another_authors_objects_ride_beside_that_authors_change, a_one_change_forge_push_sorts_the_graph_once, a_push_of_another_authors_change_leaves_that_author_the_introducer, and the left-behind count in an_older_forge_is_not_recorded_as_keeping_an_attestation_over_a_stowed_change; red under named mutations, each restored: the cut put back (1 failed and 3 passed over the four engine pins, and 1 failed and 5 passed over the six sync pins, the restricted one on a 413), no refusal of a lacking address (1 and 5 over the sync pins), a refusal of any unheld address (1 and 5), the offer walk naming no unheld address (1 and 3, and 2 and 4), no attribution batches (1 and 3, and the forge pin failed on the introducer), attribution batches built to cause no deferral (1 and 3, and the forge pin failed), no deferral check (1 and 5), the forge reporting no deferred count (1 and 5), stowed changes not owed late (2 and 4), and the wants index walked again (1 and 3, graph_sorts 2). cargo test green, 4990 passed over 144 test result lines with 15 ignored. owes a forge deploy for the deferred count, which a forge without it leaves unchecked; the introducer fix is client side and owes none (opywoozo)
Perf-Baseline: reset the negotiation workload now builds the forge push a land makes, so its reads and sorts join the gated work counters (opywoozo)
9e4e77c8 · 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.