@cadenza.io/service 1.24.4 → 1.24.6
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 +64 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -58,9 +58,73 @@ For full examples, see this repository or the test suite.
|
|
|
58
58
|
|
|
59
59
|
## Features
|
|
60
60
|
|
|
61
|
+
- **Service-based Distribution**: Allows services to expose local graphs and signals to interact with other services in
|
|
62
|
+
a system. Enables tasks and signals to be distributed and executed across multiple services.
|
|
63
|
+
|
|
64
|
+
- **Socket and REST Integration**: Provides built-in communication layers via sockets and REST APIs to facilitate
|
|
65
|
+
seamless interaction among distributed services.
|
|
66
|
+
|
|
67
|
+
- **Database Service Extension**: Automatically generates tasks and signals for interacting with a database schema,
|
|
68
|
+
making it easy to extend database functionality within the Cadenza model.
|
|
69
|
+
|
|
70
|
+
- **CadenzaDB Compatibility**: Supports real-time synchronization with the CadenzaDB service for introspection,
|
|
71
|
+
visualization, and monitoring.
|
|
72
|
+
|
|
73
|
+
- **Meta-Layer Extension**: A self-reflective layer for monitoring, optimization, and auto-generation, enabling advanced
|
|
74
|
+
AI-driven self-development capabilities.
|
|
75
|
+
|
|
76
|
+
- **Modularity**: A lightweight core architecture allows for adding extensions (e.g., distribution and UI integration)
|
|
77
|
+
without affecting the core functionality.
|
|
78
|
+
|
|
79
|
+
- **Introspectability**: Built-in tools to export graphs, trace executions, and separate metadata provide transparency
|
|
80
|
+
and debugging support.
|
|
81
|
+
|
|
82
|
+
- **Developer-friendly Design**: Focuses on ease of use with intuitive APIs, clear structure, and support for rapid
|
|
83
|
+
development of distributed applications.
|
|
84
|
+
|
|
85
|
+
## Architecture Overview
|
|
86
|
+
Cadenza's service package is divided into:
|
|
87
|
+
|
|
61
88
|
## Architecture Overview
|
|
89
|
+
|
|
62
90
|
Cadenza's service package is divided into:
|
|
63
91
|
|
|
92
|
+
1. **Core Layer**:
|
|
93
|
+
- Provides the foundational primitives for defining tasks, managing contexts, handling signals, and executing
|
|
94
|
+
workflows.
|
|
95
|
+
- Implements the Decentralized Adaptive Orchestration (DAO) model to enable flexible yet structured workflows.
|
|
96
|
+
- Acts as the base for all other layers and extensions, ensuring modularity.
|
|
97
|
+
|
|
98
|
+
2. **Service Layer**:
|
|
99
|
+
- Extends the core layer to facilitate distributed orchestration.
|
|
100
|
+
- Exposes local tasks and signals via REST APIs and socket-based communication.
|
|
101
|
+
- Enables services to interact with and delegate tasks between each other, creating a networked system of
|
|
102
|
+
distributed services.
|
|
103
|
+
|
|
104
|
+
3. **Database Service Layer**:
|
|
105
|
+
- Provides tools for integrating and managing database interactions using the Cadenza model.
|
|
106
|
+
- Automatically generates tasks and signals based on a given schema, simplifying database operations.
|
|
107
|
+
- Supports CadenzaDB for real-time synchronization, introspection, and visualization of database interactions.
|
|
108
|
+
|
|
109
|
+
4. **Meta-Layer**:
|
|
110
|
+
- Offers a self-reflective extension for monitoring, optimization, and AI-driven self-development.
|
|
111
|
+
- Enables introspection by exporting graphs, tracing executions, and separating metadata for improved debugging and
|
|
112
|
+
transparency.
|
|
113
|
+
- Facilitates the creation of new extensions by leveraging the core features in a modular architecture.
|
|
114
|
+
|
|
115
|
+
5. **Networking Layer**:
|
|
116
|
+
- Handles the communication between distributed services using sockets and REST APIs.
|
|
117
|
+
- Abstracts complexities of networking, providing a seamless interaction layer.
|
|
118
|
+
- Ensures secure and performant data flow across distributed components.
|
|
119
|
+
|
|
120
|
+
6. **Integration Layer**:
|
|
121
|
+
- Supports integration with external tools like CadenzaDB for real-time introspection and a UI for visualization.
|
|
122
|
+
- Provides features for extending the ecosystem with custom plugins and modules.
|
|
123
|
+
|
|
124
|
+
7. **Developer Utilities**:
|
|
125
|
+
- Supplies developer-friendly utilities such as tools for debugging, tracing, and exporting execution graphs.
|
|
126
|
+
- Ensures fast and intuitive development with simple APIs and a lightweight modular design.
|
|
127
|
+
|
|
64
128
|
|
|
65
129
|
## Contributing
|
|
66
130
|
Contributions are welcome! Please fork the repo, create a branch, and submit a PR. Follow the code style and add tests for new features.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cadenza.io/service",
|
|
3
|
-
"version": "1.24.
|
|
3
|
+
"version": "1.24.6",
|
|
4
4
|
"description": "This is a lightweight framework for building seamless distributed asynchronous graphs and flows of tasks and signals.",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"start": "node --loader ts-node/esm src/index.ts",
|