Weekly Updates - 2025
2025-12-24
Section titled “2025-12-24”- Cloudflare Turnstile kick-off documentation drafted and plan release Jan 13th
2025-12-17
Section titled “2025-12-17”- RightCapital cloud architecture documentation.
- Big monorepo: stuck on namespace layout
- Pay more attention to Policy refactoring
2025-12-10
Section titled “2025-12-10”- About big monorepo: Continue research on mergation PoC: Currently I’m testing on Policy disable for admin-api routes
- The AAD cookie-split project is fixed and live. And did a quick review with Monkey yesterday, what I learned is to keep my test cases organized, create a checklist, and share it. It helps me think more clearly and makes it easier for the team to spot anything what I missed.
2025-12-03
Section titled “2025-12-03”- About big monorepo: Continue research on merge admin-api into retail-api and do some PoC manually. I already tested migrate aad authorize to retail-api. I plan to test migrate some controller to I plan to test moving over some controllers to explore any potential roadblocks(issues), such as policy, and models.
- About the AAD cookie size MRs,Leo can review and merge today, I’ll post an announcement in the channel to request rebase develop branch and redeploy review app.
2025-11-26
Section titled “2025-11-26”- About big monorepo: Continue research on merge admin-api into retail-api.
- fixing the AAD access cookie size issue by splitting it into multiple cookies. The AAD proxy merges them and passes to the backend through the header. For PdfPrinter, will forward all the cookies with the AAD access cookie prefix. We tested this on staging environment yesterday. The code is ready for review, I’ll also check the related docs and make necessary updates.
2025-11-19
Section titled “2025-11-19”- Do some research on merge admin-api into retail-api. currently I’m trying
laravel-moduleswhich is laravel package to help developers to handle large project with modules structure. - Try to add lock to fix duplicate subscription creation issue in Admin Center.
- Investigate how to reduce AAD cookie size, we are reaching the limit of 4k cookie size
2025-11-12
Section titled “2025-11-12”- Drafted the Server Push guideline. The next step is to promote integration to support more notification scenarios.
- Preparing to restart the Big Monorepo project. will with discussions within the team over the next two weeks.
- Side task: cleaning up some small jira tickets one by one.
- By the way, Email failover test is done, and the issues still exist, I found out the root cause and make a fix PR, still in review.
2025-10-29
Section titled “2025-10-29”- Server Push is ready for an other round review
- Do some test on Cloudflare Turnstile /ˈtɝnstaɪl/
- Mail Failover test
2025-10-22
Section titled “2025-10-22”- Server Push the ETA is next Tuesday should be okay in my opinion.
- Internal review in progress.
- Demoed Review Apps to Megan:
- Adjust Notification title & content based on her feedback.
- Added “Already synced” hint to the Redtail/Wealthbox sync dropdown.
- Megan proposed auto-dismiss; we’re okay but recommend to manual dismiss.
- Completed basic integration testing with frontend:
- Edge case: forced logout (multi-session) may still receive notifications; plan to push a session event to notify the frontend.
- Upgraded Ably to paid plans.
2025-10-15
Section titled “2025-10-15”- Backend work for Server Push is done. Right now, we’re testing it together with the frontend in the review apps.
- I’m working on the end-to-end (E2E) testing for Billing. The goal is to switch from our old way of testing—using Notion docs and manual checks, New way to using the frontend’s E2E automation tests. While doing this, I’m also fill in missing Billing test data. Before, frontend E2E tests could only run on staging because some data couldn’t be created through the API.
- Mazhexu is following up on the compliance ticket, And I’ll keep an eye on it.
2025-09-24
Section titled “2025-09-24”The Server Push 文档更新,阐述了 channel 的命名和场景。换到 broadcasting 我正在调整代码,并和前端沟通中联调。
laravel-salesforce package 后端梳理调用场景,Monkey 说要看看,避免我分散太多注意
上周提到的 E2E test 准备推进一下梳理先排个计划
重点还是先把 Server Push 的开发和联调完成。
2025-09-17
Section titled “2025-09-17”First, I decided to switch the Server Push project back to Laravel broadcasting as it better follows Laravel’s principle. We’ve also discussed things like channel naming and scopes in more detail. I’ll update the documentation as soon as possible, starting from real use cases and showing examples of how to name and use channels.
Second, for the laravel-salesforce package, I’m currently working with Kang to figure out how it’s used. Right now, the goal is to reduce backend maintenance efforts and see which parts we can move to the platform.
Third, I have discussed with the frontend team hui & Alex about the (pain point with) E2E testing, which is setting up test data. It’s especially hard for the frontend team to create data sets through APIs. Moving forward, we plan to use billing-related E2E tests as a starting point to explore how both sides can work together to create test data and accounts. On the backend side, we’ll also look into switch to use Stripe sandbox. The long-term goal is to make E2E tests easier to use, and even let backend developers run them locally and view test results visually.
2025-09-10
Section titled “2025-09-10”First, the Server Push project kickoff meeting was held yesterday. I dig more into the Laravel broadcasting and notification system to re-evaluate our approach. And we have a discussion with Tingsong received very useful feedback about the channel design pattern. I will update the document later this week. When it reaydy, I will share the updates, please helps to review.
Second, I’m fixing a bug of OOM which happened when advisor upload a very high resolution image as logo. It will be ready for review later this week.
Third, I’m preparing the ci-component to trigger backend deploy for E2E test, which can be easily integrated into the frontend project ci pipeline, to deploy the isolated backend for frontend e2e test.
2025-09-03
Section titled “2025-09-03”The kick-off meeting for the Server Push project, which was planned for this week, will be delayed until next Thu. Currently, I am implementing the packages and integrating the Retail API.
2025-08-20
Section titled “2025-08-20”- For the Server Push project, I’ve completed the Ably and Centrifugo adapters and prepared a demo in the review apps for frontend integration testing. The kickoff document is also ready for review.
- The task of moving organization and federation creation and update to the retail API, I’m still working on the model event and policy components.
2025-08-13
Section titled “2025-08-13”- I’m working on the Server Push project. Right now, I’m developing adapters for Ably and Centrifugo, which I’ve organized into packages. I’m planning to build apps and test them tests with the frontend. The technical documentation for integrating Redtail and Wealthbox with Server Push is still in progress, I expect to have it ready for review by Friday.
- I’m looking into the issue with random test failures in Salesforce. I’ve discussed it with Kang, and I starting investigate all the places where Salesforce is used in the backend. From there, we’ll figure out the next steps.
2025-08-11
Section titled “2025-08-11”- DEV-18314 Move organization and federation creation and update to retail-api, stuck on Policy (~50%)
2025-08-07
Section titled “2025-08-07”My main focus is still on pushing forward the Server Push project. I have scheduled the business kickoff for tomorrow (Friday), and then move on to implementing the technical aspects and DevOps adjustments.
I fixed the AAD 404 issue with employee login in the local environment, It ready for review. I’m planning to add a technical document, and explain how AAD works.
2025-07-31
Section titled “2025-07-31”My main task is working on Server Push, specifically the business kick-off document, which I plan to share with the team next week.
Secondly, I’m working on refactoring the payment info controller with slightly higher priority, as it introduced a bug in the last release, which affected AssetMark’s subscription creation. I’ll fix it and aim to catch up with the next release.
2025-07-23
Section titled “2025-07-23”My main task is still focused on server push, and I have basically completed the experience with several similar self-hosted and SaaS services. Currently, my subjective feeling is that from the perspective of operational costs and development experience, I still prefer Centrifugo. I will collect more feedback from frontend integration.
Additionally, I am looking at the Redtail/Wealthbox processes, preparing to integrate server push status, collaborating with Kewei.
The challenges turn to be how to define the message interaction flows and schema.
2025-07-16
Section titled “2025-07-16”My main task is to work on SSE and WebSocket, focusing on Centrifugal and a few similar products. I’m running some POC tests to compare them, and I’m getting ready to write a summary report. I also plan to talk with Kewei from the integration team to find a real scenario where we can apply this.
For the AI demo led by Bobo, we’re trying to use WebSocket instead of standard SSE, since SSE requires passing the JWT token through the URL, which isn’t very safe.
2025-06-18
Section titled “2025-06-18”- DEV-17773 Sales tax
2025-06-11
Section titled “2025-06-11”- DEV-17773 Sales tax
- Concurrency limit & Circuit Breaker 重构, 暂停
- Devbar env 查询报错修复
2025-05-28
Section titled “2025-05-28”- Billing address 上线 / bugfix
- Big monorepo 改项目名,unify xxx 暂停
- Concurrency limit & Circuit Breaker 重构, 暂停
- SSE integration 需求,排上日程?
2025-05-21
Section titled “2025-05-21”- Billing address 优先
- Concurrency limit & Circuit Breaker 重构, 暂停
- Big monorepo 改项目名,unify xxx 暂停
2025-05-14
Section titled “2025-05-14”- Big monorepo 处理 namespace 和 helps 相关的冲突
- Billing admin
- Concurrency limit & Circuit Breaker
- Import staging db to review app clean up billing related data
2025-04-23
Section titled “2025-04-23”- Big monorepo 准备开个新的仓库,继续 CI
- Company review & testing
- Rightpay invoice table 用分页查 Strip invoice 的方式
- FileLog context N+1 问题
2025-04-10
Section titled “2025-04-10”- 调查 DEV-13214 RightPay table 显示数量限制 / 很慢
- DEV-17363 Optimize export advisor review
- Big monorepo
2025-04-02
Section titled “2025-04-02”- RightFlows Billing bugfix & release
- mono repo 计划先把代码库建起来
- 支线有几个小的 ticket
- admin center Advisor 导出超时
- Session::getContext() N+1 问题
- RightPay tables (invoice)太慢,staging 限制显示 20 条
2025-03-26
Section titled “2025-03-26”- RightFlows Billing code review & testing
- Company project 做 rebase 和测试 & Review 修改
- MCP server 调查下怎么发到 Verdaccio, https://npm.rightcapital.io, 方便公司内部使用
2025-03-19
Section titled “2025-03-19”- RightFlows Billing 转 features 开发
- Company project 做 rebase 和测试
2025-03-12
Section titled “2025-03-12”- RightFlows Billing 转 features 梳理数据范围和准备转换脚本
- Company project 做 rebase 和测试
- RESTFul API actions 命名调整的 ticket,
- index, show = GET
- store = POST
- update = PUT
- destroy = DELETE
2025-03-05
Section titled “2025-03-05”- RightFlows Billing 下线,转成 platinum 里的 feature,写开题文档
- Internal API for DataPlatform to sync advisor data too slow
- MML pricing change 由于我们提前执行了,katya 创建了新的 coupon 上周五临时用,我调整了下脚本,原计划是昨天执行,由于这些订阅都是要等到 2026年才会续订所以不是那么着急,就先让 katya 确认后,在执行
2025-02-26
Section titled “2025-02-26”- MML pricing change 导出最新数据给 Katya review, 今早收到回复,按计划将于本周六上午 10 点执行第一批的订阅 coupon 更新,下一批计划在下周二执行。
- 放弃 RightFlows Billing,将其转成 platinum 里的 feature,目前正在前期的调查
- Company team sharing 回归测试,Company billing 将进入开发,我会再回顾下看 PRD 和相关的开题和讨论
2025-02-19
Section titled “2025-02-19”- MML Price change 已经完成开发和 review,和 data team 超哥再次核查了一下
Upcoming phases目前没有未来要变更为 MML_ANN coupon 数据,之前发现的那条数据已经被 katya 更新。之前还专门写了个 case 来处理这种情况的数据,看上去可能不需要了。计划下周二给产品再导出一份要执行的数据来确认下,下周六上 hotfix 来处理订阅的更新 - Company 项目,目前 review 和 测试了 customization, 开始看 team sharing,目前没有发现新的 issue,但是有一些之前标记修复过的 issue 在 team sharing 还存在看似是代码合并的问题,ray 已经组织了会议
2025-01-22
Section titled “2025-01-22”Ticket Updates
Section titled “Ticket Updates”- Admin Center Add Credit Card function: completed the project proposal document, determined ETA, planning to discuss with Jian before starting development
- MML Price change: basic solution has been determined, preparing to complete command implementation, while discussing potential edge cases with Katya
- Jennifer asking about Stripe dashboard changes: the prorated refund amount display issue when canceling subscriptions, I will investigate if Stripe has relevant APIs to calculate this.
Staging Data Import to Review App
Section titled “Staging Data Import to Review App”staging data import to review app is finally online. 有小插曲,没有占用 staging 来测试 job,昨天上午实际运行的时候导致导出的应为权限不足,数据不完整。昨天已做了 hotfix 合入,今天上午观察已正常。
I’m preparing a usage guide document. Will share the Notion link to the channel later.
Additionally, following up on the MML Price change ticket. Using this as an opportunity to dig deeper into coupon and billing logic.
Team Collaboration
Section titled “Team Collaboration”为提高我在团队的 performance, 尝试以 company project code review 为切入点,尝试和 ray 协作。
关于 feature & role 和 company project 有很多关联,一方面是要梳理定义,另一方面是需要整合到 company 和产品团队有较多沟通。
2025-01 (Early)
Section titled “2025-01 (Early)”Staging Data Import Retrospective
Section titled “Staging Data Import Retrospective”Detailed retrospective of the staging data import to review app project.
The project has been delayed. Initially estimated as a simple 1-2 week task, it required extensive coordination with the DevOps team.
Timeline:
- Late November: Started project, worked with Kevin to understand review app deployment architecture and staging DB access.
- Dec 4: Project proposal meeting - decided on CI-based approach.
- Dec 12: Moved implementation from kube-infra to retail-api per DevOps request (business logic should stay in business codebase).
- Multiple approach iterations:
- Direct MySQL write from staging to review app → rejected (unusual permissions)
- S3 intermediary → bucket naming too strict
- S3 temp folder → approved by Kevin, but rejected by Xuan (too many chart changes)
- PHP implementation with mysql-client package → final solution
Final Solution: Staging cron job calls retail-api command to dump DB to S3. Review app has manual CI trigger to download and import from S3.
Lessons Learned:
- Don’t take on responsibilities that should be handled by DevOps team - inefficient and causes delays
- Keep key decision-makers in the loop early - don’t wait until implementation is done
- Understand DevOps team’s design principles and plans before proposing solutions