Summary
Establish the contract-layer boundary for the planned SourceOS-Linux/sourceos-shell product repo and add the first schema/API backlog required for the shell, document pipeline, provenance ribbons, search-routing, annotations, and run reports.
This issue exists because sourceos-spec is already the canonical machine-readable contract layer for SourceOS/SociOS implementations. The shell work should not redefine object shapes ad hoc in product code.
Why this belongs here
sourceos-spec already defines the shared contract layer consumed by API services, event consumers, validators, generators, and semantic tooling. The shell/document/search/provenance work needs canonical shapes that all implementations can share.
Scope
1. Add schema backlog
Create draft JSON Schemas (and matching examples) for the following objects:
ArtifactManifest
SignedArtifact
PdfValidationReport
CommentSignal
SearchRouteDecision
AnnotationExport
RunReport
NoetherDiagnostic
PublishDecision
MirrorReceipt
2. Add API/event surface backlog
Add or queue the corresponding OpenAPI/AsyncAPI shapes for:
- artifact sign/validate status
- search routing decision events
- annotation export events
- publish/mirror receipts
- run-report publication events
3. Boundary statement
Document that:
- product/UI/runtime code belongs in a new
SourceOS-Linux/sourceos-shell repo
- Linux realization belongs in
SociOS-Linux/source-os
sourceos-spec remains the shared contract canon
Acceptance criteria
Initial notes
Keep the first cut minimal and implementation-oriented. We only need the stable shape of the objects that will be exchanged by the shell, its services, and the publishing/provenance pipeline.
Proposed owner
@mdheller
Summary
Establish the contract-layer boundary for the planned
SourceOS-Linux/sourceos-shellproduct repo and add the first schema/API backlog required for the shell, document pipeline, provenance ribbons, search-routing, annotations, and run reports.This issue exists because
sourceos-specis already the canonical machine-readable contract layer for SourceOS/SociOS implementations. The shell work should not redefine object shapes ad hoc in product code.Why this belongs here
sourceos-specalready defines the shared contract layer consumed by API services, event consumers, validators, generators, and semantic tooling. The shell/document/search/provenance work needs canonical shapes that all implementations can share.Scope
1. Add schema backlog
Create draft JSON Schemas (and matching examples) for the following objects:
ArtifactManifestSignedArtifactPdfValidationReportCommentSignalSearchRouteDecisionAnnotationExportRunReportNoetherDiagnosticPublishDecisionMirrorReceipt2. Add API/event surface backlog
Add or queue the corresponding OpenAPI/AsyncAPI shapes for:
3. Boundary statement
Document that:
SourceOS-Linux/sourceos-shellrepoSociOS-Linux/source-ossourceos-specremains the shared contract canonAcceptance criteria
schemas/examples/sourceos-shell= product/runtimesourceos-spec= contractssource-os= Linux realizationInitial notes
Keep the first cut minimal and implementation-oriented. We only need the stable shape of the objects that will be exchanged by the shell, its services, and the publishing/provenance pipeline.
Proposed owner
@mdheller