GitHub Action
commited on
Commit
·
6e29356
1
Parent(s):
3873b4a
Sync from GitHub with Git LFS
Browse files- docs/HMP-0005.md +70 -7
docs/HMP-0005.md
CHANGED
|
@@ -2219,6 +2219,67 @@ Categorical grouping of multiple containers linked by a shared property, topic,
|
|
| 2219 |
|
| 2220 |
---
|
| 2221 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2222 |
##### `sequence`
|
| 2223 |
|
| 2224 |
**Purpose:**
|
|
@@ -2532,7 +2593,7 @@ consistently interpreted, compared, and synchronized across agents.
|
|
| 2532 |
#### 6.1.4 Synchronization and publication guidelines
|
| 2533 |
|
| 2534 |
1. **Deduplication & linking**
|
| 2535 |
-
Before publishing, agents should check for existing containers (`diary_entry`, `semantic_node`, `semantic_edges`, `semantic_group`) to prevent duplication.
|
| 2536 |
If modification is required, agents **SHOULD** create a new container version referencing the previous one via `related.previous_version` and optionally include an `evaluation` block (e.g., `{ "type": "replace", "target": "<did>" }`) to the previous version of the container.
|
| 2537 |
|
| 2538 |
2. **Selective disclosure**
|
|
@@ -2545,16 +2606,17 @@ consistently interpreted, compared, and synchronized across agents.
|
|
| 2545 |
When publishing `semantic_edges`, agents should group them **by conceptual topic**, ensuring that all connected nodes share thematic coherence.
|
| 2546 |
Formal rule: an edge belongs to a topic container if **at least one of its nodes** relates to that topic.
|
| 2547 |
This supports efficient and context-preserving updates to partial graph regions.
|
|
|
|
| 2548 |
|
| 2549 |
-
|
| 2550 |
`semantic_edges` may express relationships between *any* container types (e.g., `goal ↔ hypothesis`, `experiment_log ↔ observation`, `quant ↔ event`), allowing dynamic linking of concepts and occurrences.
|
| 2551 |
|
| 2552 |
-
|
| 2553 |
Each new version of a container should include `related.previous_version` references to earlier versions.
|
| 2554 |
-
Older containers may optionally include an `evaluation` of type `"replace"` pointing forward — ensuring bidirectional traceability
|
| 2555 |
|
| 2556 |
-
|
| 2557 |
-
Containers `abstraction`, `axes`, `quant`, `event`, and `
|
| 2558 |
Together they define both the **structural hierarchy** (`abstraction`), the **semantic space** (`axes`), the **conceptual entities** (`quant`), the **temporal transitions** (`event`), and the **ordered reasoning flows** (`sequence`).
|
| 2559 |
Agents **SHOULD** prioritize their propagation during initialization, recovery, or cognitive context reconstruction, since these containers collectively restore the agent’s *cognitive continuity*.
|
| 2560 |
|
|
@@ -2577,9 +2639,10 @@ Mesh compatibility is preserved as long as extended containers follow the **HMP
|
|
| 2577 |
|
| 2578 |
CogSync extensions **MAY** introduce derived or hybrid container classes — for example:
|
| 2579 |
|
| 2580 |
-
* from `event`: `fact`, `observation`, `signal_record
|
| 2581 |
* from `quant`: `concept_instance`, `semantic_atom`, `knowledge_unit`.
|
| 2582 |
* from `sequence`: `reasoning_trace`, `workflow_chain`, `temporal_thread`.
|
|
|
|
| 2583 |
|
| 2584 |
Derived containers must maintain:
|
| 2585 |
|
|
|
|
| 2219 |
|
| 2220 |
---
|
| 2221 |
|
| 2222 |
+
##### `tree_nested` and `tree_listed`
|
| 2223 |
+
|
| 2224 |
+
Represents a hierarchical structure of containers using nested JSON objects.
|
| 2225 |
+
Intended for representing cognitive hierarchies, abstraction paths, or structural decomposition of concepts.
|
| 2226 |
+
|
| 2227 |
+
---
|
| 2228 |
+
|
| 2229 |
+
**`payload` structure:**
|
| 2230 |
+
|
| 2231 |
+
| Field | Type | Description |
|
| 2232 |
+
|--------|------|-------------|
|
| 2233 |
+
| `label` | string | Short title or mark identifying the tree. |
|
| 2234 |
+
| `description` | string | Brief explanation or context of the hierarchy. |
|
| 2235 |
+
| `tree` | object | Recursive structure mapping container DIDs to nested subtrees (for `tree_nested`), or a list of parent–child relations (for `tree_listed`). |
|
| 2236 |
+
|
| 2237 |
+
---
|
| 2238 |
+
|
| 2239 |
+
**Example — `tree_nested`:**
|
| 2240 |
+
|
| 2241 |
+
```json
|
| 2242 |
+
{
|
| 2243 |
+
"label": "Cognitive Abstraction Tree",
|
| 2244 |
+
"description": "Represents layered reasoning within Knowledge Genome.",
|
| 2245 |
+
"tree": {
|
| 2246 |
+
"did:hmp:container:abc100": {
|
| 2247 |
+
"did:hmp:container:abc101": {
|
| 2248 |
+
"did:hmp:container:abc103": {},
|
| 2249 |
+
"did:hmp:container:abc104": {}
|
| 2250 |
+
},
|
| 2251 |
+
"did:hmp:container:abc102": {}
|
| 2252 |
+
}
|
| 2253 |
+
}
|
| 2254 |
+
}
|
| 2255 |
+
```
|
| 2256 |
+
|
| 2257 |
+
> **Alternative class:** `tree_listed` — a flat mapping of parent–child relations using array form instead of nested objects.
|
| 2258 |
+
> Both formats are interoperable; agents SHOULD prefer `tree_nested` for recursive hierarchies.
|
| 2259 |
+
|
| 2260 |
+
---
|
| 2261 |
+
|
| 2262 |
+
**Example — `tree_listed`:**
|
| 2263 |
+
|
| 2264 |
+
```json
|
| 2265 |
+
{
|
| 2266 |
+
"label": "Cognitive Abstraction Tree",
|
| 2267 |
+
"description": "Represents layered reasoning within Knowledge Genome.",
|
| 2268 |
+
"tree": {
|
| 2269 |
+
"did:hmp:container:abc100": ["did:hmp:container:abc101", "did:hmp:container:abc102"],
|
| 2270 |
+
"did:hmp:container:abc101": ["did:hmp:container:abc103", "did:hmp:container:abc104"]
|
| 2271 |
+
}
|
| 2272 |
+
}
|
| 2273 |
+
```
|
| 2274 |
+
|
| 2275 |
+
---
|
| 2276 |
+
|
| 2277 |
+
**Purpose:**
|
| 2278 |
+
Provides a minimal, relation-agnostic way to describe container hierarchies for indexing, abstraction, and reasoning.
|
| 2279 |
+
Unlike `semantic_edges`, trees define **implicit structural relations** without explicit `relation` fields.
|
| 2280 |
+
|
| 2281 |
+
---
|
| 2282 |
+
|
| 2283 |
##### `sequence`
|
| 2284 |
|
| 2285 |
**Purpose:**
|
|
|
|
| 2593 |
#### 6.1.4 Synchronization and publication guidelines
|
| 2594 |
|
| 2595 |
1. **Deduplication & linking**
|
| 2596 |
+
Before publishing, agents should check for existing containers (`diary_entry`, `semantic_node`, `semantic_edges`, `semantic_group`, `tree_nested` / `tree_listed`) to prevent unnecessary duplication.
|
| 2597 |
If modification is required, agents **SHOULD** create a new container version referencing the previous one via `related.previous_version` and optionally include an `evaluation` block (e.g., `{ "type": "replace", "target": "<did>" }`) to the previous version of the container.
|
| 2598 |
|
| 2599 |
2. **Selective disclosure**
|
|
|
|
| 2606 |
When publishing `semantic_edges`, agents should group them **by conceptual topic**, ensuring that all connected nodes share thematic coherence.
|
| 2607 |
Formal rule: an edge belongs to a topic container if **at least one of its nodes** relates to that topic.
|
| 2608 |
This supports efficient and context-preserving updates to partial graph regions.
|
| 2609 |
+
**Tree containers (`tree_nested` / `tree_listed`)** may optionally accompany these groups to represent *structural* (non-semantic) hierarchies within the same domain.
|
| 2610 |
|
| 2611 |
+
5. **Extended use of `semantic_edges`**
|
| 2612 |
`semantic_edges` may express relationships between *any* container types (e.g., `goal ↔ hypothesis`, `experiment_log ↔ observation`, `quant ↔ event`), allowing dynamic linking of concepts and occurrences.
|
| 2613 |
|
| 2614 |
+
6. **Versioning and updates**
|
| 2615 |
Each new version of a container should include `related.previous_version` references to earlier versions.
|
| 2616 |
+
Older containers may optionally include an `evaluation` of type `"replace"` pointing forward — ensuring bidirectional traceability throughout the knowledge evolution chain.
|
| 2617 |
|
| 2618 |
+
7. **Cognitive substrate synchronization**
|
| 2619 |
+
Containers `abstraction`, `axes`, `quant`, `event`, `sequence` and `tree_nested` / `tree_listed` constitute the **cognitive substrate** of the Mesh.
|
| 2620 |
Together they define both the **structural hierarchy** (`abstraction`), the **semantic space** (`axes`), the **conceptual entities** (`quant`), the **temporal transitions** (`event`), and the **ordered reasoning flows** (`sequence`).
|
| 2621 |
Agents **SHOULD** prioritize their propagation during initialization, recovery, or cognitive context reconstruction, since these containers collectively restore the agent’s *cognitive continuity*.
|
| 2622 |
|
|
|
|
| 2639 |
|
| 2640 |
CogSync extensions **MAY** introduce derived or hybrid container classes — for example:
|
| 2641 |
|
| 2642 |
+
* from `event`: `fact`, `observation`, `signal_record`.
|
| 2643 |
* from `quant`: `concept_instance`, `semantic_atom`, `knowledge_unit`.
|
| 2644 |
* from `sequence`: `reasoning_trace`, `workflow_chain`, `temporal_thread`.
|
| 2645 |
+
* from `tree_nested`: `taxonomy_map`, `goal_tree`, `causal_structure`.
|
| 2646 |
|
| 2647 |
Derived containers must maintain:
|
| 2648 |
|