siesa-agents 2.1.46 → 2.1.48

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 CHANGED
@@ -11,15 +11,20 @@ Paquete para instalar y configurar el ecosistema **BMAD v6** con los agentes esp
11
11
  Esta versión está diseñada y optimizada para el siguiente stack tecnológico empresarial:
12
12
 
13
13
  **Frontend:**
14
- - Next.js 16 con TypeScript (App Router)
14
+ - Vite 6+ como bundler (builds rápidos, HMR instantáneo)
15
+ - TanStack Router 1+ (file-based routing, type-safe)
16
+ - React 18+ con TypeScript (strict mode)
17
+ - TanStack Query 5+ para server state
18
+ - Zustand 5+ para client state
15
19
  - Shadcn/ui + Radix UI + TailwindCSS v4
16
- - Zustand para state management
17
20
  - React Hook Form + Zod para formularios
21
+ - Vitest para testing
22
+ - Preparado para microfrontends con Module Federation
18
23
 
19
24
  **Backend:**
20
25
  - .NET 10 con C# Minimal API
21
26
  - Entity Framework Core 10 + linq2db + LinqKit
22
- - PostgreSQL como base de datos primaria
27
+ - PostgreSQL 18+ como base de datos primaria
23
28
  - Arquitectura de Microservicios
24
29
 
25
30
  **Principios Arquitectónicos:**
@@ -27,25 +32,6 @@ Esta versión está diseñada y optimizada para el siguiente stack tecnológico
27
32
  - Test-Driven Development (TDD)
28
33
  - Database per Microservice
29
34
 
30
- ## Sistema de Publicación Automática
31
-
32
- Este proyecto cuenta con un sistema de CI/CD automatizado que maneja las publicaciones de manera inteligente:
33
-
34
- ### Versiones Estables (`latest`)
35
- - **Rama**: `npm-package`
36
- - **Propósito**: Versiones oficiales para producción
37
- - **Funcionamiento**: Cada commit en esta rama incrementa automáticamente la versión y la publica en npm
38
-
39
- ### Versiones de Desarrollo (`dev`)
40
- - **Rama**: `developer`
41
- - **Propósito**: Versiones de prueba y desarrollo
42
- - **Funcionamiento**: Incrementa automáticamente el contador de desarrollo
43
-
44
- ### Flujo de Trabajo
45
- 1. **Desarrollo**: Trabaja en la rama `developer` para cambios experimentales
46
- 2. **Estable**: Mueve cambios finalizados a `npm-package` para versiones oficiales
47
- 3. **Automático**: El sistema maneja todo el versionado sin intervención manual
48
-
49
35
  ## Instalación
50
36
 
51
37
  ### Instalación única con npx (Recomendado)
@@ -105,8 +91,8 @@ El sistema detectará automáticamente que ya existe una instalación y la actua
105
91
 
106
92
  ## Requisitos
107
93
 
108
- - Node.js >= 14.0.0
109
- - npm >= 6.0.0
94
+ - Node.js >= 20.0.0
95
+ - npm >= 8.0.0 (o pnpm >= 8.0.0 recomendado)
110
96
  - Python >= 3.7 (requerido para hooks de Claude Code)
111
97
 
112
98
  ## Estructura de archivos instalados
@@ -7,26 +7,34 @@
7
7
 
8
8
  ### Folder Structure
9
9
 
10
- Next.js 16 App Router Structure with Clean Architecture + DDD:
10
+ Vite + TanStack Router Structure with Clean Architecture + DDD:
11
11
 
