edge split

This commit is contained in:
flower_linux
2026-05-13 16:45:31 +08:00
parent df5eb5529c
commit 238b814057
31 changed files with 1934 additions and 52 deletions

View File

@@ -76,7 +76,11 @@
| `get_device_tree` | 无 | `0` | `5003` | 返回 `tree` |
| `list_devices` | 无 | `0` | - | 返回 `devices` |
| `get_device` | `deviceId` | `0` | `4044` | 单设备 JSON未找到 `device_not_found` |
| `patch_device_tree_node` | `id`, `patch`(字段同设备树节点) | `0` | `4045`/`5003` | 更新节点并协调;`node_not_found` |
| `patch_device_tree_node` | `id`, `patch`(字段同设备树节点) | `0` | `4045`/`5003` | 更新节点并协调;成功时可选带 `edgeTreeDownlink`(对 `params.edgeId` / `edges/<id>/` 作用域自动 `TREE_FULL` |
| `list_edge_sessions` | 无 | `0` | - | 返回边缘 TCP 会话 `sessions``edgeId`/`helloOk`/`peer` |
| `get_edge_tree_revision` | 无 | `0` | - | 返回 `treeRevision`(与边缘 `CTRL_TREE_PROPOSE` 乐观锁对齐) |
| `push_edge_tree` | `edgeId` | `0` | `4000`/`4047`/`5003`/`5005` | 向已 HELLO 的会话下行 `TREE_FULL`;成功返回 `sent``treeRevision`;无在线会话 `no_active_session`ingress 未启用 `edge_ingress_disabled` |
| edge TCP`TREE_PROPOSE` | JSON`edgeId``baseTreeRevision``entries` | - | `CONFLICT`/`FORBIDDEN_SCOPE` 等 | 与 D-Bus 共用 `DeviceTreeModel::applyEdgePropose``entries` 支持 `op` 省略/`patch`**`op: upsert`**(边缘子树内新增或整节点合并),见 `docs/EDGE_UPLINK_PROTOCOL_v1.md` §6 |
| `get_plugins` | 无 | `0` | - | 合并 protocol/framer/mapper 插件列表 |
| `get_plugins_protocols` | 无 | `0` | - | `protocols` |
| `get_plugins_mappers` | 无 | `0` | - | `mappers` |
@@ -111,10 +115,12 @@
| `5002` | `persist_mappings_failed` | 映射规则内存更新成功但写入 `runtime_mappings.json` 失败 |
| `5003` | `pipeline_unavailable` / `device_tree_unavailable` | Pipeline 或设备树模型未就绪 |
| `5004` | `metadata_*` | 元数据字典读写/解析/保存失败 |
| `5005` | `edge_ingress_disabled` / `edge_ingress_unavailable` | 边缘 TCP ingress 未启用或未初始化 |
| `4005` | `invalid_metadata` | `upsert_metadata` 缺少 `metadataId` |
| `4044` | `device_not_found` | `get_device` 未找到 |
| `4045` | `node_not_found` | `patch_device_tree_node` 未找到节点 |
| `4046` | `metadata_not_found` | `get_metadata` / `delete_metadata` 未找到 |
| `4047` | `no_active_session` | `push_edge_tree` 时该 `edgeId` 无已 HELLO 的 TCP 会话 |
## 7) 维护建议