Appearance
Skill dev kit
Coming Not available yet. What follows is the plan and may change beforerelease.
The dev kit brings the skill harness to your command line and your CI. som-skill test starts a harness run in your vendor workspace, lets your executor read the harness's messages and publish its warnings, and checks every skill.warning.raised it publishes.
It runs against the hosted bus, so the gateway, SOM 1.0 validation and snapshot-sequence rules are the ones your executor meets on the hosted bus, and there's nothing to install but the command. It will be part of sombus-dev-kit, next to the SDKs.
A run
som-skill test acme/orphan-clip-review suite som-1.0.0+lib-0.2.2
PASS orphan-clip 1 warning
PASS orphan-clip-1.1.0 1 warning
PASS unknown-extension 1 warning
PASS hurricane-run 0 warnings
PASS killed-story 0 warnings
PASS telling 0 warnings
PENDING ingest-event 1 warning
pending spec: asset.ingested has no SOM 1.0 schema
6 passed, 0 failed, 1 pending specEach case names a fixture and the warnings it must raise (none, for a no-trigger case). The exit code is 1 if any case fails, so the same command works in CI, and the report is also available as JSON. The run is recorded in your workspace like one started from the portal, and counts toward the same limits.
What it checks
The same checks as the skill harness, including:
| Check | Fails when |
|---|---|
warning.missing, warning.unexpected | The warnings raised aren't exactly the ones expected |
warning.causation_id | causation_id isn't the trigger's message_id |
warning.correlation_id | correlation_id isn't the trigger's |
warning.story_id | payload.story_id isn't the trigger story's |
warning.fields | A field differs from what the configured instance raises |
A warning the gateway refuses never reaches the bus, so it shows as missing; its rule id is in Activity.
Fixtures marked pending spec run and are reported, but can't fail a run: they depend on a message SOM 1.0 doesn't define yet (see Topics without a 1.0 schema).
Fixtures
Versioned by suite. Payloads are the published SOM 1.0 examples, with any variation written as a patch on top, so every change from the published example is visible.
| Fixture | What it is |
|---|---|
hurricane-run | Seven snapshots of one active story |
killed-story | The last hurricane snapshot, then the story killed |
orphan-clip | A user-generated clip in an ORPHAN shell, with a proposed match |
telling | A snapshot, then telling.started |
unknown-extension | The orphan clip with an envelope extension nobody knows |
orphan-clip-1.1.0 | The orphan clip from a 1.1.0 producer, with a payload field 1.0 lacks |
ingest-event | The orphan clip, then asset.ingested (pending spec) |
Results read "passes som-bus suite som-1.0.0+lib-0.2.2", never "certified" or "compliant".
Until the kit is available: the skill harness in Test runs, and Test a skill by hand.