npm start -- --dry-run reports every problem in a batch at once, so most of these are found before anything is proved.
Prover error codes
Every failure insidetrusset-prover maps to one stable code. Codes reach you in the subject_failed and leaf_failed events, in failures.csv, in audit.log, and in the CLI’s progress lines.
In a real run the prover stops at the first failing leaf of a subject and reports it; the other subjects continue. In a dry run every failing leaf of every subject is reported.
Refusals before the prover runs
The TypeScript layer stops with exit code 1 and a message ending inFix: when something is wrong before there is a batch to prove. The code column shows what the message is keyed on.
Rows quarantined by validation carry
E_INPUT in failures.csv. The causes:
- a malformed wallet,
- an unrecognised
investorType, - an expiry out of range or in the wrong order,
- a malformed
evidenceDate, - an object where a scalar was expected,
- a missing hashed field.
Registry, archive and verifier errors
The native binaries printtrusset-<name>: <message> on stderr and exit 1 for a refused operation or 64 for a usage error. The messages say what was refused and why. The refusals are:
- a list version with unchanged values,
- a lapse without
--effective-date, or a voidance with one, - a different root at an already anchored block,
- a leaf name the bundle does not contain,
- an archive whose bundles name different issuers,
- a batch that depends on a list with no registry.
archive integrity check failed, and 2 when a check fails, with the failing leaf’s reason in the report. Verification lists its codes.
Exit codes by command
Troubleshooting
In the repository
- prover/src/errors.rs, the code list and its stability test
- README.md, the troubleshooting section
