diff --git a/LICENSE b/LICENSE deleted file mode 100644 index 18f8dbd..0000000 --- a/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2026 QunYu - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/README.md b/README.md index 7e4c472..47138bc 100644 --- a/README.md +++ b/README.md @@ -1,146 +1,148 @@ -# SwarmPlug +# SwarmPlug ver0.3 -### Versioned Infrastructure for Semantic Normalization in ROS Systems +**Semantic Snapshot Specification** --- +## Statement -## 1. Statement +SwarmPlug ver0.3 defines a deterministic semantic snapshot specification +for heterogeneous ROS-based systems. -SwarmPlug is a **versioned infrastructure project**. +It does not coordinate. +It does not transmit. +It does not decide. -It defines deterministic layers for semantic normalization -in heterogeneous ROS-based environments. +**It standardizes semantics.** -SwarmPlug does **not**: +--- -- Replace ROS - -- Define control logic - -- Implement coordination strategies - -- Provide intelligence systems +## Problem + +Robotic systems expose runtime state in inconsistent forms: + +- Different topic names +- Different coordinate conventions +- Different mode representations +- Different task encodings -SwarmPlug defines infrastructure boundaries. +Without semantic normalization, higher-level coordination becomes system-specific. --- -## 2. Development Model +## Position -SwarmPlug evolves through **explicit version layers**. +SwarmPlug ver0.3 defines a neutral semantic abstraction boundary +between ROS runtime and distributed coordination. -Each version: +`Host Runtime → Semantic Abstraction → Snapshot` -- Has a narrowly defined responsibility - -- Is boundary-limited - -- Is version-scoped - -- Does not expand retroactively - - -New capabilities are introduced only through new versions. +**ver0.3 completes the semantic abstraction layer.** --- -## 3. Version Index +## Architecture (Conceptual) -|Version|Responsibility| -|---|---| -|**ver0.1**|Host attachment| -|**ver0.2**|Canonical identity| -|**ver0.3**|Semantic snapshot model| +```mermaid +flowchart TB -Future versions will be introduced as independent milestones. + subgraph L1["Host Runtime"] + A1["ROS Topics / Services / Params"] + end ---- + subgraph L2["Semantic Abstraction"] + B1["Canonical Identity"] + B2["Unified State Fields"] + B3["Deterministic Trigger Model"] + end -## 4. Layered Direction + subgraph L3["Snapshot (v0.3 Schema)"] + C1["meta + identity + state"] + end -SwarmPlug development follows a strict structural progression: + A1 --> B1 --> C1 + A1 --> B2 --> C1 + B3 --> C1 ``` -Attachment - ↓ -Identity - ↓ -Semantics - ↓ -Future Layers -``` +--- -Each layer must remain: +## Determinism -- Deterministic - -- Versioned - -- Infrastructure-oriented +Snapshot generation follows two defined triggers: + +- Event-based -- Boundary-defined +- Periodic +Given identical host state and identical trigger conditions, +the resulting snapshot structure remains invariant. + + --- -## 5. Scope Discipline +## Schema Boundary -SwarmPlug explicitly separates normalization infrastructure from: +ver0.3 formalizes: -- Runtime control systems - -- Transport mechanisms - -- Distributed coordination logic +- `meta` +- `identity` +- `state` -- Intelligence or learning layers + +Canonical state fields include: + +- pose +- twist +- mode -- External anchoring or persistence systems +- task_state (optional) -These domains are outside the core normalization layer. +The schema is versioned. --- -## 6. Stability Principle +## Scope Limitation -Once defined, a version: +SwarmPlug ver0.3 does not include: -- Remains version-scoped - -- Remains boundary-limited - -- Does not absorb new responsibilities +- Network transport +- Mesh communication +- Blockchain anchoring +- Decision logic +- Control loops -Evolution occurs by addition, not modification. +Those layers are out of scope. --- -## 7. Repository Structure -``` -/ver0.1 → Host attachment layer -/ver0.2 → Canonical identity layer -/ver0.3 → Semantic snapshot layer -``` - -Each directory documents a completed infrastructure layer. - -Subsequent versions will be added as independent directories. +## Version Context +| Version | Responsibility | +|---------|----------------------| +| ver0.1 | Host attachment | +| ver0.2 | Canonical identity | +| ver0.3 | Semantic snapshot | --- -## 8. Foundational Principle +## Principle Infrastructure precedes coordination. Normalization precedes intelligence. -Versioning precedes expansion. +Determinism precedes distribution. + +**ver0.3 establishes the normalization layer.** + +## License + +This version specification is part of the SwarmPlug documentation. + +Licensed under the **SwarmPlug Documentation License v1.0**. -SwarmPlug develops by structure, not by feature accumulation. -## Contact -If you are evaluating SwarmPlug for research or engineering use,feel free to reach out at: swarmplug@gmail.com +See the **main LICENSE** file for details. -**Note:SwarmPlug is developed under a boundary-first philosophy. Core implementation remains private by design.**