REFRACT Audit

Event Reference

Complete reference for every REFRACT Audit Level 1 timeline event - event type, severity, product source, and display title.

This page documents every Level 1 event that appears in the REFRACT Audit timeline and the severity it carries.


Full Governed Document Timeline

The following is the complete audit log for a vendor contract that passed through every REFRACT Platform product: REFRACT PDF generation, REFRACT Workflow approval, REFRACT eSign counter-signature (sequential, 2 signers), REFRACT Delivery, and REFRACT Audit archival. This represents the maximum event set for a fully governed document.

Illustrative Example

The following scenario is fictional and intended to demonstrate how lifecycle events and evidence trails may appear in a production deployment.

Document:  Vendor Contract VC-2026-0601 (Acme Corp)
Products:  REFRACT PDF → REFRACT Workflow → REFRACT eSign (sequential, 2 signers) → REFRACT Delivery → REFRACT Audit

── 11 Level 1 events, across three separate logs ──────────────────────────────

 #   Timestamp (UTC)        Severity      Product        Event Title
─────────────────────────────────────────────────────────────────────────────────
 1   2026-06-01 08:00:01    information   REFRACT PDF       Document Generated
 2   2026-06-01 08:00:02    compliance    REFRACT Audit     Integrity Verified
 3   2026-06-01 08:02:14    governance    REFRACT Workflow  Submitted for Review
 4   2026-06-01 09:45:00    governance    REFRACT Workflow  Sent for Approval
 5   2026-06-01 10:20:11    governance    REFRACT Workflow  Workflow Approved
 6   2026-06-01 10:22:30    compliance    REFRACT Workflow  Document Sealed
 7   2026-06-01 10:23:05    information   REFRACT eSign     Sent for Signature    (sequential, 2 slots)
 8   2026-06-01 11:05:10    compliance    REFRACT eSign     Document Signed       (slot 0: vendor@acme.com)
 9   2026-06-01 11:29:33    compliance    REFRACT eSign     Document Signed       (slot 1: director@contoso.com)
10   2026-06-01 11:30:00    information   REFRACT Delivery  Document Delivered    (1 recipient)
11   2026-06-01 11:30:01    compliance    REFRACT Audit     Archived to Write-Once Storage

Events 1-2 and any render-level events (like Document Delivered's session
creation) are written to the general, unchained render audit log. Events 3-6
are written to the workflow HMAC chain (workflow/{tenantId}/{correlationId}.jsonl).
Events 7-9 are written to the eSign HMAC chain (esign/{tenantId}/{correlationId}.jsonl).

── Timeline view coverage ──────────────────────────────────────────────────────

 Executive view   (information + compliance)  →  Events 1, 2, 6, 8, 9, 10, 11
 Compliance view  (compliance + security)     →  Events 2, 6, 8, 9, 11
 Security view    (security + failure)        →  none in this example
 Full view        (all severities)            →  Events 1 - 11

Section 508 adds a 14th event

When the section508 feature flag is enabled on the template, an accessibility-checked (Accessibility Checked, compliance) event is inserted between events 2 and 3 - immediately after Integrity Verified.

OTP verification is not a standalone timeline event

Whether and when a signer passed OTP verification is recorded as part of the Document Signed event's own data, not as a separate Identity Verified entry before it - there is no code path today that emits identity verification as its own real-time chained event.


Render Events

Events emitted by REFRACT PDF during document generation.

Event TypeDisplay TitleSeverity
generatedDocument Generatedinformation
failedRender Failedfailure

generated - Initial PDF render completed. Extended details include engine version, template path, payload path, output file size, and render duration in milliseconds.

failed - PDF generation or upload failed. Extended details include the error message and the failing pipeline stage.


REFRACT Audit Events

Events emitted directly by REFRACT Audit - integrity checks, archival, verification operations, and access control.

Event TypeDisplay TitleSeverity
integrity-validatedIntegrity Verifiedcompliance
accessibility-checkedAccessibility Checkedcompliance
archivedArchived to Write-Once Storagecompliance
verifiedIntegrity Re-verifiedcompliance
reproducedDocument Reproducedcompliance
evidence-exportedEvidence Exportedcompliance
revokedAccess Revokedsecurity

integrity-validated - SHA-256 hash computed and stored at generation time. This event is the baseline for all future verification. Always emitted immediately after generated.

accessibility-checked - Section 508 accessibility trace generated and stored. Only emitted when the section508 feature flag is enabled on the template.

archived - Document marked as archived. Appends an audit entry; the document enters a read-only compliance state.

verified - On-demand SHA-256 re-verification triggered from the REFRACT Lifecycle workspace. Extended details include the verification result (PASS, FAIL, INDETERMINATE, or NOT_VERIFIABLE) and the comparing hash values. See Verify Results below for what each value means.

reproduced - Document re-rendered from the .raudit archive and output hash compared to the original. Extended details include the reproduction result (matched or mismatch) and any hash delta.

evidence-exported - Full audit JSONL event stream exported as a downloadable evidence bundle. Extended details include the export format and operator identity.

revoked - A REFRACT eSign signing session or REFRACT Delivery delivery session was revoked. Extended details include the session ID and revoking operator.


Workflow Events

Events emitted by REFRACT Workflow and classified by REFRACT Audit in the timeline.

Event TypeDisplay TitleSeverity
workflow-initiatedSubmitted for Reviewgovernance
workflow-approval-requestedSent for Approvalgovernance
workflow-changes-requestedChanges Requestedgovernance
workflow-resubmittedResubmittedgovernance
workflow-approvedWorkflow Approvedgovernance
workflow-rejectedWorkflow Rejectedfailure
workflow-cancelledWorkflow Cancelledgovernance
workflow-sealedDocument Sealedcompliance

