|
85
|
2
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"ca84ce56f {"Commits":[{"Sha1":"ca84ce56ff68f38fc8782ce8222d9b5d4cb563cb","Message":"t2228111\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T17:36:52+08:00"}],"HeadCommit":{"Sha1":"ca84ce56ff68f38fc8782ce8222d9b5d4cb563cb","Message":"t2228111\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T17:36:52+08:00"},"CompareURL":"juhai/testpc/compare/749966abade355d603ce678e3ed3f17bd490b694...ca84ce56ff68f38fc8782ce8222d9b5d4cb563cb","Len":1}...
|
1770889017
|
Edit
Delete
|
|
86
|
1
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"bf439dffa {"Commits":[{"Sha1":"bf439dffa07315fdb4d46f38af22131605dcb005","Message":"t2228111sss\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T17:38:00+08:00"}],"HeadCommit":{"Sha1":"bf439dffa07315fdb4d46f38af22131605dcb005","Message":"t2228111sss\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T17:38:00+08:00"},"CompareURL":"juhai/testpc/compare/ca84ce56ff68f38fc8782ce8222d9b5d4cb563cb...bf439dffa07315fdb4d46f38af22131605dcb005","Len":1}...
|
1770889086
|
Edit
Delete
|
|
87
|
2
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"bf439dffa {"Commits":[{"Sha1":"bf439dffa07315fdb4d46f38af22131605dcb005","Message":"t2228111sss\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T17:38:00+08:00"}],"HeadCommit":{"Sha1":"bf439dffa07315fdb4d46f38af22131605dcb005","Message":"t2228111sss\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T17:38:00+08:00"},"CompareURL":"juhai/testpc/compare/ca84ce56ff68f38fc8782ce8222d9b5d4cb563cb...bf439dffa07315fdb4d46f38af22131605dcb005","Len":1}...
|
1770889087
|
Edit
Delete
|
|
88
|
1
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"65caede27 {"Commits":[{"Sha1":"65caede278c2e8e14c0612ec8d8f7d26aec24ec9","Message":"t2228111sss\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T17:39:09+08:00"}],"HeadCommit":{"Sha1":"65caede278c2e8e14c0612ec8d8f7d26aec24ec9","Message":"t2228111sss\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T17:39:09+08:00"},"CompareURL":"juhai/testpc/compare/bf439dffa07315fdb4d46f38af22131605dcb005...65caede278c2e8e14c0612ec8d8f7d26aec24ec9","Len":1}...
|
1770889156
|
Edit
Delete
|
|
89
|
2
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"65caede27 {"Commits":[{"Sha1":"65caede278c2e8e14c0612ec8d8f7d26aec24ec9","Message":"t2228111sss\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T17:39:09+08:00"}],"HeadCommit":{"Sha1":"65caede278c2e8e14c0612ec8d8f7d26aec24ec9","Message":"t2228111sss\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T17:39:09+08:00"},"CompareURL":"juhai/testpc/compare/bf439dffa07315fdb4d46f38af22131605dcb005...65caede278c2e8e14c0612ec8d8f7d26aec24ec9","Len":1}...
|
1770889156
|
Edit
Delete
|
|
90
|
1
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"400093d9f {"Commits":[{"Sha1":"400093d9f9f3977b244da942667525d369ac684b","Message":"t2228111sss\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T17:51:43+08:00"}],"HeadCommit":{"Sha1":"400093d9f9f3977b244da942667525d369ac684b","Message":"t2228111sss\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T17:51:43+08:00"},"CompareURL":"juhai/testpc/compare/65caede278c2e8e14c0612ec8d8f7d26aec24ec9...400093d9f9f3977b244da942667525d369ac684b","Len":1}...
|
1770889915
|
Edit
Delete
|
|
91
|
2
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"400093d9f {"Commits":[{"Sha1":"400093d9f9f3977b244da942667525d369ac684b","Message":"t2228111sss\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T17:51:43+08:00"}],"HeadCommit":{"Sha1":"400093d9f9f3977b244da942667525d369ac684b","Message":"t2228111sss\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T17:51:43+08:00"},"CompareURL":"juhai/testpc/compare/65caede278c2e8e14c0612ec8d8f7d26aec24ec9...400093d9f9f3977b244da942667525d369ac684b","Len":1}...
|
1770889915
|
Edit
Delete
|
|
92
|
1
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"d64df3fe0 {"Commits":[{"Sha1":"d64df3fe0cf829fa7895d0e15cc72debc562ab2c","Message":"t2228111ssssss\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T17:55:16+08:00"}],"HeadCommit":{"Sha1":"d64df3fe0cf829fa7895d0e15cc72debc562ab2c","Message":"t2228111ssssss\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T17:55:16+08:00"},"CompareURL":"juhai/testpc/compare/400093d9f9f3977b244da942667525d369ac684b...d64df3fe0cf829fa7895d0e15cc72debc562ab2c","Len":1}...
|
1770890122
|
Edit
Delete
|
|
93
|
2
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"d64df3fe0 {"Commits":[{"Sha1":"d64df3fe0cf829fa7895d0e15cc72debc562ab2c","Message":"t2228111ssssss\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T17:55:16+08:00"}],"HeadCommit":{"Sha1":"d64df3fe0cf829fa7895d0e15cc72debc562ab2c","Message":"t2228111ssssss\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T17:55:16+08:00"},"CompareURL":"juhai/testpc/compare/400093d9f9f3977b244da942667525d369ac684b...d64df3fe0cf829fa7895d0e15cc72debc562ab2c","Len":1}...
|
1770890122
|
Edit
Delete
|
|
94
|
1
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"2f0d14d65 {"Commits":[{"Sha1":"2f0d14d65296a0863a12d63078bacc0ea16f2bbe","Message":"t22收拾收拾\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T17:58:03+08:00"}],"HeadCommit":{"Sha1":"2f0d14d65296a0863a12d63078bacc0ea16f2bbe","Message":"t22收拾收拾\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T17:58:03+08:00"},"CompareURL":"juhai/testpc/compare/d64df3fe0cf829fa7895d0e15cc72debc562ab2c...2f0d14d65296a0863a12d63078bacc0ea16f2bbe","Len":1}...
|
1770890292
|
Edit
Delete
|
|
95
|
2
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"2f0d14d65 {"Commits":[{"Sha1":"2f0d14d65296a0863a12d63078bacc0ea16f2bbe","Message":"t22收拾收拾\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T17:58:03+08:00"}],"HeadCommit":{"Sha1":"2f0d14d65296a0863a12d63078bacc0ea16f2bbe","Message":"t22收拾收拾\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T17:58:03+08:00"},"CompareURL":"juhai/testpc/compare/d64df3fe0cf829fa7895d0e15cc72debc562ab2c...2f0d14d65296a0863a12d63078bacc0ea16f2bbe","Len":1}...
|
1770890292
|
Edit
Delete
|
|
96
|
1
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"15c1018de {"Commits":[{"Sha1":"15c1018de6be7aff42d6792d7434d4ec584d11ea","Message":"t22收拾收拾\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T17:58:43+08:00"}],"HeadCommit":{"Sha1":"15c1018de6be7aff42d6792d7434d4ec584d11ea","Message":"t22收拾收拾\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T17:58:43+08:00"},"CompareURL":"juhai/testpc/compare/2f0d14d65296a0863a12d63078bacc0ea16f2bbe...15c1018de6be7aff42d6792d7434d4ec584d11ea","Len":1}...
|
1770890329
|
Edit
Delete
|
|
97
|
2
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"15c1018de {"Commits":[{"Sha1":"15c1018de6be7aff42d6792d7434d4ec584d11ea","Message":"t22收拾收拾\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T17:58:43+08:00"}],"HeadCommit":{"Sha1":"15c1018de6be7aff42d6792d7434d4ec584d11ea","Message":"t22收拾收拾\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T17:58:43+08:00"},"CompareURL":"juhai/testpc/compare/2f0d14d65296a0863a12d63078bacc0ea16f2bbe...15c1018de6be7aff42d6792d7434d4ec584d11ea","Len":1}...
|
1770890329
|
Edit
Delete
|
|
98
|
1
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"818b1c5d8 {"Commits":[{"Sha1":"818b1c5d88b0c74e59ba3bed63054123701adf17","Message":"t22收拾收拾\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T18:00:45+08:00"}],"HeadCommit":{"Sha1":"818b1c5d88b0c74e59ba3bed63054123701adf17","Message":"t22收拾收拾\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T18:00:45+08:00"},"CompareURL":"juhai/testpc/compare/15c1018de6be7aff42d6792d7434d4ec584d11ea...818b1c5d88b0c74e59ba3bed63054123701adf17","Len":1}...
|
1770890452
|
Edit
Delete
|
|
99
|
2
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"818b1c5d8 {"Commits":[{"Sha1":"818b1c5d88b0c74e59ba3bed63054123701adf17","Message":"t22收拾收拾\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T18:00:45+08:00"}],"HeadCommit":{"Sha1":"818b1c5d88b0c74e59ba3bed63054123701adf17","Message":"t22收拾收拾\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T18:00:45+08:00"},"CompareURL":"juhai/testpc/compare/15c1018de6be7aff42d6792d7434d4ec584d11ea...818b1c5d88b0c74e59ba3bed63054123701adf17","Len":1}...
|
1770890452
|
Edit
Delete
|
|
100
|
1
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"359a23bb2 {"Commits":[{"Sha1":"359a23bb2b3c088576051d47f237505eaa12d9e9","Message":"t22收拾收拾\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T18:01:22+08:00"}],"HeadCommit":{"Sha1":"359a23bb2b3c088576051d47f237505eaa12d9e9","Message":"t22收拾收拾\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T18:01:22+08:00"},"CompareURL":"juhai/testpc/compare/818b1c5d88b0c74e59ba3bed63054123701adf17...359a23bb2b3c088576051d47f237505eaa12d9e9","Len":1}...
|
1770890489
|
Edit
Delete
|
|
101
|
2
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"359a23bb2 {"Commits":[{"Sha1":"359a23bb2b3c088576051d47f237505eaa12d9e9","Message":"t22收拾收拾\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T18:01:22+08:00"}],"HeadCommit":{"Sha1":"359a23bb2b3c088576051d47f237505eaa12d9e9","Message":"t22收拾收拾\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T18:01:22+08:00"},"CompareURL":"juhai/testpc/compare/818b1c5d88b0c74e59ba3bed63054123701adf17...359a23bb2b3c088576051d47f237505eaa12d9e9","Len":1}...
|
1770890489
|
Edit
Delete
|
|
102
|
1
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"8b9043cb7 {"Commits":[{"Sha1":"8b9043cb7c726e4e59948720bb4009d9c10c8041","Message":"t22收拾收拾99\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T18:03:33+08:00"}],"HeadCommit":{"Sha1":"8b9043cb7c726e4e59948720bb4009d9c10c8041","Message":"t22收拾收拾99\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T18:03:33+08:00"},"CompareURL":"juhai/testpc/compare/359a23bb2b3c088576051d47f237505eaa12d9e9...8b9043cb7c726e4e59948720bb4009d9c10c8041","Len":1}...
|
1770890620
|
Edit
Delete
|
|
103
|
2
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"8b9043cb7 {"Commits":[{"Sha1":"8b9043cb7c726e4e59948720bb4009d9c10c8041","Message":"t22收拾收拾99\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T18:03:33+08:00"}],"HeadCommit":{"Sha1":"8b9043cb7c726e4e59948720bb4009d9c10c8041","Message":"t22收拾收拾99\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T18:03:33+08:00"},"CompareURL":"juhai/testpc/compare/359a23bb2b3c088576051d47f237505eaa12d9e9...8b9043cb7c726e4e59948720bb4009d9c10c8041","Len":1}...
|
1770890620
|
Edit
Delete
|
|
104
|
1
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"dd0c28fc6 {"Commits":[{"Sha1":"dd0c28fc64f996117a47cf5b8ed9e7ae228630ef","Message":"t22收拾收拾99ii\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T18:06:47+08:00"}],"HeadCommit":{"Sha1":"dd0c28fc64f996117a47cf5b8ed9e7ae228630ef","Message":"t22收拾收拾99ii\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T18:06:47+08:00"},"CompareURL":"juhai/testpc/compare/8b9043cb7c726e4e59948720bb4009d9c10c8041...dd0c28fc64f996117a47cf5b8ed9e7ae228630ef","Len":1}...
|
1770890813
|
Edit
Delete
|
|
105
|
2
|
5
|
1
|
2
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"dd0c28fc6 {"Commits":[{"Sha1":"dd0c28fc64f996117a47cf5b8ed9e7ae228630ef","Message":"t22收拾收拾99ii\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T18:06:47+08:00"}],"HeadCommit":{"Sha1":"dd0c28fc64f996117a47cf5b8ed9e7ae228630ef","Message":"t22收拾收拾99ii\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-02-12T18:06:47+08:00"},"CompareURL":"juhai/testpc/compare/8b9043cb7c726e4e59948720bb4009d9c10c8041...dd0c28fc64f996117a47cf5b8ed9e7ae228630ef","Len":1}...
|
1770890813
|
Edit
Delete
|
|
107
|
5
|
5
|
5
|
6
|
0
|
0
|
refs/heads/main
|
1
|
|
1771862352
|
Edit
Delete
|
|
108
|
5
|
5
|
5
|
6
|
0
|
0
|
refs/heads/main
|
1
|
{"Commits":[{"Sha1":"d169207d2 {"Commits":[{"Sha1":"d169207d2a046f90cf861f8e805b45d3855fddc3","Message":"feat(db): 添加福利管理模块数据库迁移\n\n- 创建 hr_benefit_plans 福利计划表\n- 创建 hr_benefit_enrollments 福利登记表\n- 创建 hr_benefit_claims 福利申领表\n- 配置 RLS 多租户隔离策略\n\n🤖 Generated with [Claude Code](https://claude.com/claude-code)\n\nCo-Authored-By: Claude Opus 4.5 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hi.laoluo@hilaoluodeMacBook-Pro.local","AuthorName":"hi.laoluo","CommitterEmail":"hi.laoluo@hilaoluodeMacBook-Pro.local","CommitterName":"hi.laoluo","Timestamp":"2026-01-03T18:47:22+08:00"},{"Sha1":"e2dd1f5474b144ee91733881c5a05e97396c8e54","Message":"Merge remote-tracking branch 'origin/claude/add-benefits-management-BgwFU'\n","AuthorEmail":"hi.laoluo@hilaoluodeMacBook-Pro.local","AuthorName":"hi.laoluo","CommitterEmail":"hi.laoluo@hilaoluodeMacBook-Pro.local","CommitterName":"hi.laoluo","Timestamp":"2026-01-03T18:40:54+08:00"},{"Sha1":"a052eedc796d1fc44b3cc64de9429ddd84b59e87","Message":"fix(frontend): 完善前端视图和权限检查\n\n- 修复续费状态映射与后端一致 (open→pending, quoted→negotiating)\n- 修复知识热力图组件 chartReady 引用问题\n- 添加 SWOT 业务编码前缀支持\n- 修复 SWOT 服务中的类型问题\n\n🤖 Generated with [Claude Code](https://claude.com/claude-code)\n\nCo-Authored-By: Claude Opus 4.5 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hi.laoluo@hilaoluodeMacBook-Pro.local","AuthorName":"hi.laoluo","CommitterEmail":"hi.laoluo@hilaoluodeMacBook-Pro.local","CommitterName":"hi.laoluo","Timestamp":"2026-01-03T18:34:43+08:00"},{"Sha1":"d8de20002b217cbfcabe0883191b758a3aa8af00","Message":"fix(frontend): 完善前端视图和权限检查\n\n修复内容:\n- 修复 formatNumber/formatMoney 函数未处理 undefined/null 导致的渲染崩溃\n- 添加广告创意/A/B测试/预算预警的统计接口\n- 修复序列号详情接口 Prisma select+include 语法错误\n- 修复交付验收列表 orders 为 null 时的空引用错误\n- 统一用户缓存失效使用 userCache.invalidateUser()\n- 完善 seed.ts 权限数据\n\n影响文件:\n- frontend: RoiAnalysis, Index, BudgetAlerts, Sessions, marketing 等视图\n- backend: ad-creative.routes, placement.routes, sn.routes, fulfillment.routes\n- backend: auth.service, auth.controller, user.routes\n- backend: prisma/seed.ts\n\n🤖 Generated with [Claude Code](https://claude.com/claude-code)\n\nCo-Authored-By: Claude Opus 4.5 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hi.laoluo@hilaoluodeMacBook-Pro.local","AuthorName":"hi.laoluo","CommitterEmail":"hi.laoluo@hilaoluodeMacBook-Pro.local","CommitterName":"hi.laoluo","Timestamp":"2026-01-03T18:21:51+08:00"},{"Sha1":"47e29a8c67322cf0bcd9a022cecd04eb289f9bed","Message":"feat(hr): 添加福利管理模块\n\n新增功能:\n- 福利计划管理:社保、公积金、商业保险、补贴等福利方案配置\n- 员工福利登记:员工参保登记、批量登记、终止登记\n- 福利申领:报销、理赔、提取申请及审批流程\n\n后端变更:\n- 添加 hr_benefit_plans、hr_benefit_enrollments、hr_benefit_claims 数据库模型\n- 添加福利管理权限定义(benefit-plan、benefit-enrollment、benefit-claim)\n- 添加福利管理事件类型(HR_BENEFIT_EVENTS)\n- 创建 benefits 模块(plans、enrollments、claims 三个子模块)\n\n前端变更:\n- 添加 hr-benefits API 模块\n- 添加福利管理视图(Index.vue 及三个选项卡组件)\n- 添加福利管理路由配置\n","AuthorEmail":"noreply@anthropic.com","AuthorName":"Claude","CommitterEmail":"noreply@anthropic.com","CommitterName":"Claude","Timestamp":"2026-01-03T09:39:22Z"}],"HeadCommit":{"Sha1":"d169207d2a046f90cf861f8e805b45d3855fddc3","Message":"feat(db): 添加福利管理模块数据库迁移\n\n- 创建 hr_benefit_plans 福利计划表\n- 创建 hr_benefit_enrollments 福利登记表\n- 创建 hr_benefit_claims 福利申领表\n- 配置 RLS 多租户隔离策略\n\n🤖 Generated with [Claude Code](https://claude.com/claude-code)\n\nCo-Authored-By: Claude Opus 4.5 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hi.laoluo@hilaoluodeMacBook-Pro.local","AuthorName":"hi.laoluo","CommitterEmail":"hi.laoluo@hilaoluodeMacBook-Pro.local","CommitterName":"hi.laoluo","Timestamp":"2026-01-03T18:47:22+08:00"},"CompareURL":"luoanwu/juhi-omni-knowledge-hub/compare/359a39b51f412a500e8e8e68555eacc56680d0e0...d169207d2a046f90cf861f8e805b45d3855fddc3","Len":10}...
|
1771862352
|
Edit
Delete
|
|
109
|
5
|
5
|
5
|
6
|
0
|
0
|
refs/heads/main
|
1
|
{"Commits":[{"Sha1":"abd8cdd02 {"Commits":[{"Sha1":"abd8cdd0283c96dc4a62fbf753d2aca2e68aa379","Message":"fix: 修复前端请求 pageSize 超出后端限制\n\n后端 baseListQuerySchema 限制 pageSize 最大为 100,修复以下文件:\n- customer-balance/Index.vue: 500 → 100\n- opportunities/Pipeline.vue: 200 → 100\n- crm-activities/Index.vue: 500 → 100\n- ar-ledger/StatementGenerator.vue: 1000 → 100\n- disbursements/ApLedgerTab.vue: 200 → 100\n- hr/attendance/SchedulesTab.vue: 200 → 100\n\n🤖 Generated with [Claude Code](https://claude.com/claude-code)\n\nCo-Authored-By: Claude Opus 4.5 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hi.laoluo@hilaoluodeMacBook-Pro.local","AuthorName":"hi.laoluo","CommitterEmail":"hi.laoluo@hilaoluodeMacBook-Pro.local","CommitterName":"hi.laoluo","Timestamp":"2026-01-08T00:11:49+08:00"},{"Sha1":"e92d5ee9c6fc7bfba6938afb71cd78ab4fa8a26b","Message":"feat: 完善模块注册表和权限配置\n\n1. 新增 17 个缺失的模块定义:\n - 获客域: ad-placement (社媒投流)\n - 销售域: sales-dashboard, targets\n - 续费域: customer-analytics\n - 服务域: service-dashboard\n - 履约域: suppliers, sample-requests\n - 财务域: disbursements, payment-analytics\n - 知识域: knowledge-capture\n - 系统域: analytics, workflow-designer, attendance, training, benefits, settings\n\n2. 修正路由路径映射:\n - users: /users → /settings/users\n - roles: /roles → /settings/roles\n\n3. 补充权限配置:\n - ad-placement 相关: ad-creative, ad-budget-alert, ad-abtest\n - HR 相关: attendance, course, benefit-plan\n - 其他: analytics, target, supplier, sample-request, disbursement 等\n\n🤖 Generated with [Claude Code](https://claude.com/claude-code)\n\nCo-Authored-By: Claude Opus 4.5 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hi.laoluo@hilaoluodeMacBook-Pro.local","AuthorName":"hi.laoluo","CommitterEmail":"hi.laoluo@hilaoluodeMacBook-Pro.local","CommitterName":"hi.laoluo","Timestamp":"2026-01-08T00:11:41+08:00"},{"Sha1":"798facc3b09fa93b92c401f76126e821c5b187e8","Message":"fix: 修复财务报表 $queryRaw 动态参数导致的 SQL 错误\n\n- getRevenueByPeriod: 改为条件分支处理 day/week/quarter/month\n- getCashFlowByPeriod: 改为条件分支处理 day/week/month\n- 原因: PostgreSQL 模板字符串不支持动态函数名参数\n\n🤖 Generated with [Claude Code](https://claude.com/claude-code)\n\nCo-Authored-By: Claude Opus 4.5 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hi.laoluo@hilaoluodeMacBook-Pro.local","AuthorName":"hi.laoluo","CommitterEmail":"hi.laoluo@hilaoluodeMacBook-Pro.local","CommitterName":"hi.laoluo","Timestamp":"2026-01-08T00:08:07+08:00"},{"Sha1":"1e3942bf83a209a2c22ce2b4deb2ef0a4ea7e21b","Message":"test: 修复 auth 和 leads 模块测试用例\n\n- auth: 修复 changePassword 断言缺少 password_changed_at 字段\n- auth: 修复 getCurrentUser 权限断言匹配实际 mock 数据\n- leads: 修复 updateLead/assignLead 使用 updateMany 替代 update\n- leads: 修复 convertLead 测试使用 qualified 状态的线索\n- leads: 修复 batchUpdateStatus 添加 findMany mock 返回数组\n\n🤖 Generated with [Claude Code](https://claude.com/claude-code)\n\nCo-Authored-By: Claude Opus 4.5 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hi.laoluo@hilaoluodeMacBook-Pro.local","AuthorName":"hi.laoluo","CommitterEmail":"hi.laoluo@hilaoluodeMacBook-Pro.local","CommitterName":"hi.laoluo","Timestamp":"2026-01-08T00:00:12+08:00"},{"Sha1":"c8a0c0a4b9a3eafd9dfb51d57264eded4ccce57b","Message":"fix: 修复财务报表和客户余额模块的数据库查询错误\n\n1. financial-reports: 修复 getRevenueByProduct 查询\n - order_items 表使用 sku_id 而非 product_id\n - 通过 skus 表关联到 products 表获取产品信息\n - 修正 line_amount 为 line_total\n\n2. customer-balance: 修复 getBalanceList 查询\n - customers 表无 status 字段,改用 lifecycle_stage\n\n🤖 Generated with [Claude Code](https://claude.com/claude-code)\n\nCo-Authored-By: Claude Opus 4.5 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hi.laoluo@hilaoluodeMacBook-Pro.local","AuthorName":"hi.laoluo","CommitterEmail":"hi.laoluo@hilaoluodeMacBook-Pro.local","CommitterName":"hi.laoluo","Timestamp":"2026-01-07T23:27:37+08:00"}],"HeadCommit":{"Sha1":"abd8cdd0283c96dc4a62fbf753d2aca2e68aa379","Message":"fix: 修复前端请求 pageSize 超出后端限制\n\n后端 baseListQuerySchema 限制 pageSize 最大为 100,修复以下文件:\n- customer-balance/Index.vue: 500 → 100\n- opportunities/Pipeline.vue: 200 → 100\n- crm-activities/Index.vue: 500 → 100\n- ar-ledger/StatementGenerator.vue: 1000 → 100\n- disbursements/ApLedgerTab.vue: 200 → 100\n- hr/attendance/SchedulesTab.vue: 200 → 100\n\n🤖 Generated with [Claude Code](https://claude.com/claude-code)\n\nCo-Authored-By: Claude Opus 4.5 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hi.laoluo@hilaoluodeMacBook-Pro.local","AuthorName":"hi.laoluo","CommitterEmail":"hi.laoluo@hilaoluodeMacBook-Pro.local","CommitterName":"hi.laoluo","Timestamp":"2026-01-08T00:11:49+08:00"},"CompareURL":"luoanwu/juhi-omni-knowledge-hub/compare/d169207d2a046f90cf861f8e805b45d3855fddc3...abd8cdd0283c96dc4a62fbf753d2aca2e68aa379","Len":215}...
|
1771862367
|
Edit
Delete
|
|
110
|
5
|
5
|
5
|
6
|
0
|
0
|
refs/heads/main
|
1
|
{"Commits":[{"Sha1":"89209aba1 {"Commits":[{"Sha1":"89209aba1afe21133399ce0db0a47c2729c9a4b4","Message":"feat: 新增门店管理模块,补充门店维度营销分析端点\n\n一、门店管理模块 (stores)\n- 门店 CRUD:创建、更新、删除、状态管理\n- 门店类型:旗舰店、标准店、加盟店、合作店、迷你店、快闪店\n- 状态机:pending → active → suspended/renovating → closed\n\n二、门店维度营销分析端点\n- GET /stores/:id/marketing-analytics - 门店营销分析(活动、直播、团购、订单汇总)\n- GET /stores/:id/roi-analytics - 门店 ROI 分析(投入产出比、渠道分解、同比环比)\n- GET /stores/:id/livestream-stats - 门店直播统计(场次、时长、观众、GMV)\n- GET /stores/:id/campaigns - 门店活动列表\n\n三、门店对比和排行\n- POST /stores/compare - 多门店横向对比\n- GET /stores/ranking - 门店排行榜(营收、订单、评分、直播GMV)\n\n四、门店营销配置\n- PATCH /stores/:id/marketing-config - 团购/直播/促销开关、平台配置、预算设置\n\n五、前端 API 模块\n- stores.ts:完整类型定义 + API 封装 + 状态配置 + 工具函数\n\n严格遵循8条开发红线\n","AuthorEmail":"noreply@anthropic.com","AuthorName":"Claude","CommitterEmail":"noreply@anthropic.com","CommitterName":"Claude","Timestamp":"2026-01-11T07:36:12Z"},{"Sha1":"bd02a7f3eefc8d114499177151ddde0a410c4065","Message":"feat: 完善 KTV 智慧营销域模块代码实现 - 19个后端模块 + 19个前端API模块\n\n一、分析类模块 (3个)\n- social-analytics: 社交媒体分析(账号概览、内容表现、粉丝画像、竞品对比、趋势分析)\n- content-analytics: 内容分析(表现概览、热门内容、分类表现、发布时间分析)\n- livestream-gifts: 直播礼物(礼物配置、赠送记录、礼物统计、排行榜)\n\n二、商家联盟域模块 (5个)\n- alliance-partners: 联盟商家(入驻审核、等级管理、状态机驱动)\n- alliance-agreements: 联盟协议(协议模板、审批流、续签终止)\n- alliance-campaigns: 联盟活动(多商家参与、效果追踪、奖励配置)\n- alliance-coupons: 联盟优惠券(发放核销、成本分摊、使用规则)\n- alliance-packages: 联盟套餐(多商家组合、分成模式、有效期管理)\n\n三、社群运营域模块 (4个)\n- community-materials: 社群素材(素材库、审核流程、使用追踪)\n- community-tasks: 社群任务(任务配置、执行管理、状态机驱动)\n- community-fission: 社群裂变(邀请奖励、拼团助力、排行榜)\n- community-bots: 社群机器人(多平台支持、自动回复、消息日志)\n\n四、团购运营域模块 (7个)\n- groupbuy-platforms: 团购平台(平台接入、同步配置、对账管理)\n- groupbuy-promotions: 团购促销(促销配置、状态管理、批量操作)\n- groupbuy-inventory: 团购库存(库存管理、预警机制、调拨盘点)\n- groupbuy-redemptions: 团购核销(券码验证、核销记录、统计分析)\n- groupbuy-reviews: 团购评价(评价管理、商家回复、审核分析)\n- groupbuy-commissions: 团购佣金(佣金规则、结算审批、对账报表)\n- groupbuy-influencers: 团购达人(招募审核、等级体系、带货数据)\n\n技术规范:\n- 后端:5层标准结构(schema/service/controller/routes/index)\n- 前端:完整 TypeScript 类型定义 + API 封装\n- 严格遵循8条开发红线(多租户隔离、状态机、事件驱动等)\n\n文件统计:\n- 后端模块:19个目录,95个文件\n- 前端API:19个TypeScript模块,总计约10,000+行代码\n","AuthorEmail":"noreply@anthropic.com","AuthorName":"Claude","CommitterEmail":"noreply@anthropic.com","CommitterName":"Claude","Timestamp":"2026-01-11T07:21:51Z"},{"Sha1":"5c0e2a9ccc614bb1dac8ed3875f4eeddb1bed80d","Message":"feat: 完善 modules.ts 模块元数据定义,覆盖全部142个已部署模块\n\n主要变更:\n1. 新增 ModuleCategory 类型:\n - hr (人力资源域)\n - marketing-customer (营销客户维度)\n - ktv-content, ktv-social, ktv-geo, ktv-adflow, ktv-livestream, ktv-alliance, ktv-community, ktv-groupbuy (KTV智慧营销域)\n\n2. 补充缺失的模块定义:\n - 营销客户维度:campaign-targets, segments, customer-marketing\n - 系统核心模块:auth, scheduled-jobs, event-logs, event-subscriptions, realtime, ai-copilot\n - 服务域:service, service-monitor\n - 履约域:maintenance, workflow-generator\n - 财务域:customer-profit\n - HR域:hr\n\n3. 新增KTV智慧营销域模块(未来规划):\n - 内容管理、社交媒体、GEO优化、投流管理、直播运营、商家联盟、社群运营、团购运营等34个模块\n\n4. 清理重复模块定义:\n - 删除 users, roles, departments, notifications, files, events, approvals, analytics, dashboard, reports, im 的重复定义\n\n模块统计:\n- 已部署模块:142个(全部覆盖)\n- 总定义模块:176个(含34个未来规划模块)\n\n严格遵循8条开发红线\n","AuthorEmail":"noreply@anthropic.com","AuthorName":"Claude","CommitterEmail":"noreply@anthropic.com","CommitterName":"Claude","Timestamp":"2026-01-11T06:14:38Z"},{"Sha1":"b7ed9e35d5ce2b9182dd507c95aa9c675335c3b3","Message":"feat: 营销模块客户/门店维度增强 - 活动定向、客户分群、营销分析\n\n核心功能:\n- 新增4个数据库表:campaign_targets、audience_segments、segment_members、campaign_performance\n- 新增3个后端模块:campaign-targets(活动定向)、segments(客户分群)、customer-marketing(营销分析)\n- 新增3个前端API模块,包含完整类型定义和工具函数\n- 新增18个权限配置,归入营销客户维度分组\n\n技术亮点:\n- 分群状态机:draft → active → paused → archived\n- 营销衍生指标:CTR、CVR、ROI、CPA、ROAS 自动计算\n- 多维度分析:客户、门店、活动、分群四个维度\n- 严格遵循8条开发红线\n","AuthorEmail":"noreply@anthropic.com","AuthorName":"Claude","CommitterEmail":"noreply@anthropic.com","CommitterName":"Claude","Timestamp":"2026-01-11T06:00:53Z"},{"Sha1":"fb6039939f7601cf35179127a6b8205e787342aa","Message":"feat: 完善社交账号、广告人群、广告报表等6个核心模块,严格遵循8条开发红线\n\n完善模块:\n- social-accounts: 8平台账号授权、数据同步、指标追踪、健康度评估\n- social-interactions: 6种互动类型、4种状态、情感分析、自动回复\n- livestream-analytics: 10+分析维度、房间/商品/主播/话术效果分析\n- livestream-scripts: 7种话术类型、6种场景、AI生成优化、结构化模板\n- ad-audiences: 6种人群类型、6种数据源、相似人群、规则验证\n- ad-reports: 8种报表API、10种指标计算、预算预警、效果建议\n\n特性:\n- 状态机驱动:所有状态变更通过POST动作接口\n- 类型安全:禁用any,完整类型定义与后端严格匹配\n- 四层架构:智库层/数链层/SOP层/IM层交互文档\n- 工具函数:格式化、验证、健康度计算、图表数据生成\n","AuthorEmail":"noreply@anthropic.com","AuthorName":"Claude","CommitterEmail":"noreply@anthropic.com","CommitterName":"Claude","Timestamp":"2026-01-11T05:02:28Z"}],"HeadCommit":{"Sha1":"89209aba1afe21133399ce0db0a47c2729c9a4b4","Message":"feat: 新增门店管理模块,补充门店维度营销分析端点\n\n一、门店管理模块 (stores)\n- 门店 CRUD:创建、更新、删除、状态管理\n- 门店类型:旗舰店、标准店、加盟店、合作店、迷你店、快闪店\n- 状态机:pending → active → suspended/renovating → closed\n\n二、门店维度营销分析端点\n- GET /stores/:id/marketing-analytics - 门店营销分析(活动、直播、团购、订单汇总)\n- GET /stores/:id/roi-analytics - 门店 ROI 分析(投入产出比、渠道分解、同比环比)\n- GET /stores/:id/livestream-stats - 门店直播统计(场次、时长、观众、GMV)\n- GET /stores/:id/campaigns - 门店活动列表\n\n三、门店对比和排行\n- POST /stores/compare - 多门店横向对比\n- GET /stores/ranking - 门店排行榜(营收、订单、评分、直播GMV)\n\n四、门店营销配置\n- PATCH /stores/:id/marketing-config - 团购/直播/促销开关、平台配置、预算设置\n\n五、前端 API 模块\n- stores.ts:完整类型定义 + API 封装 + 状态配置 + 工具函数\n\n严格遵循8条开发红线\n","AuthorEmail":"noreply@anthropic.com","AuthorName":"Claude","CommitterEmail":"noreply@anthropic.com","CommitterName":"Claude","Timestamp":"2026-01-11T07:36:12Z"},"CompareURL":"luoanwu/juhi-omni-knowledge-hub/compare/abd8cdd0283c96dc4a62fbf753d2aca2e68aa379...89209aba1afe21133399ce0db0a47c2729c9a4b4","Len":187}...
|
1771862388
|
Edit
Delete
|
|
111
|
5
|
5
|
5
|
6
|
0
|
0
|
refs/heads/main
|
1
|
{"Commits":[{"Sha1":"a7c22fc0f {"Commits":[{"Sha1":"a7c22fc0f5e2d113210bb58646dcdbf7381be245","Message":"feat: 完善菜单系统与获客域组件\n\n菜单系统优化:\n- 完善路由配置和菜单定义\n- 优化侧边栏布局组件\n\n获客域改进:\n- 重构 CalendarSidebar 组件\n- 完善 useTodos composable 逻辑\n- 优化 acquisition Index 页面\n\nAPI 适配器优化:\n- 完善订单和报价模块接口\n- 优化类型定义\n\nCo-Authored-By: Claude Opus 4.5 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-01-24T13:15:57+08:00"},{"Sha1":"c33235407144b26da2f8210eafefcb17b16eb681","Message":"feat(activity): 完善活动组件功能\n\n- 提取时间格式化工具函数到 utils/date.ts\n - formatMinutesToReadable: 格式化分钟数为可读格式\n - formatTimeOnly: 格式化时间为 HH:mm 格式\n - formatOverdue: 格式化逾期时间描述\n - getDateLabel: 获取日期友好标签(今天、昨天、周几)\n\n- ActivityTodayPanel 新增自动刷新功能\n - 添加 refreshInterval prop 配置刷新间隔\n - 实现定时器自动刷新机制\n - 添加生命周期管理确保定时器正确清理\n\n- ActivityQuickCreate 新增最近使用类型功能\n - 使用 localStorage 持久化最近使用的活动类型\n - 快捷类型列表优先显示最近使用的类型\n - 创建成功后自动保存到最近使用列表\n\n- ActivityTimeline 代码优化\n - 使用共享工具函数替代本地重复代码\n - 简化 groupedActivities 计算逻辑\n\nCo-Authored-By: Claude Opus 4.5 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-01-24T13:15:47+08:00"},{"Sha1":"89aabcffe0caa49473f79ba33ee5a776168823d3","Message":"fix(types): 修复 TypeScript 类型错误\n\n- tsconfig.json: 添加 Node.js 类型定义\n- slow-query.middleware.ts: 修复 Express 类型导入\n- encryption.middleware.ts: 修复泛型索引类型错误\n- encryption.service.ts: 修复泛型索引类型错误\n- outbox-processor.service.ts: 添加 Kafka producer 空值检查\n\n剩余类型错误主要为 Prisma 相关,需要执行 prisma generate\n","AuthorEmail":"noreply@anthropic.com","AuthorName":"Claude","CommitterEmail":"noreply@anthropic.com","CommitterName":"Claude","Timestamp":"2026-01-24T04:42:53Z"},{"Sha1":"abd654ed9ddbab9a988c89074448d591135d7d51","Message":"docs(claude): 新增 Claude Code 工具使用规范章节\n\n新增内容:\n- 工具选择决策树(快速判断使用哪个工具)\n- 文件操作工具规范(Read/Glob/Grep/Edit/Write)\n- 命令执行工具规范(Bash 适用场景和禁止操作)\n- Task 工具使用指南(11 种 Agent 类型选择)\n- TodoWrite 任务追踪规范\n- Web 工具使用方法\n- 4 种常用工具组合模式\n- 项目特定规范(多租户/状态机/事件/7层一致性)\n- 工具使用禁忌对照表\n- 效率优化原则\n\n版本更新:v7.2 → v7.3\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-01-24T11:37:19+08:00"},{"Sha1":"0b4942d200d9009d4c6ee1e06674d71f13585a52","Message":"feat(menu): 将渠道客户移动到销售中心的渠道管理分组\n\n- 修改 partner-customers 路由的 menuGroup 从 '主数据' 改为 '渠道管理'\n- 在 SALES_ITEMS 中添加 partner-customers 菜单项\n- 调整 menuOrder 为 3(在客户管理和合作伙伴之后)\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-01-24T02:33:47+08:00"}],"HeadCommit":{"Sha1":"a7c22fc0f5e2d113210bb58646dcdbf7381be245","Message":"feat: 完善菜单系统与获客域组件\n\n菜单系统优化:\n- 完善路由配置和菜单定义\n- 优化侧边栏布局组件\n\n获客域改进:\n- 重构 CalendarSidebar 组件\n- 完善 useTodos composable 逻辑\n- 优化 acquisition Index 页面\n\nAPI 适配器优化:\n- 完善订单和报价模块接口\n- 优化类型定义\n\nCo-Authored-By: Claude Opus 4.5 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-01-24T13:15:57+08:00"},"CompareURL":"luoanwu/juhi-omni-knowledge-hub/compare/89209aba1afe21133399ce0db0a47c2729c9a4b4...a7c22fc0f5e2d113210bb58646dcdbf7381be245","Len":216}...
|
1771862411
|
Edit
Delete
|
|
112
|
5
|
5
|
5
|
6
|
0
|
0
|
refs/heads/main
|
1
|
{"Commits":[{"Sha1":"e15e357a8 {"Commits":[{"Sha1":"e15e357a819170a89dbcfd25fe33ea58972ae0ff","Message":"feat: 新增 P1 优先级状态机(AI Agent、AI 任务、广告计划、选址评估)\n\n- ai-agent: 管理 AI Agent 员工生命周期(未激活→活跃→训练中→已暂停)\n- ai-task: 管理 AI 任务执行流程(待处理→处理中→已完成/失败/已取消)\n- ad-campaign: 管理广告投放全流程(草稿→待审批→已批准→投放中→已完成)\n- location-assessment: 管理门店选址评估(草稿→已提交→评审中→实地勘察→待审批→已批准)\n","AuthorEmail":"noreply@anthropic.com","AuthorName":"Claude","CommitterEmail":"noreply@anthropic.com","CommitterName":"Claude","Timestamp":"2026-01-25T22:55:03Z"},{"Sha1":"1ca105d537327f10bfa4ff7b4dd263c21711a3d5","Message":"feat: 新增团购商品、团购核销、社媒发布状态机\n\n- groupbuy-product: 管理团购商品生命周期(草稿→审核→上架→下架/售罄/过期)\n- groupbuy-redemption: 管理券码核销流程(待核销→已核销/已退款/已过期)\n- social-post: 管理社媒内容发布(草稿→定时→发布中→已发布/失败)\n","AuthorEmail":"noreply@anthropic.com","AuthorName":"Claude","CommitterEmail":"noreply@anthropic.com","CommitterName":"Claude","Timestamp":"2026-01-25T22:46:38Z"},{"Sha1":"e8d10339466d1d493d672174bb25eaaf804f5fa7","Message":"feat: 新增联盟商家、培训场次、联盟结算状态机\n\n- 新增 alliance-partner.machine.ts (联盟商家状态机)\n - 状态:pending → approved → active → suspended/terminated\n - 支持审批、激活、冻结、终止等操作\n\n- 新增 training-session.machine.ts (培训场次状态机)\n - 状态:pending → enrolling → in_progress → completed\n - 支持报名开放、开始、完成、取消等操作\n\n- 新增 alliance-settlement.machine.ts (联盟结算状态机)\n - 状态:pending → confirmed → approved → paid\n - 支持确认、审批、支付、拒绝等操作\n\n- 更新 index.ts 导出新状态机\n- 更新 transitions.ts 添加转换验证函数\n","AuthorEmail":"noreply@anthropic.com","AuthorName":"Claude","CommitterEmail":"noreply@anthropic.com","CommitterName":"Claude","Timestamp":"2026-01-25T22:40:37Z"},{"Sha1":"986b5900952c599b9590cce0b9d832ab58f86504","Message":"feat: 新增团购扩展状态机\n\n- 新增 groupbuy-influencer.machine.ts (团购达人状态机)\n- 新增 groupbuy-commission.machine.ts (团购佣金状态机)\n- 新增 groupbuy-promotion.machine.ts (团购促销状态机)\n- 更新 index.ts 导出新状态机\n- 更新 transitions.ts 添加转换验证函数\n","AuthorEmail":"noreply@anthropic.com","AuthorName":"Claude","CommitterEmail":"noreply@anthropic.com","CommitterName":"Claude","Timestamp":"2026-01-25T22:35:57Z"},{"Sha1":"43e15382c2d1217602fc7ef10114983770e23e14","Message":"feat: 新增 HR 模块和资产管理状态机\n\n- 新增 leave-request.machine.ts (请假申请状态机)\n- 新增 overtime-request.machine.ts (加班申请状态机)\n- 新增 serial-number.machine.ts (序列号/资产状态机)\n- 更新 index.ts 导出新状态机\n- 更新 transitions.ts 添加转换验证函数\n","AuthorEmail":"noreply@anthropic.com","AuthorName":"Claude","CommitterEmail":"noreply@anthropic.com","CommitterName":"Claude","Timestamp":"2026-01-25T22:28:50Z"}],"HeadCommit":{"Sha1":"e15e357a819170a89dbcfd25fe33ea58972ae0ff","Message":"feat: 新增 P1 优先级状态机(AI Agent、AI 任务、广告计划、选址评估)\n\n- ai-agent: 管理 AI Agent 员工生命周期(未激活→活跃→训练中→已暂停)\n- ai-task: 管理 AI 任务执行流程(待处理→处理中→已完成/失败/已取消)\n- ad-campaign: 管理广告投放全流程(草稿→待审批→已批准→投放中→已完成)\n- location-assessment: 管理门店选址评估(草稿→已提交→评审中→实地勘察→待审批→已批准)\n","AuthorEmail":"noreply@anthropic.com","AuthorName":"Claude","CommitterEmail":"noreply@anthropic.com","CommitterName":"Claude","Timestamp":"2026-01-25T22:55:03Z"},"CompareURL":"luoanwu/juhi-omni-knowledge-hub/compare/a7c22fc0f5e2d113210bb58646dcdbf7381be245...e15e357a819170a89dbcfd25fe33ea58972ae0ff","Len":46}...
|
1771862494
|
Edit
Delete
|
|
113
|
5
|
5
|
5
|
6
|
0
|
0
|
refs/heads/main
|
1
|
{"Commits":[{"Sha1":"c8adeb714 {"Commits":[{"Sha1":"c8adeb7142f7f1b57a10bfffc3de856524997227","Message":"docs: 添加项目缺失组件全面分析报告\n\n扫描 194 个后端模块、211 个前端 API 模块、236 个视图目录、67 个状态机,\n从 6 个维度系统分析项目缺失:后端 5 层完整性、前后端对应关系、\n事件发布覆盖、多租户隔离、MODULE_REGISTRY 注册、状态机覆盖。\n\nhttps://claude.ai/code/session_01GCDecp19keemJd6cdsCb7u\n","AuthorEmail":"noreply@anthropic.com","AuthorName":"Claude","CommitterEmail":"noreply@anthropic.com","CommitterName":"Claude","Timestamp":"2026-02-07T00:59:30Z"},{"Sha1":"ef7d327658968d43877a720fa4769acb2363b556","Message":"chore: 添加用户权限检查和缓存清理脚本\n\n- check-user-permissions.ts: 检查用户角色和 MEDDPICC 相关权限\n- clear-user-cache.ts: 清除用户和角色权限的 Redis 缓存\n\nCo-Authored-By: Claude Opus 4.5 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-01-26T22:50:15+08:00"},{"Sha1":"4cf8f8a37c80ac40fc47068d0eb5c4e4377cde2c","Message":"fix: 修复 groupbuy 模块 TypeScript 类型错误\n\n修复内容:\n- groupbuy-commissions: 修复 Prisma 表名类型和 JSON 字段类型\n- groupbuy-influencers: 修复 Prisma 表名类型\n- groupbuy-inventory: 修复 Prisma 表名类型\n- groupbuy-orders: 修复 Prisma 表名类型和 JSON 字段类型\n- groupbuy-participants: 修复 schema 和 service 类型\n- groupbuy-platforms: 修复 controller 和 service 类型\n- groupbuy-pricing: 修复 Prisma 表名类型\n- groupbuy-products: 修复 Prisma 表名类型和 JSON 字段类型\n- groupbuy-promotions: 修复 Prisma 表名类型\n- groupbuy-redemptions: 修复 schema 和 service 类型\n- groupbuy-reviews: 修复 controller 和 service 类型\n- groupbuy-settlements: 修复 BizCodePrefix 导入和 JSON 字段类型\n\n修复模式:\n- (prisma as any).table_name 处理未在 schema 中的表\n- Prisma.InputJsonValue 处理 JSON 字段类型\n- Record\u003cstring, unknown\u003e 替代 Record\u003cstring, any\u003e\n- as any 处理复杂查询参数类型\n\nCo-Authored-By: Claude Opus 4.5 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-01-26T22:40:45+08:00"},{"Sha1":"3b059cbbbaed4d76d3197383a280b976511f20a6","Message":"fix: 修复多模块 TypeScript 类型错误\n\n主要修复:\n- geo-analytics: 修复 Prisma Decimal 类型导入和 OpenAPI 文档类型\n- disbursements: 修复控制器类型错误\n- files: 修复文件服务和控制器类型\n- event-subscriptions: 确认类型正确\n- 其他模块: 修复各类 TypeScript 类型推断问题\n\n涉及 67 个文件的类型安全改进\n\nCo-Authored-By: Claude Opus 4.5 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-01-26T22:05:32+08:00"},{"Sha1":"e9edc5693579b5dd189b08eacef3678ceaf3be4a","Message":"fix(ai-agents): 修复 LeadCollector 组件 API 响应解包错误\n\n问题:\n- client.ts 拦截器对非分页响应自动解包 response.data\n- LeadCollector.vue 错误地使用 response.data.data 导致 undefined\n\n修复 4 处 API 调用:\n- loadIndustries: getSupportedIndustries 响应解包\n- loadIndustryKeywords: getIndustryKeywords 响应解包\n- handleCollect: collectLeads 响应解包\n- handleCheckDuplicate: detectDuplicate 响应解包\n\nCo-Authored-By: Claude Opus 4.5 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-01-26T21:25:55+08:00"}],"HeadCommit":{"Sha1":"c8adeb7142f7f1b57a10bfffc3de856524997227","Message":"docs: 添加项目缺失组件全面分析报告\n\n扫描 194 个后端模块、211 个前端 API 模块、236 个视图目录、67 个状态机,\n从 6 个维度系统分析项目缺失:后端 5 层完整性、前后端对应关系、\n事件发布覆盖、多租户隔离、MODULE_REGISTRY 注册、状态机覆盖。\n\nhttps://claude.ai/code/session_01GCDecp19keemJd6cdsCb7u\n","AuthorEmail":"noreply@anthropic.com","AuthorName":"Claude","CommitterEmail":"noreply@anthropic.com","CommitterName":"Claude","Timestamp":"2026-02-07T00:59:30Z"},"CompareURL":"luoanwu/juhi-omni-knowledge-hub/compare/e15e357a819170a89dbcfd25fe33ea58972ae0ff...c8adeb7142f7f1b57a10bfffc3de856524997227","Len":42}...
|
1771862517
|
Edit
Delete
|
|
114
|
5
|
5
|
5
|
6
|
0
|
0
|
refs/heads/main
|
1
|
{"Commits":[{"Sha1":"7145a8553 {"Commits":[{"Sha1":"7145a8553a880d8a94356baf7bcb4e2df4631e61","Message":"Update predictive and RFM modules\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-11T01:01:39+08:00"},{"Sha1":"0f2d9c3835013e4d3629614ecd18a44606763f27","Message":"Review analytics module updates\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-11T00:49:16+08:00"},{"Sha1":"9675324a5bbabd31646b05a46b9ccea1f19bbfb9","Message":"Review backend and docs updates\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-11T00:29:08+08:00"},{"Sha1":"eb3fcc5f8f454b79674c60ad457e4d5ecd3ee310","Message":"Review recent docs and service edits\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-11T00:16:16+08:00"},{"Sha1":"2d6cf596bcfe9ab7bfa9a6d26a1d0572fef6cc8c","Message":"Summarize backend doc updates\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-11T00:12:40+08:00"}],"HeadCommit":{"Sha1":"7145a8553a880d8a94356baf7bcb4e2df4631e61","Message":"Update predictive and RFM modules\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-11T01:01:39+08:00"},"CompareURL":"luoanwu/juhi-omni-knowledge-hub/compare/c8adeb7142f7f1b57a10bfffc3de856524997227...7145a8553a880d8a94356baf7bcb4e2df4631e61","Len":57}...
|
1771862651
|
Edit
Delete
|
|
115
|
5
|
5
|
5
|
6
|
0
|
0
|
refs/heads/main
|
1
|
{"Commits":[{"Sha1":"343b38f6b {"Commits":[{"Sha1":"343b38f6bfbbd7d44a1387e1351700df68013555","Message":"Add external group-buy integrations\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-12T00:24:50+08:00"},{"Sha1":"1f279b5dfe76404d425c390ba104d9820a7862f9","Message":"Expand integration services for ad平台\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-12T00:24:09+08:00"},{"Sha1":"3b0503c391d1606984b159d179142267f3e0de8d","Message":"Add groupbuy platforms integration\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-12T00:08:25+08:00"},{"Sha1":"08ac5505f53c425f6625e3f518f78ed2258dab8e","Message":"Analyze failed e2e flows\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-12T00:05:40+08:00"},{"Sha1":"89c27769d608af0197dd2a5008a526946a2b3a7c","Message":"Update playwright report script data\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-12T00:04:04+08:00"}],"HeadCommit":{"Sha1":"343b38f6bfbbd7d44a1387e1351700df68013555","Message":"Add external group-buy integrations\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-12T00:24:50+08:00"},"CompareURL":"luoanwu/juhi-omni-knowledge-hub/compare/7145a8553a880d8a94356baf7bcb4e2df4631e61...343b38f6bfbbd7d44a1387e1351700df68013555","Len":25}...
|
1771862764
|
Edit
Delete
|
|
116
|
5
|
5
|
5
|
6
|
0
|
0
|
refs/heads/main
|
1
|
{"Commits":[{"Sha1":"18a5bb9c6 {"Commits":[{"Sha1":"18a5bb9c67c571fc2cad6ffe61e70633bcec36a8","Message":"Fix frontend and backend type-check\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-12T07:46:55+08:00"},{"Sha1":"7967b5d3535c5bb9b9e26e4418376bc2b6927aea","Message":"Document groupbuy service analysis\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-12T07:45:43+08:00"},{"Sha1":"6a301fa26efd7ac1cfefc96cbd912a1d9d3db9da","Message":"Investigate groupbuy integration\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-12T07:45:20+08:00"},{"Sha1":"58998e1babe1d0f9b82889482a3710073e638f36","Message":"Add groupbuy external integrations\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-12T07:43:33+08:00"},{"Sha1":"4e8869bcc54627e1f20c00de7ad2ad5469fa3446","Message":"Add groupbuy service integrations\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-12T07:41:44+08:00"}],"HeadCommit":{"Sha1":"18a5bb9c67c571fc2cad6ffe61e70633bcec36a8","Message":"Fix frontend and backend type-check\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-12T07:46:55+08:00"},"CompareURL":"luoanwu/juhi-omni-knowledge-hub/compare/343b38f6bfbbd7d44a1387e1351700df68013555...18a5bb9c67c571fc2cad6ffe61e70633bcec36a8","Len":25}...
|
1771862813
|
Edit
Delete
|
|
117
|
5
|
5
|
5
|
6
|
0
|
0
|
refs/heads/main
|
1
|
{"Commits":[{"Sha1":"f8a1588d1 {"Commits":[{"Sha1":"f8a1588d13917a22d3710214cee7468768c4490e","Message":"Fix contract signing flow timeout\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-12T08:48:12+08:00"},{"Sha1":"8b4fec9e55a27c0fc0081fee973dae0b4c3556be","Message":"修复合同签署流程超时失败问题 (0)\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-12T08:45:30+08:00"},{"Sha1":"6ed3a911ae382b8fd5c190cfe0919e2367a7097b","Message":"修复contract-signing-flow超时失败\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-12T08:44:32+08:00"},{"Sha1":"9f9b2c96d3714de38f0d27e7c5fc66e23cf496b4","Message":"Fix contract signing timeout\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-12T08:42:28+08:00"},{"Sha1":"9503f4d0db1e5309d3d5fe57141c1804825a6a31","Message":"Fix contract signing flow timeout\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-12T08:40:10+08:00"}],"HeadCommit":{"Sha1":"f8a1588d13917a22d3710214cee7468768c4490e","Message":"Fix contract signing flow timeout\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-12T08:48:12+08:00"},"CompareURL":"luoanwu/juhi-omni-knowledge-hub/compare/18a5bb9c67c571fc2cad6ffe61e70633bcec36a8...f8a1588d13917a22d3710214cee7468768c4490e","Len":10}...
|
1771862906
|
Edit
Delete
|
|
118
|
5
|
5
|
5
|
6
|
0
|
0
|
refs/heads/main
|
1
|
{"Commits":[{"Sha1":"4e9a26e0e {"Commits":[{"Sha1":"4e9a26e0e1c15538f2a6f033748340bb62b02af2","Message":"Fix contract signing flow timeout\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-12T09:08:09+08:00"},{"Sha1":"221831d8296440837918bdea099ddfe1cb105e7d","Message":"Fix contract-signing-flow timeout\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-12T09:07:29+08:00"},{"Sha1":"8c4c56e20f4634ca0c3000c7503f8ec8b9c239f7","Message":"Fix contract signing timeout\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-12T09:02:10+08:00"},{"Sha1":"3c363f67c8eed9b404c8c6525e11ba92fb49dc65","Message":"修复 contract-signing-flow 超时失败\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-12T09:00:06+08:00"},{"Sha1":"091461f1d34669151f15624f1793671d24ea4935","Message":"修复 contract-signing-flow 超时失败\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-12T08:59:30+08:00"}],"HeadCommit":{"Sha1":"4e9a26e0e1c15538f2a6f033748340bb62b02af2","Message":"Fix contract signing flow timeout\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-12T09:08:09+08:00"},"CompareURL":"luoanwu/juhi-omni-knowledge-hub/compare/f8a1588d13917a22d3710214cee7468768c4490e...4e9a26e0e1c15538f2a6f033748340bb62b02af2","Len":10}...
|
1771862929
|
Edit
Delete
|
|
119
|
5
|
5
|
5
|
6
|
0
|
0
|
refs/heads/main
|
1
|
{"Commits":[{"Sha1":"546659ec6 {"Commits":[{"Sha1":"546659ec60e857bdf77619972d1b3e4333b621ac","Message":"Fix e2e timeout failures in business\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-12T10:47:47+08:00"},{"Sha1":"1b8bb5fb6f26c34b2e8b8ef0034ba5abad85b778","Message":"Fix contract signing flow timeouts\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-12T10:43:58+08:00"},{"Sha1":"5bbca50424a2b46f75580225a21e3598d47f2599","Message":"Fix 合同签署流程超时失败」} PMID correction? I\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-12T10:32:53+08:00"},{"Sha1":"6ed44eeae0cc3408bafde02ef9a6987230bb423f","Message":"Fix contract signing flow timeout\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-12T10:06:50+08:00"},{"Sha1":"e42d979f587f47754c40e56d87cb2e5afed8d6e9","Message":"Fix contract signing flow timeouts\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-12T10:05:41+08:00"}],"HeadCommit":{"Sha1":"546659ec60e857bdf77619972d1b3e4333b621ac","Message":"Fix e2e timeout failures in business\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-12T10:47:47+08:00"},"CompareURL":"luoanwu/juhi-omni-knowledge-hub/compare/4e9a26e0e1c15538f2a6f033748340bb62b02af2...546659ec60e857bdf77619972d1b3e4333b621ac","Len":10}...
|
1771862944
|
Edit
Delete
|
|
120
|
5
|
5
|
5
|
6
|
0
|
0
|
refs/heads/main
|
1
|
{"Commits":[{"Sha1":"14c4cca40 {"Commits":[{"Sha1":"14c4cca40c3b21a5247fd9117fc9af829acc8ea7","Message":"Use permissions constants in workflow and supplier routes\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-14T13:04:17+08:00"},{"Sha1":"79fcfedb8be1c699b9c0be70c6eba5f9cb255217","Message":"Unify lead-scoring-ai docs permission naming\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-14T13:00:56+08:00"},{"Sha1":"06907f69205d8b6f337f431f5fd3e7edfec8d9d7","Message":"Update marketing chatbot permissions\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-14T12:58:35+08:00"},{"Sha1":"f931c912f26fc011817d1f2b5d528d3ce2b2a919","Message":"Use permissions constants in lead-scoring-ai\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-14T12:55:08+08:00"},{"Sha1":"fc30f7fb18e821bf843d5480e636e333d44c231c","Message":"Use permissions constants in ad-acc\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-14T12:50:11+08:00"}],"HeadCommit":{"Sha1":"14c4cca40c3b21a5247fd9117fc9af829acc8ea7","Message":"Use permissions constants in workflow and supplier routes\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-14T13:04:17+08:00"},"CompareURL":"luoanwu/juhi-omni-knowledge-hub/compare/546659ec60e857bdf77619972d1b3e4333b621ac...14c4cca40c3b21a5247fd9117fc9af829acc8ea7","Len":20}...
|
1771863032
|
Edit
Delete
|
|
121
|
5
|
5
|
5
|
6
|
0
|
0
|
refs/heads/main
|
1
|
{"Commits":[{"Sha1":"07ea713c1 {"Commits":[{"Sha1":"07ea713c1feff2e0f7d2b91d5ca68f2e0140a963","Message":"fix(events): close remaining partial event coverage gaps\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-14T15:48:57+08:00"},{"Sha1":"2bb98573012162e66541b69f713e6b469c268b2c","Message":"docs(permissions): align ai docs to kebab and add 20260214 migration guide\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-14T15:38:53+08:00"},{"Sha1":"f773cce3ddbd4b1c23e4211aea0a0158da1ed047","Message":"feat(db): add migration to normalize permission codes to kebab\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-14T15:34:44+08:00"},{"Sha1":"44a7486eb5e06ab7e3b26abf9d0e27c9e95eea19","Message":"chore(check): enforce kebab permission naming in consistency check\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-14T15:32:46+08:00"},{"Sha1":"958c331d79789ae97b222fbf14eacbcee94760b4","Message":"refactor(permissions): remove _KEBAB aliases and use canonical constants\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-14T15:31:35+08:00"}],"HeadCommit":{"Sha1":"07ea713c1feff2e0f7d2b91d5ca68f2e0140a963","Message":"fix(events): close remaining partial event coverage gaps\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-14T15:48:57+08:00"},"CompareURL":"luoanwu/juhi-omni-knowledge-hub/compare/14c4cca40c3b21a5247fd9117fc9af829acc8ea7...07ea713c1feff2e0f7d2b91d5ca68f2e0140a963","Len":25}...
|
1771863141
|
Edit
Delete
|
|
122
|
5
|
5
|
5
|
6
|
0
|
0
|
refs/heads/main
|
1
|
{"Commits":[{"Sha1":"d7015f9d4 {"Commits":[{"Sha1":"d7015f9d49cede2efeed047cc1f3b40cc86ec8f9","Message":"Fix regression failures in services\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-15T08:40:31+08:00"},{"Sha1":"191c639c0dc139805afc48cca2abdf70a331e6de","Message":"Fix seven failed files first\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-15T08:28:53+08:00"},{"Sha1":"96cf73594417b29e4e76f975c30fc1e6dd317846","Message":"Fix regression failures in services\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-15T08:21:05+08:00"},{"Sha1":"77bed0b600c4ed27a825b12da1f55320a8732627","Message":"Align testing workflows and docs\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-15T08:07:36+08:00"},{"Sha1":"309b1c29423bf9e6d4a95cc357397ce821bf4b27","Message":"Update template and lead services\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-15T07:50:17+08:00"}],"HeadCommit":{"Sha1":"d7015f9d49cede2efeed047cc1f3b40cc86ec8f9","Message":"Fix regression failures in services\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-15T08:40:31+08:00"},"CompareURL":"luoanwu/juhi-omni-knowledge-hub/compare/07ea713c1feff2e0f7d2b91d5ca68f2e0140a963...d7015f9d49cede2efeed047cc1f3b40cc86ec8f9","Len":25}...
|
1771863152
|
Edit
Delete
|
|
123
|
5
|
5
|
5
|
6
|
0
|
0
|
refs/heads/main
|
1
|
{"Commits":[{"Sha1":"b811674b3 {"Commits":[{"Sha1":"b811674b3d8bcccda88901dc53d28649bb22a695","Message":"继续扩大回归修复失败问题} continuous? need close\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-15T10:42:03+08:00"},{"Sha1":"9048c1506657a7278c291390d4c1aa00a7b00456","Message":"修复扩大回归失败测试集各项问题还原回归\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-15T10:40:51+08:00"},{"Sha1":"a699c1b8574daa28dbaaacd6d46ced6a4c95e462","Message":"Fix failed regression suite\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-15T10:16:07+08:00"},{"Sha1":"dc29ea3a681a369f3f918cdd06ba33c8b1c47e54","Message":"Fix regression failures starting at\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-15T10:08:18+08:00"},{"Sha1":"35fe09b825591cd4fad9eca516af05d69a8b7304","Message":"refactor: 完成 Batch 1 和 Batch 2 的 BaseService 重构\n\n## 重构范围\n- Batch 1(8 个核心模块):leads, opportunities, quotes, contracts, orders, tickets, renewals, shipments\n- Batch 2(4 个模块):ai-agents(多类继承), reconciliation, bank-import, matching-engine\n\n## 核心改动\n1. **BaseService 继承**:12 个模块服务类继承 BaseService,统一 CRUD 操作\n2. **多租户隔离**:所有查询使用 buildTenantWhere(),确保数据隔离\n3. **事件发布**:写操作统一通过 publishEvent() 发布 Kafka 事件\n4. **状态机集成**:状态变更统一通过 canTransition() 校验\n5. **事务安全**:复杂操作使用 prisma.$transaction() 保证原子性\n\n## 技术亮点\n- ai-agents 模块:首次实现同文件多类继承 BaseService(3 主类 + 4 工具类)\n- matching-engine:保持独立算法服务,不继承 BaseService 但遵循项目规范\n- 智能匹配算法:加权评分(金额 40%,名称 30%,参考号 15%,日期 15%)\n- 自动阈值决策:自动确认 95%,人工审核 70%\n\n## 代码质量\n- 删除 8 个临时 .new.ts 文件(-9,501 行)\n- 重构 12 个服务文件(净减少 11,369 行)\n- 更新 13 个测试文件,确保测试覆盖\n- 通过多租户安全审计:npm run audit:tenant ✅\n\n## 测试验证\n- ai-agent.permissions.test.ts: 12/12 tests passed\n- 多租户隔离:无安全问题\n- 事件发布:所有写操作正确发布事件\n- 状态机校验:状态转换验证 100% 覆盖\n\n## 统计数据\n- 48 个文件变更\n- 9,785 行新增\n- 21,154 行删除\n- 净减少 11,369 行代码(-53%)\n\nCo-Authored-By: Claude Sonnet 4.5 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-15T09:58:37+08:00"}],"HeadCommit":{"Sha1":"b811674b3d8bcccda88901dc53d28649bb22a695","Message":"继续扩大回归修复失败问题} continuous? need close\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-15T10:42:03+08:00"},"CompareURL":"luoanwu/juhi-omni-knowledge-hub/compare/d7015f9d49cede2efeed047cc1f3b40cc86ec8f9...b811674b3d8bcccda88901dc53d28649bb22a695","Len":5}...
|
1771863241
|
Edit
Delete
|
|
124
|
5
|
5
|
5
|
6
|
0
|
0
|
refs/heads/main
|
1
|
{"Commits":[{"Sha1":"6a0c5f7bf {"Commits":[{"Sha1":"6a0c5f7bf734b351d9adc202dbdab62ec1d9a11d","Message":"Fix failed regression files\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-15T12:32:30+08:00"},{"Sha1":"fd380a5bdc32c396a021c83fde9d740fb0be906c","Message":"修复已上报故障删除提示理解错误」} However needs 18-3\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-15T11:55:50+08:00"},{"Sha1":"51303671c2c01724cf0c06a88a33e77c1499cfc1","Message":"Fix listed e2e regression failures\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-15T11:52:49+08:00"},{"Sha1":"b264100e46c19e4e79be52d7c26e42ba62802778","Message":"修复最近扩大回归失败情况該user provided last word\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-15T11:46:44+08:00"},{"Sha1":"9178f9ce5fae2e2669d9de2b8111108a8600ceb6","Message":"Fix expanded regression failures\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-15T10:43:08+08:00"}],"HeadCommit":{"Sha1":"6a0c5f7bf734b351d9adc202dbdab62ec1d9a11d","Message":"Fix failed regression files\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-15T12:32:30+08:00"},"CompareURL":"luoanwu/juhi-omni-knowledge-hub/compare/b811674b3d8bcccda88901dc53d28649bb22a695...6a0c5f7bf734b351d9adc202dbdab62ec1d9a11d","Len":5}...
|
1771863278
|
Edit
Delete
|
|
125
|
5
|
5
|
5
|
6
|
0
|
0
|
refs/heads/main
|
1
|
{"Commits":[{"Sha1":"c544245db {"Commits":[{"Sha1":"c544245db6731ba7a3f5a10edf7698967643f94d","Message":"Update treasury services and schema\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-15T20:33:20+08:00"},{"Sha1":"dd0c5594efcd279494302481c573a338d1b8f130","Message":"Summarize backend revenue changes\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-15T16:57:36+08:00"},{"Sha1":"8bef17ed49cc235f56ba20490e1cbcd69d5eef59","Message":"Investigate repeated API debug logs\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-15T16:52:17+08:00"},{"Sha1":"5fa423d8f446e7c8019b507e98ca29833e1efc9a","Message":"Investigate repeated GET /im/unread‑\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-15T16:32:27+08:00"},{"Sha1":"d1b7018ba9053ef12ea4dd9e8851fbb815925825","Message":"Inspect unread stats logging\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-15T14:36:25+08:00"}],"HeadCommit":{"Sha1":"c544245db6731ba7a3f5a10edf7698967643f94d","Message":"Update treasury services and schema\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-15T20:33:20+08:00"},"CompareURL":"luoanwu/juhi-omni-knowledge-hub/compare/6a0c5f7bf734b351d9adc202dbdab62ec1d9a11d...c544245db6731ba7a3f5a10edf7698967643f94d","Len":10}...
|
1771863308
|
Edit
Delete
|
|
126
|
5
|
5
|
5
|
6
|
0
|
0
|
refs/heads/main
|
1
|
{"Commits":[{"Sha1":"5dda81cc1 {"Commits":[{"Sha1":"5dda81cc1d924bf1978062ca3fb162236ae8c57f","Message":"Update commission service exports\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-15T21:52:03+08:00"},{"Sha1":"03d0b2e2c6eb9079e5436e281a0e05bba3479530","Message":"Add discount policy endpoints\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-15T21:14:42+08:00"},{"Sha1":"23c03fa43a1ce9bb6130fcc6a7ceae940a620d18","Message":"Add partner import export\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-15T21:06:44+08:00"},{"Sha1":"4ec31d0412f1904447efbc328c1222cefa89fd91","Message":"Review commission service updates\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-15T21:03:46+08:00"},{"Sha1":"d3864bf32783868b2da8465923fac6aba834c589","Message":"Update partner product payment logic\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-15T20:53:43+08:00"}],"HeadCommit":{"Sha1":"5dda81cc1d924bf1978062ca3fb162236ae8c57f","Message":"Update commission service exports\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-15T21:52:03+08:00"},"CompareURL":"luoanwu/juhi-omni-knowledge-hub/compare/c544245db6731ba7a3f5a10edf7698967643f94d...5dda81cc1d924bf1978062ca3fb162236ae8c57f","Len":5}...
|
1771863337
|
Edit
Delete
|
|
127
|
5
|
5
|
5
|
6
|
0
|
0
|
refs/heads/main
|
1
|
{"Commits":[{"Sha1":"4d8152400 {"Commits":[{"Sha1":"4d8152400e0edaa95ca297b53f8ad4da2f49bf7f","Message":"Fix frontend revenue recognition any\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-17T14:24:28+08:00"},{"Sha1":"34dd3176c9d53eec42229818726de7931dde4edb","Message":"Fix localhost revenue rules 404\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-16T08:58:40+08:00"},{"Sha1":"7f0601bdd1c8b0145758236aa9cd2f1b605e5e9a","Message":"Auto populate finance placeholder UI\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-16T01:45:50+08:00"},{"Sha1":"5c3b90c3df54a5727978fccc9fd3b68a496c2b90","Message":"Add finance dashboard skeleton tabs\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-16T01:32:03+08:00"},{"Sha1":"5bf47df3e9217bf8193505e7d28b73240bcd3cf4","Message":"Update finance placeholder pages\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-16T01:15:20+08:00"}],"HeadCommit":{"Sha1":"4d8152400e0edaa95ca297b53f8ad4da2f49bf7f","Message":"Fix frontend revenue recognition any\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-17T14:24:28+08:00"},"CompareURL":"luoanwu/juhi-omni-knowledge-hub/compare/5dda81cc1d924bf1978062ca3fb162236ae8c57f...4d8152400e0edaa95ca297b53f8ad4da2f49bf7f","Len":25}...
|
1771863438
|
Edit
Delete
|
|
128
|
5
|
5
|
5
|
6
|
0
|
0
|
refs/heads/main
|
1
|
{"Commits":[{"Sha1":"3108922a8 {"Commits":[{"Sha1":"3108922a8c61e4ac42096a04dfc6f4cf5c836f0f","Message":"Fix unread stats 401 handling\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-17T21:23:09+08:00"},{"Sha1":"67de5794538ad71b4a50b205f1aed0cfb8bfc348","Message":"Fix 401 on /im/unread-stats request\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-17T21:21:56+08:00"},{"Sha1":"9e2cd04110083a84f66529db1ac59d0a5ce5caba","Message":"Fix unread stats 401 error\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-17T21:16:32+08:00"},{"Sha1":"660e19d3ded930a5ec03e763535fc9143d2ef532","Message":"Fix unread stats 401 error\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-17T21:15:26+08:00"},{"Sha1":"73d51a4255219c4f5d850ecc288cf81dbdbb5f88","Message":"Fix unread stats auth retry\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-17T21:06:15+08:00"}],"HeadCommit":{"Sha1":"3108922a8c61e4ac42096a04dfc6f4cf5c836f0f","Message":"Fix unread stats 401 handling\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-17T21:23:09+08:00"},"CompareURL":"luoanwu/juhi-omni-knowledge-hub/compare/4d8152400e0edaa95ca297b53f8ad4da2f49bf7f...3108922a8c61e4ac42096a04dfc6f4cf5c836f0f","Len":25}...
|
1771863891
|
Edit
Delete
|
|
129
|
5
|
5
|
5
|
6
|
0
|
0
|
refs/heads/main
|
1
|
{"Commits":[{"Sha1":"b93d37ac7 {"Commits":[{"Sha1":"b93d37ac75fcac068cb96cd72f7760cf3f9ee0f9","Message":"Fix invalid argument API error\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-18T01:51:25+08:00"},{"Sha1":"4185c2596c2a67c32174648b266846abff6af9ec","Message":"Fix API invalid argument error\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-18T01:35:34+08:00"},{"Sha1":"195d39b533e4533e68280e98ed582f790b634da2","Message":"Fix API invalid argument error\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-18T01:30:30+08:00"},{"Sha1":"2f2ea56767ae64304bc5838fbc7c95222cbc187c","Message":"Fix invalid workflow relation\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-18T00:51:40+08:00"},{"Sha1":"78c18b09770dd216ec3890f605e87bfe8ad79ea6","Message":"Fix API invalid argument error\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-18T00:34:33+08:00"}],"HeadCommit":{"Sha1":"b93d37ac75fcac068cb96cd72f7760cf3f9ee0f9","Message":"Fix invalid argument API error\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-18T01:51:25+08:00"},"CompareURL":"luoanwu/juhi-omni-knowledge-hub/compare/3108922a8c61e4ac42096a04dfc6f4cf5c836f0f...b93d37ac75fcac068cb96cd72f7760cf3f9ee0f9","Len":25}...
|
1771863900
|
Edit
Delete
|
|
130
|
5
|
5
|
5
|
6
|
0
|
0
|
refs/heads/main
|
1
|
{"Commits":[{"Sha1":"d96c65b28 {"Commits":[{"Sha1":"d96c65b28668f885c01649e4d31f5f9676cfe863","Message":"Fix missing TasksPending view import\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-19T13:46:35+08:00"},{"Sha1":"7ee51d863143a09ac5f44aca0fae0e2ec78d7153","Message":"Fix missing TasksPending view import\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-19T13:28:00+08:00"},{"Sha1":"a3927308ef0917d5dec9f40d78e446933a0fb79f","Message":"Fix missing ai agents TasksPending\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-19T00:32:55+08:00"},{"Sha1":"806f9199b965314766348d1986a0b911eefe9f78","Message":"Fix missing TasksPending view import\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-18T21:07:28+08:00"},{"Sha1":"5440eca0fa0e07a317f90fcd71c33a45eff2cbdc","Message":"Fix missing TasksPending view import\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-18T19:06:46+08:00"}],"HeadCommit":{"Sha1":"d96c65b28668f885c01649e4d31f5f9676cfe863","Message":"Fix missing TasksPending view import\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-19T13:46:35+08:00"},"CompareURL":"luoanwu/juhi-omni-knowledge-hub/compare/b93d37ac75fcac068cb96cd72f7760cf3f9ee0f9...d96c65b28668f885c01649e4d31f5f9676cfe863","Len":25}...
|
1771863933
|
Edit
Delete
|
|
131
|
5
|
5
|
5
|
6
|
0
|
0
|
refs/heads/main
|
1
|
{"Commits":[{"Sha1":"31212e80d {"Commits":[{"Sha1":"31212e80da71dfee521244839853f811bea867e4","Message":"Add opposite relations for audit log\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-20T22:50:49+08:00"},{"Sha1":"860236037bd2e91002a54e00a30e4295e8a68920","Message":"Add missing Prisma relation fields\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-20T22:15:35+08:00"},{"Sha1":"a2fa4d2c6a74812954b9066d4d880ef948e337a5","Message":"Fix agent audit logs relations\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-20T22:11:14+08:00"},{"Sha1":"868ddd29c52d54bfb6fddaaf346f8287d5bc738b","Message":"Fix agent audit log relations\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-20T22:03:54+08:00"},{"Sha1":"965dc4705275f2ba7e9c0e3316fd3fa7790a9934","Message":"Fix agent audit log relations\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-20T21:58:04+08:00"}],"HeadCommit":{"Sha1":"31212e80da71dfee521244839853f811bea867e4","Message":"Add opposite relations for audit log\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-20T22:50:49+08:00"},"CompareURL":"luoanwu/juhi-omni-knowledge-hub/compare/d96c65b28668f885c01649e4d31f5f9676cfe863...31212e80da71dfee521244839853f811bea867e4","Len":25}...
|
1771864161
|
Edit
Delete
|
|
132
|
5
|
5
|
5
|
6
|
0
|
0
|
refs/heads/main
|
1
|
{"Commits":[{"Sha1":"57dde43e9 {"Commits":[{"Sha1":"57dde43e9eb1e72e9797fd342f9d920b9afb6ab5","Message":"Run backend audit scripts\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-23T10:19:59+08:00"},{"Sha1":"07b1601c86752a302e603d74d41d74f1f75c82d5","Message":"Audit backend route changes\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-23T10:08:53+08:00"},{"Sha1":"2d9241c7ee82ceb0e13994c8558ffdc99e4d202c","Message":"Analyze recent project changes\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-23T09:40:30+08:00"},{"Sha1":"e07d7959f1a4a04eeb4ce8011de1d4efac9b4b30","Message":"fix(api): resolve ad-creatives routing conflict and add missing advanced endpoints\n\n- Fixed routing blackhole in `register-domain-routes.ts` by ordering `adPlacementCreativeRoutes` before the generic `adCreativesRoutes`, allowing AB tests and attribution routes to resolve correctly.\n- Corrected frontend API request paths in `ad-creatives.ts` to align with the backend's nested `/ad-placement/creatives` prefix.\n- Mocked 4 missing advanced analytics endpoints in `ad-creative.controller/service/routes` (`getAbTestStats`, `getAbTest`, `getAttributionStats`, `resolveBudgetAlert`) to prevent UI components from throwing 404 Not Found errors.\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-23T09:32:13+08:00"},{"Sha1":"bcbcfed972aa45b8fd4f98066a53fb9f414513da","Message":"feat(ui): upgrade placeholders to VisionPlaceholder for analytics and ai-agents\n\n- Extracted `VisionPlaceholder` component from Finance OS placeholder logic to provide high-fidelity, interactive skeletons for missing features\n- Replaced 22 plain empty states in `analytics/` modules with `VisionPlaceholder` to enhance commercial demonstration quality\n- Upgraded 4 AI Agent monitoring queues (`Events`, `Queue`, `TasksPending`, `TasksReview`) to use `VisionPlaceholder` with domain-specific metrics\n- Hid the unsupported 'Run Now' action in `scheduled-jobs/Index.vue` to prevent user flow disruption\n- Updated `REFACTOR_TASKS.md` with a 3-step roadmap (Analytics, Finance-OS, AI-Agents) to convert these placeholders to real features\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-23T09:11:30+08:00"}],"HeadCommit":{"Sha1":"57dde43e9eb1e72e9797fd342f9d920b9afb6ab5","Message":"Run backend audit scripts\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-23T10:19:59+08:00"},"CompareURL":"luoanwu/juhi-omni-knowledge-hub/compare/31212e80da71dfee521244839853f811bea867e4...57dde43e9eb1e72e9797fd342f9d920b9afb6ab5","Len":31}...
|
1771864174
|
Edit
Delete
|
|
133
|
5
|
5
|
5
|
6
|
0
|
0
|
refs/heads/main
|
1
|
{"Commits":[{"Sha1":"c75a655fb {"Commits":[{"Sha1":"c75a655fbcae4e4a5f0f675e72c422c5c3ff5a72","Message":"Fix login expiration throttling\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-24T00:24:02+08:00"},{"Sha1":"53914cf9a2af18dfe3fd1bdd68865d0629979b9f","Message":"Fix auth expiry handling\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-24T00:10:03+08:00"},{"Sha1":"2757965438fd9e2796643999b4dc70fd9a29ea62","Message":"Fix login expiration throttling\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-23T23:51:25+08:00"},{"Sha1":"97441ae42649a48470bbc978b3ad77061a1703e4","Message":"Fix auth expiration throttling\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-23T22:57:44+08:00"},{"Sha1":"aca608e90896b9e61e7348d82e300954c1b34f0f","Message":"Fix 登录过期节流处理」} PMID??? Wait string\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-23T22:46:26+08:00"}],"HeadCommit":{"Sha1":"c75a655fbcae4e4a5f0f675e72c422c5c3ff5a72","Message":"Fix login expiration throttling\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-24T00:24:02+08:00"},"CompareURL":"luoanwu/juhi-omni-knowledge-hub/compare/57dde43e9eb1e72e9797fd342f9d920b9afb6ab5...c75a655fbcae4e4a5f0f675e72c422c5c3ff5a72","Len":19}...
|
1771864209
|
Edit
Delete
|
|
134
|
5
|
5
|
5
|
6
|
0
|
0
|
refs/heads/main
|
1
|
{"Commits":[{"Sha1":"68528dce9 {"Commits":[{"Sha1":"68528dce9b8c543283a675374b5a23bc2e46c935","Message":"feat: SKU查询修复 + AI工作流状态机 + RAG集成 + 线索自动捕获\n\n1. 修复 SKU 服务 Prisma to-one 关系查询错误\n - 移除 products include 中无效的 where 子句(to-one 关系不支持)\n - 修复 list/get/getSkuByCode 三个方法\n\n2. 新增 AI 工作流状态机 (ai-workflow.machine.ts)\n - XState 5.x 实现:draft → active ↔ paused → archived\n - 包含守卫、动作、转换表、辅助函数\n - ai-agent.service.ts 集成 canTransitionAIWorkflow 校验\n\n3. IM 消息处理器 RAG 增强\n - 集成向量嵌入生成 (generateEmbedding)\n - 接入 ragEnhancedExecutor 知识检索增强\n - 实时线索捕获:识别 create_lead 意图自动提取线索\n\n4. 线索采集服务增强\n - 新增 AI 驱动的文本线索提取 (extractLeadFromText)\n - 新增 processIMLead 流水线:提取→清洗→验证→去重→创建\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-27T07:32:22+08:00"},{"Sha1":"5bf60bf54c42c8295b8e5595fba959e0821ceb85","Message":"Fix TypeScript any violations in duo\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-27T02:07:18+08:00"},{"Sha1":"169dc0ba22faf4ef27cd1d3c55114437b7855f23","Message":"Replace any types in shared models\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-27T01:21:28+08:00"},{"Sha1":"ffba80d4f2db2f955107f264e83c8d2a42f6b8e9","Message":"Fix shared model any usage\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-26T22:54:25+08:00"},{"Sha1":"b222af8d439100df34d9a6d61374df924561d451","Message":"Update AI agent workflows\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-26T09:06:43+08:00"}],"HeadCommit":{"Sha1":"68528dce9b8c543283a675374b5a23bc2e46c935","Message":"feat: SKU查询修复 + AI工作流状态机 + RAG集成 + 线索自动捕获\n\n1. 修复 SKU 服务 Prisma to-one 关系查询错误\n - 移除 products include 中无效的 where 子句(to-one 关系不支持)\n - 修复 list/get/getSkuByCode 三个方法\n\n2. 新增 AI 工作流状态机 (ai-workflow.machine.ts)\n - XState 5.x 实现:draft → active ↔ paused → archived\n - 包含守卫、动作、转换表、辅助函数\n - ai-agent.service.ts 集成 canTransitionAIWorkflow 校验\n\n3. IM 消息处理器 RAG 增强\n - 集成向量嵌入生成 (generateEmbedding)\n - 接入 ragEnhancedExecutor 知识检索增强\n - 实时线索捕获:识别 create_lead 意图自动提取线索\n\n4. 线索采集服务增强\n - 新增 AI 驱动的文本线索提取 (extractLeadFromText)\n - 新增 processIMLead 流水线:提取→清洗→验证→去重→创建\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-27T07:32:22+08:00"},"CompareURL":"luoanwu/juhi-omni-knowledge-hub/compare/c75a655fbcae4e4a5f0f675e72c422c5c3ff5a72...68528dce9b8c543283a675374b5a23bc2e46c935","Len":9}...
|
1772148752
|
Edit
Delete
|
|
135
|
5
|
5
|
5
|
6
|
0
|
0
|
refs/heads/main
|
1
|
{"Commits":[{"Sha1":"f484e8b33 {"Commits":[{"Sha1":"f484e8b33e9c317c16aa0794fea29ecd968246e1","Message":"fix(ai-agent): handle rejected promise on messagebox and value for radio button\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-27T09:32:20+08:00"}],"HeadCommit":{"Sha1":"f484e8b33e9c317c16aa0794fea29ecd968246e1","Message":"fix(ai-agent): handle rejected promise on messagebox and value for radio button\n","AuthorEmail":"laoluojuhai@users.noreply.github.com","AuthorName":"laoluojuhai","CommitterEmail":"laoluojuhai@users.noreply.github.com","CommitterName":"laoluojuhai","Timestamp":"2026-02-27T09:32:20+08:00"},"CompareURL":"luoanwu/juhi-omni-knowledge-hub/compare/68528dce9b8c543283a675374b5a23bc2e46c935...f484e8b33e9c317c16aa0794fea29ecd968246e1","Len":1}...
|
1772155952
|
Edit
Delete
|