Transparency Exchange API

Conformance report

Independent conformance and performance results for the Vulnetix TEA server, generated by the OWASP TEA conformance suite.

VerdictCONFORMANT
Providervulnetix
Discovery domainvulnetix.com
API roothttps://www.vulnetix.com/tea/v0.4.0
TEA version served0.4.0
Credentialheader credential, as recorded
Areasdiscovery, consumer, purl, cyclonedx, spdx, insights, cel, provenance, performance, provider
Modereplay
Request concurrency32
Generated2026-08-07T12:21:37Z

Result

MetricValue
Cases290
Passed289
Failed0
Advisory (reported, not counted against conformance)1
Responses schema-validated156
Responses conforming to schema156

By area

AreaCasesPassedFailedAdvisory
discovery2200
consumer15815701
purl7700
cyclonedx262600
spdx121200
insights212100
cel161600
provenance3300
performance101000
provider353500

Coverage

A conformance claim is only as good as its coverage, so an operation that was never exercised is named, not quietly left out of the totals.

SpecificationVersionDeclaredExercised
TEA consumption API0.4.02323
TEA publication API0.4.05252
TEA Insights API1.0.022

Specifications this run validated against

Fetched from their authoritative repository at the start of this run and stored alongside it in spec/. Nothing is vendored into the suite: a claim about a specification should be checkable against the specification as published.

DocumentSourceRefCommitSHA-256
consumerCycloneDX/transparency-exchange-api/spec/openapi.yamlmain8ea7c3eecde9a1fc035210ca489a
publisherCycloneDX/transparency-exchange-api/spec/publisher/openapi.yamlrefs/pull/147/head82ecd236409b77d95e92bc4621f3
wellKnownCycloneDX/transparency-exchange-api/discovery/tea-well-known.schema.jsonmain8ea7c3eecde9bccc6eb0710ce54a
insights0x73746F66/transparency-exchange-api/insights/openapi.jsoninsightsf5eedc1cd93f252f7a43bc53c104
spdxspdx/license-list-data/json/licenses.jsonmain5bf6d9610255b981f1fb011491ac
  • publisher: version 0.4.0 publisher specification proposed in CycloneDX/transparency-exchange-api PR 147
  • insights: not yet upstream; proposed in CycloneDX/transparency-exchange-api and fetched here from the proposing fork

Areas

  • discovery: DNS, the .well-known/tea document, endpoint selection and TEI resolution
  • consumer: every operation of the consumption specification, including its error paths
  • purl: package-URL identifiers, filters and purl-typed TEIs
  • cyclonedx: the published BOM documents, validated against the version each declares
  • spdx: the licence identifiers those documents carry
  • insights: the Insights API and the CycloneDX documents it answers with
  • cel: the query language, cross-checked against the reference CEL implementation
  • provenance: build provenance, attestations, signatures and checksum coverage
  • performance: cold and cached latency, reported separately
  • provider: the publication specification, as a create-read-update-delete round-trip

Method

The suite is a black-box HTTP client. It knows nothing about any implementation, and every judgement here comes from comparing a response against the specifications named above, fetched from their authoritative repository at the start of this run.

OpenAPI 3.1 schema objects are JSON Schema 2020-12, so the specification’s own bytes are what was enforced. There is no intermediate model that could drift from it.

Some of what the specification requires cannot be written as a schema. Collection and release UUID identity, lifecycle event ordering, pagination-token consistency and additionalProperties:false on error bodies were each checked separately against the normative prose, and are reported as case failures in the same way as schema violations.

Every request and response is stored under responses/, named deterministically, so this report can be regenerated offline from that directory and checked against the bytes it was derived from.