ci: configura pipeline di integrazione continua
Continuous Integration / Quality Assurance (push) Canceled after 0s
Continuous Integration / Quality Assurance (push) Canceled after 0s
This commit is contained in:
@@ -1,34 +1,40 @@
|
||||
# SMAVS
|
||||
|
||||
> **SMAVS (Su Misura Al Vostro Sistema)**
|
||||
> The Composition Engine developed by **Spiral**.
|
||||
> Il Composition Engine proprietario sviluppato da **Spiral**.
|
||||
|
||||
---
|
||||
|
||||
## Overview
|
||||
## Cos'è SMAVS
|
||||
|
||||
SMAVS is a deterministic composition engine designed to transform structured specifications into complete software artifacts through a modular composition pipeline.
|
||||
SMAVS è un **Composition Engine deterministico** progettato per trasformare una specifica strutturata in un artefatto software completo attraverso una pipeline di composizione modulare.
|
||||
|
||||
Rather than generating code directly, SMAVS analyzes a specification, selects compatible modules, resolves dependencies, builds an execution plan, and composes the final artifact.
|
||||
Il framework non genera semplicemente codice e non è un template engine o un website builder.
|
||||
|
||||
The framework is built around the principles of:
|
||||
SMAVS analizza una specifica, seleziona i moduli compatibili, risolve automaticamente le dipendenze, costruisce un piano di esecuzione e compone l'artefatto finale in maniera completamente deterministica.
|
||||
|
||||
- Deterministic execution
|
||||
- Modular architecture
|
||||
- Composition over inheritance
|
||||
- Domain-Driven Design
|
||||
---
|
||||
|
||||
## Principi
|
||||
|
||||
L'intera architettura del framework è basata sui seguenti principi:
|
||||
|
||||
- Determinismo
|
||||
- Modularità
|
||||
- Composition over Inheritance
|
||||
- Domain-Driven Design (DDD)
|
||||
- Clean Architecture
|
||||
- Layer isolation
|
||||
- Dependency inversion
|
||||
- Immutability
|
||||
- Layer Isolation
|
||||
- Dependency Inversion
|
||||
- Immutabilità
|
||||
|
||||
---
|
||||
|
||||
## Architecture
|
||||
## Architettura
|
||||
|
||||
The composition pipeline follows the architecture defined by the Software Architecture Specification (SAS):
|
||||
La pipeline di composizione segue l'architettura definita nella Software Architecture Specification (SAS).
|
||||
|
||||
```
|
||||
```text
|
||||
JSON
|
||||
│
|
||||
▼
|
||||
@@ -53,13 +59,13 @@ Composition
|
||||
Artifact
|
||||
```
|
||||
|
||||
Each layer communicates exclusively through Contracts.
|
||||
Ogni layer comunica esclusivamente attraverso i **Contract** definiti dal framework.
|
||||
|
||||
---
|
||||
|
||||
## Repository Structure
|
||||
## Struttura della Repository
|
||||
|
||||
```
|
||||
```text
|
||||
smavs/
|
||||
|
||||
├── api/
|
||||
@@ -76,84 +82,92 @@ smavs/
|
||||
|
||||
---
|
||||
|
||||
## Current Status
|
||||
## Obiettivi
|
||||
|
||||
Current version:
|
||||
SMAVS è progettato per:
|
||||
|
||||
```
|
||||
0.1.0 (Foundation)
|
||||
```
|
||||
- analizzare una specifica di progetto;
|
||||
- costruire il Composition Context;
|
||||
- selezionare automaticamente i moduli;
|
||||
- risolvere dipendenze e conflitti;
|
||||
- generare un Execution Plan;
|
||||
- comporre artefatti software riproducibili.
|
||||
|
||||
Current implementation phase:
|
||||
A parità di:
|
||||
|
||||
```
|
||||
PHASE 0 — Foundation
|
||||
```
|
||||
- specifica;
|
||||
- versione del framework;
|
||||
- versione dei moduli;
|
||||
|
||||
Current sprint:
|
||||
|
||||
```
|
||||
Sprint 0.1 — Repository
|
||||
```
|
||||
SMAVS produrrà sempre lo stesso risultato.
|
||||
|
||||
---
|
||||
|
||||
## Project Goals
|
||||
## Stack Tecnologico
|
||||
|
||||
SMAVS aims to provide a deterministic engine capable of:
|
||||
|
||||
- analyzing project specifications;
|
||||
- building composition contexts;
|
||||
- resolving module dependencies;
|
||||
- selecting compatible variants;
|
||||
- composing software artifacts;
|
||||
- producing reproducible outputs.
|
||||
|
||||
Given the same:
|
||||
|
||||
- specification;
|
||||
- framework version;
|
||||
- module versions;
|
||||
|
||||
SMAVS always produces the same artifact.
|
||||
|
||||
---
|
||||
|
||||
## Technology Stack
|
||||
|
||||
- Python 3.12+
|
||||
- Python 3.11+
|
||||
- Domain-Driven Design
|
||||
- Clean Architecture
|
||||
- SOLID
|
||||
- Dataclasses
|
||||
- Protocols
|
||||
- Pydantic v2 (API only)
|
||||
- Dataclass immutabili
|
||||
- Protocol
|
||||
- Pydantic v2 (solo API)
|
||||
|
||||
---
|
||||
|
||||
## Documentation
|
||||
## Stato del Progetto
|
||||
|
||||
Project documentation is organized under the `docs/` directory.
|
||||
Versione corrente
|
||||
|
||||
It includes:
|
||||
```text
|
||||
0.1.0
|
||||
```
|
||||
|
||||
- Architecture
|
||||
- Guides
|
||||
Fase corrente
|
||||
|
||||
```text
|
||||
PHASE 0 — Foundation
|
||||
```
|
||||
|
||||
Stato
|
||||
|
||||
```text
|
||||
In sviluppo
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Documentazione
|
||||
|
||||
La documentazione del progetto è disponibile nella cartella `docs/` ed è organizzata nelle seguenti sezioni:
|
||||
|
||||
- Architettura
|
||||
- Guide
|
||||
- API
|
||||
- Contracts
|
||||
- Modules
|
||||
- Examples
|
||||
- Contract
|
||||
- Moduli
|
||||
- Esempi
|
||||
|
||||
---
|
||||
|
||||
## License
|
||||
## Licenza
|
||||
|
||||
This project is licensed under the terms described in the `LICENSE` file.
|
||||
SMAVS è un software proprietario sviluppato da **Spiral**.
|
||||
|
||||
L'utilizzo, la modifica e la distribuzione sono regolati dal file `LICENSE`.
|
||||
|
||||
---
|
||||
|
||||
## Developed by
|
||||
## Repository
|
||||
|
||||
**Spiral**
|
||||
Repository ufficiale:
|
||||
|
||||
SMAVS is the proprietary Composition Engine powering the Spiral ecosystem.
|
||||
```
|
||||
https://gitea.netbird.smavs.duckdns.org/SMAVS/smavs
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Spiral
|
||||
|
||||
SMAVS costituisce il motore di composizione alla base dell'ecosistema **Spiral** ed è progettato per consentire la generazione deterministica di artefatti software modulari, estendibili e completamente componibili.
|
||||
|
||||
Reference in New Issue
Block a user