Sensorium-device-discovery.request.v1¶
Source schema: doc/schemas/sensorium-device-discovery.request.v1.schema.json
Private bounded discovery intent. The host derives authority and resolves scope; caller parameters never grant permission. Finite limits are hard ceilings, narrowed by admitted profiles and policy. Exact deadlines require host cleanup margin. No acquisition, probing, automatic observation or retention of identifiers.
Governing Basis¶
doc/project/40-proposals/045-sensorium-local-enaction-stratum.mddoc/project/40-proposals/055-bounded-deferred-operation-contract.md
Project Lineage¶
Requirements¶
Stories¶
doc/project/30-stories/story-005-whisper-rumor-intake.mddoc/project/30-stories/story-006-voluntary-swarm-exchange.mddoc/project/30-stories/story-009-bielik-blog-arca.md
Fields¶
| Field | Required | Shape | Description |
|---|---|---|---|
schema |
yes |
const: sensorium-device-discovery.request.v1 |
|
schema/v |
yes |
const: 1 |
|
profile/ref |
yes |
object | |
discovery/mode |
yes |
enum: passive, active |
|
transport/kind |
yes |
enum: ble, usb-serial, mdns |
|
transport/scope |
yes |
object | |
filters |
yes |
object | |
idempotency/key |
yes |
string | |
budgets |
yes |
object |
Definitions¶
| Definition | Shape | Description |
|---|---|---|
profile |
object | |
scope |
object |
Conditional Rules¶
Rule 1¶
When:
{
"properties": {
"transport/kind": {
"const": "ble"
}
},
"required": [
"transport/kind"
]
}
Then:
{
"properties": {
"filters": {
"not": {
"anyOf": [
{
"required": [
"usb/vendor-id"
]
},
{
"required": [
"usb/product-id"
]
},
{
"required": [
"mdns/service-type"
]
}
]
}
}
}
}
Rule 2¶
When:
{
"properties": {
"transport/kind": {
"const": "usb-serial"
}
},
"required": [
"transport/kind"
]
}
Then:
{
"properties": {
"filters": {
"not": {
"anyOf": [
{
"required": [
"advertised-name/prefix"
]
},
{
"required": [
"advertised-name/exact"
]
},
{
"required": [
"service/uuid"
]
},
{
"required": [
"mdns/service-type"
]
}
]
}
}
}
}
Rule 3¶
When:
{
"properties": {
"transport/kind": {
"const": "mdns"
}
},
"required": [
"transport/kind"
]
}
Then:
{
"properties": {
"filters": {
"not": {
"anyOf": [
{
"required": [
"advertised-name/prefix"
]
},
{
"required": [
"advertised-name/exact"
]
},
{
"required": [
"service/uuid"
]
},
{
"required": [
"usb/vendor-id"
]
},
{
"required": [
"usb/product-id"
]
}
]
}
}
}
}
Field Semantics¶
schema¶
- Required:
yes - Shape: const:
sensorium-device-discovery.request.v1
schema/v¶
- Required:
yes - Shape: const:
1
profile/ref¶
- Required:
yes - Shape: object
discovery/mode¶
- Required:
yes - Shape: enum:
passive,active
transport/kind¶
- Required:
yes - Shape: enum:
ble,usb-serial,mdns
transport/scope¶
- Required:
yes - Shape: object
filters¶
- Required:
yes - Shape: object
idempotency/key¶
- Required:
yes - Shape: string
budgets¶
- Required:
yes - Shape: object
Definition Semantics¶
$defs.profile¶
- Shape: object
$defs.scope¶
- Shape: object