后端迁移入口与迁移脚本

This commit is contained in:
yml
2026-05-21 17:35:01 +08:00
parent dad569160f
commit 78e9d1d5c5
6 changed files with 28 additions and 18 deletions
+4 -4
View File
@@ -106,13 +106,13 @@ npm test
## 目录
- `src/index.js`
- `src/index.ts`
Express 入口
- `src/routes/tencent.js`
- `src/routes/tencent.ts`
接口路由
- `src/services/session.js`
- `src/services/session/session.ts`
会话编排与浏览器生命周期
- `src/services/session-*.js`
- `src/services/session/*.ts`
登录、兑换、OCR、凭证产物等模块
- `subservices/ocr-worker`
内嵌 OCR 子服务
+6 -6
View File
@@ -6,16 +6,16 @@
"scripts": {
"browser:install": "playwright install chromium",
"browser:install:linux": "playwright install --with-deps chromium",
"agiso:auto-delivery:test": "node scripts/test-agiso-auto-delivery.js",
"cleanup:dev-data": "node scripts/cleanup-dev-data.js",
"seed:dev-data": "node scripts/seed-dev-data.js",
"agiso:auto-delivery:test": "tsx scripts/test-agiso-auto-delivery.js",
"cleanup:dev-data": "tsx scripts/cleanup-dev-data.js",
"seed:dev-data": "tsx scripts/seed-dev-data.js",
"build": "tsc -p tsconfig.build.json && rm -rf dist/db/migrations && mkdir -p dist/db && cp -R src/db/migrations dist/db/migrations",
"db:migrate": "tsx src/db/migrate.js",
"dev": "tsx watch --clear-screen=false --include config src/index.js",
"db:migrate": "tsx src/db/migrate.ts",
"dev": "tsx watch --clear-screen=false --include config src/index.ts",
"test": "node --import tsx --test $(find src -name '*.test.js' -print)",
"typecheck": "tsc -p tsconfig.json --noEmit",
"start": "node dist/index.js",
"start:src": "tsx src/index.js"
"start:src": "tsx src/index.ts"
},
"dependencies": {
"express": "^5.1.0",
@@ -378,7 +378,7 @@ async function shutdown(signal) {
return
}
await new Promise((resolve) => {
await new Promise<void>((resolve) => {
server.close((error) => {
if (error) {
logError('[shutdown]', 'failed to close HTTP server', error)
+5 -5
View File
@@ -44,23 +44,23 @@ export function createRequestId(prefix = 'req') {
return `${prefix}-${Date.now().toString(36)}-${Math.random().toString(36).slice(2, 8)}`
}
export function logDebug(scope, message, detail) {
export function logDebug(scope, message, detail = undefined) {
return writeLog('debug', scope, message, detail)
}
export function logInfo(scope, message, detail) {
export function logInfo(scope, message, detail = undefined) {
return writeLog('info', scope, message, detail)
}
export function logWarn(scope, message, detail) {
export function logWarn(scope, message, detail = undefined) {
return writeLog('warn', scope, message, detail)
}
export function logError(scope, message, detail) {
export function logError(scope, message, detail = undefined) {
return writeLog('error', scope, message, detail)
}
export function logWebhook(scope, message, detail, { level = 'info' } = {}) {
export function logWebhook(scope, message, detail = undefined, { level = 'info' } = {}) {
return writeLog(level, scope, message, detail, { channel: 'webhook' })
}