An artifact version counts as seen only when the whole file came back unchanged.
What's wrong with this entry?
When an Artifact's HTML is handed to Claude to read, Claude Code now tracks which lines came back along with the file's size, modification time and hash, and marks the version as observed only if the entire file was returned and the bytes still match.
- Mismatches are recorded as
file_changed,file_unreadable,supersededorseed_not_persisted. - Cases that cannot be checked either way fall back to a held, unverifiable state rather than counting as read.
artifact_handover_read
Strings lifted out of the shipped bundle, so the claim above can be checked against them.