12
12
  ```
13
- ├── app/ # Next.js App Router directory
14
- │ ├── (dashboard)/ # Route groups for dashboard
15
- │ ├── sales/ # Routes for sales module
16
- │ │ ├── quotes/ # Quote management pages
17
- │ │ └── invoices/ # Invoice pages
18
- │ ├── inventory/ # Inventory routes
19
- │ ├── globals.css # Global styles
20
- │ ├── layout.tsx # Root layout component
21
- │ ├── page.tsx # Home page
22
- │ ├── loading.tsx # Global loading UI
23
- │ └── not-found.tsx # 404 page
24
-
25
13
  ├── src/
26
- │ ├── modules/ # Business modules following DDD
27
- ├── sales/ # Sales module
28
- │ │ ├── quotes/ # Quote domain
29
- │ │ │ ├── cart/ # Shopping cart feature
14
+ │ ├── main.tsx # React entry point
15
+ │ ├── router.tsx # TanStack Router config
16
+ │ ├── routeTree.gen.ts # Auto-generated (DO NOT EDIT)
17
+ │ ├── globals.css # Global styles + Tailwind
18
+ │ │
19
+ │ ├── routes/ # TanStack Router file-based routing
20
+ │ │ ├── __root.tsx # Root layout (providers)
21
+ │ │ ├── index.tsx # Home redirect
22
+ │ │ ├── _auth.tsx # Public layout (pathless)
23
+ │ │ ├── _auth/
24
+ │ │ │ └── login.tsx # /login
25
+ │ │ ├── _app.tsx # Protected layout (pathless)
26
+ │ │ └── _app/
27
+ │ │ ├── dashboard.tsx # /dashboard
28
+ │ │ ├── sales/
29
+ │ │ │ ├── quotes.tsx # /sales/quotes
30
+ │ │ │ └── invoices.tsx # /sales/invoices
31
+ │ │ └── inventory/
32
+ │ │ └── products.tsx # /inventory/products
33
+ │ │
34
+ │ ├── modules/ # Business modules following DDD
35
+ │ │ ├── sales/ # Sales module
36
+ │ │ │ ├── quotes/ # Quote domain
37
+ │ │ │ │ ├── cart/ # Shopping cart feature
30
38
  │ │ │ │ │ ├── domain/
31
39
  │ │ │ │ │ │ ├── entities/
32
40
  │ │ │ │ │ │ ├── repositories/
@@ -41,29 +49,43 @@ Next.js 16 App Router Structure with Clean Architecture + DDD:
41
49
  │ │ │ │ │ │ ├── api/
42
50
  │ │ │ │ │ │ └── adapters/
43
51
  │ │ │ │ │ └── presentation/
44
- │ │ │ │ │ └── components/ # Only components, pages in app/
45
- │ │ │ │ └── products/ # Products feature
46
- │ │ │ └── billing/ # Billing domain
47
- │ │ ├── inventory/ # Inventory module
48
- │ │ └── users/ # User module
52
+ │ │ │ │ │ └── components/
53
+ │ │ │ │ └── products/ # Products feature
54
+ │ │ │ └── billing/ # Billing domain
55
+ │ │ ├── inventory/ # Inventory module
56
+ │ │ └── users/ # User module
49
57
  │ │
50
58
  │ ├── shared/
51
- │ │ ├── components/ # Reusable UI components
52
- │ │ ├── hooks/ # Shared hooks
53
- │ │ ├── utils/ # Utility functions
54
- │ │ ├── types/ # Common TypeScript types
55
- │ │ └── constants/ # App constants
59
+ │ │ ├── components/ # Reusable UI components
60
+ │ │ │ └── ui/ # shadcn/ui components
61
+ │ │ ├── hooks/ # Shared hooks
62
+ │ │ ├── lib/ # Utilities (utils.ts, api-client.ts)
63
+ │ │ ├── types/ # Common TypeScript types
64
+ │ │ └── constants/ # App constants
56
65
  │ │
57
- │ ├── providers/ # React context providers
58
- │ ├── store/ # Global Zustand stores
59
- │ └── middleware.ts # Next.js middleware
66
+ │ ├── app/ # Global configuration
67
+ ├── providers/ # React context providers
68
+ └── store/ # Global Zustand stores
69
+ │ │
70
+ │ └── infrastructure/ # Global external services
71
+ │ ├── api/ # API configuration
72
+ │ ├── storage/ # IndexedDB, localStorage
73
+ │ └── pwa/ # PWA configuration
60
74
 
61
- ├── lib/ # Next.js utilities and configurations
62
- ├── components/ # Global UI components (alternative to src/shared)
63
- ├── public/ # Static assets and PWA manifest
64
- └── styles/ # Additional stylesheets
75
+ ├── public/ # Static assets and PWA manifest
76
+ ├── index.html # Vite entry point
77
+ └── vite.config.ts # Vite + TanStack Router plugin config
65
78
  ```
66
79
 
80
+ ### TanStack Router Conventions
81
+
82
+ | Prefix | Effect | Example |
83
+ |--------|--------|---------|
84
+ | `_` | Pathless layout (no URL segment) | `_app.tsx` → layout only |
85
+ | `.` | Flat routing (nested without folders) | `orders.$id.tsx` → `/orders/:id` |
86
+ | `-` | Ignored by router (colocated files) | `-components/` |
87
+ | `$` | Dynamic parameter | `$orderId.tsx` → `:orderId` |
88
+
67
89
  ### Core Principles
