Skip to content
Preview (Alpha), release 0.1. No independent cryptographic review of the protocol or its reference verifiers has been done.

Command line

The command-line interface of loquitur-verify, the Python verifier. The text below is the output of loquitur-verify --help, captured from a wheel built from loquitur-verify-py at commit 5214461f44b4 on Python 3.11.9, with COLUMNS=100. Version: loquitur-verify 0.1.0.

loquitur-verify --help

usage: loquitur-verify [-h] [--json | --pretty] [--registry-entry PATH] [--trust-registry PATH]
[--trust-root PATH] [--evaluation-time INSTANT] [--accept-review REASONS]
[--asset-type-vocabulary PATH] [--workflow-vocabulary PATH]
[--anchoring-method-vocabulary PATH] [--narrative AUDIENCES] [--version]
[bundle]
Verify a Loquitur evidence bundle offline.
positional arguments:
bundle Path to a Loquitur bundle directory or ZIP archive.
options:
-h, --help show this help message and exit
--json Write a machine-readable JSON verification report to stdout.
--pretty Write a compact human-readable verification summary to stdout. This is the
default.
--registry-entry PATH
Path to a local public registry_entry JSON file: requests the link check,
which compares the entry with the bundle's receipt and manifest. A
deterministic local check; it does not verify issuer signatures, inclusion
proofs, anchors or finality.
--trust-registry PATH
Path to a local trust_registry JSON file: requests the authorization
check, the issuer signature of the --registry-entry and the authorization
of its issuer key. Requires --registry-entry. Local only; it does not
verify inclusion proofs, anchors, finality, legal identity, compliance or
valuation correctness.
--trust-root PATH Path to a trust-root JSON document, obtained out of band, carrying the
public keys entitled to sign a trust registry. Without it nothing vouches
for the trust registry, and authorization is not established. The document
must be a separate file; reading roots from the registry they authenticate
would be circular.
--evaluation-time INSTANT
Your evaluation time, a UTC instant of the form YYYY-MM-DDTHH:MM:SSZ: the
time the trust registry, the issuer key and the trust root are judged at.
The issuer's own dates are never used as a time; without it authorization
is not established (review reason evaluation_time_not_provided).
--accept-review REASONS
Comma-separated review reasons to accept: exit 0 instead of 2 when every
review reason of the run is in the list. The report is unchanged, and
exits 1, 3, 4, 5 and 64 are never changed.
--asset-type-vocabulary PATH
Path to a registered vocabulary document of the kind asset_type, to judge
the run's asset type values against in place of the version built into
this verifier. A value it does not register is the review reason
vocabulary_value_unknown. A document that is malformed or registers
another kind is refused with exit 64.
--workflow-vocabulary PATH
Path to a registered vocabulary document of the kind workflow, to judge
the run's workflow values against in place of the version built into this
verifier. A value it does not register is the review reason
vocabulary_value_unknown. A document that is malformed or registers
another kind is refused with exit 64.
--anchoring-method-vocabulary PATH
Path to a registered vocabulary document of the kind anchoring_method, to
judge the run's anchoring method values against in place of the version
built into this verifier. A value it does not register is the review
reason vocabulary_value_unknown. A document that is malformed or registers
another kind is refused with exit 64.
--narrative AUDIENCES
Include verdict narrative output for one or more audiences (comma-
separated). Valid values: technical, compliance, executive. Example:
--narrative=technical,compliance. Requires loquitur-schemas to be
installed; without it the narrative section is included but fields are
null.
--version show program's version number and exit

The text that --narrative adds for the audiences executive and compliance is a rendering of the report in fixed sentences for readers who are not engineers. It is not part of the verdict, it is not a legal or compliance statement, it does not say when an entry was signed, and it is not advice to rely on a record. Read the report, not the narrative.

Grammar, outcomes and exit codes

The grammar of the command line is section 4.1 of the report contract. The status, verdict and exit code of a run are the outcome table, and every process exit is in section 4: for example exit 2 or exit 64.

The TypeScript verifier has no command line: it is a library. See the API page.

Project site: loquitur.dev

Source: loquitur-verify-py/src/loquitur/verify/cli.py at 5214461f44b4. Licence of this page's text: MIT OR Apache-2.0.