Context
The openagp/registry README documents that each actor entry validates against schemas/actor.json (coming). The schema doesn't exist yet, which means:
Goal
Publish schemas/actor.json (JSON Schema Draft 2020-12) that defines the shape of a registry actor entry.
Scope
The schema should constrain:
actor.fqdn — the actor's fully-qualified domain (must match the filename per registry convention).
actor.kind — enum: vendor | plane | customer.
actor.conformance_level — enum: L1 | L2 | L3.
actor.public_keys[] — array of Ed25519 keys, each with key_id, purpose, and the public key bytes per ADR 0001.
actor.endpoints — URLs the actor exposes (varies by kind).
actor.conformance_report — reference to the signed CTS conformance report (location + signature).
- Top-level signature over the canonicalized entry (so the registry index can be mirrored and verified independently).
Also add 1–2 example fixtures under fixtures/actors/ and wire validation through the existing validate-fixtures workflow.
Out of scope
- Federation between registries (deferred to v0.2+ per spec §3.7).
- Trust-store distribution mechanism (separate question).
Pointers
Unblocks
Context
The
openagp/registryREADME documents that each actor entry validates againstschemas/actor.json(coming). The schema doesn't exist yet, which means:openagp/registry/.github/workflows/validate-entries.ymlhas a clearly-marked skip guard that auto-activates once this schema lands.Goal
Publish
schemas/actor.json(JSON Schema Draft 2020-12) that defines the shape of a registry actor entry.Scope
The schema should constrain:
actor.fqdn— the actor's fully-qualified domain (must match the filename per registry convention).actor.kind— enum:vendor|plane|customer.actor.conformance_level— enum:L1|L2|L3.actor.public_keys[]— array of Ed25519 keys, each withkey_id,purpose, and the public key bytes per ADR 0001.actor.endpoints— URLs the actor exposes (varies bykind).actor.conformance_report— reference to the signed CTS conformance report (location + signature).Also add 1–2 example fixtures under
fixtures/actors/and wire validation through the existingvalidate-fixturesworkflow.Out of scope
Pointers
Unblocks