Document Provenance

Trust indicators, change tracking, and metadata display for the AI authorship era.

data-provenance Attribute

CSS-only authorship indicators on any block element. Core tokens plus composable extensions.

AI-Assisted Content

This section was written with AI assistance. Notice the subtle border accent and the badge label.

AI-Generated Content

This section was primarily generated by AI. It has a visible background tint and border accent.

AI-Generated, Editor Reviewed

Multiple attributes: AI-generated authorship plus editor review. The review attribute is orthogonal to provenance.

Draft Content

Work in progress. Dashed border and muted opacity signal provisional status. data-status is orthogonal to data-provenance.

Human Content

Written entirely by a human. No visual indicator — this is the default assumption.

Enhanced Change Tracking

Inline Annotated Changes

The migration requires Node.js 16 Node.js 20 LTS or later. Hover over edits to see the author.

Block-Level Changes

The old API endpoint accepts XML payloads. Send requests to /api/v1/upload.

The new API accepts JSON payloads. Send requests to /api/v2/ingest.

<change-set> Component

Groups related edits with interactive view controls. Toggle between tracking, final, and original views.

Send requests to /api/v1/upload /api/v2/ingest with a Content-Type: application/xml Content-Type: application/json header. The response format is plain text structured JSON.

Static View (No JS)

Set data-view directly for server-rendered pages:

This shows only the old textfinal text with no toggle controls.

<page-info> Component

Full provenance disclosure panel with trust bar, author info, and content provenance details.

Static Markup

AI-Assisted

Auto Mode (auto)

Renders entirely from the <meta> tags in this page's <head>:

Full Example

All provenance features working together on a single document section.

Migration Guide

When to Migrate

Based on our direct experience with the 2.0 upgrade, we recommend migrating during a maintenance window of at least 4 hours.

API Endpoint Changes

Send requests to /api/v1/upload /api/v2/ingest with a Content-Type: application/xml Content-Type: application/json header.