Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 5 additions & 2 deletions .claude-bot/verify.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,10 @@
version: 1

setup:
- python3 -m pip install --quiet --upgrade jsonschema referencing build
# --break-system-packages keeps this robust under PEP 668 externally-managed
# environments (the Debian/Ubuntu Python the merge gate runs in). In a normal
# or venv-managed environment the flag is a harmless no-op.
- python3 -m pip install --quiet --upgrade --break-system-packages jsonschema referencing build

steps:
- name: schema-conformance
Expand All @@ -15,5 +18,5 @@ steps:
- name: python-wheel-import
run: |
python3 -m build --wheel
python3 -m pip install --quiet --force-reinstall dist/*.whl
python3 -m pip install --quiet --force-reinstall --break-system-packages dist/*.whl
python3 -c "from wasmagent_protocol import get_schema; assert get_schema('aep-record')['title']=='AEPRecord'"
4 changes: 4 additions & 0 deletions schemas/aep/fixtures/seed/invalid/example.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"schema_version": "seed/v0.1",
"seed_id": "seed-abc123"
}
6 changes: 6 additions & 0 deletions schemas/aep/fixtures/seed/valid/example.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"schema_version": "seed/v0.1",
"seed_id": "seed-abc123",
"created_at_ms": 1737600000000,
"label": "example seed evidence"
}
27 changes: 27 additions & 0 deletions schemas/aep/seed.schema.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://wasmagent.dev/schemas/aep/seed.schema.json",
"title": "SeedEvidence",
"description": "Template seed schema establishing the AEP evidence JSON Schema baseline. Demonstrates the pinned-draft, $id, title, type, required, properties, and additionalProperties:false convention for all AEP evidence schemas. Future Milestone 4 evidence schemas (e.g. checkpoint-evidence) mirror this structure.",
"type": "object",
"required": ["schema_version", "seed_id", "created_at_ms"],
"properties": {
"schema_version": {
"type": "string",
"description": "Schema version identifier, e.g. seed/v0.1"
},
"seed_id": {
"type": "string",
"description": "Unique identifier for this evidence record"
},
"created_at_ms": {
"type": "number",
"description": "UTC epoch milliseconds when the record was created"
},
"label": {
"type": "string",
"description": "Optional human-readable label for categorization"
}
},
"additionalProperties": false
}
16 changes: 16 additions & 0 deletions schemas/index.json
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,22 @@
],
"summary": "Shared envelope base for all AEP evidence records \u2014 schema_version, trace_id, created_at_ms, and optional signature."
},
{
"id": "seed",
"title": "SeedEvidence",
"path": "schemas/aep/seed.schema.json",
"canonical_id": "https://wasmagent.dev/schemas/aep/seed.schema.json",
"version": "seed/v0.1",
"stability": "evolving",
"owners": [
"wasmagent-protocol"
],
"consumers": [
"wasmagent-js",
"trace-pipeline"
],
"summary": "Template seed schema establishing the AEP evidence JSON Schema baseline — pinned draft, $id convention, required, properties, additionalProperties:false."
},
{
"id": "constraint-ir",
"title": "ConstraintIR",
Expand Down
4 changes: 4 additions & 0 deletions tests/fixtures/invalid/seed/example.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"schema_version": "seed/v0.1",
"seed_id": "seed-abc123"
}
6 changes: 6 additions & 0 deletions tests/fixtures/invalid/seed/extra-property.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"schema_version": "seed/v0.1",
"seed_id": "seed-abc123",
"created_at_ms": 1737600000000,
"extra_unexpected_field": "this should be rejected"
}
6 changes: 6 additions & 0 deletions tests/fixtures/valid/seed/example.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"schema_version": "seed/v0.1",
"seed_id": "seed-abc123",
"created_at_ms": 1737600000000,
"label": "example seed evidence"
}
Loading