@zintrust/trace 0.4.75
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 +288 -0
- package/dist/build-manifest.json +365 -0
- package/dist/cli-register.d.ts +9 -0
- package/dist/cli-register.js +32 -0
- package/dist/config.d.ts +9 -0
- package/dist/config.js +38 -0
- package/dist/context.d.ts +18 -0
- package/dist/context.js +86 -0
- package/dist/dashboard/handlers.d.ts +15 -0
- package/dist/dashboard/handlers.js +179 -0
- package/dist/dashboard/routes.d.ts +19 -0
- package/dist/dashboard/routes.js +50 -0
- package/dist/dashboard/ui.d.ts +2 -0
- package/dist/dashboard/ui.js +870 -0
- package/dist/index.d.ts +35 -0
- package/dist/index.js +50 -0
- package/dist/migrations/20260331000001_create_zin_debugger_entries_table.d.ts +10 -0
- package/dist/migrations/20260331000001_create_zin_debugger_entries_table.js +28 -0
- package/dist/migrations/20260331000002_create_zin_debugger_entries_tags_table.d.ts +10 -0
- package/dist/migrations/20260331000002_create_zin_debugger_entries_tags_table.js +21 -0
- package/dist/migrations/20260331000003_create_zin_debugger_monitoring_table.d.ts +10 -0
- package/dist/migrations/20260331000003_create_zin_debugger_monitoring_table.js +17 -0
- package/dist/migrations/index.d.ts +6 -0
- package/dist/migrations/index.js +4 -0
- package/dist/plugin.d.ts +1 -0
- package/dist/plugin.js +3 -0
- package/dist/register.d.ts +1 -0
- package/dist/register.js +140 -0
- package/dist/storage/DebuggerStorage.d.ts +13 -0
- package/dist/storage/DebuggerStorage.js +195 -0
- package/dist/storage/TraceStorage.d.ts +13 -0
- package/dist/storage/TraceStorage.js +195 -0
- package/dist/storage/index.d.ts +2 -0
- package/dist/storage/index.js +1 -0
- package/dist/types.d.ts +270 -0
- package/dist/types.js +25 -0
- package/dist/ui.d.ts +8 -0
- package/dist/ui.js +7 -0
- package/dist/utils/authTag.d.ts +5 -0
- package/dist/utils/authTag.js +18 -0
- package/dist/utils/familyHash.d.ts +1 -0
- package/dist/utils/familyHash.js +8 -0
- package/dist/utils/redact.d.ts +6 -0
- package/dist/utils/redact.js +49 -0
- package/dist/utils/requestFilter.d.ts +4 -0
- package/dist/utils/requestFilter.js +26 -0
- package/dist/utils/stackFrame.d.ts +6 -0
- package/dist/utils/stackFrame.js +38 -0
- package/dist/watchers/AuthWatcher.d.ts +6 -0
- package/dist/watchers/AuthWatcher.js +49 -0
- package/dist/watchers/BatchWatcher.d.ts +6 -0
- package/dist/watchers/BatchWatcher.js +46 -0
- package/dist/watchers/CacheWatcher.d.ts +6 -0
- package/dist/watchers/CacheWatcher.js +51 -0
- package/dist/watchers/CommandWatcher.d.ts +6 -0
- package/dist/watchers/CommandWatcher.js +49 -0
- package/dist/watchers/DumpWatcher.d.ts +7 -0
- package/dist/watchers/DumpWatcher.js +41 -0
- package/dist/watchers/EventWatcher.d.ts +6 -0
- package/dist/watchers/EventWatcher.js +42 -0
- package/dist/watchers/ExceptionWatcher.d.ts +4 -0
- package/dist/watchers/ExceptionWatcher.js +103 -0
- package/dist/watchers/GateWatcher.d.ts +6 -0
- package/dist/watchers/GateWatcher.js +45 -0
- package/dist/watchers/HttpClientWatcher.d.ts +6 -0
- package/dist/watchers/HttpClientWatcher.js +50 -0
- package/dist/watchers/HttpWatcher.d.ts +2 -0
- package/dist/watchers/HttpWatcher.js +71 -0
- package/dist/watchers/JobWatcher.d.ts +10 -0
- package/dist/watchers/JobWatcher.js +108 -0
- package/dist/watchers/LogWatcher.d.ts +2 -0
- package/dist/watchers/LogWatcher.js +50 -0
- package/dist/watchers/MailWatcher.d.ts +6 -0
- package/dist/watchers/MailWatcher.js +45 -0
- package/dist/watchers/MiddlewareWatcher.d.ts +6 -0
- package/dist/watchers/MiddlewareWatcher.js +41 -0
- package/dist/watchers/ModelWatcher.d.ts +6 -0
- package/dist/watchers/ModelWatcher.js +42 -0
- package/dist/watchers/NotificationWatcher.d.ts +6 -0
- package/dist/watchers/NotificationWatcher.js +42 -0
- package/dist/watchers/QueryWatcher.d.ts +2 -0
- package/dist/watchers/QueryWatcher.js +72 -0
- package/dist/watchers/RedisWatcher.d.ts +7 -0
- package/dist/watchers/RedisWatcher.js +38 -0
- package/dist/watchers/ScheduleWatcher.d.ts +6 -0
- package/dist/watchers/ScheduleWatcher.js +46 -0
- package/dist/watchers/ViewWatcher.d.ts +6 -0
- package/dist/watchers/ViewWatcher.js +36 -0
- package/package.json +59 -0
- package/src/cli-register.ts +63 -0
- package/src/config.ts +46 -0
- package/src/context.ts +101 -0
- package/src/dashboard/handlers.ts +197 -0
- package/src/dashboard/routes.ts +101 -0
- package/src/dashboard/ui.ts +879 -0
- package/src/dashboard/zintrust-debuger.svg +30 -0
- package/src/index.ts +88 -0
- package/src/plugin.ts +9 -0
- package/src/register.ts +219 -0
- package/src/storage/TraceStorage.ts +306 -0
- package/src/storage/index.ts +2 -0
- package/src/types.ts +317 -0
- package/src/ui.ts +9 -0
- package/src/utils/authTag.ts +20 -0
- package/src/utils/familyHash.ts +8 -0
- package/src/utils/redact.ts +64 -0
- package/src/utils/requestFilter.ts +33 -0
- package/src/utils/stackFrame.ts +44 -0
- package/src/watchers/AuthWatcher.ts +50 -0
- package/src/watchers/BatchWatcher.ts +52 -0
- package/src/watchers/CacheWatcher.ts +58 -0
- package/src/watchers/CommandWatcher.ts +55 -0
- package/src/watchers/DumpWatcher.ts +42 -0
- package/src/watchers/EventWatcher.ts +43 -0
- package/src/watchers/ExceptionWatcher.ts +114 -0
- package/src/watchers/GateWatcher.ts +50 -0
- package/src/watchers/HttpClientWatcher.ts +56 -0
- package/src/watchers/HttpWatcher.ts +94 -0
- package/src/watchers/JobWatcher.ts +121 -0
- package/src/watchers/LogWatcher.ts +61 -0
- package/src/watchers/MailWatcher.ts +47 -0
- package/src/watchers/MiddlewareWatcher.ts +42 -0
- package/src/watchers/ModelWatcher.ts +48 -0
- package/src/watchers/NotificationWatcher.ts +43 -0
- package/src/watchers/QueryWatcher.ts +85 -0
- package/src/watchers/RedisWatcher.ts +39 -0
- package/src/watchers/ScheduleWatcher.ts +54 -0
- package/src/watchers/ViewWatcher.ts +37 -0
package/README.md
ADDED
|
@@ -0,0 +1,288 @@
|
|
|
1
|
+
# @zintrust/trace
|
|
2
|
+
|
|
3
|
+
A debug assistant for ZinTrust. Records HTTP requests, database queries, exceptions, jobs, cache operations, scheduled tasks, mail, auth events, and more — all surfaced through a built-in web dashboard.
|
|
4
|
+
|
|
5
|
+
Works with both `zin s` (Node.js) and `zin s --wg` (Cloudflare Workers).
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## Installation
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
yarn add @zintrust/trace
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
Run the provided migrations to create the three required tables (`zin_trace_entries`, `zin_trace_entries_tags`, `zin_trace_monitoring`):
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
zin migrate:trace
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
You can still import the package migrations manually if you prefer to keep them inside your project migration entrypoint.
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## Quick start
|
|
26
|
+
|
|
27
|
+
### 1. Enable via environment variables
|
|
28
|
+
|
|
29
|
+
```env
|
|
30
|
+
TRACE_ENABLED=true
|
|
31
|
+
TRACE_DB_CONNECTION=d1 # optional — omit to inherit DB_CONNECTION
|
|
32
|
+
TRACE_PRUNE_HOURS=24 # how long entries are kept (default: 24)
|
|
33
|
+
TRACE_SLOW_QUERY_MS=100 # slow-query threshold in ms (default: 100)
|
|
34
|
+
TRACE_LOG_LEVEL=info # minimum log level captured (default: info)
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
### 2. Enable the plugin in `zintrust.plugins.*`
|
|
38
|
+
|
|
39
|
+
The supported setup is to opt in through your ZinTrust plugin files, not a custom `src/start.ts` import.
|
|
40
|
+
|
|
41
|
+
For Node / standard runtime:
|
|
42
|
+
|
|
43
|
+
```ts
|
|
44
|
+
// src/zintrust.plugins.ts
|
|
45
|
+
import '@zintrust/trace/plugin';
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
For Cloudflare Workers / `zin s --wg`, add the same plugin import to your Worker plugin file too:
|
|
49
|
+
|
|
50
|
+
```ts
|
|
51
|
+
// src/zintrust.plugins.wg.ts
|
|
52
|
+
import '@zintrust/trace/plugin';
|
|
53
|
+
|
|
54
|
+
import { ProjectRuntime } from '@zintrust/core';
|
|
55
|
+
import serviceManifest from './bootstrap/service-manifest';
|
|
56
|
+
|
|
57
|
+
ProjectRuntime.set({ serviceManifest });
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
Why this is the preferred path:
|
|
61
|
+
|
|
62
|
+
- The plugin files are the framework-owned opt-in point that ZinTrust already auto-loads during boot.
|
|
63
|
+
- The core runtime can then lazy-load the trace only after databases and the kernel are ready.
|
|
64
|
+
- The plugin activates trace runtime logic only; the dashboard route stays inactive until you register it yourself.
|
|
65
|
+
|
|
66
|
+
With the stock ZinTrust bootstrap, `TRACE_ENABLED=true` plus the plugin import above activates the watchers and storage integration. Dashboard UI/routes are a separate route-level opt-in.
|
|
67
|
+
|
|
68
|
+
### 3. Mount the dashboard
|
|
69
|
+
|
|
70
|
+
Register the dashboard explicitly in your route file when you want the UI. Restrict access with middleware — the trace does **not** apply auth automatically.
|
|
71
|
+
|
|
72
|
+
```ts
|
|
73
|
+
// routes/api.ts
|
|
74
|
+
import { registerTraceDashboard } from '@zintrust/trace/ui';
|
|
75
|
+
|
|
76
|
+
registerTraceDashboard(router, {
|
|
77
|
+
basePath: '/trace', // default
|
|
78
|
+
middleware: ['admin'], // apply your auth middleware here
|
|
79
|
+
});
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
The dashboard SPA will be available at `GET /trace` (or your chosen `basePath`).
|
|
83
|
+
|
|
84
|
+
If you need custom storage wiring, keep using the low-level route registrar:
|
|
85
|
+
|
|
86
|
+
```ts
|
|
87
|
+
import { useDatabase } from '@zintrust/core';
|
|
88
|
+
import { registerTraceRoutes } from '@zintrust/trace/ui';
|
|
89
|
+
import { TraceStorage } from '@zintrust/trace';
|
|
90
|
+
|
|
91
|
+
const db = useDatabase();
|
|
92
|
+
|
|
93
|
+
registerTraceRoutes(router, TraceStorage.resolveStorage(db), {
|
|
94
|
+
basePath: '/trace',
|
|
95
|
+
middleware: ['admin'],
|
|
96
|
+
});
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
If you need a manual late bootstrap instead of plugin-driven activation, you can still import `@zintrust/trace/register` yourself, but that is the advanced path rather than the default project setup.
|
|
100
|
+
|
|
101
|
+
## CLI commands
|
|
102
|
+
|
|
103
|
+
When the optional package is installed, ZinTrust auto-registers these commands:
|
|
104
|
+
|
|
105
|
+
```bash
|
|
106
|
+
zin migrate:trace
|
|
107
|
+
zin trace:status
|
|
108
|
+
zin trace:prune --hours 24
|
|
109
|
+
zin trace:clear
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
`zin trace:status` reports the active connection, retention window, current entry counts, and the expected dashboard URL derived from your current env and route choices.
|
|
113
|
+
|
|
114
|
+
---
|
|
115
|
+
|
|
116
|
+
## Watchers
|
|
117
|
+
|
|
118
|
+
All 20 watchers are enabled by default when `TRACE_ENABLED=true`. Disable individual watchers via `TraceConfig.merge()` or environment-based overrides.
|
|
119
|
+
|
|
120
|
+
| Watcher | Captures |
|
|
121
|
+
| --------------------- | --------------------------------------------------- |
|
|
122
|
+
| `HttpWatcher` | Incoming HTTP requests and responses |
|
|
123
|
+
| `QueryWatcher` | SQL queries, execution time, slow-query flag |
|
|
124
|
+
| `ExceptionWatcher` | Unhandled exceptions with stack traces |
|
|
125
|
+
| `LogWatcher` | Application log entries (filtered by `logMinLevel`) |
|
|
126
|
+
| `JobWatcher` | Background job dispatches and completions |
|
|
127
|
+
| `CacheWatcher` | Cache hits, misses, writes, and deletes |
|
|
128
|
+
| `ScheduleWatcher` | Scheduled task runs |
|
|
129
|
+
| `MailWatcher` | Outgoing mail dispatches |
|
|
130
|
+
| `AuthWatcher` | Login, logout, and auth attempts |
|
|
131
|
+
| `EventWatcher` | Application events fired and listeners called |
|
|
132
|
+
| `ModelWatcher` | ORM model creates, updates, and deletes |
|
|
133
|
+
| `NotificationWatcher` | Notification dispatches |
|
|
134
|
+
| `RedisWatcher` | Redis commands |
|
|
135
|
+
| `GateWatcher` | Gate and policy checks |
|
|
136
|
+
| `MiddlewareWatcher` | Middleware chain execution |
|
|
137
|
+
| `CommandWatcher` | CLI command invocations |
|
|
138
|
+
| `BatchWatcher` | Batch job processing |
|
|
139
|
+
| `DumpWatcher` | Explicit `dump()` calls |
|
|
140
|
+
| `ViewWatcher` | View renders |
|
|
141
|
+
| `HttpClientWatcher` | Outgoing HTTP client requests |
|
|
142
|
+
|
|
143
|
+
---
|
|
144
|
+
|
|
145
|
+
## Programmatic / custom wiring
|
|
146
|
+
|
|
147
|
+
If you need fine-grained control instead of auto-registration, compose the pieces manually:
|
|
148
|
+
|
|
149
|
+
```ts
|
|
150
|
+
import {
|
|
151
|
+
TraceConfig,
|
|
152
|
+
TraceStorage,
|
|
153
|
+
TraceContext,
|
|
154
|
+
HttpWatcher,
|
|
155
|
+
QueryWatcher,
|
|
156
|
+
ExceptionWatcher,
|
|
157
|
+
} from '@zintrust/trace';
|
|
158
|
+
|
|
159
|
+
const config = TraceConfig.merge({
|
|
160
|
+
enabled: true,
|
|
161
|
+
pruneAfterHours: 48,
|
|
162
|
+
slowQueryThreshold: 200,
|
|
163
|
+
watchers: {
|
|
164
|
+
// disable specific watchers
|
|
165
|
+
redis: false,
|
|
166
|
+
view: false,
|
|
167
|
+
},
|
|
168
|
+
redaction: {
|
|
169
|
+
body: ['password', 'secret', 'token'],
|
|
170
|
+
},
|
|
171
|
+
});
|
|
172
|
+
|
|
173
|
+
const db = useDatabase();
|
|
174
|
+
const storage = TraceStorage.resolveStorage(db);
|
|
175
|
+
|
|
176
|
+
HttpWatcher.register({ storage, config, db });
|
|
177
|
+
QueryWatcher.register({ storage, config, db });
|
|
178
|
+
ExceptionWatcher.register({ storage, config, db });
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
---
|
|
182
|
+
|
|
183
|
+
## Configuration reference
|
|
184
|
+
|
|
185
|
+
`TraceConfig.merge(overrides?)` accepts the following options:
|
|
186
|
+
|
|
187
|
+
| Option | Type | Default | Description |
|
|
188
|
+
| -------------------- | --------------------------------------------------- | ---------------------------------- | -------------------------------------------------------------------- |
|
|
189
|
+
| `enabled` | `boolean` | `false` | Master switch — no watchers activate when `false` |
|
|
190
|
+
| `connection` | `string \| undefined` | `undefined` | Named DB connection for storing entries; uses `'default'` if omitted |
|
|
191
|
+
| `pruneAfterHours` | `number` | `24` | Entries older than this are pruned |
|
|
192
|
+
| `slowQueryThreshold` | `number` | `100` | Queries taking longer (ms) are flagged as slow |
|
|
193
|
+
| `logMinLevel` | `'debug' \| 'info' \| 'warn' \| 'error' \| 'fatal'` | `'info'` | Minimum log severity captured |
|
|
194
|
+
| `ignoreRoutes` | `string[]` | `['/trace', '/health', '/ping']` | Routes excluded from HTTP watcher |
|
|
195
|
+
| `watchers` | `Record<string, boolean>` | `{}` | Per-watcher enable/disable flags (`false` = disabled) |
|
|
196
|
+
| `redaction.headers` | `string[]` | `['authorization', 'cookie', ...]` | Request header names to redact |
|
|
197
|
+
| `redaction.body` | `string[]` | `['password', 'token', ...]` | Request body keys to redact |
|
|
198
|
+
| `redaction.query` | `string[]` | `[]` | Query-string keys to redact |
|
|
199
|
+
|
|
200
|
+
---
|
|
201
|
+
|
|
202
|
+
## Entry types
|
|
203
|
+
|
|
204
|
+
```ts
|
|
205
|
+
import { EntryType } from '@zintrust/trace';
|
|
206
|
+
|
|
207
|
+
EntryType.REQUEST; // 'request'
|
|
208
|
+
EntryType.QUERY; // 'query'
|
|
209
|
+
EntryType.EXCEPTION; // 'exception'
|
|
210
|
+
EntryType.LOG; // 'log'
|
|
211
|
+
EntryType.JOB; // 'job'
|
|
212
|
+
EntryType.CACHE; // 'cache'
|
|
213
|
+
EntryType.SCHEDULE; // 'schedule'
|
|
214
|
+
EntryType.MAIL; // 'mail'
|
|
215
|
+
EntryType.AUTH; // 'auth'
|
|
216
|
+
EntryType.EVENT; // 'event'
|
|
217
|
+
EntryType.MODEL; // 'model'
|
|
218
|
+
EntryType.NOTIFICATION; // 'notification'
|
|
219
|
+
EntryType.REDIS; // 'redis'
|
|
220
|
+
EntryType.GATE; // 'gate'
|
|
221
|
+
EntryType.MIDDLEWARE; // 'middleware'
|
|
222
|
+
EntryType.COMMAND; // 'command'
|
|
223
|
+
EntryType.BATCH; // 'batch'
|
|
224
|
+
EntryType.DUMP; // 'dump'
|
|
225
|
+
EntryType.VIEW; // 'view'
|
|
226
|
+
EntryType.CLIENT_REQUEST; // 'client_request'
|
|
227
|
+
```
|
|
228
|
+
|
|
229
|
+
---
|
|
230
|
+
|
|
231
|
+
## API surface
|
|
232
|
+
|
|
233
|
+
```ts
|
|
234
|
+
// Preferred plugin opt-in for stock ZinTrust boot
|
|
235
|
+
import '@zintrust/trace/plugin';
|
|
236
|
+
|
|
237
|
+
// Advanced late bootstrap import for runtime hooks only
|
|
238
|
+
import '@zintrust/trace/register';
|
|
239
|
+
|
|
240
|
+
// Lightweight dashboard/UI-only entrypoint
|
|
241
|
+
import { registerTraceDashboard, registerTraceRoutes } from '@zintrust/trace/ui';
|
|
242
|
+
|
|
243
|
+
// Named exports
|
|
244
|
+
import {
|
|
245
|
+
TraceConfig, // configuration factory + merge helper
|
|
246
|
+
TraceStorage, // storage facade (read/write entries)
|
|
247
|
+
TraceContext, // per-request context (userId, batchId)
|
|
248
|
+
EntryType, // sealed enum of entry types
|
|
249
|
+
// individual watchers...
|
|
250
|
+
HttpWatcher,
|
|
251
|
+
QueryWatcher,
|
|
252
|
+
ExceptionWatcher,
|
|
253
|
+
LogWatcher,
|
|
254
|
+
JobWatcher,
|
|
255
|
+
CacheWatcher,
|
|
256
|
+
ScheduleWatcher,
|
|
257
|
+
MailWatcher,
|
|
258
|
+
AuthWatcher,
|
|
259
|
+
EventWatcher,
|
|
260
|
+
ModelWatcher,
|
|
261
|
+
NotificationWatcher,
|
|
262
|
+
RedisWatcher,
|
|
263
|
+
GateWatcher,
|
|
264
|
+
MiddlewareWatcher,
|
|
265
|
+
CommandWatcher,
|
|
266
|
+
BatchWatcher,
|
|
267
|
+
DumpWatcher,
|
|
268
|
+
ViewWatcher,
|
|
269
|
+
HttpClientWatcher,
|
|
270
|
+
} from '@zintrust/trace';
|
|
271
|
+
```
|
|
272
|
+
|
|
273
|
+
---
|
|
274
|
+
|
|
275
|
+
## Security considerations
|
|
276
|
+
|
|
277
|
+
- **Always** protect the dashboard with middleware (e.g. `middleware: ['admin']`). `@zintrust/trace/ui` exports `registerTraceDashboard(...)` and `registerTraceRoutes(...)`, and neither applies any authentication by default.
|
|
278
|
+
- Sensitive fields in request headers and body are redacted using the `redaction` config before being stored. Review and extend the default redaction lists to match your application's data model.
|
|
279
|
+
- Use a **dedicated database connection** (`TRACE_DB_CONNECTION`) in production so trace writes cannot impact your primary DB connection pool.
|
|
280
|
+
- Keep `TRACE_ENABLED=false` (or unset) in production unless actively investigating an issue.
|
|
281
|
+
|
|
282
|
+
---
|
|
283
|
+
|
|
284
|
+
## Peer dependencies
|
|
285
|
+
|
|
286
|
+
| Package | Version |
|
|
287
|
+
| ---------------- | --------- |
|
|
288
|
+
| `@zintrust/core` | `^0.4.41` |
|
|
@@ -0,0 +1,365 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@zintrust/system-debugger",
|
|
3
|
+
"version": "0.4.67",
|
|
4
|
+
"buildDate": "2026-04-06T10:12:33.243Z",
|
|
5
|
+
"buildEnvironment": {
|
|
6
|
+
"node": "v22.22.1",
|
|
7
|
+
"platform": "darwin",
|
|
8
|
+
"arch": "arm64"
|
|
9
|
+
},
|
|
10
|
+
"git": {
|
|
11
|
+
"commit": "f5a9d786",
|
|
12
|
+
"branch": "release"
|
|
13
|
+
},
|
|
14
|
+
"package": {
|
|
15
|
+
"engines": {
|
|
16
|
+
"node": ">=20.0.0"
|
|
17
|
+
},
|
|
18
|
+
"dependencies": [],
|
|
19
|
+
"peerDependencies": [
|
|
20
|
+
"@zintrust/core"
|
|
21
|
+
]
|
|
22
|
+
},
|
|
23
|
+
"files": {
|
|
24
|
+
"build-manifest.json": {
|
|
25
|
+
"size": 12633,
|
|
26
|
+
"sha256": "48f282e5d70a41bc87dc0f365f17991f1887b1267e899d7de80b7c05a28ebed9"
|
|
27
|
+
},
|
|
28
|
+
"cli-register.d.ts": {
|
|
29
|
+
"size": 258,
|
|
30
|
+
"sha256": "6dd21781558f8510fabce9c896cb8ad6e4039476e4f7c25147ad490bbcf44427"
|
|
31
|
+
},
|
|
32
|
+
"cli-register.js": {
|
|
33
|
+
"size": 1177,
|
|
34
|
+
"sha256": "8476ce194444b0d3eca24bf4ac5fcb29361bafcc586435bc95981f2e217842d3"
|
|
35
|
+
},
|
|
36
|
+
"config.d.ts": {
|
|
37
|
+
"size": 409,
|
|
38
|
+
"sha256": "73920648d0eb12e4b0da36dc230c238974cc686ed3233f48046eb8d1404dfa0f"
|
|
39
|
+
},
|
|
40
|
+
"config.js": {
|
|
41
|
+
"size": 1233,
|
|
42
|
+
"sha256": "351e181e7a9dc30f730509b3b926be200c3959093267e71953a490b7c6da32d0"
|
|
43
|
+
},
|
|
44
|
+
"context.d.ts": {
|
|
45
|
+
"size": 602,
|
|
46
|
+
"sha256": "feb15eda59bc67096d7f25fe71fbf6617c82bcb6970df5cb156a29bd5302da50"
|
|
47
|
+
},
|
|
48
|
+
"context.js": {
|
|
49
|
+
"size": 2523,
|
|
50
|
+
"sha256": "ed3766652a62b7d7374309d75aa99fdb846de3d577d636d3e3d85ffd06b93455"
|
|
51
|
+
},
|
|
52
|
+
"dashboard/handlers.d.ts": {
|
|
53
|
+
"size": 1005,
|
|
54
|
+
"sha256": "8babac3cb64bbafe95e2af9027c455883975ff12fa94e0c2595144ce0de23c00"
|
|
55
|
+
},
|
|
56
|
+
"dashboard/handlers.js": {
|
|
57
|
+
"size": 5393,
|
|
58
|
+
"sha256": "e5721a46d4ff7f21ad63b99b0e9aa292990625ce112a0eb369298da1d76efca5"
|
|
59
|
+
},
|
|
60
|
+
"dashboard/routes.d.ts": {
|
|
61
|
+
"size": 1046,
|
|
62
|
+
"sha256": "5b9e394b3da713c1a92d403fa381cb52941504b8835e454a243cd73514999d0b"
|
|
63
|
+
},
|
|
64
|
+
"dashboard/routes.js": {
|
|
65
|
+
"size": 2525,
|
|
66
|
+
"sha256": "36949c49bb24344512e1149e63a2c0053df90fafe1e1d6d1533744d684ab8755"
|
|
67
|
+
},
|
|
68
|
+
"dashboard/ui.d.ts": {
|
|
69
|
+
"size": 117,
|
|
70
|
+
"sha256": "4862b41e0477f01afa0dbb446d4553b65c22ed774cd1e2db3489059ced392f94"
|
|
71
|
+
},
|
|
72
|
+
"dashboard/ui.js": {
|
|
73
|
+
"size": 61060,
|
|
74
|
+
"sha256": "e3a8bbde4374b2452321250a0a9f827bfef268c2407588191049578863f4f135"
|
|
75
|
+
},
|
|
76
|
+
"index.d.ts": {
|
|
77
|
+
"size": 2324,
|
|
78
|
+
"sha256": "838f8ad0e67c1b262c6001aa11528431e004b96ca601358b435610ffc2611d34"
|
|
79
|
+
},
|
|
80
|
+
"index.js": {
|
|
81
|
+
"size": 3079,
|
|
82
|
+
"sha256": "eef7c370b293a2ac1f29e8c89e3af17d78d6b8ed59e877171f443e20e4095296"
|
|
83
|
+
},
|
|
84
|
+
"migrations/20260331000001_create_zin_debugger_entries_table.d.ts": {
|
|
85
|
+
"size": 317,
|
|
86
|
+
"sha256": "40fd91bf69322477f21e68a11f4c403062743d1f83cdabf57ae6238485ef7de9"
|
|
87
|
+
},
|
|
88
|
+
"migrations/20260331000001_create_zin_debugger_entries_table.js": {
|
|
89
|
+
"size": 971,
|
|
90
|
+
"sha256": "f399cf9e7549c58323fb624e894fc10affa49f30ceabfeaf6d19df0bfa78f6e6"
|
|
91
|
+
},
|
|
92
|
+
"migrations/20260331000002_create_zin_debugger_entries_tags_table.d.ts": {
|
|
93
|
+
"size": 317,
|
|
94
|
+
"sha256": "01b5ea90fe3702829f7b57cfd1dd0f8a0675b69025bae378bf9c3049007118c8"
|
|
95
|
+
},
|
|
96
|
+
"migrations/20260331000002_create_zin_debugger_entries_tags_table.js": {
|
|
97
|
+
"size": 759,
|
|
98
|
+
"sha256": "04e90930ca434eba6b84df1ff43d1fc3888e4c276088f496b25b619c52ef383e"
|
|
99
|
+
},
|
|
100
|
+
"migrations/20260331000003_create_zin_debugger_monitoring_table.d.ts": {
|
|
101
|
+
"size": 321,
|
|
102
|
+
"sha256": "955a2e7581187333726cb7a9812fd88d47b5b15caa83445e614a8830c4574e2b"
|
|
103
|
+
},
|
|
104
|
+
"migrations/20260331000003_create_zin_debugger_monitoring_table.js": {
|
|
105
|
+
"size": 541,
|
|
106
|
+
"sha256": "d391e864f39b32b2274a56edceddb2c9a99e2ec0717c58d748a1027376178552"
|
|
107
|
+
},
|
|
108
|
+
"migrations/index.d.ts": {
|
|
109
|
+
"size": 296,
|
|
110
|
+
"sha256": "c13325fc4a2b24e4fd315c1cce7acdecc058c18e18214491c0f18e1f8683bb4b"
|
|
111
|
+
},
|
|
112
|
+
"migrations/index.js": {
|
|
113
|
+
"size": 395,
|
|
114
|
+
"sha256": "06943fc21aac77f4abc674ad8ee5b3e99f9b0288c81418b1e0a7414c05644f76"
|
|
115
|
+
},
|
|
116
|
+
"plugin.d.ts": {
|
|
117
|
+
"size": 16,
|
|
118
|
+
"sha256": "71d366165dd36f1675aa253a76262b226fb6c62e5ab632746b8aea61c0c625fc"
|
|
119
|
+
},
|
|
120
|
+
"plugin.js": {
|
|
121
|
+
"size": 137,
|
|
122
|
+
"sha256": "5bffe9afc797c089441795f49f1526f16b0e67518264289e399866fc04835aa8"
|
|
123
|
+
},
|
|
124
|
+
"register.d.ts": {
|
|
125
|
+
"size": 16,
|
|
126
|
+
"sha256": "71d366165dd36f1675aa253a76262b226fb6c62e5ab632746b8aea61c0c625fc"
|
|
127
|
+
},
|
|
128
|
+
"register.js": {
|
|
129
|
+
"size": 6737,
|
|
130
|
+
"sha256": "9348c5b08f47174e61da3c73ec26ad524c9672e0bea35d5c20d99b1884083c6d"
|
|
131
|
+
},
|
|
132
|
+
"storage/DebuggerStorage.d.ts": {
|
|
133
|
+
"size": 535,
|
|
134
|
+
"sha256": "315bf62a9ea1ba379f0ebcbf9cebff1dea3a53af07995755e21d7b692001c9b9"
|
|
135
|
+
},
|
|
136
|
+
"storage/DebuggerStorage.js": {
|
|
137
|
+
"size": 7454,
|
|
138
|
+
"sha256": "f01ea439b2d9218abeba9308b5d10ee9ad96cec7cd9466dc7ce3105e7f0440f4"
|
|
139
|
+
},
|
|
140
|
+
"storage/index.d.ts": {
|
|
141
|
+
"size": 112,
|
|
142
|
+
"sha256": "a791dcfbe0a0aaf714cd6cc40815219ad480e93bc89dbd7395806ec0e4e1ecb8"
|
|
143
|
+
},
|
|
144
|
+
"storage/index.js": {
|
|
145
|
+
"size": 56,
|
|
146
|
+
"sha256": "5984122a9c183fd8e18e076d586d518051a5c3f095a839ce6a9db4126e416c9d"
|
|
147
|
+
},
|
|
148
|
+
"types.d.ts": {
|
|
149
|
+
"size": 6993,
|
|
150
|
+
"sha256": "73f034b042bee2e230160f5008e05a12b7cae5d0feecb121d836615eb6d43b1b"
|
|
151
|
+
},
|
|
152
|
+
"types.js": {
|
|
153
|
+
"size": 699,
|
|
154
|
+
"sha256": "585b7580ced5db88092befebd23b5b94da7ce7730f678958a349bff1579a3f79"
|
|
155
|
+
},
|
|
156
|
+
"ui.d.ts": {
|
|
157
|
+
"size": 408,
|
|
158
|
+
"sha256": "e672daee8f407a58d070b155724f6834df13588f40799d50f951ee884b5081b0"
|
|
159
|
+
},
|
|
160
|
+
"ui.js": {
|
|
161
|
+
"size": 304,
|
|
162
|
+
"sha256": "5bdc5a3e6ad6693fd39b154fba693de16fae93d5e95ef908c77ba03b53dd1e81"
|
|
163
|
+
},
|
|
164
|
+
"utils/authTag.d.ts": {
|
|
165
|
+
"size": 150,
|
|
166
|
+
"sha256": "db7ed89155df453650ad2805d8cd7069a70b14eacac2d97c4b0bebd45df4bdd4"
|
|
167
|
+
},
|
|
168
|
+
"utils/authTag.js": {
|
|
169
|
+
"size": 540,
|
|
170
|
+
"sha256": "ec3bdfd3bbc9ae820964caa21b061907321d0d9c6b9ce24275cf7c5408387b8d"
|
|
171
|
+
},
|
|
172
|
+
"utils/familyHash.d.ts": {
|
|
173
|
+
"size": 60,
|
|
174
|
+
"sha256": "c94f85390c52470df6946a39576c720ea92c89797ae62fff913191c45580248f"
|
|
175
|
+
},
|
|
176
|
+
"utils/familyHash.js": {
|
|
177
|
+
"size": 266,
|
|
178
|
+
"sha256": "f60526423e69fa5c461b0f5d8dac90b1f0c18149609cd1109226f1c8d985f223"
|
|
179
|
+
},
|
|
180
|
+
"utils/redact.d.ts": {
|
|
181
|
+
"size": 376,
|
|
182
|
+
"sha256": "0ce4549ec31a9b2858d095d4ff5bf677e9fd99f3ff62c065b92cc01fdf38da47"
|
|
183
|
+
},
|
|
184
|
+
"utils/redact.js": {
|
|
185
|
+
"size": 1633,
|
|
186
|
+
"sha256": "2ee18d55a77935ac32b04f40dea1257781293fe13f0ea8a2858b0e2631800159"
|
|
187
|
+
},
|
|
188
|
+
"utils/requestFilter.d.ts": {
|
|
189
|
+
"size": 195,
|
|
190
|
+
"sha256": "467f6ed959bd25731649b4afc6d555d316c4724f9586e0bd922881af41ba6746"
|
|
191
|
+
},
|
|
192
|
+
"utils/requestFilter.js": {
|
|
193
|
+
"size": 1026,
|
|
194
|
+
"sha256": "67448f03631a349572f6f3ddfcb2545e868138501dff3775ecb2e218000a39d4"
|
|
195
|
+
},
|
|
196
|
+
"utils/stackFrame.d.ts": {
|
|
197
|
+
"size": 149,
|
|
198
|
+
"sha256": "55008bb0bf16e96c7b4f706fa3aa2d3a5bb3a68d0b8bcbd046d23462a7f620e8"
|
|
199
|
+
},
|
|
200
|
+
"utils/stackFrame.js": {
|
|
201
|
+
"size": 1413,
|
|
202
|
+
"sha256": "ca651d04eaea48a240ec7c5714a0f8f1d92f2fcdaa6e735df0009b56de8c29ed"
|
|
203
|
+
},
|
|
204
|
+
"watchers/AuthWatcher.d.ts": {
|
|
205
|
+
"size": 231,
|
|
206
|
+
"sha256": "8ceed9e2f794611da26676e44886efdb20728f9082736e62127edac4582033a8"
|
|
207
|
+
},
|
|
208
|
+
"watchers/AuthWatcher.js": {
|
|
209
|
+
"size": 1338,
|
|
210
|
+
"sha256": "2312a54a86d6639ccd03db8a7988dc5b4d24ad75322c07b185542b323a7d5507"
|
|
211
|
+
},
|
|
212
|
+
"watchers/BatchWatcher.d.ts": {
|
|
213
|
+
"size": 283,
|
|
214
|
+
"sha256": "c86b597d8c118fbcf9f870b633dfe7fbff7db77df3681bc6c70beabba2d77e1b"
|
|
215
|
+
},
|
|
216
|
+
"watchers/BatchWatcher.js": {
|
|
217
|
+
"size": 1239,
|
|
218
|
+
"sha256": "5e7f9c4ed9276661939743ed447374832906293a357cdf7350f33575e897d59f"
|
|
219
|
+
},
|
|
220
|
+
"watchers/CacheWatcher.d.ts": {
|
|
221
|
+
"size": 271,
|
|
222
|
+
"sha256": "325d3c9e513776f2b763f24b3f0146a2a8c1d16e3e9349ae051891396b33cd4f"
|
|
223
|
+
},
|
|
224
|
+
"watchers/CacheWatcher.js": {
|
|
225
|
+
"size": 1530,
|
|
226
|
+
"sha256": "2011020f7b5d9c651a5bcc85727603c37a58b5a739b9b6303589d1417d40e542"
|
|
227
|
+
},
|
|
228
|
+
"watchers/CommandWatcher.d.ts": {
|
|
229
|
+
"size": 273,
|
|
230
|
+
"sha256": "6760a69c45927c1b381edf9fee86f236931845f0537f90c0ba160853b6972369"
|
|
231
|
+
},
|
|
232
|
+
"watchers/CommandWatcher.js": {
|
|
233
|
+
"size": 1412,
|
|
234
|
+
"sha256": "7d6766391d1f1f6ffa86f7bd29803918f1b396af29a85f4082575e796c40450f"
|
|
235
|
+
},
|
|
236
|
+
"watchers/DumpWatcher.d.ts": {
|
|
237
|
+
"size": 314,
|
|
238
|
+
"sha256": "72910ff111e35a442a97b1fda784c952af7d77a6790cbdd39ddf8c5c7d7c2ce4"
|
|
239
|
+
},
|
|
240
|
+
"watchers/DumpWatcher.js": {
|
|
241
|
+
"size": 1342,
|
|
242
|
+
"sha256": "30276e196458caee34d6192c73d1b6e3ab93c09c7edd93d61688a075d5efd6e5"
|
|
243
|
+
},
|
|
244
|
+
"watchers/EventWatcher.d.ts": {
|
|
245
|
+
"size": 229,
|
|
246
|
+
"sha256": "245ba4b27c890d0b18dcce2b8c7e1fd64347372160c6ebd0a79fca9b097f01b8"
|
|
247
|
+
},
|
|
248
|
+
"watchers/EventWatcher.js": {
|
|
249
|
+
"size": 1200,
|
|
250
|
+
"sha256": "a4730b74510b8eb2446ec78b0f5be4076f93945c7c68e50354a84141f8b7af74"
|
|
251
|
+
},
|
|
252
|
+
"watchers/ExceptionWatcher.d.ts": {
|
|
253
|
+
"size": 150,
|
|
254
|
+
"sha256": "90509da30a621cef3a101a7f0dc482ca9faa9f92b4158989a66133644cd080c0"
|
|
255
|
+
},
|
|
256
|
+
"watchers/ExceptionWatcher.js": {
|
|
257
|
+
"size": 3466,
|
|
258
|
+
"sha256": "30d8fd9042625e7a5e9619b02bf8d60eff8e3f515269067ec5ab9d281c13de62"
|
|
259
|
+
},
|
|
260
|
+
"watchers/GateWatcher.d.ts": {
|
|
261
|
+
"size": 268,
|
|
262
|
+
"sha256": "c8e440c0a32d0b3a96c8304fa2b70db72b9148f35f481446c31cc87f7e801d89"
|
|
263
|
+
},
|
|
264
|
+
"watchers/GateWatcher.js": {
|
|
265
|
+
"size": 1231,
|
|
266
|
+
"sha256": "62618a9526870f7bc9a7e5242a61798f74cda3f7da798b10bc20512a86e2692c"
|
|
267
|
+
},
|
|
268
|
+
"watchers/HttpClientWatcher.d.ts": {
|
|
269
|
+
"size": 289,
|
|
270
|
+
"sha256": "e577a28bf4335fb6bdc222c8d6b07fd8ba8ec1ca627ba42e3f7c52e76d6f5450"
|
|
271
|
+
},
|
|
272
|
+
"watchers/HttpClientWatcher.js": {
|
|
273
|
+
"size": 1597,
|
|
274
|
+
"sha256": "f8b6b0accd8a7fdc6e2e5cf1ee953e0543c9a11f4eba497b00d2c47066529e54"
|
|
275
|
+
},
|
|
276
|
+
"watchers/HttpWatcher.d.ts": {
|
|
277
|
+
"size": 102,
|
|
278
|
+
"sha256": "b1da47d14a79f8be7be60a4ca105f1be579383d33a4da71eb26a703ea37934d2"
|
|
279
|
+
},
|
|
280
|
+
"watchers/HttpWatcher.js": {
|
|
281
|
+
"size": 2652,
|
|
282
|
+
"sha256": "2af67c9201a881150c0d715d226a831689663f8be0b6fe462fea0f0a04b046a8"
|
|
283
|
+
},
|
|
284
|
+
"watchers/JobWatcher.d.ts": {
|
|
285
|
+
"size": 447,
|
|
286
|
+
"sha256": "4e391ba756706ab54b6978e4a3ff928a13cd0128435aa8a2d5131124ea7a2d6b"
|
|
287
|
+
},
|
|
288
|
+
"watchers/JobWatcher.js": {
|
|
289
|
+
"size": 3218,
|
|
290
|
+
"sha256": "6d645f3296a0dc6e95b3e5f4b093e0cda19f7e16c8990692232314fc55c4e68e"
|
|
291
|
+
},
|
|
292
|
+
"watchers/LogWatcher.d.ts": {
|
|
293
|
+
"size": 101,
|
|
294
|
+
"sha256": "4c843b1d1f47b04dc98ff4e77c70324082b1eaeea36a387656640f39aa8e33b9"
|
|
295
|
+
},
|
|
296
|
+
"watchers/LogWatcher.js": {
|
|
297
|
+
"size": 1682,
|
|
298
|
+
"sha256": "8f56fae11c27026919c883f5aa69a64c0898a09c40bd3ca2d6bdb5a5df47d50f"
|
|
299
|
+
},
|
|
300
|
+
"watchers/MailWatcher.d.ts": {
|
|
301
|
+
"size": 220,
|
|
302
|
+
"sha256": "82d97e040c1def5d7c7a0617898587b176ddef11678eb5961bb6305652ae29f6"
|
|
303
|
+
},
|
|
304
|
+
"watchers/MailWatcher.js": {
|
|
305
|
+
"size": 1226,
|
|
306
|
+
"sha256": "382d6ebf6c2007b8f25fc0029c359af2854791612dd1bcdb006c942001bd486a"
|
|
307
|
+
},
|
|
308
|
+
"watchers/MiddlewareWatcher.d.ts": {
|
|
309
|
+
"size": 265,
|
|
310
|
+
"sha256": "b793df7db674284ee2b406d63cfb3493e2f027ff4a131acf6730256efc1dc9f0"
|
|
311
|
+
},
|
|
312
|
+
"watchers/MiddlewareWatcher.js": {
|
|
313
|
+
"size": 1145,
|
|
314
|
+
"sha256": "0ffc126f57593679afdc60f5c37ee29d41cff8eb8cb86824a94c727468750c72"
|
|
315
|
+
},
|
|
316
|
+
"watchers/ModelWatcher.d.ts": {
|
|
317
|
+
"size": 291,
|
|
318
|
+
"sha256": "1c77882b7d83f1aabe402bafb19e8d2d3a69afb1e336846ce009842ad9c735e4"
|
|
319
|
+
},
|
|
320
|
+
"watchers/ModelWatcher.js": {
|
|
321
|
+
"size": 1142,
|
|
322
|
+
"sha256": "ac16fa35e3f51e5a5fffcdb9c1057335935d3ab0178abe9394e2da8842a96d46"
|
|
323
|
+
},
|
|
324
|
+
"watchers/NotificationWatcher.d.ts": {
|
|
325
|
+
"size": 243,
|
|
326
|
+
"sha256": "9b1a5196c24ce523f677c88360653d269f8ba14cbf28ad4aeb732f7611fb9294"
|
|
327
|
+
},
|
|
328
|
+
"watchers/NotificationWatcher.js": {
|
|
329
|
+
"size": 1254,
|
|
330
|
+
"sha256": "3743860c1b8b1c91eff006b2c111c0a9d7c4ac84efc5968edd8fb830a66321c7"
|
|
331
|
+
},
|
|
332
|
+
"watchers/QueryWatcher.d.ts": {
|
|
333
|
+
"size": 103,
|
|
334
|
+
"sha256": "28f53ebfbbaf011e0eae5bc4cf1a496d7d998adda5b2f3bb8fa06a77a52acc4f"
|
|
335
|
+
},
|
|
336
|
+
"watchers/QueryWatcher.js": {
|
|
337
|
+
"size": 2674,
|
|
338
|
+
"sha256": "cfce3dce30c8ea0317b4e53bcfb65e2fd9de235af261cbee16888618933b8987"
|
|
339
|
+
},
|
|
340
|
+
"watchers/RedisWatcher.d.ts": {
|
|
341
|
+
"size": 300,
|
|
342
|
+
"sha256": "22ad070105d663137226843ac7a8ff74f96aed5f20a79529b1973d5378ffff3b"
|
|
343
|
+
},
|
|
344
|
+
"watchers/RedisWatcher.js": {
|
|
345
|
+
"size": 1250,
|
|
346
|
+
"sha256": "275346fa5c2c1920b3a6b3f7aa99fdb2b4ad4e5237f6718c906ac1d8f570a907"
|
|
347
|
+
},
|
|
348
|
+
"watchers/ScheduleWatcher.d.ts": {
|
|
349
|
+
"size": 297,
|
|
350
|
+
"sha256": "00a4033c4dbaaac35db0c9171c617980515e25d63a446a6ec1819a47fee110d8"
|
|
351
|
+
},
|
|
352
|
+
"watchers/ScheduleWatcher.js": {
|
|
353
|
+
"size": 1294,
|
|
354
|
+
"sha256": "c74b0f03e325e9fed019630f30dc434cd95987305d2c09e8cbd5e73f15ef07dc"
|
|
355
|
+
},
|
|
356
|
+
"watchers/ViewWatcher.d.ts": {
|
|
357
|
+
"size": 208,
|
|
358
|
+
"sha256": "75f352277853b3a1980c95332556aacbf9b438d4595d9071655b1afc82df3bf0"
|
|
359
|
+
},
|
|
360
|
+
"watchers/ViewWatcher.js": {
|
|
361
|
+
"size": 1081,
|
|
362
|
+
"sha256": "cead371420d111c59655cce113c8dfe56c08367b3ef5e2136e6c407bc0fbe7e8"
|
|
363
|
+
}
|
|
364
|
+
}
|
|
365
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
const commandModule = (await import('@zintrust/core/cli'));
|
|
2
|
+
const getTraceProviders = () => {
|
|
3
|
+
const { TraceCommands } = commandModule;
|
|
4
|
+
return [
|
|
5
|
+
['trace:prune', TraceCommands.createTracePruneProvider()],
|
|
6
|
+
['trace:clear', TraceCommands.createTraceClearProvider()],
|
|
7
|
+
['trace:status', TraceCommands.createTraceStatusProvider()],
|
|
8
|
+
['migrate:trace', TraceCommands.createTraceMigrateProvider()],
|
|
9
|
+
];
|
|
10
|
+
};
|
|
11
|
+
export function registerTraceCliCommands(registry) {
|
|
12
|
+
for (const [id, provider] of getTraceProviders()) {
|
|
13
|
+
registry.register(id, provider);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
const globalWithRegistry = globalThis;
|
|
17
|
+
const globalRegistry = globalWithRegistry.__zintrust_cli_command_registry__ ??
|
|
18
|
+
(globalWithRegistry.__zintrust_cli_command_registry__ = new Map());
|
|
19
|
+
registerTraceCliCommands({
|
|
20
|
+
register: (id, provider) => {
|
|
21
|
+
globalRegistry.set(id, provider);
|
|
22
|
+
},
|
|
23
|
+
});
|
|
24
|
+
try {
|
|
25
|
+
const coreCli = (await import('@zintrust/core/cli'));
|
|
26
|
+
if (coreCli.OptionalCliCommandRegistry !== undefined) {
|
|
27
|
+
registerTraceCliCommands(coreCli.OptionalCliCommandRegistry);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
catch {
|
|
31
|
+
// no-op
|
|
32
|
+
}
|