68
90
 
69
91
  #### Clean Architecture First
@@ -71,7 +93,7 @@ Strict separation of:
71
93
  - **Domain layer** - Business entities, repositories interfaces, domain services, and types
72
94
  - **Application layer** - Use cases, hooks, and state management (Zustand stores)
73
95
  - **Infrastructure layer** - Repository implementations, API clients, and adapters
74
- - **Presentation layer** - UI components (pages go in `app/`, components in `presentation/`)
96
+ - **Presentation layer** - UI components in `presentation/`, routes in `routes/`
75
97
 
76
98
  #### Domain-Driven Design
77
99
  Business logic drives architecture decisions. Organize by business modules and domains, not technical layers.
@@ -83,7 +105,7 @@ Build complex UIs from simple, reusable components.
83
105
  Leverage TypeScript for compile-time safety and developer experience.
84
106
 
85
107
  #### Performance by Design
86
- - Lazy loading
108
+ - Lazy loading (automatic with TanStack Router)
87
109
  - Memoization
88
110
  - Bundle optimization
89
111
 
@@ -107,11 +129,11 @@ Use MCP to install Shadcn components instead of creating manually.
107
129
 
108
130
  ### Framework Selection Rules
109
131
 
110
- **Default**: Always use Next.js 16 with App Router unless explicitly told otherwise.
132
+ **Default**: Always use Vite + TanStack Router with TypeScript.
111
133
 
112
- **Exceptions**: Only use pure React + Vite when user specifically mentions offline-first functionality or requests non-Next.js setup.
134
+ **Microfrontends**: Use Vite + Module Federation for distributed architecture.
113
135
 
114
- **Reasoning**: Next.js provides better developer experience, built-in optimization, and easier deployment while maintaining PWA capabilities.
136
+ **Reasoning**: Vite provides faster builds, TanStack Router offers type-safe routing, and the combination is prepared for microfrontends with Module Federation.
115
137
 
116
138
  ## Backend Architecture
117
139
 
@@ -388,9 +410,11 @@ app.MapScalarApiReference(); // NOT app.UseSwagger()
388
410
  ## Summary
389
411
 
390
412
  ### Frontend
391
- - **Framework**: Next.js 16 with TypeScript and App Router
413
+ - **Bundler**: Vite 5+
414
+ - **Router**: TanStack Router (file-based, type-safe)
415
+ - **Framework**: React 18+ with TypeScript (strict mode)
392
416
  - **Architecture**: Clean Architecture + DDD
393
- - **State**: Zustand
417
+ - **State**: Zustand (client) + TanStack Query (server)
394
418
  - **UI**: shadcn/ui + Radix UI + TailwindCSS v4
395
419
  - **Testing**: Vitest + React Testing Library
396
420
  - **Validation**: Zod + React Hook Form
@@ -412,4 +436,4 @@ app.MapScalarApiReference(); // NOT app.UseSwagger()
412
436
  3. **Test-Driven Development** - Tests before/alongside implementation
413
437
  4. **Database per Microservice** - Complete isolation between services
414
438
  5. **Type Safety** - TypeScript (frontend) and C# (backend) strong typing
415
- 6. **Docker for Production** - Local development without containers
439
+ 6. **Docker for Production** - Local development without containers
@@ -2,26 +2,39 @@
2
2
 
3
3
  ## Frontend Stack
4
4
 
5
- ### Framework
6
- - **Next.js 16** with TypeScript (App Router)
7
- - Default framework unless explicitly told otherwise
8
- - Built-in Turbopack/Webpack for building
9
- - File-based routing with App Router
10
- - Exception: Use pure React + Vite only when user specifically mentions offline-first functionality or requests non-Next.js setup
5
+ ### Bundler & Dev Server
6
+ - **Vite 6+** with TypeScript
7
+ - Default bundler for all frontend projects
8
+ - Native ES modules for fast development
9
+ - Optimized for Module Federation (microfrontends)
10
+ - HMR (Hot Module Replacement) instantáneo
11
+
12
+ ### Router
13
+ - **TanStack Router 1+** (file-based routing)
14
+ - Type-safe routing with auto-generated route tree
15
+ - File-based routing with special prefixes (`_`, `.`, `-`, `$`)
16
+ - Automatic code-splitting per route
17
+ - Integrated with TanStack Query
11
18
 
12
19
  ### State Management
