@astrale-os/adapter-cloudflare 0.2.0 → 0.3.0
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/build.d.ts +2 -1
- package/dist/build.d.ts.map +1 -1
- package/dist/build.js +1 -1
- package/dist/build.js.map +1 -1
- package/dist/client.d.ts +14 -13
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +25 -18
- package/dist/client.js.map +1 -1
- package/dist/cloudflare.d.ts +4 -1
- package/dist/cloudflare.d.ts.map +1 -1
- package/dist/cloudflare.js +40 -18
- package/dist/cloudflare.js.map +1 -1
- package/dist/codegen/worker.d.ts +3 -3
- package/dist/codegen/worker.d.ts.map +1 -1
- package/dist/codegen/worker.js +19 -8
- package/dist/codegen/worker.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2 -2
- package/dist/params.d.ts +3 -0
- package/dist/params.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/build.ts +2 -1
- package/src/client.ts +43 -18
- package/src/cloudflare.ts +41 -14
- package/src/codegen/worker.ts +19 -8
- package/src/index.ts +2 -2
- package/src/params.ts +4 -0
- package/template/CLAUDE.md +24 -0
- package/template/README.md +24 -15
- package/template/astrale.config.ts +4 -4
- package/template/client/README.md +9 -9
- package/template/client/__tests__/app.test.tsx +58 -19
- package/template/client/__tests__/harness.ts +16 -0
- package/template/client/__tests__/kernel.test.ts +23 -3
- package/template/client/src/shell/use-async.ts +4 -1
- package/template/client/src/status/components/StatusCard.tsx +115 -5
- package/template/client/src/status/hooks/useCheckable.query.ts +48 -40
- package/template/client/src/status/index.ts +2 -2
- package/template/client/src/status/status.api.ts +18 -1
- package/template/client/src/status/status.mappers.ts +89 -6
- package/template/client/src/status/status.types.ts +17 -2
- package/template/client/src/styles.css +235 -14
- package/template/client/src/views/status.tsx +1 -1
- package/template/core/monitor/index.ts +2 -2
- package/template/core/monitor/node.ts +12 -6
- package/template/domain.ts +6 -4
- package/template/functions/index.ts +31 -7
- package/template/package.json +2 -2
- package/template/pnpm-lock.yaml +57 -43
- package/template/pnpm-workspace.yaml +2 -0
- package/template/runtime/index.ts +8 -17
- package/template/runtime/monitoring/index.ts +8 -0
- package/template/runtime/{monitor → monitoring/monitor}/check.ts +3 -3
- package/template/runtime/{monitor → monitoring/monitor}/index.ts +3 -2
- package/template/runtime/{monitor → monitoring/monitor}/seed.ts +19 -10
- package/template/runtime/{monitor → monitoring/monitor}/watch.ts +5 -5
- package/template/runtime/{status-page → monitoring/page}/add.ts +2 -2
- package/template/runtime/{status-page → monitoring/page}/check.ts +2 -2
- package/template/runtime/{status-page → monitoring/page}/create.ts +3 -3
- package/template/runtime/monitoring/page/index.ts +9 -0
- package/template/schema/monitor.ts +6 -8
- package/template/views/index.ts +1 -1
- package/template/.agents/skills/astrale-cli/SKILL.md +0 -458
- package/template/.agents/skills/astrale-domain/SKILL.md +0 -371
- package/template/runtime/status-page/index.ts +0 -8
|
@@ -5,6 +5,8 @@
|
|
|
5
5
|
--border: #e5e5e5;
|
|
6
6
|
--border-strong: #d4d4d8;
|
|
7
7
|
--card: #ffffff;
|
|
8
|
+
--surface: #f4f4f5;
|
|
9
|
+
--surface-strong: #eceff3;
|
|
8
10
|
--accent: #2563eb;
|
|
9
11
|
--accent-soft: rgba(37, 99, 235, 0.1);
|
|
10
12
|
--warn-bg: #fffbeb;
|
|
@@ -39,7 +41,7 @@ body {
|
|
|
39
41
|
}
|
|
40
42
|
|
|
41
43
|
.wrap {
|
|
42
|
-
max-width:
|
|
44
|
+
max-width: 64rem;
|
|
43
45
|
margin: 0 auto;
|
|
44
46
|
padding: 1.5rem;
|
|
45
47
|
}
|
|
@@ -47,8 +49,9 @@ body {
|
|
|
47
49
|
.card {
|
|
48
50
|
background: var(--card);
|
|
49
51
|
border: 1px solid var(--border);
|
|
50
|
-
border-radius: 0.
|
|
52
|
+
border-radius: 0.5rem;
|
|
51
53
|
padding: 1.25rem 1.5rem;
|
|
54
|
+
box-shadow: 0 16px 40px rgba(24, 24, 27, 0.06);
|
|
52
55
|
}
|
|
53
56
|
|
|
54
57
|
.title {
|
|
@@ -92,10 +95,10 @@ body {
|
|
|
92
95
|
/* ─── Panel ─────────────────────────────────────────────────────────────── */
|
|
93
96
|
|
|
94
97
|
.panel {
|
|
95
|
-
background:
|
|
96
|
-
border:
|
|
97
|
-
border-radius: 0
|
|
98
|
-
padding:
|
|
98
|
+
background: transparent;
|
|
99
|
+
border: 0;
|
|
100
|
+
border-radius: 0;
|
|
101
|
+
padding: 0;
|
|
99
102
|
}
|
|
100
103
|
|
|
101
104
|
.panel-danger {
|
|
@@ -107,11 +110,11 @@ body {
|
|
|
107
110
|
align-items: center;
|
|
108
111
|
justify-content: space-between;
|
|
109
112
|
gap: 0.75rem;
|
|
110
|
-
margin-bottom:
|
|
113
|
+
margin-bottom: 1rem;
|
|
111
114
|
}
|
|
112
115
|
|
|
113
116
|
.panel-title {
|
|
114
|
-
font-size: 1.
|
|
117
|
+
font-size: 1.35rem;
|
|
115
118
|
font-weight: 650;
|
|
116
119
|
margin: 0;
|
|
117
120
|
}
|
|
@@ -175,14 +178,77 @@ body {
|
|
|
175
178
|
text-decoration: underline;
|
|
176
179
|
}
|
|
177
180
|
|
|
178
|
-
/* ─── Status
|
|
181
|
+
/* ─── Status dashboard + badge ──────────────────────────────────────────── */
|
|
179
182
|
|
|
180
|
-
.status-
|
|
181
|
-
display:
|
|
183
|
+
.status-dashboard {
|
|
184
|
+
display: grid;
|
|
185
|
+
gap: 1rem;
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
.status-overview {
|
|
189
|
+
display: grid;
|
|
190
|
+
grid-template-columns: minmax(0, 1fr) minmax(16rem, 0.65fr);
|
|
191
|
+
gap: 1rem;
|
|
192
|
+
align-items: stretch;
|
|
193
|
+
padding: 1rem;
|
|
194
|
+
background: var(--surface);
|
|
195
|
+
border: 1px solid var(--border);
|
|
196
|
+
border-radius: 0.5rem;
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
.status-label {
|
|
200
|
+
font-family: var(--mono);
|
|
201
|
+
font-size: 0.7rem;
|
|
202
|
+
color: var(--muted);
|
|
203
|
+
margin: 0 0 0.55rem;
|
|
204
|
+
text-transform: uppercase;
|
|
205
|
+
letter-spacing: 0.06em;
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
.summary-grid {
|
|
209
|
+
display: grid;
|
|
210
|
+
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
211
|
+
border: 1px solid var(--border);
|
|
212
|
+
border-radius: 0.5rem;
|
|
213
|
+
overflow: hidden;
|
|
214
|
+
background: var(--card);
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
.summary-cell {
|
|
218
|
+
min-width: 0;
|
|
219
|
+
padding: 0.7rem 0.8rem;
|
|
220
|
+
border-left: 1px solid var(--border);
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
.summary-cell:first-child {
|
|
224
|
+
border-left: 0;
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
.summary-value {
|
|
228
|
+
display: block;
|
|
229
|
+
font-size: 1.25rem;
|
|
230
|
+
line-height: 1.1;
|
|
231
|
+
font-weight: 750;
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
.summary-label {
|
|
235
|
+
display: block;
|
|
236
|
+
color: var(--muted);
|
|
237
|
+
font-size: 0.72rem;
|
|
238
|
+
margin-top: 0.15rem;
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
.status-meta {
|
|
242
|
+
display: grid;
|
|
243
|
+
grid-template-columns: max-content minmax(0, 1fr) max-content max-content;
|
|
244
|
+
gap: 0.45rem 0.75rem;
|
|
182
245
|
align-items: center;
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
246
|
+
color: var(--muted);
|
|
247
|
+
font-size: 0.76rem;
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
.status-meta > span:nth-child(odd) {
|
|
251
|
+
font-family: var(--mono);
|
|
186
252
|
}
|
|
187
253
|
|
|
188
254
|
.status-badge {
|
|
@@ -211,6 +277,116 @@ body {
|
|
|
211
277
|
background: var(--unknown);
|
|
212
278
|
}
|
|
213
279
|
|
|
280
|
+
.monitor-section {
|
|
281
|
+
border-top: 1px solid var(--border);
|
|
282
|
+
padding-top: 1rem;
|
|
283
|
+
}
|
|
284
|
+
|
|
285
|
+
.monitor-section-head {
|
|
286
|
+
display: flex;
|
|
287
|
+
align-items: center;
|
|
288
|
+
justify-content: space-between;
|
|
289
|
+
gap: 0.75rem;
|
|
290
|
+
margin-bottom: 0.45rem;
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
.monitor-section-head h3 {
|
|
294
|
+
font-size: 0.95rem;
|
|
295
|
+
margin: 0;
|
|
296
|
+
}
|
|
297
|
+
|
|
298
|
+
.refreshing {
|
|
299
|
+
font-family: var(--mono);
|
|
300
|
+
font-size: 0.7rem;
|
|
301
|
+
color: var(--accent);
|
|
302
|
+
background: var(--accent-soft);
|
|
303
|
+
border-radius: 0.35rem;
|
|
304
|
+
padding: 0.15rem 0.4rem;
|
|
305
|
+
}
|
|
306
|
+
|
|
307
|
+
.monitor-list {
|
|
308
|
+
border: 1px solid var(--border);
|
|
309
|
+
border-radius: 0.5rem;
|
|
310
|
+
overflow: hidden;
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
.monitor-row {
|
|
314
|
+
display: grid;
|
|
315
|
+
grid-template-columns: 8.5rem minmax(0, 1fr) minmax(17rem, 0.8fr);
|
|
316
|
+
gap: 1rem;
|
|
317
|
+
align-items: center;
|
|
318
|
+
padding: 0.85rem 0.95rem;
|
|
319
|
+
border-top: 1px solid var(--border);
|
|
320
|
+
background: var(--card);
|
|
321
|
+
}
|
|
322
|
+
|
|
323
|
+
.monitor-row:first-child {
|
|
324
|
+
border-top: 0;
|
|
325
|
+
}
|
|
326
|
+
|
|
327
|
+
.monitor-status {
|
|
328
|
+
display: flex;
|
|
329
|
+
flex-direction: column;
|
|
330
|
+
align-items: flex-start;
|
|
331
|
+
gap: 0.4rem;
|
|
332
|
+
}
|
|
333
|
+
|
|
334
|
+
.monitor-row .status-badge {
|
|
335
|
+
font-size: 0.72rem;
|
|
336
|
+
padding: 0.2rem 0.5rem;
|
|
337
|
+
border-radius: 0.35rem;
|
|
338
|
+
}
|
|
339
|
+
|
|
340
|
+
.weight {
|
|
341
|
+
font-family: var(--mono);
|
|
342
|
+
font-size: 0.68rem;
|
|
343
|
+
color: var(--muted);
|
|
344
|
+
background: var(--surface);
|
|
345
|
+
border-radius: 0.35rem;
|
|
346
|
+
padding: 0.15rem 0.4rem;
|
|
347
|
+
}
|
|
348
|
+
|
|
349
|
+
.weight-critical {
|
|
350
|
+
color: var(--err);
|
|
351
|
+
background: var(--err-soft);
|
|
352
|
+
}
|
|
353
|
+
|
|
354
|
+
.monitor-main {
|
|
355
|
+
min-width: 0;
|
|
356
|
+
}
|
|
357
|
+
|
|
358
|
+
.monitor-main h4 {
|
|
359
|
+
margin: 0 0 0.12rem;
|
|
360
|
+
font-size: 0.95rem;
|
|
361
|
+
}
|
|
362
|
+
|
|
363
|
+
.monitor-metrics {
|
|
364
|
+
display: grid;
|
|
365
|
+
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
366
|
+
gap: 0.5rem;
|
|
367
|
+
margin: 0;
|
|
368
|
+
}
|
|
369
|
+
|
|
370
|
+
.monitor-metrics div {
|
|
371
|
+
min-width: 0;
|
|
372
|
+
padding: 0.45rem 0.55rem;
|
|
373
|
+
background: var(--surface);
|
|
374
|
+
border-radius: 0.4rem;
|
|
375
|
+
}
|
|
376
|
+
|
|
377
|
+
.monitor-metrics dt {
|
|
378
|
+
color: var(--muted);
|
|
379
|
+
font-size: 0.68rem;
|
|
380
|
+
margin-bottom: 0.1rem;
|
|
381
|
+
}
|
|
382
|
+
|
|
383
|
+
.monitor-metrics dd {
|
|
384
|
+
margin: 0;
|
|
385
|
+
font-family: var(--mono);
|
|
386
|
+
font-size: 0.75rem;
|
|
387
|
+
word-break: break-word;
|
|
388
|
+
}
|
|
389
|
+
|
|
214
390
|
/* ─── Buttons ───────────────────────────────────────────────────────────── */
|
|
215
391
|
|
|
216
392
|
.check-btn {
|
|
@@ -286,3 +462,48 @@ body {
|
|
|
286
462
|
transform: rotate(360deg);
|
|
287
463
|
}
|
|
288
464
|
}
|
|
465
|
+
|
|
466
|
+
@media (max-width: 760px) {
|
|
467
|
+
.wrap {
|
|
468
|
+
padding: 0.75rem;
|
|
469
|
+
}
|
|
470
|
+
|
|
471
|
+
.card {
|
|
472
|
+
padding: 1rem;
|
|
473
|
+
}
|
|
474
|
+
|
|
475
|
+
.panel-head,
|
|
476
|
+
.status-overview,
|
|
477
|
+
.monitor-row {
|
|
478
|
+
grid-template-columns: 1fr;
|
|
479
|
+
}
|
|
480
|
+
|
|
481
|
+
.panel-head,
|
|
482
|
+
.monitor-section-head {
|
|
483
|
+
align-items: flex-start;
|
|
484
|
+
}
|
|
485
|
+
|
|
486
|
+
.status-meta {
|
|
487
|
+
grid-template-columns: max-content minmax(0, 1fr);
|
|
488
|
+
}
|
|
489
|
+
|
|
490
|
+
.monitor-metrics {
|
|
491
|
+
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
492
|
+
}
|
|
493
|
+
}
|
|
494
|
+
|
|
495
|
+
@media (max-width: 460px) {
|
|
496
|
+
.summary-grid,
|
|
497
|
+
.monitor-metrics {
|
|
498
|
+
grid-template-columns: 1fr;
|
|
499
|
+
}
|
|
500
|
+
|
|
501
|
+
.summary-cell {
|
|
502
|
+
border-left: 0;
|
|
503
|
+
border-top: 1px solid var(--border);
|
|
504
|
+
}
|
|
505
|
+
|
|
506
|
+
.summary-cell:first-child {
|
|
507
|
+
border-top: 0;
|
|
508
|
+
}
|
|
509
|
+
}
|
|
@@ -14,7 +14,7 @@ import { StatusCard } from '@/status'
|
|
|
14
14
|
|
|
15
15
|
export function StatusView(shell: ShellState) {
|
|
16
16
|
return (
|
|
17
|
-
<ViewFrame shell={shell} title="Status" subline="
|
|
17
|
+
<ViewFrame shell={shell} title="Status page" subline="monitoring view">
|
|
18
18
|
{(session, nodeId) =>
|
|
19
19
|
nodeId ? (
|
|
20
20
|
// Keyed by node id so a target hot-swap remounts with fresh state.
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* The
|
|
2
|
+
* The monitoring bounded context's PURE core, in one place: schema accessors
|
|
3
3
|
* (`keys`), the health status rule (`health`), and node identity/layout/seed
|
|
4
4
|
* data (`node`). No I/O, no clock/RNG — all deterministic + testable.
|
|
5
|
-
* `runtime/
|
|
5
|
+
* `runtime/monitoring/` imports the operations' logic from here.
|
|
6
6
|
*/
|
|
7
7
|
export * from './keys'
|
|
8
8
|
export * from './health'
|
|
@@ -5,9 +5,10 @@
|
|
|
5
5
|
* node writes) stay in `runtime/`, so this file is deterministic and testable.
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
-
/** Where
|
|
9
|
-
export const
|
|
10
|
-
export const
|
|
8
|
+
/** Where monitoring nodes live in the graph (domain layout; `seed` creates the folders). */
|
|
9
|
+
export const MONITORING_PARENT = '/monitoring'
|
|
10
|
+
export const MONITORS_PARENT = `${MONITORING_PARENT}/monitors`
|
|
11
|
+
export const STATUS_PAGES_PARENT = `${MONITORING_PARENT}/pages`
|
|
11
12
|
|
|
12
13
|
/** Deterministic URL-/name-safe stem (lowercased, non-alnum → `-`, clamped). Pure. */
|
|
13
14
|
export function slugify(text: string): string {
|
|
@@ -44,14 +45,19 @@ export interface StarterMonitor {
|
|
|
44
45
|
* a real site. Fixed slugs keep `seed` idempotent across reinstalls.
|
|
45
46
|
*/
|
|
46
47
|
export const STARTERS: readonly StarterMonitor[] = [
|
|
47
|
-
{
|
|
48
|
+
{
|
|
49
|
+
slug: 'astrale',
|
|
50
|
+
name: 'Astrale homepage',
|
|
51
|
+
url: 'https://astrale.ai',
|
|
52
|
+
critical: true,
|
|
53
|
+
},
|
|
48
54
|
{
|
|
49
55
|
slug: 'httpbin-200',
|
|
50
|
-
name: '
|
|
56
|
+
name: 'HTTP 200 smoke check',
|
|
51
57
|
url: 'https://httpbin.org/status/200',
|
|
52
58
|
critical: false,
|
|
53
59
|
},
|
|
54
60
|
]
|
|
55
61
|
|
|
56
62
|
/** The status page `seed` creates, watching every starter monitor. */
|
|
57
|
-
export const STARTER_PAGE = { slug: 'status', name: '
|
|
63
|
+
export const STARTER_PAGE = { slug: 'status', name: 'Public status' } as const
|
package/template/domain.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* domain.ts — the WORKER-SAFE domain definition: what the domain IS (its
|
|
3
|
-
* `schema`, `methods`, `deps`, `views`, `functions
|
|
3
|
+
* `schema`, `methods`, `deps`, `views`, `functions`) plus its identity
|
|
4
4
|
* (`origin` defaults to `schema.domain`; `postInstall`). Everything is wired
|
|
5
5
|
* EXPLICITLY here — a renamed or mistyped module is a compile error at this
|
|
6
6
|
* call, never a silently-missing route. The handlers live in `runtime/` (the
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
* so your folder layout is invisible to it — reorganize freely; only this wiring
|
|
12
12
|
* has to stay put. The deploy adapter is attached separately in
|
|
13
13
|
* `astrale.config.ts` via `deploy(domain, …)`, keeping its node-only code
|
|
14
|
-
* (wrangler, filesystem) out of the worker bundle.
|
|
14
|
+
* (wrangler, filesystem, frontend builds) out of the worker bundle.
|
|
15
15
|
*/
|
|
16
16
|
import { defineDomain } from '@astrale-os/sdk'
|
|
17
17
|
|
|
@@ -27,7 +27,9 @@ export const domain = defineDomain({
|
|
|
27
27
|
deps,
|
|
28
28
|
views,
|
|
29
29
|
functions,
|
|
30
|
-
|
|
31
|
-
|
|
30
|
+
// Reference the `seed` function directly — the SDK derives its path from the
|
|
31
|
+
// `functions` map, so a rename can't leave a stale string. The kernel calls it
|
|
32
|
+
// once after install, as __SYSTEM__. (A class method would be `'class.X:seed'`.)
|
|
33
|
+
postInstall: functions.seed,
|
|
32
34
|
requires: [],
|
|
33
35
|
})
|
|
@@ -1,9 +1,33 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
2
|
+
* Standalone-function registry — one entry per callable that is NOT a method of
|
|
3
|
+
* a class. Each becomes a first-class domain MEMBER: a `Function` node at
|
|
4
|
+
* `/<origin>/functions/<key>` with an `of_domain` edge (slug `function.<key>`),
|
|
5
|
+
* so it is addressable by the semantic domain path `/:<origin>:function.<key>`
|
|
6
|
+
* (e.g. as a `postInstall` target — see `domain.ts`) on top of its worker route
|
|
7
|
+
* `/functions/<key>`. The SDK stamps `binding.remoteUrl` with the worker's public
|
|
8
|
+
* URL at install. The map key is the slug (single source of truth).
|
|
9
|
+
*
|
|
10
|
+
* A standalone function's `execute` receives the same request context as a
|
|
11
|
+
* method MINUS `self` (it is not node-bound): `{ params, kernel, deps, auth, … }`.
|
|
8
12
|
*/
|
|
9
|
-
|
|
13
|
+
import { defineRemoteFunction } from '@astrale-os/sdk'
|
|
14
|
+
import { z } from 'zod'
|
|
15
|
+
|
|
16
|
+
import type { Deps } from '../deps'
|
|
17
|
+
|
|
18
|
+
import { monitor } from '../runtime/monitoring'
|
|
19
|
+
|
|
20
|
+
export const functions = {
|
|
21
|
+
// Post-install bootstrap, wired as `postInstall` in `domain.ts`. The kernel
|
|
22
|
+
// calls it ONCE after install, as __SYSTEM__ (its delegation minted for this
|
|
23
|
+
// function's own identity), so the domain comes up demonstrable. Must stay
|
|
24
|
+
// idempotent — a re-install runs it again. `auth: 'required'` (the default)
|
|
25
|
+
// makes `ctx.kernel` non-null; the body delegates to the per-operation seed
|
|
26
|
+
// logic in `runtime/monitor/seed.ts`.
|
|
27
|
+
seed: defineRemoteFunction<Record<string, never>, { seeded: number }, Deps>({
|
|
28
|
+
inputSchema: z.object({}),
|
|
29
|
+
outputSchema: z.object({ seeded: z.number().int() }),
|
|
30
|
+
authorize: async () => undefined,
|
|
31
|
+
execute: ({ kernel, deps }) => monitor.seed(kernel, deps.prober()),
|
|
32
|
+
}),
|
|
33
|
+
}
|
package/template/package.json
CHANGED
|
@@ -14,10 +14,10 @@
|
|
|
14
14
|
"typecheck": "tsgo --noEmit"
|
|
15
15
|
},
|
|
16
16
|
"dependencies": {
|
|
17
|
-
"@astrale-os/adapter-cloudflare": ">=0.
|
|
17
|
+
"@astrale-os/adapter-cloudflare": ">=0.3.0 <1.0.0",
|
|
18
18
|
"@astrale-os/kernel-core": ">=0.4.3 <1.0.0",
|
|
19
19
|
"@astrale-os/kernel-dsl": ">=0.1.2 <1.0.0",
|
|
20
|
-
"@astrale-os/sdk": ">=0.
|
|
20
|
+
"@astrale-os/sdk": ">=0.2.0 <1.0.0",
|
|
21
21
|
"@hono/node-server": "^1.19.0",
|
|
22
22
|
"zod": "^4.3.6"
|
|
23
23
|
},
|
package/template/pnpm-lock.yaml
CHANGED
|
@@ -9,8 +9,8 @@ importers:
|
|
|
9
9
|
.:
|
|
10
10
|
dependencies:
|
|
11
11
|
'@astrale-os/adapter-cloudflare':
|
|
12
|
-
specifier: '>=0.1
|
|
13
|
-
version: 0.1
|
|
12
|
+
specifier: '>=0.2.1 <1.0.0'
|
|
13
|
+
version: 0.2.1(@hono/node-server@1.19.14(hono@4.12.25))(typescript@6.0.3)
|
|
14
14
|
'@astrale-os/kernel-core':
|
|
15
15
|
specifier: '>=0.4.3 <1.0.0'
|
|
16
16
|
version: 0.4.4(typescript@6.0.3)
|
|
@@ -18,8 +18,8 @@ importers:
|
|
|
18
18
|
specifier: '>=0.1.2 <1.0.0'
|
|
19
19
|
version: 0.1.2(typescript@6.0.3)
|
|
20
20
|
'@astrale-os/sdk':
|
|
21
|
-
specifier: '>=0.1.
|
|
22
|
-
version: 0.1.
|
|
21
|
+
specifier: '>=0.1.9 <1.0.0'
|
|
22
|
+
version: 0.1.9(@hono/node-server@1.19.14(hono@4.12.25))(typescript@6.0.3)
|
|
23
23
|
'@hono/node-server':
|
|
24
24
|
specifier: ^1.19.0
|
|
25
25
|
version: 1.19.14(hono@4.12.25)
|
|
@@ -32,7 +32,7 @@ importers:
|
|
|
32
32
|
version: 22.19.21
|
|
33
33
|
'@typescript/native-preview':
|
|
34
34
|
specifier: latest
|
|
35
|
-
version: 7.0.0-dev.
|
|
35
|
+
version: 7.0.0-dev.20260614.1
|
|
36
36
|
typescript:
|
|
37
37
|
specifier: ~6.0.1-rc
|
|
38
38
|
version: 6.0.3
|
|
@@ -42,6 +42,9 @@ importers:
|
|
|
42
42
|
|
|
43
43
|
client:
|
|
44
44
|
dependencies:
|
|
45
|
+
'@astrale-os/shell':
|
|
46
|
+
specifier: '>=0.1.0 <1.0.0'
|
|
47
|
+
version: 0.1.1(typescript@6.0.3)
|
|
45
48
|
react:
|
|
46
49
|
specifier: ^19.2.0
|
|
47
50
|
version: 19.2.7
|
|
@@ -73,8 +76,8 @@ importers:
|
|
|
73
76
|
|
|
74
77
|
packages:
|
|
75
78
|
|
|
76
|
-
'@astrale-os/adapter-cloudflare@0.1
|
|
77
|
-
resolution: {integrity: sha512-
|
|
79
|
+
'@astrale-os/adapter-cloudflare@0.2.1':
|
|
80
|
+
resolution: {integrity: sha512-WSPkko4KNHivvWrwJZEic/1aL4tUzzLeQ5Jfw+Gg5MsAYyyCVQGTduRRICkuuPO4rVAvzOUsOvPkoeXyPhw/6w==}
|
|
78
81
|
engines: {node: '>=22'}
|
|
79
82
|
|
|
80
83
|
'@astrale-os/kernel-api@0.4.4':
|
|
@@ -110,8 +113,8 @@ packages:
|
|
|
110
113
|
'@astrale-os/kernel-server@0.4.4':
|
|
111
114
|
resolution: {integrity: sha512-P9jPryh/Qhk+njfGGAAR9PWzWtg0LO6yPBqwG97V9USzcUFq7Rjx58dRBVMu3TN4wdVZAuWiEJrubjLraAJpcw==}
|
|
112
115
|
|
|
113
|
-
'@astrale-os/sdk@0.1.
|
|
114
|
-
resolution: {integrity: sha512
|
|
116
|
+
'@astrale-os/sdk@0.1.9':
|
|
117
|
+
resolution: {integrity: sha512-/pt6U6qtQnRJoM+rWUmkqO8HExyUzXw3S0PGp3jJq+UhyZ+ruacFiYBeP5FqdxsRtc2DzGTR3MbZvbPtVe5kag==}
|
|
115
118
|
engines: {node: '>=22'}
|
|
116
119
|
hasBin: true
|
|
117
120
|
peerDependencies:
|
|
@@ -120,6 +123,9 @@ packages:
|
|
|
120
123
|
'@hono/node-server':
|
|
121
124
|
optional: true
|
|
122
125
|
|
|
126
|
+
'@astrale-os/shell@0.1.1':
|
|
127
|
+
resolution: {integrity: sha512-Gb725VeW6+Sb0el4WiArMG6gK5B8yzFIHoXvIVmQYd+RIgf+w1s06xL+NchE3o18672SQ7vI35aF6lTDyZTbPw==}
|
|
128
|
+
|
|
123
129
|
'@babel/code-frame@7.29.7':
|
|
124
130
|
resolution: {integrity: sha512-Aup7aUOfpbAUg2ROOJN6Iw5f9DMBlzu0mIkm/malLQFN/YQgO48wCj0Kxa3sEHJvPVFg7siR+qRInwXd2qhQKw==}
|
|
125
131
|
engines: {node: '>=6.9.0'}
|
|
@@ -979,50 +985,50 @@ packages:
|
|
|
979
985
|
'@types/ws@8.18.1':
|
|
980
986
|
resolution: {integrity: sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==}
|
|
981
987
|
|
|
982
|
-
'@typescript/native-preview-darwin-arm64@7.0.0-dev.
|
|
983
|
-
resolution: {integrity: sha512-
|
|
988
|
+
'@typescript/native-preview-darwin-arm64@7.0.0-dev.20260614.1':
|
|
989
|
+
resolution: {integrity: sha512-2JHbdJ00FKTKDR1+NL4zhQBDlFZfZHEXaAarV6kbEjV0P47qKnSrAzzKHuponG0B9FqkPEMHOgu7WGJTBW2rHw==}
|
|
984
990
|
engines: {node: '>=16.20.0'}
|
|
985
991
|
cpu: [arm64]
|
|
986
992
|
os: [darwin]
|
|
987
993
|
|
|
988
|
-
'@typescript/native-preview-darwin-x64@7.0.0-dev.
|
|
989
|
-
resolution: {integrity: sha512
|
|
994
|
+
'@typescript/native-preview-darwin-x64@7.0.0-dev.20260614.1':
|
|
995
|
+
resolution: {integrity: sha512-/8enyEb1tDsVvUp4rDeA5DernrvWgD6cQ4rY6O6PH6BQK8fqwY+CcHEHmw2xgwfqoswHNYjznLvmQmHBOjHqLw==}
|
|
990
996
|
engines: {node: '>=16.20.0'}
|
|
991
997
|
cpu: [x64]
|
|
992
998
|
os: [darwin]
|
|
993
999
|
|
|
994
|
-
'@typescript/native-preview-linux-arm64@7.0.0-dev.
|
|
995
|
-
resolution: {integrity: sha512-
|
|
1000
|
+
'@typescript/native-preview-linux-arm64@7.0.0-dev.20260614.1':
|
|
1001
|
+
resolution: {integrity: sha512-jqhqAXqyEUxJpno/wRfWGa72R3VTt7p2LRTOFJ0C1bx5dEKrVosQSOdr2m9+2VhjXFXNvorXsGZPIWqxLOo28Q==}
|
|
996
1002
|
engines: {node: '>=16.20.0'}
|
|
997
1003
|
cpu: [arm64]
|
|
998
1004
|
os: [linux]
|
|
999
1005
|
|
|
1000
|
-
'@typescript/native-preview-linux-arm@7.0.0-dev.
|
|
1001
|
-
resolution: {integrity: sha512-
|
|
1006
|
+
'@typescript/native-preview-linux-arm@7.0.0-dev.20260614.1':
|
|
1007
|
+
resolution: {integrity: sha512-zYrUKq5oC6fUoHpOmT3B65hFMhbdIlLp7T9RW1/6a+wSYoq9xTRAeFufQ2XZ9cpTJ1tfIvlUmtgJJ5CGE/cOrg==}
|
|
1002
1008
|
engines: {node: '>=16.20.0'}
|
|
1003
1009
|
cpu: [arm]
|
|
1004
1010
|
os: [linux]
|
|
1005
1011
|
|
|
1006
|
-
'@typescript/native-preview-linux-x64@7.0.0-dev.
|
|
1007
|
-
resolution: {integrity: sha512-
|
|
1012
|
+
'@typescript/native-preview-linux-x64@7.0.0-dev.20260614.1':
|
|
1013
|
+
resolution: {integrity: sha512-K2c/DN7Q3a6Z+KIl7bq45xByuuGjacqWO/UPCa/iTBA/m6GDzoMJ/Q/DBLtLRHyROBRiy5kjgEZfyLy3Tp8ygw==}
|
|
1008
1014
|
engines: {node: '>=16.20.0'}
|
|
1009
1015
|
cpu: [x64]
|
|
1010
1016
|
os: [linux]
|
|
1011
1017
|
|
|
1012
|
-
'@typescript/native-preview-win32-arm64@7.0.0-dev.
|
|
1013
|
-
resolution: {integrity: sha512-
|
|
1018
|
+
'@typescript/native-preview-win32-arm64@7.0.0-dev.20260614.1':
|
|
1019
|
+
resolution: {integrity: sha512-C+C25Grr4sCbQIYPT5WfKYIL613ZIN9aGcUwDGMSTmIQ3azIR5MtdkSF4l4vsOC4lF8HwFV83MDa28JuQYhQFg==}
|
|
1014
1020
|
engines: {node: '>=16.20.0'}
|
|
1015
1021
|
cpu: [arm64]
|
|
1016
1022
|
os: [win32]
|
|
1017
1023
|
|
|
1018
|
-
'@typescript/native-preview-win32-x64@7.0.0-dev.
|
|
1019
|
-
resolution: {integrity: sha512-
|
|
1024
|
+
'@typescript/native-preview-win32-x64@7.0.0-dev.20260614.1':
|
|
1025
|
+
resolution: {integrity: sha512-nJBR61NGiCMBJOpdzJ4ZgA/HEd+fqIb99ur39UljSH9xvFKFlRwDosyAQFD8UEwrZsUbXN0VPLJY5MDknug3GA==}
|
|
1020
1026
|
engines: {node: '>=16.20.0'}
|
|
1021
1027
|
cpu: [x64]
|
|
1022
1028
|
os: [win32]
|
|
1023
1029
|
|
|
1024
|
-
'@typescript/native-preview@7.0.0-dev.
|
|
1025
|
-
resolution: {integrity: sha512
|
|
1030
|
+
'@typescript/native-preview@7.0.0-dev.20260614.1':
|
|
1031
|
+
resolution: {integrity: sha512-4N1ZBHJUcsjKJQnUCxKUemV3jnm0PKZIZ4xh7dXN/3/AfmckE8Z1llyqOFfDwGOf8oQpdgkwQ6JUm7pqI3bGPg==}
|
|
1026
1032
|
engines: {node: '>=16.20.0'}
|
|
1027
1033
|
hasBin: true
|
|
1028
1034
|
|
|
@@ -1518,9 +1524,9 @@ packages:
|
|
|
1518
1524
|
|
|
1519
1525
|
snapshots:
|
|
1520
1526
|
|
|
1521
|
-
'@astrale-os/adapter-cloudflare@0.1
|
|
1527
|
+
'@astrale-os/adapter-cloudflare@0.2.1(@hono/node-server@1.19.14(hono@4.12.25))(typescript@6.0.3)':
|
|
1522
1528
|
dependencies:
|
|
1523
|
-
'@astrale-os/sdk': 0.1.
|
|
1529
|
+
'@astrale-os/sdk': 0.1.9(@hono/node-server@1.19.14(hono@4.12.25))(typescript@6.0.3)
|
|
1524
1530
|
jose: 6.2.3
|
|
1525
1531
|
transitivePeerDependencies:
|
|
1526
1532
|
- '@hono/node-server'
|
|
@@ -1589,7 +1595,7 @@ snapshots:
|
|
|
1589
1595
|
- msgpackr
|
|
1590
1596
|
- typescript
|
|
1591
1597
|
|
|
1592
|
-
'@astrale-os/sdk@0.1.
|
|
1598
|
+
'@astrale-os/sdk@0.1.9(@hono/node-server@1.19.14(hono@4.12.25))(typescript@6.0.3)':
|
|
1593
1599
|
dependencies:
|
|
1594
1600
|
'@astrale-os/kernel-api': 0.4.5(typescript@6.0.3)
|
|
1595
1601
|
'@astrale-os/kernel-client': 0.2.2(typescript@6.0.3)
|
|
@@ -1605,6 +1611,14 @@ snapshots:
|
|
|
1605
1611
|
- msgpackr
|
|
1606
1612
|
- typescript
|
|
1607
1613
|
|
|
1614
|
+
'@astrale-os/shell@0.1.1(typescript@6.0.3)':
|
|
1615
|
+
dependencies:
|
|
1616
|
+
'@astrale-os/kernel-client': 0.2.2(typescript@6.0.3)
|
|
1617
|
+
'@astrale-os/kernel-core': 0.4.4(typescript@6.0.3)
|
|
1618
|
+
transitivePeerDependencies:
|
|
1619
|
+
- msgpackr
|
|
1620
|
+
- typescript
|
|
1621
|
+
|
|
1608
1622
|
'@babel/code-frame@7.29.7':
|
|
1609
1623
|
dependencies:
|
|
1610
1624
|
'@babel/helper-validator-identifier': 7.29.7
|
|
@@ -2206,36 +2220,36 @@ snapshots:
|
|
|
2206
2220
|
dependencies:
|
|
2207
2221
|
'@types/node': 22.19.21
|
|
2208
2222
|
|
|
2209
|
-
'@typescript/native-preview-darwin-arm64@7.0.0-dev.
|
|
2223
|
+
'@typescript/native-preview-darwin-arm64@7.0.0-dev.20260614.1':
|
|
2210
2224
|
optional: true
|
|
2211
2225
|
|
|
2212
|
-
'@typescript/native-preview-darwin-x64@7.0.0-dev.
|
|
2226
|
+
'@typescript/native-preview-darwin-x64@7.0.0-dev.20260614.1':
|
|
2213
2227
|
optional: true
|
|
2214
2228
|
|
|
2215
|
-
'@typescript/native-preview-linux-arm64@7.0.0-dev.
|
|
2229
|
+
'@typescript/native-preview-linux-arm64@7.0.0-dev.20260614.1':
|
|
2216
2230
|
optional: true
|
|
2217
2231
|
|
|
2218
|
-
'@typescript/native-preview-linux-arm@7.0.0-dev.
|
|
2232
|
+
'@typescript/native-preview-linux-arm@7.0.0-dev.20260614.1':
|
|
2219
2233
|
optional: true
|
|
2220
2234
|
|
|
2221
|
-
'@typescript/native-preview-linux-x64@7.0.0-dev.
|
|
2235
|
+
'@typescript/native-preview-linux-x64@7.0.0-dev.20260614.1':
|
|
2222
2236
|
optional: true
|
|
2223
2237
|
|
|
2224
|
-
'@typescript/native-preview-win32-arm64@7.0.0-dev.
|
|
2238
|
+
'@typescript/native-preview-win32-arm64@7.0.0-dev.20260614.1':
|
|
2225
2239
|
optional: true
|
|
2226
2240
|
|
|
2227
|
-
'@typescript/native-preview-win32-x64@7.0.0-dev.
|
|
2241
|
+
'@typescript/native-preview-win32-x64@7.0.0-dev.20260614.1':
|
|
2228
2242
|
optional: true
|
|
2229
2243
|
|
|
2230
|
-
'@typescript/native-preview@7.0.0-dev.
|
|
2244
|
+
'@typescript/native-preview@7.0.0-dev.20260614.1':
|
|
2231
2245
|
optionalDependencies:
|
|
2232
|
-
'@typescript/native-preview-darwin-arm64': 7.0.0-dev.
|
|
2233
|
-
'@typescript/native-preview-darwin-x64': 7.0.0-dev.
|
|
2234
|
-
'@typescript/native-preview-linux-arm': 7.0.0-dev.
|
|
2235
|
-
'@typescript/native-preview-linux-arm64': 7.0.0-dev.
|
|
2236
|
-
'@typescript/native-preview-linux-x64': 7.0.0-dev.
|
|
2237
|
-
'@typescript/native-preview-win32-arm64': 7.0.0-dev.
|
|
2238
|
-
'@typescript/native-preview-win32-x64': 7.0.0-dev.
|
|
2246
|
+
'@typescript/native-preview-darwin-arm64': 7.0.0-dev.20260614.1
|
|
2247
|
+
'@typescript/native-preview-darwin-x64': 7.0.0-dev.20260614.1
|
|
2248
|
+
'@typescript/native-preview-linux-arm': 7.0.0-dev.20260614.1
|
|
2249
|
+
'@typescript/native-preview-linux-arm64': 7.0.0-dev.20260614.1
|
|
2250
|
+
'@typescript/native-preview-linux-x64': 7.0.0-dev.20260614.1
|
|
2251
|
+
'@typescript/native-preview-win32-arm64': 7.0.0-dev.20260614.1
|
|
2252
|
+
'@typescript/native-preview-win32-x64': 7.0.0-dev.20260614.1
|
|
2239
2253
|
|
|
2240
2254
|
'@vitejs/plugin-react@5.2.0(vite@7.3.5(@types/node@22.19.21))':
|
|
2241
2255
|
dependencies:
|