@waiaas/daemon 2.8.0-rc → 2.8.0-rc.4
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 +17 -5
- package/dist/api/middleware/master-auth.d.ts +8 -1
- package/dist/api/middleware/master-auth.d.ts.map +1 -1
- package/dist/api/middleware/master-auth.js +8 -1
- package/dist/api/middleware/master-auth.js.map +1 -1
- package/dist/api/routes/actions.d.ts +3 -0
- package/dist/api/routes/actions.d.ts.map +1 -1
- package/dist/api/routes/actions.js +1 -1
- package/dist/api/routes/actions.js.map +1 -1
- package/dist/api/routes/admin.d.ts +3 -0
- package/dist/api/routes/admin.d.ts.map +1 -1
- package/dist/api/routes/admin.js +207 -3
- package/dist/api/routes/admin.js.map +1 -1
- package/dist/api/routes/defi-positions.d.ts +31 -0
- package/dist/api/routes/defi-positions.d.ts.map +1 -0
- package/dist/api/routes/defi-positions.js +182 -0
- package/dist/api/routes/defi-positions.js.map +1 -0
- package/dist/api/routes/openapi-schemas.d.ts +179 -5
- package/dist/api/routes/openapi-schemas.d.ts.map +1 -1
- package/dist/api/routes/openapi-schemas.js +44 -0
- package/dist/api/routes/openapi-schemas.js.map +1 -1
- package/dist/api/routes/transactions.d.ts +3 -0
- package/dist/api/routes/transactions.d.ts.map +1 -1
- package/dist/api/routes/transactions.js +2 -2
- package/dist/api/routes/transactions.js.map +1 -1
- package/dist/api/routes/wallets.d.ts +3 -0
- package/dist/api/routes/wallets.d.ts.map +1 -1
- package/dist/api/routes/wallets.js +3 -2
- package/dist/api/routes/wallets.js.map +1 -1
- package/dist/api/routes/x402.d.ts +3 -0
- package/dist/api/routes/x402.d.ts.map +1 -1
- package/dist/api/routes/x402.js +1 -1
- package/dist/api/routes/x402.js.map +1 -1
- package/dist/api/server.d.ts +3 -0
- package/dist/api/server.d.ts.map +1 -1
- package/dist/api/server.js +35 -18
- package/dist/api/server.js.map +1 -1
- package/dist/infrastructure/action/action-provider-registry.d.ts.map +1 -1
- package/dist/infrastructure/action/action-provider-registry.js +2 -0
- package/dist/infrastructure/action/action-provider-registry.js.map +1 -1
- package/dist/infrastructure/action/api-key-store.d.ts +5 -1
- package/dist/infrastructure/action/api-key-store.d.ts.map +1 -1
- package/dist/infrastructure/action/api-key-store.js +10 -4
- package/dist/infrastructure/action/api-key-store.js.map +1 -1
- package/dist/infrastructure/database/migrate.d.ts +1 -1
- package/dist/infrastructure/database/migrate.d.ts.map +1 -1
- package/dist/infrastructure/database/migrate.js +110 -2
- package/dist/infrastructure/database/migrate.js.map +1 -1
- package/dist/infrastructure/database/schema.d.ts +299 -0
- package/dist/infrastructure/database/schema.d.ts.map +1 -1
- package/dist/infrastructure/database/schema.js +31 -1
- package/dist/infrastructure/database/schema.js.map +1 -1
- package/dist/infrastructure/keystore/re-encrypt.d.ts +28 -0
- package/dist/infrastructure/keystore/re-encrypt.d.ts.map +1 -0
- package/dist/infrastructure/keystore/re-encrypt.js +134 -0
- package/dist/infrastructure/keystore/re-encrypt.js.map +1 -0
- package/dist/infrastructure/settings/setting-keys.d.ts +1 -1
- package/dist/infrastructure/settings/setting-keys.d.ts.map +1 -1
- package/dist/infrastructure/settings/setting-keys.js +8 -0
- package/dist/infrastructure/settings/setting-keys.js.map +1 -1
- package/dist/infrastructure/settings/settings-service.d.ts +6 -0
- package/dist/infrastructure/settings/settings-service.d.ts.map +1 -1
- package/dist/infrastructure/settings/settings-service.js +10 -4
- package/dist/infrastructure/settings/settings-service.js.map +1 -1
- package/dist/lifecycle/daemon.d.ts +8 -1
- package/dist/lifecycle/daemon.d.ts.map +1 -1
- package/dist/lifecycle/daemon.js +153 -8
- package/dist/lifecycle/daemon.js.map +1 -1
- package/dist/notifications/notification-service.d.ts.map +1 -1
- package/dist/notifications/notification-service.js +6 -3
- package/dist/notifications/notification-service.js.map +1 -1
- package/dist/notifications/templates/message-templates.d.ts.map +1 -1
- package/dist/notifications/templates/message-templates.js +32 -2
- package/dist/notifications/templates/message-templates.js.map +1 -1
- package/dist/pipeline/database-policy-engine.d.ts +30 -0
- package/dist/pipeline/database-policy-engine.d.ts.map +1 -1
- package/dist/pipeline/database-policy-engine.js +149 -2
- package/dist/pipeline/database-policy-engine.js.map +1 -1
- package/dist/pipeline/sign-only.d.ts.map +1 -1
- package/dist/pipeline/sign-only.js +1 -0
- package/dist/pipeline/sign-only.js.map +1 -1
- package/dist/pipeline/stages.d.ts.map +1 -1
- package/dist/pipeline/stages.js +7 -0
- package/dist/pipeline/stages.js.map +1 -1
- package/dist/services/autostop-service.d.ts +3 -3
- package/dist/services/autostop-service.d.ts.map +1 -1
- package/dist/services/autostop-service.js +8 -15
- package/dist/services/autostop-service.js.map +1 -1
- package/dist/services/defi/position-tracker.d.ts +61 -0
- package/dist/services/defi/position-tracker.d.ts.map +1 -0
- package/dist/services/defi/position-tracker.js +156 -0
- package/dist/services/defi/position-tracker.js.map +1 -0
- package/dist/services/defi/position-write-queue.d.ts +37 -0
- package/dist/services/defi/position-write-queue.d.ts.map +1 -0
- package/dist/services/defi/position-write-queue.js +92 -0
- package/dist/services/defi/position-write-queue.js.map +1 -0
- package/dist/services/monitoring/defi-monitor-service.d.ts +29 -0
- package/dist/services/monitoring/defi-monitor-service.d.ts.map +1 -0
- package/dist/services/monitoring/defi-monitor-service.js +62 -0
- package/dist/services/monitoring/defi-monitor-service.js.map +1 -0
- package/dist/services/monitoring/health-factor-monitor.d.ts +66 -0
- package/dist/services/monitoring/health-factor-monitor.d.ts.map +1 -0
- package/dist/services/monitoring/health-factor-monitor.js +247 -0
- package/dist/services/monitoring/health-factor-monitor.js.map +1 -0
- package/package.json +5 -5
- package/public/admin/assets/index-BpDnuS0k.css +1 -0
- package/public/admin/assets/index-CgtuiQGn.js +1 -0
- package/public/admin/index.html +2 -2
- package/public/admin/assets/index-DDqQR5T7.css +0 -1
- package/public/admin/assets/index-DrXaSV7I.js +0 -1
package/dist/api/server.js
CHANGED
|
@@ -45,6 +45,7 @@ import { tokenRegistryRoutes } from './routes/tokens.js';
|
|
|
45
45
|
import { connectInfoRoutes } from './routes/connect-info.js';
|
|
46
46
|
import { incomingRoutes } from './routes/incoming.js';
|
|
47
47
|
import { createStakingRoutes } from './routes/staking.js';
|
|
48
|
+
import { createDefiPositionRoutes } from './routes/defi-positions.js';
|
|
48
49
|
import { mcpTokenRoutes } from './routes/mcp.js';
|
|
49
50
|
import { WAIaaSError } from '@waiaas/core';
|
|
50
51
|
import { TokenRegistryService } from '../infrastructure/token-registry/index.js';
|
|
@@ -73,8 +74,8 @@ export function createApp(deps = {}) {
|
|
|
73
74
|
// Register error handler
|
|
74
75
|
app.onError(errorHandler);
|
|
75
76
|
// Register route-level auth middleware on the app (before sub-routers)
|
|
76
|
-
if (deps.masterPasswordHash !== undefined) {
|
|
77
|
-
const masterAuth = createMasterAuth({ masterPasswordHash: deps.masterPasswordHash });
|
|
77
|
+
if (deps.masterPasswordHash !== undefined || deps.passwordRef) {
|
|
78
|
+
const masterAuth = createMasterAuth({ masterPasswordHash: deps.masterPasswordHash, passwordRef: deps.passwordRef });
|
|
78
79
|
app.use('/v1/wallets', masterAuth);
|
|
79
80
|
// /v1/policies: GET allows sessionAuth or masterAuth, others require masterAuth only
|
|
80
81
|
app.use('/v1/policies', async (c, next) => {
|
|
@@ -105,8 +106,8 @@ export function createApp(deps = {}) {
|
|
|
105
106
|
app.use('/v1/sessions/:id/wallets/*', masterAuth);
|
|
106
107
|
}
|
|
107
108
|
// masterAuth for GET /v1/wallets/:id (wallet detail) -- skip sub-paths with own auth
|
|
108
|
-
if (deps.masterPasswordHash !== undefined) {
|
|
109
|
-
const masterAuthForWalletDetail = createMasterAuth({ masterPasswordHash: deps.masterPasswordHash });
|
|
109
|
+
if (deps.masterPasswordHash !== undefined || deps.passwordRef) {
|
|
110
|
+
const masterAuthForWalletDetail = createMasterAuth({ masterPasswordHash: deps.masterPasswordHash, passwordRef: deps.passwordRef });
|
|
110
111
|
app.use('/v1/wallets/:id', async (c, next) => {
|
|
111
112
|
// Skip sub-paths that have their own masterAuth registered below
|
|
112
113
|
if (c.req.path.includes('/owner') || c.req.path.includes('/default-network') || c.req.path.includes('/networks') || c.req.path.includes('/wc/')) {
|
|
@@ -117,15 +118,15 @@ export function createApp(deps = {}) {
|
|
|
117
118
|
});
|
|
118
119
|
}
|
|
119
120
|
// masterAuth for PUT /v1/wallets/:id/owner
|
|
120
|
-
if (deps.masterPasswordHash !== undefined) {
|
|
121
|
-
const masterAuthForOwner = createMasterAuth({ masterPasswordHash: deps.masterPasswordHash });
|
|
121
|
+
if (deps.masterPasswordHash !== undefined || deps.passwordRef) {
|
|
122
|
+
const masterAuthForOwner = createMasterAuth({ masterPasswordHash: deps.masterPasswordHash, passwordRef: deps.passwordRef });
|
|
122
123
|
app.use('/v1/wallets/:id/owner', masterAuthForOwner);
|
|
123
124
|
app.use('/v1/wallets/:id/default-network', masterAuthForOwner);
|
|
124
125
|
app.use('/v1/wallets/:id/networks', masterAuthForOwner);
|
|
125
126
|
}
|
|
126
127
|
// masterAuth for WalletConnect routes
|
|
127
|
-
if (deps.masterPasswordHash !== undefined) {
|
|
128
|
-
const masterAuthForWc = createMasterAuth({ masterPasswordHash: deps.masterPasswordHash });
|
|
128
|
+
if (deps.masterPasswordHash !== undefined || deps.passwordRef) {
|
|
129
|
+
const masterAuthForWc = createMasterAuth({ masterPasswordHash: deps.masterPasswordHash, passwordRef: deps.passwordRef });
|
|
129
130
|
app.use('/v1/wallets/:id/wc/*', masterAuthForWc);
|
|
130
131
|
}
|
|
131
132
|
if (deps.jwtSecretManager && deps.db) {
|
|
@@ -189,8 +190,8 @@ export function createApp(deps = {}) {
|
|
|
189
190
|
app.use('/v1/wallets/:id/owner/verify', ownerAuth);
|
|
190
191
|
}
|
|
191
192
|
// masterAuth for admin routes (except GET /admin/kill-switch which is public)
|
|
192
|
-
if (deps.masterPasswordHash !== undefined) {
|
|
193
|
-
const masterAuthForAdmin = createMasterAuth({ masterPasswordHash: deps.masterPasswordHash });
|
|
193
|
+
if (deps.masterPasswordHash !== undefined || deps.passwordRef) {
|
|
194
|
+
const masterAuthForAdmin = createMasterAuth({ masterPasswordHash: deps.masterPasswordHash, passwordRef: deps.passwordRef });
|
|
194
195
|
app.use('/v1/admin/status', masterAuthForAdmin);
|
|
195
196
|
app.use('/v1/admin/kill-switch', async (c, next) => {
|
|
196
197
|
// POST requires masterAuth, GET is public
|
|
@@ -231,6 +232,8 @@ export function createApp(deps = {}) {
|
|
|
231
232
|
app.use('/v1/admin/transactions/*', masterAuthForAdmin);
|
|
232
233
|
app.use('/v1/admin/incoming', masterAuthForAdmin);
|
|
233
234
|
app.use('/v1/admin/rpc-status', masterAuthForAdmin);
|
|
235
|
+
app.use('/v1/admin/defi/*', masterAuthForAdmin);
|
|
236
|
+
app.use('/v1/admin/master-password', masterAuthForAdmin);
|
|
234
237
|
// masterAuth for GET /v1/actions/providers (Admin UI reads provider list)
|
|
235
238
|
app.use('/v1/actions/providers', async (c, next) => {
|
|
236
239
|
if (c.req.method === 'GET') {
|
|
@@ -259,12 +262,14 @@ export function createApp(deps = {}) {
|
|
|
259
262
|
// Register utils routes (sessionAuth required -- stateless utilities)
|
|
260
263
|
app.route('/v1', utilsRoutes());
|
|
261
264
|
// Register wallet CRUD routes when deps are available
|
|
262
|
-
|
|
265
|
+
const effectiveMasterPassword = deps.passwordRef?.password ?? deps.masterPassword;
|
|
266
|
+
if (deps.db && deps.sqlite && deps.keyStore && effectiveMasterPassword !== undefined && deps.config) {
|
|
263
267
|
app.route('/v1', walletCrudRoutes({
|
|
264
268
|
db: deps.db,
|
|
265
269
|
sqlite: deps.sqlite,
|
|
266
270
|
keyStore: deps.keyStore,
|
|
267
|
-
masterPassword:
|
|
271
|
+
masterPassword: effectiveMasterPassword,
|
|
272
|
+
passwordRef: deps.passwordRef,
|
|
268
273
|
config: deps.config,
|
|
269
274
|
adapterPool: deps.adapterPool ?? undefined,
|
|
270
275
|
notificationService: deps.notificationService,
|
|
@@ -321,10 +326,18 @@ export function createApp(deps = {}) {
|
|
|
321
326
|
priceOracle: deps.priceOracle,
|
|
322
327
|
}));
|
|
323
328
|
}
|
|
329
|
+
// Register DeFi position routes (sessionAuth via /v1/wallet/* wildcard)
|
|
330
|
+
if (deps.db) {
|
|
331
|
+
app.route('/v1', createDefiPositionRoutes({
|
|
332
|
+
db: deps.db,
|
|
333
|
+
sqlite: deps.sqlite,
|
|
334
|
+
actionProviderRegistry: deps.actionProviderRegistry,
|
|
335
|
+
}));
|
|
336
|
+
}
|
|
324
337
|
// Register transaction routes when all pipeline deps are available
|
|
325
338
|
if (deps.db &&
|
|
326
339
|
deps.keyStore &&
|
|
327
|
-
|
|
340
|
+
effectiveMasterPassword !== undefined &&
|
|
328
341
|
deps.adapterPool &&
|
|
329
342
|
deps.policyEngine &&
|
|
330
343
|
deps.config) {
|
|
@@ -334,7 +347,8 @@ export function createApp(deps = {}) {
|
|
|
334
347
|
config: deps.config,
|
|
335
348
|
keyStore: deps.keyStore,
|
|
336
349
|
policyEngine: deps.policyEngine,
|
|
337
|
-
masterPassword:
|
|
350
|
+
masterPassword: effectiveMasterPassword,
|
|
351
|
+
passwordRef: deps.passwordRef,
|
|
338
352
|
approvalWorkflow: deps.approvalWorkflow,
|
|
339
353
|
delayQueue: deps.delayQueue,
|
|
340
354
|
ownerLifecycle: deps.ownerLifecycle,
|
|
@@ -353,7 +367,7 @@ export function createApp(deps = {}) {
|
|
|
353
367
|
deps.apiKeyStore &&
|
|
354
368
|
deps.db &&
|
|
355
369
|
deps.keyStore &&
|
|
356
|
-
|
|
370
|
+
effectiveMasterPassword !== undefined &&
|
|
357
371
|
deps.adapterPool &&
|
|
358
372
|
deps.policyEngine &&
|
|
359
373
|
deps.config) {
|
|
@@ -365,7 +379,8 @@ export function createApp(deps = {}) {
|
|
|
365
379
|
config: deps.config,
|
|
366
380
|
keyStore: deps.keyStore,
|
|
367
381
|
policyEngine: deps.policyEngine,
|
|
368
|
-
masterPassword:
|
|
382
|
+
masterPassword: effectiveMasterPassword,
|
|
383
|
+
passwordRef: deps.passwordRef,
|
|
369
384
|
approvalWorkflow: deps.approvalWorkflow,
|
|
370
385
|
delayQueue: deps.delayQueue,
|
|
371
386
|
ownerLifecycle: deps.ownerLifecycle,
|
|
@@ -379,7 +394,7 @@ export function createApp(deps = {}) {
|
|
|
379
394
|
if (deps.db &&
|
|
380
395
|
deps.sqlite &&
|
|
381
396
|
deps.keyStore &&
|
|
382
|
-
|
|
397
|
+
effectiveMasterPassword !== undefined &&
|
|
383
398
|
deps.policyEngine &&
|
|
384
399
|
deps.policyEngine instanceof DatabasePolicyEngine &&
|
|
385
400
|
deps.config) {
|
|
@@ -388,7 +403,8 @@ export function createApp(deps = {}) {
|
|
|
388
403
|
sqlite: deps.sqlite,
|
|
389
404
|
keyStore: deps.keyStore,
|
|
390
405
|
policyEngine: deps.policyEngine,
|
|
391
|
-
masterPassword:
|
|
406
|
+
masterPassword: effectiveMasterPassword,
|
|
407
|
+
passwordRef: deps.passwordRef,
|
|
392
408
|
config: deps.config,
|
|
393
409
|
notificationService: deps.notificationService,
|
|
394
410
|
priceOracle: deps.priceOracle,
|
|
@@ -418,6 +434,7 @@ export function createApp(deps = {}) {
|
|
|
418
434
|
app.route('/v1', adminRoutes({
|
|
419
435
|
db: deps.db,
|
|
420
436
|
jwtSecretManager: deps.jwtSecretManager,
|
|
437
|
+
passwordRef: deps.passwordRef,
|
|
421
438
|
getKillSwitchState: () => killSwitchHolder,
|
|
422
439
|
setKillSwitchState: (state, activatedBy) => {
|
|
423
440
|
killSwitchHolder.state = state;
|
package/dist/api/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/api/server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/api/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"action-provider-registry.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/action/action-provider-registry.ts"],"names":[],"mappings":"AAeA,OAAO,EAKL,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC5B,MAAM,cAAc,CAAC;AAEtB;;;GAGG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAsC;IAChE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAGpB;IAEJ;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI;IAmCzC;;;OAGG;IACH,UAAU,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO;IAazC;;OAEG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAItD;;OAEG;IACH,SAAS,CACP,GAAG,EAAE,MAAM,GACV;QAAE,QAAQ,EAAE,eAAe,CAAC;QAAC,MAAM,EAAE,gBAAgB,CAAA;KAAE,GAAG,SAAS;IAItE;;OAEG;IACH,aAAa,IAAI,sBAAsB,EAAE;IAIzC;;OAEG;IACH,WAAW,CACT,YAAY,CAAC,EAAE,MAAM,GACpB;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,gBAAgB,CAAA;KAAE,EAAE;IAUvD;;OAEG;IACH,oBAAoB,IAAI;QACtB,QAAQ,EAAE,eAAe,CAAC;QAC1B,MAAM,EAAE,gBAAgB,CAAC;KAC1B,EAAE;IAUH;;;;;;;;;;;;;OAaG;IACG,cAAc,CAClB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,mBAAmB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"action-provider-registry.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/action/action-provider-registry.ts"],"names":[],"mappings":"AAeA,OAAO,EAKL,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC5B,MAAM,cAAc,CAAC;AAEtB;;;GAGG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAsC;IAChE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAGpB;IAEJ;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI;IAmCzC;;;OAGG;IACH,UAAU,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO;IAazC;;OAEG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAItD;;OAEG;IACH,SAAS,CACP,GAAG,EAAE,MAAM,GACV;QAAE,QAAQ,EAAE,eAAe,CAAC;QAAC,MAAM,EAAE,gBAAgB,CAAA;KAAE,GAAG,SAAS;IAItE;;OAEG;IACH,aAAa,IAAI,sBAAsB,EAAE;IAIzC;;OAEG;IACH,WAAW,CACT,YAAY,CAAC,EAAE,MAAM,GACpB;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,gBAAgB,CAAA;KAAE,EAAE;IAUvD;;OAEG;IACH,oBAAoB,IAAI;QACtB,QAAQ,EAAE,eAAe,CAAC;QAC1B,MAAM,EAAE,gBAAgB,CAAC;KAC1B,EAAE;IAUH;;;;;;;;;;;;;OAaG;IACG,cAAc,CAClB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAqDjC;;;;;OAKG;IACG,WAAW,CACf,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAgClD;;OAEG;YACW,gBAAgB;CAyD/B"}
|
|
@@ -157,6 +157,8 @@ export class ActionProviderRegistry {
|
|
|
157
157
|
const parsed = ContractCallRequestSchema.parse(item);
|
|
158
158
|
// Auto-tag with provider name for provider-trust policy bypass
|
|
159
159
|
parsed.actionProvider = entry.provider.metadata.name;
|
|
160
|
+
// Auto-tag with action name for lending policy evaluation (Phase 275)
|
|
161
|
+
parsed.actionName = entry.action.name;
|
|
160
162
|
validated.push(parsed);
|
|
161
163
|
}
|
|
162
164
|
catch (err) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"action-provider-registry.js","sourceRoot":"","sources":["../../../src/infrastructure/action/action-provider-registry.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"action-provider-registry.js","sourceRoot":"","sources":["../../../src/infrastructure/action/action-provider-registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,7 @@
|
|
|
11
11
|
*/
|
|
12
12
|
import type { BetterSQLite3Database } from 'drizzle-orm/better-sqlite3';
|
|
13
13
|
import type * as schema from '../database/schema.js';
|
|
14
|
+
import type { MasterPasswordRef } from '../../api/middleware/master-auth.js';
|
|
14
15
|
export interface ApiKeyListEntry {
|
|
15
16
|
providerName: string;
|
|
16
17
|
hasKey: boolean;
|
|
@@ -20,7 +21,10 @@ export interface ApiKeyListEntry {
|
|
|
20
21
|
export declare class ApiKeyStore {
|
|
21
22
|
private readonly db;
|
|
22
23
|
private readonly masterPassword;
|
|
23
|
-
|
|
24
|
+
private readonly passwordRef?;
|
|
25
|
+
constructor(db: BetterSQLite3Database<typeof schema>, masterPassword: string, passwordRef?: MasterPasswordRef);
|
|
26
|
+
/** Resolve the current master password (passwordRef takes precedence). */
|
|
27
|
+
private get currentPassword();
|
|
24
28
|
/**
|
|
25
29
|
* Store or update an API key for a provider. The key is encrypted with
|
|
26
30
|
* AES-256-GCM before storage. createdAt is set only on insert;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-key-store.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/action/api-key-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,KAAK,KAAK,MAAM,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"api-key-store.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/action/api-key-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,KAAK,KAAK,MAAM,MAAM,uBAAuB,CAAC;AAGrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAM7E,MAAM,WAAW,eAAe;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,EAAE,IAAI,CAAC;CACjB;AAMD,qBAAa,WAAW;IAIpB,OAAO,CAAC,QAAQ,CAAC,EAAE;IACnB,OAAO,CAAC,QAAQ,CAAC,cAAc;IAJjC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAoB;gBAG9B,EAAE,EAAE,qBAAqB,CAAC,OAAO,MAAM,CAAC,EACxC,cAAc,EAAE,MAAM,EACvC,WAAW,CAAC,EAAE,iBAAiB;IAKjC,0EAA0E;IAC1E,OAAO,KAAK,eAAe,GAE1B;IAED;;;;OAIG;IACH,GAAG,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAsB/C;;;OAGG;IACH,GAAG,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAWxC;;;;;;;;;OASG;IACH,SAAS,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAM9C;;OAEG;IACH,GAAG,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO;IAUlC;;;OAGG;IACH,MAAM,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO;IASrC;;OAEG;IACH,OAAO,IAAI,eAAe,EAAE;CAa7B"}
|
|
@@ -18,9 +18,15 @@ import { encryptSettingValue, decryptSettingValue } from '../settings/settings-c
|
|
|
18
18
|
export class ApiKeyStore {
|
|
19
19
|
db;
|
|
20
20
|
masterPassword;
|
|
21
|
-
|
|
21
|
+
passwordRef;
|
|
22
|
+
constructor(db, masterPassword, passwordRef) {
|
|
22
23
|
this.db = db;
|
|
23
24
|
this.masterPassword = masterPassword;
|
|
25
|
+
this.passwordRef = passwordRef;
|
|
26
|
+
}
|
|
27
|
+
/** Resolve the current master password (passwordRef takes precedence). */
|
|
28
|
+
get currentPassword() {
|
|
29
|
+
return this.passwordRef?.password ?? this.masterPassword;
|
|
24
30
|
}
|
|
25
31
|
/**
|
|
26
32
|
* Store or update an API key for a provider. The key is encrypted with
|
|
@@ -28,7 +34,7 @@ export class ApiKeyStore {
|
|
|
28
34
|
* updatedAt is always refreshed.
|
|
29
35
|
*/
|
|
30
36
|
set(providerName, apiKey) {
|
|
31
|
-
const encrypted = encryptSettingValue(apiKey, this.
|
|
37
|
+
const encrypted = encryptSettingValue(apiKey, this.currentPassword);
|
|
32
38
|
const now = new Date(Math.floor(Date.now() / 1000) * 1000);
|
|
33
39
|
this.db
|
|
34
40
|
.insert(apiKeys)
|
|
@@ -59,7 +65,7 @@ export class ApiKeyStore {
|
|
|
59
65
|
.get();
|
|
60
66
|
if (!row)
|
|
61
67
|
return null;
|
|
62
|
-
return decryptSettingValue(row.encryptedKey, this.
|
|
68
|
+
return decryptSettingValue(row.encryptedKey, this.currentPassword);
|
|
63
69
|
}
|
|
64
70
|
/**
|
|
65
71
|
* Retrieve a masked version of the API key for display purposes.
|
|
@@ -105,7 +111,7 @@ export class ApiKeyStore {
|
|
|
105
111
|
listAll() {
|
|
106
112
|
const rows = this.db.select().from(apiKeys).all();
|
|
107
113
|
return rows.map((row) => {
|
|
108
|
-
const decrypted = decryptSettingValue(row.encryptedKey, this.
|
|
114
|
+
const decrypted = decryptSettingValue(row.encryptedKey, this.currentPassword);
|
|
109
115
|
return {
|
|
110
116
|
providerName: row.providerName,
|
|
111
117
|
hasKey: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-key-store.js","sourceRoot":"","sources":["../../../src/infrastructure/action/api-key-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAGjC,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"api-key-store.js","sourceRoot":"","sources":["../../../src/infrastructure/action/api-key-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,7 +28,7 @@ import type { Database } from 'better-sqlite3';
|
|
|
28
28
|
* pushSchema() records this version for fresh databases so migrations are skipped.
|
|
29
29
|
* Increment this whenever DDL statements are updated to match a new migration.
|
|
30
30
|
*/
|
|
31
|
-
export declare const LATEST_SCHEMA_VERSION =
|
|
31
|
+
export declare const LATEST_SCHEMA_VERSION = 26;
|
|
32
32
|
/** A single incremental migration (ALTER TABLE, CREATE INDEX, etc.). */
|
|
33
33
|
export interface Migration {
|
|
34
34
|
/** Monotonically increasing version number (must be > 1, since version 1 = initial schema). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/database/migrate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/database/migrate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AA6B/C;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,KAAK,CAAC;AAsVxC,wEAAwE;AACxE,MAAM,WAAW,SAAS;IACxB,+FAA+F;IAC/F,OAAO,EAAE,MAAM,CAAC;IAChB,2DAA2D;IAC3D,WAAW,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,2FAA2F;IAC3F,EAAE,EAAE,CAAC,MAAM,EAAE,QAAQ,KAAK,IAAI,CAAC;CAChC;AAED;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,SAAS,EAAO,CAAC;AAi3C1C;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,QAAQ,EAChB,UAAU,GAAE,SAAS,EAAe,GACnC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAgFtC;AAMD;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,QAAQ,GAAG,IAAI,CAsGjD"}
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
* @see docs/69-db-migration-v6-design.md
|
|
23
23
|
* @see docs/71-policy-engine-network-extension-design.md
|
|
24
24
|
*/
|
|
25
|
-
import { WALLET_STATUSES, CHAIN_TYPES, NETWORK_TYPES, ENVIRONMENT_TYPES, TRANSACTION_STATUSES, TRANSACTION_TYPES, POLICY_TYPES, POLICY_TIERS, NOTIFICATION_LOG_STATUSES, INCOMING_TX_STATUSES, NETWORK_TO_CAIP2, tokenAssetId, } from '@waiaas/core';
|
|
25
|
+
import { WALLET_STATUSES, CHAIN_TYPES, NETWORK_TYPES, ENVIRONMENT_TYPES, TRANSACTION_STATUSES, TRANSACTION_TYPES, POLICY_TYPES, POLICY_TIERS, NOTIFICATION_LOG_STATUSES, INCOMING_TX_STATUSES, POSITION_CATEGORIES, POSITION_STATUSES, NETWORK_TO_CAIP2, tokenAssetId, } from '@waiaas/core';
|
|
26
26
|
// ---------------------------------------------------------------------------
|
|
27
27
|
// Utility: build CHECK IN clause from SSoT arrays
|
|
28
28
|
// ---------------------------------------------------------------------------
|
|
@@ -35,7 +35,7 @@ const inList = (values) => values.map((v) => `'${v}'`).join(', ');
|
|
|
35
35
|
* pushSchema() records this version for fresh databases so migrations are skipped.
|
|
36
36
|
* Increment this whenever DDL statements are updated to match a new migration.
|
|
37
37
|
*/
|
|
38
|
-
export const LATEST_SCHEMA_VERSION =
|
|
38
|
+
export const LATEST_SCHEMA_VERSION = 26;
|
|
39
39
|
function getCreateTableStatements() {
|
|
40
40
|
return [
|
|
41
41
|
// Table 1: wallets (renamed from agents in v3, environment model in v6b, owner_approval_method in v18)
|
|
@@ -248,6 +248,25 @@ function getCreateTableStatements() {
|
|
|
248
248
|
last_signature TEXT,
|
|
249
249
|
last_block_number INTEGER,
|
|
250
250
|
updated_at INTEGER NOT NULL
|
|
251
|
+
)`,
|
|
252
|
+
// Table 18: defi_positions (DeFi position tracking, v29.2)
|
|
253
|
+
`CREATE TABLE IF NOT EXISTS defi_positions (
|
|
254
|
+
id TEXT PRIMARY KEY,
|
|
255
|
+
wallet_id TEXT NOT NULL REFERENCES wallets(id) ON DELETE CASCADE,
|
|
256
|
+
category TEXT NOT NULL CHECK(category IN (${inList(POSITION_CATEGORIES)})),
|
|
257
|
+
provider TEXT NOT NULL,
|
|
258
|
+
chain TEXT NOT NULL CHECK(chain IN (${inList(CHAIN_TYPES)})),
|
|
259
|
+
network TEXT CHECK(network IS NULL OR network IN (${inList(NETWORK_TYPES)})),
|
|
260
|
+
asset_id TEXT,
|
|
261
|
+
amount TEXT NOT NULL,
|
|
262
|
+
amount_usd REAL,
|
|
263
|
+
metadata TEXT,
|
|
264
|
+
status TEXT NOT NULL DEFAULT 'ACTIVE' CHECK(status IN (${inList(POSITION_STATUSES)})),
|
|
265
|
+
opened_at INTEGER NOT NULL,
|
|
266
|
+
closed_at INTEGER,
|
|
267
|
+
last_synced_at INTEGER NOT NULL,
|
|
268
|
+
created_at INTEGER NOT NULL,
|
|
269
|
+
updated_at INTEGER NOT NULL
|
|
251
270
|
)`,
|
|
252
271
|
];
|
|
253
272
|
}
|
|
@@ -311,6 +330,11 @@ function getCreateIndexStatements() {
|
|
|
311
330
|
// v28.3: DeFi async tracking partial indexes on transactions
|
|
312
331
|
'CREATE INDEX IF NOT EXISTS idx_transactions_bridge_status ON transactions(bridge_status) WHERE bridge_status IS NOT NULL',
|
|
313
332
|
"CREATE INDEX IF NOT EXISTS idx_transactions_gas_waiting ON transactions(status) WHERE status = 'GAS_WAITING'",
|
|
333
|
+
// v29.2: defi_positions indexes
|
|
334
|
+
'CREATE INDEX IF NOT EXISTS idx_defi_positions_wallet_category ON defi_positions(wallet_id, category)',
|
|
335
|
+
'CREATE INDEX IF NOT EXISTS idx_defi_positions_wallet_provider ON defi_positions(wallet_id, provider)',
|
|
336
|
+
'CREATE INDEX IF NOT EXISTS idx_defi_positions_status ON defi_positions(status)',
|
|
337
|
+
'CREATE UNIQUE INDEX IF NOT EXISTS idx_defi_positions_unique ON defi_positions(wallet_id, provider, asset_id, category)',
|
|
314
338
|
];
|
|
315
339
|
}
|
|
316
340
|
/**
|
|
@@ -1440,6 +1464,90 @@ MIGRATIONS.push({
|
|
|
1440
1464
|
sqlite.exec('ALTER TABLE wallets ADD COLUMN wallet_type TEXT');
|
|
1441
1465
|
},
|
|
1442
1466
|
});
|
|
1467
|
+
// ---------------------------------------------------------------------------
|
|
1468
|
+
// v29.2 Migration 25: Add defi_positions table for DeFi position tracking
|
|
1469
|
+
// ---------------------------------------------------------------------------
|
|
1470
|
+
MIGRATIONS.push({
|
|
1471
|
+
version: 25,
|
|
1472
|
+
description: 'Add defi_positions table for DeFi position tracking',
|
|
1473
|
+
up: (sqlite) => {
|
|
1474
|
+
sqlite.exec(`
|
|
1475
|
+
CREATE TABLE IF NOT EXISTS defi_positions (
|
|
1476
|
+
id TEXT PRIMARY KEY,
|
|
1477
|
+
wallet_id TEXT NOT NULL REFERENCES wallets(id) ON DELETE CASCADE,
|
|
1478
|
+
category TEXT NOT NULL CHECK(category IN (${inList(POSITION_CATEGORIES)})),
|
|
1479
|
+
provider TEXT NOT NULL,
|
|
1480
|
+
chain TEXT NOT NULL CHECK(chain IN (${inList(CHAIN_TYPES)})),
|
|
1481
|
+
network TEXT CHECK(network IS NULL OR network IN (${inList(NETWORK_TYPES)})),
|
|
1482
|
+
asset_id TEXT,
|
|
1483
|
+
amount TEXT NOT NULL,
|
|
1484
|
+
amount_usd REAL,
|
|
1485
|
+
metadata TEXT,
|
|
1486
|
+
status TEXT NOT NULL DEFAULT 'ACTIVE' CHECK(status IN (${inList(POSITION_STATUSES)})),
|
|
1487
|
+
opened_at INTEGER NOT NULL,
|
|
1488
|
+
closed_at INTEGER,
|
|
1489
|
+
last_synced_at INTEGER NOT NULL,
|
|
1490
|
+
created_at INTEGER NOT NULL,
|
|
1491
|
+
updated_at INTEGER NOT NULL
|
|
1492
|
+
)
|
|
1493
|
+
`);
|
|
1494
|
+
// Indexes for the new table
|
|
1495
|
+
sqlite.exec('CREATE INDEX IF NOT EXISTS idx_defi_positions_wallet_category ON defi_positions(wallet_id, category)');
|
|
1496
|
+
sqlite.exec('CREATE INDEX IF NOT EXISTS idx_defi_positions_wallet_provider ON defi_positions(wallet_id, provider)');
|
|
1497
|
+
sqlite.exec('CREATE INDEX IF NOT EXISTS idx_defi_positions_status ON defi_positions(status)');
|
|
1498
|
+
sqlite.exec('CREATE UNIQUE INDEX IF NOT EXISTS idx_defi_positions_unique ON defi_positions(wallet_id, provider, asset_id, category)');
|
|
1499
|
+
},
|
|
1500
|
+
});
|
|
1501
|
+
// ---------------------------------------------------------------------------
|
|
1502
|
+
// v26: Add LENDING_LTV_LIMIT and LENDING_ASSET_WHITELIST to policies table CHECK constraint
|
|
1503
|
+
// ---------------------------------------------------------------------------
|
|
1504
|
+
// POLICY_TYPES SSoT array now includes LENDING_LTV_LIMIT and LENDING_ASSET_WHITELIST (14 total).
|
|
1505
|
+
// SQLite cannot ALTER CHECK constraints, so we recreate the policies table (12-step pattern).
|
|
1506
|
+
MIGRATIONS.push({
|
|
1507
|
+
version: 26,
|
|
1508
|
+
description: 'Add lending policy types to policies table CHECK constraint',
|
|
1509
|
+
managesOwnTransaction: true,
|
|
1510
|
+
up: (sqlite) => {
|
|
1511
|
+
// Step 1: Begin transaction (foreign_keys already OFF via runner)
|
|
1512
|
+
sqlite.exec('BEGIN');
|
|
1513
|
+
try {
|
|
1514
|
+
// Step 2: Create policies_new with updated CHECK (uses SSoT POLICY_TYPES array)
|
|
1515
|
+
sqlite.exec(`CREATE TABLE policies_new (
|
|
1516
|
+
id TEXT PRIMARY KEY,
|
|
1517
|
+
wallet_id TEXT REFERENCES wallets(id) ON DELETE CASCADE,
|
|
1518
|
+
type TEXT NOT NULL CHECK (type IN (${inList(POLICY_TYPES)})),
|
|
1519
|
+
rules TEXT NOT NULL,
|
|
1520
|
+
priority INTEGER NOT NULL DEFAULT 0,
|
|
1521
|
+
enabled INTEGER NOT NULL DEFAULT 1,
|
|
1522
|
+
network TEXT CHECK (network IS NULL OR network IN (${inList(NETWORK_TYPES)})),
|
|
1523
|
+
created_at INTEGER NOT NULL,
|
|
1524
|
+
updated_at INTEGER NOT NULL
|
|
1525
|
+
)`);
|
|
1526
|
+
// Step 3: Copy existing policies
|
|
1527
|
+
sqlite.exec('INSERT INTO policies_new SELECT * FROM policies');
|
|
1528
|
+
// Step 4: Drop old table
|
|
1529
|
+
sqlite.exec('DROP TABLE policies');
|
|
1530
|
+
// Step 5: Rename new table
|
|
1531
|
+
sqlite.exec('ALTER TABLE policies_new RENAME TO policies');
|
|
1532
|
+
// Step 6: Recreate indexes
|
|
1533
|
+
sqlite.exec('CREATE INDEX idx_policies_wallet_enabled ON policies(wallet_id, enabled)');
|
|
1534
|
+
sqlite.exec('CREATE INDEX idx_policies_type ON policies(type)');
|
|
1535
|
+
sqlite.exec('CREATE INDEX idx_policies_network ON policies(network)');
|
|
1536
|
+
// Step 7: Commit
|
|
1537
|
+
sqlite.exec('COMMIT');
|
|
1538
|
+
}
|
|
1539
|
+
catch (err) {
|
|
1540
|
+
sqlite.exec('ROLLBACK');
|
|
1541
|
+
throw err;
|
|
1542
|
+
}
|
|
1543
|
+
// Step 8: Re-enable foreign keys and verify integrity
|
|
1544
|
+
sqlite.pragma('foreign_keys = ON');
|
|
1545
|
+
const fkErrors = sqlite.pragma('foreign_key_check');
|
|
1546
|
+
if (fkErrors.length > 0) {
|
|
1547
|
+
throw new Error(`FK integrity violation after v26: ${JSON.stringify(fkErrors)}`);
|
|
1548
|
+
}
|
|
1549
|
+
},
|
|
1550
|
+
});
|
|
1443
1551
|
/**
|
|
1444
1552
|
* Run incremental migrations against the database.
|
|
1445
1553
|
*
|