@semiont/cli 0.4.6 → 0.4.7
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/dist/cli.mjs +713 -2035
- package/package.json +7 -7
- package/dist/templates/envoy.yaml +0 -200
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@semiont/cli",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.7",
|
|
4
4
|
"description": "Semiont CLI - Unified environment management tool",
|
|
5
5
|
"_comment": "AWS SDK dependencies (@aws-sdk/*) are only used by platforms/aws",
|
|
6
6
|
"type": "module",
|
|
@@ -64,12 +64,12 @@
|
|
|
64
64
|
"@aws-sdk/client-secrets-manager": "^3.600.0",
|
|
65
65
|
"@aws-sdk/client-sts": "^3.859.0",
|
|
66
66
|
"@aws-sdk/client-wafv2": "^3.859.0",
|
|
67
|
-
"@semiont/api-client": "0.4.
|
|
68
|
-
"@semiont/content": "0.4.
|
|
69
|
-
"@semiont/core": "0.4.
|
|
70
|
-
"@semiont/event-sourcing": "0.4.
|
|
71
|
-
"@semiont/graph": "0.4.
|
|
72
|
-
"@semiont/make-meaning": "0.4.
|
|
67
|
+
"@semiont/api-client": "0.4.7",
|
|
68
|
+
"@semiont/content": "0.4.7",
|
|
69
|
+
"@semiont/core": "0.4.7",
|
|
70
|
+
"@semiont/event-sourcing": "0.4.7",
|
|
71
|
+
"@semiont/graph": "0.4.7",
|
|
72
|
+
"@semiont/make-meaning": "0.4.7",
|
|
73
73
|
"arg": "^5.0.2",
|
|
74
74
|
"argon2": "^0.44.0",
|
|
75
75
|
"express": "^5.2.1",
|
|
@@ -1,200 +0,0 @@
|
|
|
1
|
-
# Envoy proxy configuration for local development and Codespaces
|
|
2
|
-
# Routes traffic between frontend (Vite SPA) and backend (Hono API)
|
|
3
|
-
#
|
|
4
|
-
# Routing rules (order matters - first match wins):
|
|
5
|
-
# 1. /api/resources/* → backend (authenticated proxy for images/files)
|
|
6
|
-
# 2. /api/cookies/* → backend (cookie consent/export)
|
|
7
|
-
# 3. /api/tokens/mcp-setup → backend (MCP CLI token setup)
|
|
8
|
-
# 4. /resources/* → backend (main API, SSE-safe: no timeout, no buffering)
|
|
9
|
-
# 5. /annotations/* → backend (main API)
|
|
10
|
-
# 6. /admin/* → backend (main API)
|
|
11
|
-
# 7. /api/events/stream → backend (SSE-safe: no timeout, no buffering)
|
|
12
|
-
# 8. /api/participants/* → backend (SSE-safe: no timeout, no buffering)
|
|
13
|
-
# 9. /api/* → backend (OpenAPI docs, spec)
|
|
14
|
-
# 10. /assets/* → frontend (Vite static assets)
|
|
15
|
-
# 11. /* → frontend (Vite SPA pages)
|
|
16
|
-
|
|
17
|
-
static_resources:
|
|
18
|
-
listeners:
|
|
19
|
-
- name: listener_0
|
|
20
|
-
address:
|
|
21
|
-
socket_address:
|
|
22
|
-
address: 0.0.0.0
|
|
23
|
-
port_value: 8080
|
|
24
|
-
filter_chains:
|
|
25
|
-
- filters:
|
|
26
|
-
- name: envoy.filters.network.http_connection_manager
|
|
27
|
-
typed_config:
|
|
28
|
-
"@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
|
|
29
|
-
stat_prefix: ingress_http
|
|
30
|
-
access_log:
|
|
31
|
-
- name: envoy.access_loggers.stdout
|
|
32
|
-
typed_config:
|
|
33
|
-
"@type": type.googleapis.com/envoy.extensions.access_loggers.stream.v3.StdoutAccessLog
|
|
34
|
-
http_filters:
|
|
35
|
-
- name: envoy.filters.http.buffer
|
|
36
|
-
typed_config:
|
|
37
|
-
"@type": type.googleapis.com/envoy.extensions.filters.http.buffer.v3.Buffer
|
|
38
|
-
max_request_bytes: 10485760 # 10MB max request size
|
|
39
|
-
- name: envoy.filters.http.router
|
|
40
|
-
typed_config:
|
|
41
|
-
"@type": type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
|
|
42
|
-
upgrade_configs:
|
|
43
|
-
- upgrade_type: websocket
|
|
44
|
-
route_config:
|
|
45
|
-
name: local_route
|
|
46
|
-
virtual_hosts:
|
|
47
|
-
- name: local_service
|
|
48
|
-
domains: ["*"]
|
|
49
|
-
routes:
|
|
50
|
-
# Backend /api/ routes that need specific handling before generic /api/ catch-all
|
|
51
|
-
- match:
|
|
52
|
-
prefix: "/api/resources/"
|
|
53
|
-
route:
|
|
54
|
-
cluster: backend
|
|
55
|
-
timeout: 30s
|
|
56
|
-
- match:
|
|
57
|
-
prefix: "/api/cookies/"
|
|
58
|
-
route:
|
|
59
|
-
cluster: backend
|
|
60
|
-
timeout: 30s
|
|
61
|
-
|
|
62
|
-
# Backend API routes (without /api prefix)
|
|
63
|
-
# Match /resources (exact - for POST /resources)
|
|
64
|
-
- match:
|
|
65
|
-
path: "/resources"
|
|
66
|
-
route:
|
|
67
|
-
cluster: backend
|
|
68
|
-
timeout: 30s
|
|
69
|
-
# Match /resources/* (prefix - for GET /resources/:id)
|
|
70
|
-
# Increased timeout for SSE streams at /resources/:id/events/stream
|
|
71
|
-
- match:
|
|
72
|
-
prefix: "/resources/"
|
|
73
|
-
route:
|
|
74
|
-
cluster: backend
|
|
75
|
-
timeout: 0s # No timeout for SSE long-lived connections
|
|
76
|
-
idle_timeout: 3600s # 1 hour idle timeout
|
|
77
|
-
typed_per_filter_config:
|
|
78
|
-
envoy.filters.http.buffer:
|
|
79
|
-
"@type": type.googleapis.com/envoy.extensions.filters.http.buffer.v3.BufferPerRoute
|
|
80
|
-
disabled: true # Disable buffering for SSE streams
|
|
81
|
-
- match:
|
|
82
|
-
prefix: "/annotations/"
|
|
83
|
-
route:
|
|
84
|
-
cluster: backend
|
|
85
|
-
timeout: 30s
|
|
86
|
-
- match:
|
|
87
|
-
prefix: "/admin/"
|
|
88
|
-
route:
|
|
89
|
-
cluster: backend
|
|
90
|
-
timeout: 30s
|
|
91
|
-
- match:
|
|
92
|
-
prefix: "/entity-types/"
|
|
93
|
-
route:
|
|
94
|
-
cluster: backend
|
|
95
|
-
timeout: 30s
|
|
96
|
-
- match:
|
|
97
|
-
prefix: "/jobs/"
|
|
98
|
-
route:
|
|
99
|
-
cluster: backend
|
|
100
|
-
timeout: 30s
|
|
101
|
-
- match:
|
|
102
|
-
prefix: "/users/"
|
|
103
|
-
route:
|
|
104
|
-
cluster: backend
|
|
105
|
-
timeout: 30s
|
|
106
|
-
- match:
|
|
107
|
-
prefix: "/tokens/"
|
|
108
|
-
route:
|
|
109
|
-
cluster: backend
|
|
110
|
-
timeout: 30s
|
|
111
|
-
- match:
|
|
112
|
-
prefix: "/health"
|
|
113
|
-
route:
|
|
114
|
-
cluster: backend
|
|
115
|
-
timeout: 30s
|
|
116
|
-
- match:
|
|
117
|
-
prefix: "/status"
|
|
118
|
-
route:
|
|
119
|
-
cluster: backend
|
|
120
|
-
timeout: 30s
|
|
121
|
-
|
|
122
|
-
# Backend SSE routes under /api/ (must come before generic /api/ catch-all)
|
|
123
|
-
- match:
|
|
124
|
-
prefix: "/api/events/stream"
|
|
125
|
-
route:
|
|
126
|
-
cluster: backend
|
|
127
|
-
timeout: 0s
|
|
128
|
-
idle_timeout: 3600s
|
|
129
|
-
typed_per_filter_config:
|
|
130
|
-
envoy.filters.http.buffer:
|
|
131
|
-
"@type": type.googleapis.com/envoy.extensions.filters.http.buffer.v3.BufferPerRoute
|
|
132
|
-
disabled: true
|
|
133
|
-
- match:
|
|
134
|
-
prefix: "/api/participants/"
|
|
135
|
-
route:
|
|
136
|
-
cluster: backend
|
|
137
|
-
timeout: 0s
|
|
138
|
-
idle_timeout: 3600s
|
|
139
|
-
typed_per_filter_config:
|
|
140
|
-
envoy.filters.http.buffer:
|
|
141
|
-
"@type": type.googleapis.com/envoy.extensions.filters.http.buffer.v3.BufferPerRoute
|
|
142
|
-
disabled: true
|
|
143
|
-
|
|
144
|
-
# Backend OpenAPI documentation and other /api/ routes
|
|
145
|
-
- match:
|
|
146
|
-
prefix: "/api/"
|
|
147
|
-
route:
|
|
148
|
-
cluster: backend
|
|
149
|
-
timeout: 30s
|
|
150
|
-
|
|
151
|
-
# Vite static assets (must come before catch-all)
|
|
152
|
-
- match:
|
|
153
|
-
prefix: "/assets/"
|
|
154
|
-
route:
|
|
155
|
-
cluster: frontend
|
|
156
|
-
timeout: 30s
|
|
157
|
-
|
|
158
|
-
# Everything else goes to frontend (Vite SPA pages)
|
|
159
|
-
- match:
|
|
160
|
-
prefix: "/"
|
|
161
|
-
route:
|
|
162
|
-
cluster: frontend
|
|
163
|
-
timeout: 30s
|
|
164
|
-
|
|
165
|
-
clusters:
|
|
166
|
-
- name: backend
|
|
167
|
-
connect_timeout: 5s
|
|
168
|
-
type: STRICT_DNS
|
|
169
|
-
dns_lookup_family: V4_ONLY
|
|
170
|
-
lb_policy: ROUND_ROBIN
|
|
171
|
-
load_assignment:
|
|
172
|
-
cluster_name: backend
|
|
173
|
-
endpoints:
|
|
174
|
-
- lb_endpoints:
|
|
175
|
-
- endpoint:
|
|
176
|
-
address:
|
|
177
|
-
socket_address:
|
|
178
|
-
address: {{HOST_ADDRESS}}
|
|
179
|
-
port_value: {{BACKEND_PORT}}
|
|
180
|
-
|
|
181
|
-
- name: frontend
|
|
182
|
-
connect_timeout: 5s
|
|
183
|
-
type: STRICT_DNS
|
|
184
|
-
dns_lookup_family: V4_ONLY
|
|
185
|
-
lb_policy: ROUND_ROBIN
|
|
186
|
-
load_assignment:
|
|
187
|
-
cluster_name: frontend
|
|
188
|
-
endpoints:
|
|
189
|
-
- lb_endpoints:
|
|
190
|
-
- endpoint:
|
|
191
|
-
address:
|
|
192
|
-
socket_address:
|
|
193
|
-
address: {{HOST_ADDRESS}}
|
|
194
|
-
port_value: {{FRONTEND_PORT}}
|
|
195
|
-
|
|
196
|
-
admin:
|
|
197
|
-
address:
|
|
198
|
-
socket_address:
|
|
199
|
-
address: 0.0.0.0
|
|
200
|
-
port_value: 9901
|