Commit Graph

  • 051f2a1ab4 fix(docker): 升级基础镜像至 node:22-alpine,修复底层依赖引擎不匹配引发的构建崩溃 main kennethcheng 2026-05-03 15:49:10 +0800
  • 47128a9979 fix(env): 移除运行时 dotenvx 显式加载,修复 Next.js 构建期底层崩溃 kennethcheng 2026-05-03 15:38:13 +0800
  • 917291ad5b fix(api): 全局强制 API 路由动态渲染,修复 build 阶段收集数据导致的崩溃 kennethcheng 2026-05-03 15:34:01 +0800
  • a06b993558 fix(api): 强制转换 cron 路由为动态渲染,修复构建期预执行崩溃 kennethcheng 2026-05-03 15:26:16 +0800
  • c3d49f74b6 chore(config): 优化 next.config,豁免打包期静态检查以加速 Docker 部署 kennethcheng 2026-05-03 14:57:35 +0800
  • 7073bdd144 fix(client): 移除 Zod default 声明,修复表单泛型冲突导致的生产环境构建失败 kennethcheng 2026-05-03 06:00:39 +0800
  • 1878b8242f fix(docker):修复构建失败 kennethcheng 2026-05-03 05:56:23 +0800
  • 4a5ad5673d fix(docker):修复构建失败 kennethcheng 2026-05-03 05:48:12 +0800
  • 9caeae7928 文档更新 kennethcheng 2026-05-03 04:41:46 +0800
  • f55113069c build(docker): 增加多阶段 Dockerfile 与编排配置,实现生产级无状态部署 kennethcheng 2026-05-03 04:35:36 +0800
  • 3ea8d5c550 fix(api): 引入成本计价基准量隔离分母污染,彻底对齐历史本金 kennethcheng 2026-05-03 03:28:04 +0800
  • ab8b49ca23 fix(api): 修复卖出核算的分母逻辑,彻底对齐持仓与快照本金 kennethcheng 2026-05-03 03:11:50 +0800
  • b8666f6dd1 fix(api): 重构实时持仓引擎,统一法币成本的历史汇率核算标准 kennethcheng 2026-05-03 02:36:14 +0800
  • ef412b366a chore(scripts): 新增带鉴权的时光机触发脚本,优化本地运维体验 kennethcheng 2026-05-03 00:50:15 +0800
  • d7f8a338b6 chore(db): 新增 CSV 历史汇率播种脚本及表唯一约束 kennethcheng 2026-05-02 23:16:25 +0800
  • 189266c5e3 fix(api): 修复时光机引擎本金未折算汇率 bug,重建历史财务快照 kennethcheng 2026-05-02 22:33:29 +0800
  • 89b40a72bb fix(ui): 暴力重构净值图表数据流,彻底对齐法币本金渲染 kennethcheng 2026-05-02 22:10:01 +0800
  • 8b76ec9a6d refactor(ui): 重塑 Dashboard 数据流,剔除违规本金反推逻辑,应用顺向盈亏计算 kennethcheng 2026-05-02 21:57:19 +0800
  • 5a056a238c fix(ui): 修复 net-worth-chart 组件中的投入本金字段渲染绑定 kennethcheng 2026-05-02 21:36:08 +0800
  • 540ad78990 fix(ui): 修复走势图投入本金字段映射,解决未折算本币数据误显示的问题 kennethcheng 2026-05-02 21:16:03 +0800
  • 6520dcde72 fix(ui): 击穿 Next.js 财务数据缓存,强制走势图与真实数据库快照实时对齐 kennethcheng 2026-05-02 20:57:39 +0800
  • 3d0cfda981 chore(ledger): 重建所有历史资产快照,对齐最新修复的财务聚合计算逻辑 kennethcheng 2026-05-02 19:43:41 +0800
  • bbcfc7d1bf fix(ledger): 修复 T+0 时间戳碰撞导致聚合乱序,实装清仓归零阻断机制 kennethcheng 2026-05-02 18:38:07 +0800
  • a5daa6a751 fix(ledger): 修复时区黑洞,强制使用绝对字符串边界获取精准历史汇率 kennethcheng 2026-05-02 17:54:10 +0800
  • 7cdee75bb9 fix(ledger): 修复历史净值双重汇率折算 bug 与汇率时间查询边界 kennethcheng 2026-05-02 17:22:32 +0800
  • b76a6ef577 fix(ledger): 修复时光机历史汇率串用问题,实装价格向后穿透与成本兜底引擎 kennethcheng 2026-05-02 16:28:21 +0800
  • 211074cd97 chore(debug): 新增历史快照单日明细透视 API,辅助定位净值曲线数据空洞 kennethcheng 2026-05-02 15:57:37 +0800
  • 993c7d819a feat(portfolio): CSV 导出增加市场分类维度,支持 A股/美股/港股/虚拟币精准识别 kennethcheng 2026-05-02 15:35:09 +0800
  • e692d47b6a style(portfolio): 优化 CSV 导出字段格式,精准剥离价格末尾的无意义零 kennethcheng 2026-05-02 15:19:48 +0800
  • 3e81c1dc5b feat(portfolio): 支持显示已清仓历史持仓,增加防乱码 CSV 导出功能 kennethcheng 2026-05-02 15:04:56 +0800
  • 2570144112 fix(api): 移除行情请求的 s_ 前缀,强制获取全量数据以修复日期缺失问题 kennethcheng 2026-05-02 14:17:26 +0800
  • 2fb5629a89 fix(api): 部署防污染日期解析引擎,精准提取美股 T-1 日期 kennethcheng 2026-05-02 14:06:04 +0800
  • c243ba4f35 fix(api): 重构多市场日期解析并引入 upsert,彻底解决日期错位与重复写入问题 kennethcheng 2026-05-02 13:38:01 +0800
  • 7ded5b7837 refactor(ledger): 时光机接入历史汇率匹配,实现历史快照的高精度法币回放 kennethcheng 2026-05-02 00:38:18 +0800
  • 87292b107a refactor(ledger): PnL 引擎接入动态汇率字典,实现跨币种资产的高精度法币折算 kennethcheng 2026-05-02 00:21:46 +0800
  • b7077ec9d3 feat(api): 构建汇率流水表与定时抓取 API,实现 USD/HKD 对人民币的双点数据入库 kennethcheng 2026-05-02 00:07:02 +0800
  • 9ff48f37d1 fix(api): 升级行情解析器正则规则,兼容 BRK.B 等包含特殊字符的股票代码 kennethcheng 2026-05-01 23:35:31 +0800
  • f059aeb08f fix(api): 实现跨市场行情日期智能提取,确保历史价格时间戳绝对准确 kennethcheng 2026-05-01 21:48:50 +0800
  • 371ac24c0e fix(api): 修复 Drizzle 查询 where 子句的语法错误,采用 inArray 重构资产过滤条件 kennethcheng 2026-05-01 15:11:00 +0800
  • b63691e1c8 fix(api): 清理幽灵路由文件,物理重建 cron 接口目录树解决 404 kennethcheng 2026-05-01 15:04:49 +0800
  • 259da36771 fix(api): 纠正 cron route.ts 路径与导出规范,修复 404 路由丢失问题 kennethcheng 2026-05-01 14:53:51 +0800
  • 85583b7e06 feat(api): 新增定时抓取行情 API,实现基于日期的幂等性价格历史入库 kennethcheng 2026-05-01 07:13:07 +0800
  • 4919ba1431 fix(ledger): 彻底修复时光机汇率双标幻觉,同步市值与本金的 CNY 折算 kennethcheng 2026-05-01 06:44:37 +0800
  • b4f21e7cd6 fix(ledger): 修复汇率转换的双标幻觉,统一大盘与快照的财务聚合基准 kennethcheng 2026-05-01 05:52:09 +0800
  • 52a94a9ffa fix(ledger): 补全汇率折算乘数,修复跨币种直接相加导致的盈亏总额失真 kennethcheng 2026-05-01 05:20:30 +0800
  • a3b5563db2 refactor(ledger): 时光机接入全新财务引擎并清洗脏快照,修复历史成本断层 kennethcheng 2026-05-01 04:55:43 +0800
  • f537dcf303 fix(ledger): 修复 portfolio 接口组装时 avgCost 变量未定义的 ReferenceError kennethcheng 2026-05-01 04:25:06 +0800
  • 9ce398efb1 feat(ledger): 接入计算引擎,实现 Dashboard 指标的精确数据对齐 kennethcheng 2026-05-01 04:17:01 +0800
  • d60659df18 feat(utils): 建立纯函数财务引擎,支持加权均价与累计盈亏推演 kennethcheng 2026-05-01 04:07:04 +0800
  • 5269d697b7 fix(ui): 对齐图表末端与实时概览数据的精度,放开全量历史趋势查询限制 kennethcheng 2026-04-30 18:42:08 +0800
  • b131400aa9 fix(ledger): 补全 getEffectivePrice 复合查询条件,修复历史价格跨资产串联 Bug kennethcheng 2026-04-30 13:42:51 +0800
  • 91e7485259 fix(ledger): 修复价格变量泄漏与日期字符串比较陷阱,还原真实净值走势 kennethcheng 2026-04-30 13:15:30 +0800
  • 9622e0d828 fix(db): 修复 getHistoricalPositions 中 Drizzle ORM 的 lte 语法调用错误 kennethcheng 2026-04-30 11:38:34 +0800
  • c38d3fe30f feat(ui): 首页挂载重构历史触发按钮,打通历史净值回溯全链路 kennethcheng 2026-04-30 11:26:21 +0800
  • fd0ef345dd feat(ledger): 组装 Day-by-Day 遍历引擎,实现全量历史净值快照重建与入库 kennethcheng 2026-04-30 11:17:03 +0800
  • 7bd2eb1e86 feat(ledger): 编写时光机核心辅助函数,支持历史持仓计算与价格断点结转 kennethcheng 2026-04-30 11:00:04 +0800
  • 209cdd3625 feat(ui): 增加历史价格批量导入解析功能与底层 Upsert 接口 kennethcheng 2026-04-30 10:25:09 +0800
  • 108023ae67 feat(db): 新增 asset_prices_history 表用于存储手动导入的历史标的价格 kennethcheng 2026-04-30 10:05:42 +0800
  • 838bb0ef95 fix(db): 修复快照查询引擎的 ReferenceError,重构为标准 Drizzle ORM 查询语法 kennethcheng 2026-04-29 12:55:44 +0800
  • 8f5ce4bc74 fix(ledger): 修复快照引擎 reduce 初始值类型错误,保障每日快照正常写入 kennethcheng 2026-04-29 12:17:34 +0800
  • e70c0602c8 feat(ui): 首页实装历史净值面积走势图,并挂载自动化快照触发逻辑 kennethcheng 2026-04-29 11:50:42 +0800
  • 4c4e6ab565 feat(db): 新增 portfolio_snapshots 表与每日快照记录 Action kennethcheng 2026-04-29 11:37:11 +0800
  • 955b01fd79 fix(ui): 轉移 disabled 屬性至 SelectTrigger 修復數據丟失報錯,並關閉 Input 自動完成 kennethcheng 2026-04-29 10:53:09 +0800
  • 06e52d58d6 fix(ui): 補齊 Select 組件的 value 綁定解決表單保存報錯,並使用 parseFloat 剝離編輯狀態下的尾隨零 kennethcheng 2026-04-29 10:43:47 +0800
  • 2395d792db fix(ui): 修复修改弹窗中 FormField 结构被破坏导致的上下文越界报错 kennethcheng 2026-04-29 10:08:05 +0800
  • a408cad494 fix(ui): 转换 Big 对象为原生数字修复服务端序列化报错,并补充 Fragment key 修复列表渲染警告 kennethcheng 2026-04-29 09:56:42 +0800
  • eaeb143190 fix(ui): 修复修改流水弹窗无回显问题,并锁定标的与类型字段防止篡改 kennethcheng 2026-04-29 01:56:50 +0800
  • 7c2f464f2c fix(ui): 修复现价变量映射错误,修正负收益绿色显示丢失负号的 Bug kennethcheng 2026-04-29 01:40:25 +0800
  • 1b947d563a style(ui): 规范红涨绿跌视觉习惯,并移除盈亏数值多余的正号 kennethcheng 2026-04-29 01:16:51 +0800
  • 579b09841f fix(ui): 使用 Big.js 剥离流水数据的无意义尾随零 kennethcheng 2026-04-29 01:01:10 +0800
  • fd529404bc fix(ui): 增加 txTypeMap,实现交易流水类型中文化 kennethcheng 2026-04-29 00:51:50 +0800
  • ffeac757e3 fix(ui): 重构 AddTransactionDialog 嵌套层级,解决 DialogTrigger 上下文丢失报错 kennethcheng 2026-04-29 00:41:43 +0800
  • 574d27968d feat(ui): 實裝資產流水下鑽明細表格及行內 CRUD 操作 kennethcheng 2026-04-29 00:21:16 +0800
  • 1c6c36b147 feat(ui): Dashboard 基礎表格化重構,實裝行展開狀態管理 kennethcheng 2026-04-28 23:58:25 +0800
  • cdea2ce608 fix(ledger): 修复币种符号映射逻辑,并扩充引擎下发流水明细支持 UI 下钻 kennethcheng 2026-04-28 21:46:28 +0800
  • e63f309a3a feat(ui): 依据参考图全面重构资产展示 UI,实现纯净的原生币种数据面板 kennethcheng 2026-04-28 19:45:29 +0800
  • dd87eadbf4 refactor(ledger): 抛弃单一个股的 CNY 折算,全面重构基于 Native 原生币种的成本与盈亏算法 kennethcheng 2026-04-28 19:37:36 +0800
  • 7d7a7804a6 refactor(ui): 规范资产卡片术语,智能隐藏同币种双轨制冗余数据 kennethcheng 2026-04-28 19:18:45 +0800
  • 84d889fbe5 feat(ui): 升級資產卡片展示,支持累計分紅顯示並修復數據格式化兜底 kennethcheng 2026-04-28 19:00:20 +0800
  • 03e8e98260 fix(ledger): 修復平均成本顯示 Bug,並優化分紅獨立統計邏輯 kennethcheng 2026-04-28 18:51:40 +0800
  • a04c573cd3 fix(ui): 修复 Big.js 误用 .ne() 方法导致的 TypeError,改用 !.eq() 实现判零逻辑 kennethcheng 2026-04-28 18:13:23 +0800
  • 2bce92dc0c fix(utils): 移除 utils.ts 中重复定义的 formatDateForDatetimeLocal 函数,解决编译报错 kennethcheng 2026-04-28 18:01:20 +0800
  • 31ca101914 fix(ui): 修復日期控件時區展示偏移 Bug,並修正負成本的格式化顯示 kennethcheng 2026-04-28 17:51:28 +0800
  • 556f705f75 fix(ledger): 修復分紅業務邏輯與成本算法,支持攤薄成本為負數的極端場景 kennethcheng 2026-04-28 17:36:54 +0800
  • 9342e46aad feat(dashboard): 优化资产分布图表,实现按市场维度的聚合展示与 Tooltip 交互增强 kennethcheng 2026-04-28 16:58:26 +0800
  • e093b94157 feat(ledger): 重构盈亏计算引擎,实装摊薄/平均成本双重指标与持仓天数统计 kennethcheng 2026-04-28 16:39:22 +0800
  • bf57002313 fix(ui): 修复全局时区偏移问题与日期控件手动输入崩溃 Bug kennethcheng 2026-04-28 16:19:41 +0800
  • 110e75f0a1 feat(ui): 引入 sonner 消息反馈系统,并在首页部署全局行情同步按钮 kennethcheng 2026-04-28 15:46:43 +0800
  • 58db0b82ee fix(api): 改用 setGlobalDispatcher 方案,解决代理参数不兼容报错 kennethcheng 2026-04-28 14:04:46 +0800
  • f1d1b58ed9 fix(api): 引入 undici ProxyAgent,解决国内直连币安 API 的 Timeout 封锁问题 kennethcheng 2026-04-28 13:46:14 +0800
  • 48e834e338 feat(api): 接入币安公共接口,升级为股票+加密货币的双轨制全市场行情引擎 kennethcheng 2026-04-28 13:21:28 +0800
  • 80029817a9 fix(api): 引入 TextDecoder(gbk) 解决腾讯接口中文乱码,并在前端表单锁定币种联动字段 kennethcheng 2026-04-28 13:10:59 +0800
  • ea57b4629a feat(ui): 接入股票名称展示,实装表单币种自动绑定及编辑删除功能 kennethcheng 2026-04-28 12:51:20 +0800
  • 7cd084d4b3 feat(db): 升级资产表新增 name,并补全 CRUD 核心逻辑 kennethcheng 2026-04-28 12:20:40 +0800
  • 085659dfef fix(api): 移除内部辅助函数的 export 关键字,修复 Next.js Server Actions 异步约束报错 kennethcheng 2026-04-28 11:46:09 +0800
  • 842a5fef8c feat(api): 重构资产录入新增 exchange 字段,并接入腾讯财经 qt.gtimg 极速行情引擎 kennethcheng 2026-04-28 11:39:30 +0800
  • ce529928cc refactor(api): 移除 yahoo-finance2,重构股票同步引擎接入 Alpha Vantage API kennethcheng 2026-04-28 10:43:52 +0800
  • 3f60370835 fix(api): 适配 yahoo-finance2 v3 版本,补充 YahooFinance 实例化逻辑 kennethcheng 2026-04-28 09:40:11 +0800
  • ba6a922f2c feat(api): 接入 yahoo-finance2 构建股票自动行情引擎,并实装一键同步按钮 kennethcheng 2026-04-28 08:56:46 +0800
  • effa84fe14 fix(api): 實裝 portfolio 匯率兜底邏輯,並在 transaction 錄入層自動攔截寫入歷史匯率 kennethcheng 2026-04-28 01:54:54 +0800