Tags and Properties for Check-in e091f2ac80
- branch=push-policy propagates to descendants
- closed added by [c640720389] on 2026-08-17 17:12:02
- sym-push-policy propagates to descendants
- sym-trunk cancelled
|
2026-08-17
| ||
| 17:12 | • Edit [e091f2ac80]: Mark "Closed". artifact: c640720389 user: dmestas | |
| 16:41 |
serve refuses a push that violates its content policy (#88)
#81's predicates bind a checkout; nothing stopped a push from a clone that never adopted them, or from stock fossil. Fossil cannot close this at all -- its hooks are before-commit (client-side) and after-receive. The policy is the SERVER's, resolved per round from its own settings, never from the artifacts arriving: a push carrying its own policy would otherwise arrive bearing permission to land. Only inspecting rules cross the wire; before-commit has no server-side counterpart. A push sends artifacts by hash and only a manifest names paths, so the walk is manifest-first -- the policy gates what becomes REACHABLE, not what bytes transit. Decided before ingest, so a refusal stores nothing, and the whole round is refused rather than half of it. Verified against fossil 2.28: it prints the refusal text verbatim and lands nothing. Note it exits 0 while doing so, where zit push exits 1. closed check-in: e091f2ac80 user: dmestas tags: push-policy | |