@mhome/core-protocol 1.37.2 → 1.38.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -0
- package/contract/node-service-protocol-v1.json +6 -0
- package/manifest/core.v1.json +2 -2
- package/package.json +1 -1
- package/protocol.json +1 -1
package/README.md
CHANGED
|
@@ -18,6 +18,13 @@ The transport owns heartbeat timing and reports authenticated local connection
|
|
|
18
18
|
activity through `RefreshLocalAppClient`; closing the transport removes that
|
|
19
19
|
connection through `CleanupLocalAppClient`.
|
|
20
20
|
|
|
21
|
+
`NodeDescription.appAccess` declares exact runtime targets and their required
|
|
22
|
+
Space READ/WRITE/MANAGE level. Core reads it over the authenticated Node connection
|
|
23
|
+
and checks App-originated calls before dispatch. Every `/app/` and
|
|
24
|
+
`/interaction-flow/` route in `routes` must declare access; undeclared targets are
|
|
25
|
+
not App-callable. Internal service calls keep their existing trusted boundary.
|
|
26
|
+
This is business authorization, independent of operating-system permissions.
|
|
27
|
+
|
|
21
28
|
`interaction_flow` defines the serializable Core-to-Node flow definition and
|
|
22
29
|
handler protocol. Definitions name logical operations only; MeowCore chooses
|
|
23
30
|
and pins the Node instance and fixed transport routes for each session.
|
|
@@ -17,6 +17,7 @@
|
|
|
17
17
|
"serviceVersion",
|
|
18
18
|
"instancePolicy",
|
|
19
19
|
"routes",
|
|
20
|
+
"appAccess",
|
|
20
21
|
"capabilities",
|
|
21
22
|
"details"
|
|
22
23
|
],
|
|
@@ -33,6 +34,11 @@
|
|
|
33
34
|
"items": { "type": "string", "pattern": "^/" },
|
|
34
35
|
"uniqueItems": true
|
|
35
36
|
},
|
|
37
|
+
"appAccess": {
|
|
38
|
+
"type": "object",
|
|
39
|
+
"description": "Exact runtime targets and required Space access for App-originated calls; missing targets are denied.",
|
|
40
|
+
"additionalProperties": { "enum": ["read", "write", "manage"] }
|
|
41
|
+
},
|
|
36
42
|
"capabilities": {
|
|
37
43
|
"type": "array",
|
|
38
44
|
"items": { "type": "string", "minLength": 1 },
|
package/manifest/core.v1.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"manifest": "mhome.core.v1",
|
|
3
|
-
"contractVersion": "1.
|
|
3
|
+
"contractVersion": "1.38.2",
|
|
4
4
|
"protocols": {
|
|
5
5
|
"agentGateway": {
|
|
6
6
|
"submitTarget": "/agent/submit",
|
|
@@ -63,7 +63,7 @@
|
|
|
63
63
|
"version": "storage.v2"
|
|
64
64
|
},
|
|
65
65
|
"hostDelivery": {
|
|
66
|
-
"externalProtocolVersion":
|
|
66
|
+
"externalProtocolVersion": 21,
|
|
67
67
|
"requestKind": "deliveryRequested",
|
|
68
68
|
"connectionControlKind": "connectionControlRequested",
|
|
69
69
|
"acceptanceBoundaries": [
|
package/package.json
CHANGED