Phase 1: Revocation event types and API #66
No reviewers
Labels
No labels
bug
cli
core
docs
event
experiment
figure
invariant
metrics
oracle
phase-0
phase-1
phase-2
phase-3
phase-4
phase-5
phase-6
provenance
revocation
tests
workload
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
erikinkinen/AES!66
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "1-revocation-event-types-and-api"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Introduces Phase 1 revocation as a first-class event via
RevokeCap, with deterministic selector semantics, explicit revocation outcomes, and engine/log integration through existing paths.Closes #26.
What changed
Event model
EventType::RevokeCap.RevocationSelector { std::vector<EdgeId> edge_ids; }.RevokeCapPayload { RevocationSelector selector; }.EventPayload/constructors forRevokeCap.Revocation semantics (
apply_event)sort + dedupe).EdgeId{0}) withErrc::InvalidArgument.Errc::NotFound.Result surface
RevocationResult:targeted_edges(normalized, unique, ascending).removed_edges(actual removed, ascending).ApplyEventResult::revocation_result(std::optional).RevokeCap.deltaand other outcomes).revocation_resultempty.Event log + replay
"type":"revoke_cap""payload":{"selector":{"edge_ids":[...]}}resultbehavior unchanged for non-UseCapevents ({"ok":true,"reason":"ok"}).revoke_capand validate deltas as usual.Engine integration
Engine::step/runnow naturally handleRevokeCapthroughcore::apply_event.timeand appends tohistory.time/history.Docs
docs/model.mdwithRevokeCapsemantics and removed “revocation selector absent” note.Commit breakdown
Phase 1: Add RevokeCap event type (#26)Phase 1: Define revocation selector semantics (#26)Phase 1: Define RevocationResult API surface (#26)Phase 1: Integrate revocation into engine loop (#26)Test coverage
revoke_cappayload schema validation.RevocationResultpopulation and clearing rules.step/runbehavior with revoke success/failure.revoke_cap.Validation
cmake --build _buildctest --test-dir _build --output-on-failure36/36).Compatibility notes