Install

Works with Drupal: ^11.3

Using Composer to manage Drupal site dependencies

Alternative installation files

Download tar.gz 338.54 KB
MD5: c6c45aa5698d60041fedafe118ee5aa8
SHA-1: adac8f94a821f3ae7d0813781791a1b17fa75917
SHA-256: bfcf81078c0daba1a0422c8808fcfc678c7a11ce9598381e555eb0cd2be7c6cf
Download zip 471.14 KB
MD5: d943a373a3c0fb88f859aeb260ae7ac0
SHA-1: 4bdd2a35436ab868a40811ee44b8fec106b59bd8
SHA-256: ad8198cffb55be2223b3f7c466544c2067d1db11af81dd1de3d2ec18b5bc20c5

Release notes

The fifth alpha of Content Credentials. The evidence archive now has retention: set how many days a kept document stays, and how many days a record stays, and cron does the rest. An administrator can also erase one record's document by hand. Both periods are 0, so nothing kept so far goes until you set one. Run drush updatedb after updating. No dependency changes. It is still an alpha: it has never run in production, and this project is not covered by Drupal's security advisory policy.

What changed since 1.0.0-alpha4

  • Retention for the evidence archive (#3634996). Two periods in days, under Evidence archive in the settings, applied by cron whether the archive is on or not, at most 500 records of each per run. Erase documents after empties the document of older records and keeps their rows. Delete records after deletes older records from the oldest end only; the chain is re-anchored at the first record kept, which is stored and logged, and the status report says from which record it checks.
  • Erase one record's document by hand. A user with Administer content credentials who may see a record gets Erase document in its view, behind a confirmation. The row stays, and the log names the user.
  • An erased record says why: its file was deleted, its content was deleted, the retention period passed, or an administrator erased it. Records erased before this update say that their file or their content was deleted.
  • A test fixture rebuilt (#3636349). Its rogue certificate expired after 30 days and turned one test red; test only.

Install or update

composer require drupal/ai_disclosure:^1.0.0-alpha3
composer require drupal/content_credentials:^1.0@alpha

# For the pure-PHP route:
composer require provemark/c2pa-verifier:^0.10

# From an earlier alpha:
composer update drupal/content_credentials
drush updatedb
drush cache:rebuild

Composer is required. AI Disclosure 1.0.0-beta1 or later is recommended.

Requirements

  • Drupal 11.3 or later; PHP 8.3 or later.
  • AI Disclosure 1.0.0-alpha3 or later.
  • provemark/content-credentials 0.20.
  • For the pure-PHP route, provemark/c2pa-verifier 0.10.

Known issues

About the evidence archive:

  • No list page: a record is reached from the content it was read for. Delete records after removes the oldest records first, never one in the middle; an administrator can erase one record's document, not delete its row. Kept trust lists stay after the last record that names them is deleted.
  • The chain shows a change; it does not prevent one. Whoever can rewrite the table can recompute it; the copy outside the database is the head logged at info level, and only if your logs leave the server. The status report checks each record's columns and link, not its document, and cannot tell that the newest records were removed. Erasing a document, and the reason given for it, are outside the chain.
  • Evidence only on the verifier route, only what the file staples (no revocation source is asked), and not above 1 MiB.
  • Access is the content's own, on its current revision; field access is not asked. A record whose content was deleted needs Administer content credentials as well. Kept trust lists download with the evidence permission alone. Content that reuses a deleted entity's ID opens the old content's records.
  • Evidence can be personal data: a certificate can name the person who signed. Erase documents after limits how long it is kept.

Unchanged from alpha4: the remaining known issues, from the kept original of a scaled upload to the routes' differences with c2pa-rs, are listed in the CHANGELOG. Never run in production.

Created by: maurice1969
Created on: 9 Nov 2026 at 08:27 UTC
Last updated: 9 Nov 2026 at 08:28 UTC
New features

Other releases