
Assess Procreate Canvas: structure + creative evidence
Source:R/canvas-assess-procreate.R
assess_procreate_canvas.RdUse this before committing to a full pipeline run to catch empty canvases, corrupted files, or minimal-effort submissions. The function uses multiple signals with lenient thresholds (preferring false positives over false negatives) to avoid rejecting legitimate artwork.
Detection signals: - Non-empty timelapse MP4 segments (strong evidence) - Sufficient count of raster tile/chunk files (moderate evidence) - Dispersion of file modification times across multiple seconds (weak evidence)
Arguments
- path
Character. Path to .procreate file (ZIP archive) or an already- extracted directory. The function auto-detects which type based on whether the path is a file or directory.
- min_tiles
Integer. Tile count threshold for "creative" classification. Canvases with >= this many tile files are considered to have content. Default 25. Lower for more lenient validation.
- min_edit_seconds
Integer. Timestamp dispersion threshold. If distinct file modification seconds >= this value, treat as "likely edited" even without timelapse or tiles. Default 10.
- verbose
Logical. If TRUE (default), prints a one-line summary of the assessment to the console for logging purposes.
Value
List with assessment results:
- is_procreate
Logical. TRUE if basic Procreate structure detected
- importable_probable
Logical. TRUE if likely openable in Procreate
- creative_evidence
Character. One of: "definite", "probable", "weak", "none"
- classification
Character. Final verdict: "DEFINITELY_CREATIVE", "PROBABLY_CREATIVE", "INDETERMINATE", or "NOT_CREATIVE"
- n_mp4_nonempty
Integer. Count of non-empty timelapse segments
- n_tile_files
Integer. Count of raster tile/chunk files
- n_distinct_edit_seconds
Integer. Count of unique modification timestamps
- reasons
Character vector. Diagnostic messages for any flags
- df
data.frame. Full file listing with name, size, mtime_local, kind
Details
Validates that a path is a Procreate canvas (zipped .procreate or directory) and estimates whether it contains evidence of human creative work.
See also
Other canvas validation functions:
valid-canvas,
verify_creation_period()