feat: complete the thirteen-stage financial learning path
Backend CI / type-check, build, tests (push) Successful in 1m16s

Server grades levels 7-13 and keeps castle attempt results separate from stored progress.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-10-22 19:41:24 +03:30
co-authored by Cursor
parent dfb20ca92c
commit 866be22395
52 changed files with 3840 additions and 30 deletions
+8 -1
View File
@@ -19,12 +19,19 @@
"test:client-ip": "tsx --tsconfig tsconfig.json test/client-ip.test.ts",
"test:auth-rate-limit-xff": "tsx --tsconfig tsconfig.json test/auth-rate-limit-xff.test.ts",
"test:restore-safety": "tsx --tsconfig tsconfig.json test/restore-safety.test.ts",
"test:budgeting": "tsx --tsconfig tsconfig.json test/budgeting.test.ts",
"test:risk-return": "tsx --tsconfig tsconfig.json test/risk-return.test.ts",
"test:portfolio": "tsx --tsconfig tsconfig.json test/portfolio.test.ts",
"test:compound-interest": "tsx --tsconfig tsconfig.json test/compound-interest.test.ts",
"test:smart-shop": "tsx --tsconfig tsconfig.json test/smart-shop.test.ts",
"test:financial-goal": "tsx --tsconfig tsconfig.json test/financial-goal.test.ts",
"test:castle-exam": "tsx --tsconfig tsconfig.json test/castle-exam.test.ts",
"test:production-error": "tsx --tsconfig tsconfig.json test/production-error.test.ts",
"backup:sqlite": "node scripts/sqlite-backup.mjs",
"restore:sqlite": "node scripts/sqlite-restore.mjs",
"smoke:trial-production": "node scripts/trial-production-smoke.mjs",
"test:backup-restore": "tsx --tsconfig tsconfig.json test/backup-restore.test.ts",
"test": "npm run test:progression && npm run test:integration && npm run test:concurrency && npm run test:gold-precision && npm run test:lesson-rewards && npm run test:dual-connection && npm run test:production-config && npm run test:production-error && npm run test:client-ip && npm run test:auth-rate-limit && npm run test:auth-rate-limit-xff && npm run test:backup-restore && npm run test:restore-safety"
"test": "npm run test:progression && npm run test:integration && npm run test:concurrency && npm run test:gold-precision && npm run test:lesson-rewards && npm run test:dual-connection && npm run test:production-config && npm run test:production-error && npm run test:client-ip && npm run test:auth-rate-limit && npm run test:auth-rate-limit-xff && npm run test:backup-restore && npm run test:restore-safety && npm run test:budgeting && npm run test:risk-return && npm run test:portfolio && npm run test:compound-interest && npm run test:smart-shop && npm run test:financial-goal && npm run test:castle-exam"
},
"dependencies": {
"@nestjs/common": "^11.0.12",