13
- - **Zustand**
20
+ - **Zustand 5+** (client state)
21
+ - Feature-based stores following DDD patterns
22
+ - Prepared for microfrontends (singleton stores)
23
+ - **TanStack Query 5+** (server state)
24
+ - Cache and synchronization
25
+ - Optimistic updates
14
26
 
15
27
  ### UI Framework & Styling
16
- - **Shadcn/ui** (component library)
28
+ - **shadcn/ui** (component library)
17
29
  - **Radix UI** (primitives)
18
30
  - **TailwindCSS v4** (styling)
19
31
 
20
32
  ### Architecture
21
33
  - **Clean Architecture** + **Domain-Driven Design (DDD)**
34
+ - **Module/Domain/Feature** structure for enterprise scale
22
35
 
23
36
  ### Testing
24
- - **Vitest** (test runner)
37
+ - **Vitest** (test runner - native Vite integration)
25
38
  - **React Testing Library** (component testing)
26
39
  - **MSW** (Mock Service Worker - API mocking)
27
40
 
@@ -33,11 +46,34 @@
33
46
  - **Axios** with interceptors
34
47
 
35
48
  ### Progressive Web App (PWA)
36
- - **Next.js PWA plugin**
49
+ - **vite-plugin-pwa** (PWA plugin for Vite)
37
50
  - **Workbox** (service worker library)
38
51
 
39
- ### Routing
40
- - **Next.js App Router** (file-based routing)
52
+ ## Microfrontends Configuration
53
+
54
+ ### Module Federation Shared Dependencies
55
+
56
+ Para evitar dependencias duplicadas entre microfrontends:
57
+
58
+ ```typescript
59
+ // vite.config.ts - Host y cada Remote
60
+ import { federation } from '@module-federation/vite';
61
+
62
+ federation({
63
+ shared: {
64
+ react: { singleton: true, requiredVersion: '^18.3.0' },
65
+ 'react-dom': { singleton: true, requiredVersion: '^18.3.0' },
66
+ '@tanstack/react-router': { singleton: true, requiredVersion: '^1.95.0' },
67
+ '@tanstack/react-query': { singleton: true, requiredVersion: '^5.62.0' },
68
+ zustand: { singleton: true, requiredVersion: '^5.0.0' },
69
+ },
70
+ })
71
+ ```
72
+
73
+ | Configuración | Propósito |
74
+ |---------------|-----------|
75
+ | `singleton: true` | Garantiza una sola instancia en runtime |
76
+ | `requiredVersion: '^x.x.0'` | Rango semver para flexibilidad sin romper compatibilidad |
41
77
 
42
78
  ## Core Principles
43
79
 
@@ -58,9 +94,10 @@ Build complex UIs from simple, reusable components
58
94
  Leverage TypeScript for compile-time safety and developer experience
59
95
 
60
96
  ### Performance by Design
61
- - Lazy loading
97
+ - Lazy loading (automatic with TanStack Router)
62
98
  - Memoization
63
99
  - Bundle optimization
100
+ - Singleton shared dependencies for microfrontends
64
101
 
65
102
  ### Accessibility as Standard
66
103
  WCAG 2.1 AA compliance in all components
@@ -233,3 +270,25 @@ Implement security at every layer
233
270
  ### Docker for Production Only
234
271
  - Development: dotnet run locally
235
272
  - Production: Docker containers
273
+
274
+ ## Version Summary
275
+
276
+ ### Frontend
277
+ | Technology | Version | Notes |
278
+ |------------|---------|-------|
279
+ | Vite | 6+ | Bundler, optimized for Module Federation |
280
+ | React | 18+ | Functional components, hooks |
281
+ | TypeScript | 5+ | Strict mode enabled |
282
+ | TanStack Router | 1+ | File-based, type-safe routing |
283
+ | TanStack Query | 5+ | Server state management |
284
+ | Zustand | 5+ | Client state management |
285
+ | TailwindCSS | 4+ | Utility-first CSS |
286
+ | Vitest | Latest | Native Vite test runner |
287
+
288
+ ### Backend
289
+ | Technology | Version | Notes |
290
+ |------------|---------|-------|
291
+ | .NET | 10 | LTS |
292
+ | Entity Framework Core | 10 | Matches .NET version |
293
+ | PostgreSQL | 18+ | Mandatory, one per microservice |
294
+ | xUnit | Latest | Testing framework |
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "siesa-agents",
3
- "version": "2.1.46",
3
+ "version": "2.1.48",
4
4
  "description": "Paquete para instalar y configurar agentes SIESA en tu proyecto",
5
5
  "main": "index.js",
6
6
  "bin": {