Expand description
Canonical replayable frontier events.
Events are the authoritative record for user-visible state transitions in the finding-centered v0 kernel. Frontier snapshots remain the convenient materialized state, but checks and proof packets can validate the event log.
Structs§
- Event
LogSummary - Finding
Event Input - Replay
Report - Revocation
Payload - Payload of an
EVENT_KIND_KEY_REVOKEevent. Carries the revoked Ed25519 pubkey (hex-encoded), the moment compromise was detected (ISO-8601), an optional replacement pubkey the actor is migrating to, and a free-form reason string. Stored on the event’spayloadfield; the event’sactoris the actor whose key is being revoked, and the event itself must be signed by a key that was authoritative before the revocation (typically a co-signer or the actor’s prior key — never the revoked key itself). - State
Actor - State
Event - State
Target
Constants§
- EVENT_
KIND_ ARTIFACT_ ASSERTED - Generic artifact lifecycle. Carries the full
Artifactinline onpayload.artifactso protocol snapshots can be replayed without resolving a sidecar file first. - EVENT_
KIND_ ARTIFACT_ RETRACTED - EVENT_
KIND_ ARTIFACT_ REVIEWED - EVENT_
KIND_ ATTESTATION_ RECORDED - v0.79.4: Per-event attestation. The substrate’s existing
frontier-wide signing path (
vela attest <frontier>) is coarse-grained: it signs every unsigned finding under one key. Per-event attestation lets a reviewer or external verifier attest one specific canonical event (vev_*) by emitting a newattestation.recordedevent that points at it. - EVENT_
KIND_ BRIDGE_ REVIEWED - v0.67: Bridge review verdict. A reviewer confirms or refutes a
vbr_*cross-frontier bridge by emitting this canonical event, which the reducer applies by setting the bridge’s status field. Pre-v0.67 bridge status was mutated by file write only; v0.67 makes the verdict an immutable canonical event so federation sync propagates it. Required payload:{bridge_id, status, note}.statusmust be one ofconfirmedorrefuted. - EVENT_
KIND_ EVIDENCE_ ATOM_ LOCATOR_ REPAIRED - v0.56: Mechanical evidence-atom locator repair. Targets a single
evidence atom by id and sets its
locatorfield to the value resolved from the parent source’s locator. Carries the resolved locator string and the source id it was derived from on the event payload so a fresh replay reconstructs the atom’s locator without needing to re-resolve the source. - EVENT_
KIND_ FINDING_ ENTITY_ ADDED - v0.79: Add a new entity to a finding’s
assertion.entitiesafter the finding was first asserted. Closes the v0.78.4 honest gap: the substrate previously could only attach entities at finding-creation time, so reviewers had to append new findings to add tags. - EVENT_
KIND_ FINDING_ ENTITY_ RESOLVED - v0.57: Entity resolution on a finding. Sets the canonical_id,
resolution_method, resolution_provenance, and resolution_confidence
fields on a single entity inside
state.findings[i].assertion.entities, and clears the entity’sneeds_reviewflag. Required payload:{proposal_id, entity_name, source, id, confidence}plus optionalmatched_name,resolution_method,resolution_provenance. - EVENT_
KIND_ FINDING_ SPAN_ REPAIRED - v0.57: Mechanical evidence-span repair on a finding. Appends one
{section, text}span tostate.findings[i].evidence.evidence_spans. Required payload:{proposal_id, section, text}. The reducer arm is idempotent under identical re-application (refuses to append an equal span twice on the same finding). - EVENT_
KIND_ FRONTIER_ CONFLICT_ RESOLVED - v0.59: Federation conflict resolution. Pairs with the existing
frontier.conflict_detectedevent. The conflict event itself stays in the log unchanged (immutable history); the resolved event records the reviewer’s verdict, the conflict it pertains to, and an optional pointer at the winning proposal. - EVENT_
KIND_ KEY_ REVOKE - v0.49: explicit event kind for actor-key revocation. Coalition
governance promises that key compromise is handled by a signed
RevocationEventthat names the key, the moment of compromise, and the recommended replacement. This constant pairs withRevocationPayloadandnew_revocation_eventbelow. - EVENT_
KIND_ NEGATIVE_ RESULT_ ASSERTED - v0.49: NegativeResult lifecycle event kinds. Pair with the
NegativeResultfirst-class object inbundle.rs. The substrate records nulls through the same proposal -> canonical event -> reducer pipeline as findings, so an underpowered Phase III readout and a confirmatory replication-failure both leave the same kind of auditable trace. - EVENT_
KIND_ NEGATIVE_ RESULT_ RETRACTED - EVENT_
KIND_ NEGATIVE_ RESULT_ REVIEWED - EVENT_
KIND_ PREDICTION_ DEPOSITED - v0.70: Prediction deposit. Same shape as
replication.depositedforProject.predictions. Deposits aPredictionrecord onto the frontier; reducer arm appends ifvpred_*id is new. Required payload:{prediction}(the full Prediction record). - EVENT_
KIND_ REPLICATION_ DEPOSITED - v0.70: Replication deposit. The substrate has had
Replicationas a first-class kernel object since v0.32 +vela replicateCLI, but the side-table mutation happened via direct file write. v0.70 makes the deposit event-driven so federation sync can propagate it. Reducer arm appends toProject.replicationsif thevrep_*id is not already present (idempotent under re-application). The CLI + Workbench paths emit this event; rawvrep_<id>entries onProject.replicationsfrom pre-v0.70 frontiers continue to load without an event. Required payload:{replication}(the full Replication record). - EVENT_
KIND_ TIER_ SET - v0.51: Re-classify a finding/negative_result/trajectory’s read-side access tier. Audit-trail event for the dual-use channel: the fact that an object’s tier changed (and who changed it, when, with what reason) is itself part of the substrate’s accountability surface and must replay deterministically.
- EVENT_
KIND_ TRAJECTORY_ CREATED - v0.50: Trajectory lifecycle event kinds. Pair with the
Trajectoryfirst-class object inbundle.rs. The substrate records search paths through the same proposal -> canonical event -> reducer pipeline as findings, so an agent that explored five branches before arriving at a finding leaves a step-by-step audit the next agent can read instead of re-deriving. - EVENT_
KIND_ TRAJECTORY_ RETRACTED - EVENT_
KIND_ TRAJECTORY_ REVIEWED - EVENT_
KIND_ TRAJECTORY_ STEP_ APPENDED - EVENT_
SCHEMA - NULL_
HASH
Functions§
- compute_
event_ id - Public form of
event_idso callers building non-finding events (e.g. thefrontier.createdgenesis event inproject::assemble) can compute the canonical event ID with the same canonical-JSON preimage shape asnew_finding_event. - event_
log_ hash - events_
for_ finding - evidence_
atom_ hash - Canonical hash of one evidence atom. Mirrors
finding_hashfor the before/after pair on locator-repair events so a chain validator can confirm that exactly the named atom changed and exactly the named repair was applied. - evidence_
atom_ hash_ by_ id - finding_
hash - finding_
hash_ by_ id - new_
bridge_ reviewed_ event - v0.67: build a
bridge.reviewedevent. Target is the bridge’s content-addressed id (vbr_*). Reducer arm projects the verdict onto the bridge’s status field on read. - new_
evidence_ atom_ locator_ repair_ event - Construct an
evidence_atom.locator_repairedevent targeting an evidence atom by id. The payload carries the resolved locator and the parent source id so a fresh replay can both apply the repair and reconstruct its derivation. Returned event is unsigned; the caller signs it before persisting. - new_
finding_ event - new_
frontier_ conflict_ resolved_ event - v0.59: build a
frontier.conflict_resolvedevent. Frontier-level observation; the target is the conflict’s frontier_id (same shape asfrontier.synced_with_peerandfrontier.conflict_detected). - new_
revocation_ event - Construct a signed-shape
key.revokeevent for the given actor. Mirrorsnew_finding_eventin shape but targets an actor and carries aRevocationPayloadinpayload. The returned event is unsigned (caller signs it);event.idis the canonical content address of the unsigned shape. - replay_
report - replay_
report_ json - snapshot_
hash - summarize
- validate_
bridge_ reviewed_ against_ state - v0.73: state-aware tightening of the
bridge.reviewedvalidator. - validate_
event_ payload