workflow-initiated - REFRACT Workflow session created and participant forms distributed. Extended details include the workflow title and initiator identity.

workflow-approval-requested - Completed submission forwarded to the approver queue. Extended details include the approver role.

workflow-changes-requested - Approver returned the submission with correction instructions.

workflow-resubmitted - Participant addressed change requests and resubmitted.

workflow-approved - Approver accepted the submission.

workflow-rejected - Approver rejected the submission. Shown as a failure-severity event in all timeline views.

workflow-cancelled - Workflow cancelled by the initiator or an administrator.

workflow-sealed - Final PDF sealed and stored after workflow completion. This is the compliance milestone for governed documents and is the only workflow event shown in the Compliance and Executive views.


Verify Results

GET the verify-integrity route for a document to get one of these results, or an HTTP 404 if no audit record exists for the correlation ID at all. The route requires the Lifecycle.Reader role and returns 403 with code ROLE_MISSING without it:

ResultMeaning
PASSA record was found, nothing was invalid or unevaluated, and at least one component actually passed a check.
FAILA record was found and at least one component was invalid.
INDETERMINATEA record was found, nothing was invalid, but at least one applicable component could not be evaluated - "no problem found, but not everything was checked either."
NOT_VERIFIABLEA record was found, but every component was not applicable - there was nothing to check. Never reported as PASS, since PASS requires at least one check to have actually run and passed.

Signing Events

Events emitted by REFRACT eSign and classified by REFRACT Audit in the timeline.

Event TypeDisplay TitleSeverity
sent-for-signatureSent for Signatureinformation
document-signedDocument Signedcompliance

sent-for-signature - REFRACT eSign session created. Extended details include signing mode (single, sequential, or parallel) and slot count.

document-signed - A signer completed their signature slot. The chained entry's data includes the slot index, role, completion timestamp, and the OTP verification facts recorded for that signer (verification time and IP address, in plaintext - not hashed).

otp-verified is defined but not emitted

An otp-verified event type and an Identity Verified display title exist in the codebase, but nothing currently appends it to the chain in real time - identity-verification facts are only visible as part of the document-signed entry once the signer actually completes signing. Do not rely on otp-verified appearing as its own timeline entry.

Signing sub-events. Some signer activity is recorded on the eSign chain as Level 2 sub-entries, visible in the Full view: SIGN_OTP_LOCKED (Signer Locked Out of Codes), SIGN_OTP_LOCK_CLEARED (Signing Code Lock Cleared), SIGN_DEVICE_TRANSFER_CREATED (Device Transfer Link Created), SIGN_DEVICE_TRANSFER_REDEEMED (Signing Moved to Another Device), and SIGN_ATTEMPT_REFUSED (Signing Attempt Refused), each security, and SIGN_INVITE_RESENT (Signing Invitation Re-sent, information). A code lock is recorded when it happens; a successful code verification is still not its own event. See OTP Verification and Cross-Device Signing.


Delivery Events

Events emitted by REFRACT Delivery and classified by REFRACT Audit in the timeline.

Event TypeDisplay TitleSeverity
delivery-created (DELIVERY_SESSION_CREATED)Document Deliveredinformation
delivery-accessed (DELIVERY_DOCUMENT_ACCESSED)Document Accessedinformation

delivery-created - REFRACT Delivery session created.

delivery-accessed - The recipient accessed the document. Carries the delivery ID and the session's running view count.

Revoking a delivery session does not write an audit event. There is no separate "download" event - access and download are the same recorded event.


Data Redaction Events

Events emitted by REFRACT PDF's data redaction feature and classified by REFRACT Audit in the timeline.

Redaction does not currently write its own event to the eSign/Workflow HMAC chains. Instead, the redaction policy and its outcome (policyId, mode, applied rules, redacted/masked field paths) are embedded in the .raudit archive's manifest when the archive is built, and the SharePoint REFRACT_Activity list records an Action value of redact for the record.


Event Schema

The eSign and Workflow HMAC chains write each event as one JSON line with the following shape:

{
  "event": "document-signed",
  "data": {
    "slotIndex": 0,
    "role": "vendor",
    "signedAt": "2026-06-12T09:14:22.451Z"
  },
  "timestamp": "2026-06-12T09:14:22.451Z",
  "_chain": {
    "seq": 9,
    "prevHash": "3f2a9c...",
    "hmac": "8b1e07...",
    "chain": "esign",
    "kid": "k1",
    "algorithm": "HS256"
  }
}
FieldTypeDescription
eventstringMachine-readable event identifier.
dataobjectEvent-specific payload.
timestampstringISO 8601 UTC timestamp of the event.
_chain.seqnumberMonotonic sequence number for this document's chain.
_chain.prevHashstringThe previous entry's hmac, linking this entry to the one before it.
_chain.hmacstringThis entry's own HMAC-SHA256 over its contents.
_chain.chainstringDomain-separation tag (esign or workflow), so an eSign entry can't be replayed as a workflow entry or vice versa.
_chain.kidstringIdentifier for the key used to compute the HMAC.
_chain.algorithmstringThe HMAC algorithm identifier.

If the signing key or Table Storage is temporarily unavailable, the event is still written, but with _chain: null - it is logged as a gap rather than blocking the write.

The general, unchained render audit log (PDFGenerated and similar events) uses a simpler shape with no _chain field at all - see Audit Logs configuration for its AuditEvent schema.


Back to REFRACT Audit Overview

Learn about severity classification, timeline views, Verify & Reproduce, and the Certificate of Verification.

On this page