**Goal**: Register data source files with SHA256 hashing to establish baseline integrity and enable change detection.
Register data source files with SHA256 hashing to establish baseline integrity and enable change detection. Use before starting data analysis to track raw inputs and after completion to create reproducibility dependencies.
/plugin marketplace add syfyufei/adrian-marketplace/plugin install truth-verification@LLM-Research-MarketplaceGoal: Register data source files with SHA256 hashing to establish baseline integrity and enable change detection.
When to use: Before starting data analysis, register all raw data files. Register outputs after completion to create dependencies for reproducibility tracking.
Before running this command:
.truth/manifest.json exists (run /truth-verification:init if needed)/truth-verification:register --file data/raw/dataset.csv
/truth-verification:register --recursive --dir data/raw
/truth-verification:register --recursive --dir data/ --include "*.csv" --exclude "*-temp*"
/truth-verification:register --file data/raw/dataset.csv --source "downloaded from https://example.com/data" --description "Q4 2025 sales records"
/truth-verification:register --recursive --dir data/ --dry-run
Shows which files would be registered without modifying manifest.
File Discovery:
--follow-symlinks)--include-binary)Hash Calculation:
.truth/hashes/{filename}.sha256Metadata Collection:
Manifest Update:
.truth/manifest.json under data_sources{
"path": "data/raw/dataset.csv",
"hash": "a7b3f...",
"size_bytes": 1048576,
"registered_at": "2025-12-15T10:30:00Z",
"source": "original source info",
"tags": ["raw", "external"]
}
Logging:
.truth/logs/register.log| Error | Cause | Solution |
|---|---|---|
| "File not found: ..." | Path doesn't exist | Verify file path with ls -la |
| "Permission denied" | Can't read file | Check read permissions: chmod u+r filename |
| "Invalid manifest" | .truth/manifest.json corrupted | Restore with /truth-verification:init --force |
| "File already registered" | File exists in manifest | Use --update to re-hash and update entry |
| "Hash mismatch during re-registration" | File was modified since last registration | Use --force to overwrite hash, or investigate the modification |
After successful execution:
✓ Registered 15 files.truth/manifest.json under data_sources.truth/hashes/ directory.truth/logs/register.log shows timestamp and file list/truth-verification:register --file data/raw/dataset.csv --backup-original
Creates .truth/backups/dataset.csv.original for future recovery if needed.
/truth-verification:register --file data/raw/download.zip --source "AWS S3: s3://bucket/archive.zip" --source-hash "s3:md5:abcd1234..."
Enables verification that original source hasn't changed (if source supports hash queries).
/truth-verification:register --file data/cleaned/results.csv --tag "output" --parent-script codes/analysis.py
Links result file to generating script for dependency tracking.
After registration:
/truth-verification:track --script codes/analysis.py --inputs data/raw/dataset.csv --outputs data/cleaned/results.csv/truth-verification:verify --file data/raw/dataset.csv to check if data changed/truth-verification:init - Initialize manifest before registering/truth-verification:verify - Check if registered files have been modified/truth-verification:track - Record how registered files are used in scripts/truth-verification:reproduce - Validate complete dependency chains