erio
9151d34d40
refactor(channel): split long functions, extract shared validation, move billing validation to service
- Split Update (98→25 lines), buildCache (54→20 lines), Create (51→25 lines)
into focused sub-functions: applyUpdateInput, checkGroupConflicts,
fetchChannelData, populateChannelCache, storeErrorCache, getOldGroupIDs,
invalidateAuthCacheForGroups
- Extract validateChannelConfig to eliminate duplicated validation calls
between Create and Update
- Move validatePricingBillingMode from handler to service layer for
proper separation of concerns
- Add error logging to IsModelRestricted (was silently swallowing errors)
- Add 12 new tests: ToUsageFields, billing mode validation, antigravity
wildcard mapping isolation, Create/Update mapping conflict integration
2026-04-05 22:32:49 +08:00
..
2026-04-05 22:32:49 +08:00
2026-04-05 17:11:01 +08:00
2026-02-02 22:13:50 +08:00
2026-03-04 11:29:31 +08:00
2026-03-15 17:52:29 +08:00
2026-03-09 01:18:49 +08:00
2026-04-05 17:11:01 +08:00
2026-04-05 17:11:01 +08:00
2026-03-08 14:12:17 +08:00
2026-03-08 14:12:17 +08:00
2026-04-04 12:38:50 +08:00
2026-02-14 11:23:10 +08:00
2026-02-07 19:04:08 +08:00
2026-04-04 12:38:50 +08:00
2026-03-15 16:21:49 +08:00
2026-04-04 11:12:21 +08:00
2026-04-05 17:11:01 +08:00
2026-02-07 22:14:07 +08:00
2026-03-09 19:55:18 +08:00
2026-03-18 11:31:32 +08:00
2026-03-01 15:45:44 +08:00
2026-02-07 17:12:15 +08:00
2026-04-01 02:20:13 +08:00
2026-04-04 12:38:50 +08:00
2026-04-05 17:11:01 +08:00
2026-02-23 12:45:37 +08:00
2026-02-23 12:45:37 +08:00
2026-02-12 19:01:09 +08:00
2026-04-04 11:25:01 +08:00
2026-03-05 16:46:14 +08:00
2026-03-15 22:13:42 +08:00
2026-03-20 13:36:54 +08:00
2026-04-04 11:25:01 +08:00
2026-03-24 09:52:56 +08:00
2026-03-21 23:38:00 +08:00
2026-04-05 17:11:01 +08:00
2026-02-02 22:13:50 +08:00
2026-02-28 15:01:20 +08:00
2026-03-15 22:13:12 +08:00
2026-04-05 17:11:01 +08:00
2026-02-02 22:13:50 +08:00
2026-03-03 01:05:11 +08:00
2026-04-05 17:11:01 +08:00