Assay · System documentation
How a decision report works
- What a decision report is
- The journey of a report
- Where the evidence comes from
- The evidence contract
What a buyer sets up
What a decision report is
A decision report answers one question about one thing: measured against the standard we require, does this pass? It is built from signed evidence, and it says exactly which evidence it used.
What goes in
- A target. What is being assessed — a repository, or a product defined as the set of repositories a contract covers.
- Signed evidence. A measurement produced elsewhere and cryptographically signed. Assay fetches it; it does not create it.
- A bar. The standard the buyer requires, at a specific published version. How a bar decides covers this.
What comes out
A verdict against the bar, the scores the evidence carried, and the reasoning that connects them — rendered both as structured data and as a document a person can read. Every report names the exact evidence it was built from, so the claim can be traced back to a specific measurement of a specific commit.
What a report is not allowed to do
Two rules constrain it, and both are absolute.
Scores are never recomputed. The numbers in a report are echoed verbatim from the signed evidence. Nothing in Assay calculates, adjusts, or overrides a score. Verification re-derives the verdict in order to check it — never to change it.
Unverifiable evidence is refused. A report is only built when the signature is authentic and the verdict reproduces. Evidence that fails either test does not produce a cautious report or a lower score — it produces no report, and the request is recorded as failed.
The reason for both is the same: a buyer's report has to be worth something to a third party. A number we adjusted, or evidence we accepted on trust, would make the report an opinion about a supplier rather than a verifiable statement.
Assessing a product rather than a repository
Buyers rarely buy one repository. A product is the set of repositories a contract attests to, and a product-level report is built by producing one report per member and rolling those up. The roll-up shows which members cleared, which were rejected, and which had no usable evidence — the three are reported separately, because "we could not get evidence" and "it failed" are different facts for a buyer.
Once built, a report does not change
The rendered artifact is frozen at the moment it is built and stored as delivered. Later changes to a bar, to the supplier's code, or to the system itself do not alter an existing report. A report read today is byte-for-byte the report that was served when it was issued.