Skip to content

Commit d929591

Browse files
committed
Document control-plane ReleaseSet and Fingerprint examples
1 parent 44383e8 commit d929591

1 file changed

Lines changed: 19 additions & 14 deletions

File tree

examples/README.md

Lines changed: 19 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ This directory contains one conforming JSON example payload for each top-level s
66

77
## What the examples show
88

9-
The examples are designed to tell coherent end-to-end stories. The original example set catalogs, governs, transforms, and releases a personal health dataset within an agent session. Newer SourceOS examples show a SourceOS Workstation artifact flowing from content intent through overlays, build request, release manifest, evidence bundle, catalog entry, and access profile.
9+
The examples are designed to tell coherent end-to-end stories. The original example set catalogs, governs, transforms, and releases a personal health dataset within an agent session. Newer SourceOS examples show a SourceOS Workstation artifact flowing from content intent through overlays, build request, release manifest, evidence bundle, catalog entry, and access profile. The control-plane examples add the local-first lifecycle proof path: a `ReleaseSet` assigned to an M2 demo device and a `Fingerprint` reporting the realized post-apply state.
1010

1111
```text
1212
connector.json ──► asset.json
@@ -48,6 +48,8 @@ content_spec.json ──► overlay_bundle.json ──► build_request.json ─
4848
4949
5050
access_profile.json
51+
52+
release_set.json ──► fingerprint.json
5153
```
5254

5355
---
@@ -63,6 +65,17 @@ These examples illustrate the Truth Plane contract additions:
6365

6466
---
6567

68+
## Recent additions — Control-plane lifecycle examples
69+
70+
These examples illustrate the local-first control-plane lifecycle family:
71+
72+
| File | Schema type | Description |
73+
|------|------------|-------------|
74+
| `release_set.json` | ReleaseSet | Assigned M2 demo release set with source Git ref, target, profile refs, and boot artifact refs |
75+
| `fingerprint.json` | Fingerprint | Post-apply device observation proving the realized state matches the assigned release set |
76+
77+
---
78+
6679
## Recent additions — Fog Layer examples
6780

6881
The fog example set illustrates the new FogVault / FogCompute contract family:
@@ -122,6 +135,7 @@ These examples illustrate the shared object family used by SourceOS artifact bui
122135
| `event_envelope.json` | EventEnvelope | Event published when the run completes |
123136
| `experiment_flag.json` | ExperimentFlag | A feature flag for the new obfuscation algorithm |
124137
| `field.json` | Field | The `patient.dateOfBirth` field with PII tags and quality metrics |
138+
| `fingerprint.json` | Fingerprint | Post-apply device observation for a local-first release assignment |
125139
| `frustration_signal.json` | FrustrationSignal | A frustration signal from a repeated-failure condition |
126140
| `glossary.json` | GlossaryTerm | Glossary term for "Date of Birth" |
127141
| `mapping.json` | MappingSpec | A field mapping between two dataset fields |
@@ -134,6 +148,7 @@ These examples illustrate the shared object family used by SourceOS artifact bui
134148
| `rating.json` | Rating | A 5-star rating on the health observations dataset |
135149
| `release_manifest.json` | ReleaseManifest | Draft release manifest with Katello artifact refs and agentplane evidence refs |
136150
| `release_receipt.json` | ReleaseReceipt | Release receipt for spec version 2.0.0 |
151+
| `release_set.json` | ReleaseSet | Assigned M2 demo release set with source, targets, profile refs, and artifact refs |
137152
| `replication_policy.json` | ReplicationPolicy | Fog topic replication/retention policy example |
138153
| `rollout_policy.json` | RolloutPolicy | Rollout rules for the obfuscation experiment flag |
139154
| `run.json` | RunRecord | The obfuscation workload run record |
@@ -148,7 +163,7 @@ These examples illustrate the shared object family used by SourceOS artifact bui
148163
| `truth_surface.json` | TruthSurface | Truth Plane truth surface example |
149164
| `workflow_spec.json` | WorkflowSpec | The health-data obfuscation workflow |
150165
| `workorder.json` | WorkOrder | FogCompute work order |
151-
| `usage_receipt.json` | UsageReceipt | FogCompute execution receipt |
166+
| `usage_receipt.json` | FogCompute execution receipt |
152167

153168
---
154169

@@ -161,18 +176,8 @@ npm install -g ajv-cli
161176
# Validate a single example
162177
ajv validate -s ../schemas/Dataset.json -d dataset.json
163178

164-
# Validate all examples
165-
cd ..
166-
for example in examples/*.json; do
167-
name=$(basename "$example" .json)
168-
python3 - <<EOF
169-
import json
170-
ex = json.load(open("$example"))
171-
t = ex.get("type") or ex.get("title")
172-
if t:
173-
print(f"schemas/{t}.json")
174-
EOF
175-
done
179+
# Validate control-plane lifecycle examples
180+
make validate-control-plane-examples
176181
```
177182

178183
---

0 commit comments

Comments
 (0)