StellaOps Attestor

Verified against commit 942a18727c (2026-09-26, DOC-2 of SPRINT_20260926_001). Re-verify by reading the evidence paths listed in the Evidence section.

Service wiring (image, database and role, compose profile, bundle presence) is generated in the service inventory; this dossier does not restate it.

Status: the attestor deployable is RETIRED (2026-09-05). This directory is a pointer stub plus the format, predicate and algorithm reference that moved unchanged into the Evidence family.

Successor dossier: ../evidence/architecture.md.

What runs today

CapabilityRuns inSource
Attestation submission, transparency receipts, verification, verdicts, identity watchlistevidence-web (routes under /api/evidence/v1) and evidence-workersrc/Evidence/StellaOps.Evidence.WebService/, src/Evidence/StellaOps.Evidence.Worker/, src/Evidence/__Libraries/StellaOps.Attestor.*
Transparency-log tile cacheattestor-tileproxysrc/Attestor/StellaOps.Attestor.TileProxy/
RFC 3161 timestampingtsa (OpenSSL container, no .NET host)devops/docker/tsa
DSSE signing and key custodysigner (separate service, see ../signer/README.md)src/Attestor/StellaOps.Signer/StellaOps.Signer.WebService/

Where things went

You were looking forRead instead
deployables, database, HTTP surface, authorization../evidence/architecture.md
the consolidation design and the direct-HTTP-caller census./consolidation-design.md— kept at this path because EvidenceDirectHttpCallerConformanceTests parses it here
the transparency-tile proxy./tile-proxy-design.md
RFC 3161 timestamping../evidence/architecture.md
key custody and signing../signer/README.md
regional crypto providers and signing profiles../cryptography/README.md

Reference material kept in this directory

These documents describe formats and algorithms that moved unchanged into src/Evidence/__Libraries/StellaOps.Attestor.* (or stayed in src/Attestor/ libraries). Statements in them about hosts, containers, ports or compose keys are historical.

Supported library surface (consumer review, 2026-10-08)

The PCD-466 consumer review removed members that had no source, test or host consumer (pre-release removal, no deprecation shims):

The Types generator (StellaOps.Attestor.Types.Generator) has a test consumer: GeneratorConsumerTests builds it through a build-only ProjectReference, runs it into scratch under tmp/scratch/, and requires the emitted schemas and Go/TypeScript files to equal the committed assets. This proves the generator and its generated TypeScript corpus have a source/test consumer; it is not an npm-package, production SDK or deployed-service claim. Re-verify with tools/scripts/test-targeted-xunit.ps1 on the Types, Attestation, FixChain and GraphRoot test projects and python3 tools/scripts/validate/check-consumer-census.py.

Formats that did not change

Evidence

ClaimSource
Host retired and frozen; application layer movedsrc/__Obsoleted/Attestor/StellaOps.Attestor/StellaOps.Attestor.WebService/AGENTS.md
evidence-web composes the Attestor layer at /api/evidence/v1, Router name evidencesrc/Evidence/StellaOps.Evidence.WebService/Program.cs
Minimal-API and predicate-registry routessrc/Evidence/__Libraries/StellaOps.Attestor.Application/AttestorWebServiceEndpoints.cs, src/Evidence/__Libraries/StellaOps.Attestor.Application/Endpoints/PredicateRegistryEndpoints.cs
CLI uses the consolidated prefixsrc/Cli/StellaOps.Cli/Services/AttestorLinkClient.cs
Live containers attestor-tileproxy, tsa, signer, evidence-web, evidence-worker; no attestor keydevops/compose/docker-compose.stella-services.yml, devops/release/bundle/docker-compose.yml
Attestation tables in the Evidence databasesrc/Evidence/__Libraries/StellaOps.Evidence.Persistence/Migrations/001_evidence_consolidated_baseline.sql
Payload schema generator and fixturessrc/Attestor/StellaOps.Attestor.Types/
Scope claimssrc/Authority/StellaOps.Authority/StellaOps.Auth.Abstractions/StellaOpsScopes.cs (AttestRead, AttestCreate)