This website requires JavaScript.
Explore
Help
Sign In
starred
/
warmbly
Watch
1
Star
0
Fork
0
mirror of
https://github.com/warmbly/warmbly.git
synced
2026-10-07 08:02:08 +00:00
Code
Issues
Packages
Projects
Releases
Wiki
Activity
Files
a42b67f2e332bafd99e6ffebb2bb627503d960d2
warmbly
/
internal
/
app
/
campaign
T
History
Matthew Meszaros
def0a5e5f1
feat: restore workspace campaign access and enforce shared analytics permissions (
#543
)
2026-09-16 03:31:01 -07:00
..
duplicate_name_test.go
feat: add Delete and Duplicate campaign actions to the dashboard (issue
#185
): every campaign row and the detail header get a ⋯ menu (Edit, Duplicate, Start/Pause, Delete) plus a Delete card at the bottom of Settings, all permission-gated with a confirm that spells out what goes; DELETE /campaigns/:id is now organization-scoped instead of user_id-scoped so teammates can delete, runs in one transaction that also deletes the campaign's pending tasks and cancels a wakeup tick claimed at that moment (campaign_tasks only nulls its link, so those rows kept firing), removes attachment objects and publishes CAMPAIGN_DELETED so a teammate's open detail page is sent back to the list; new POST /campaigns/:id/duplicate copies the campaign row as a draft with steps and their branch graph rewired onto new step ids, tags, folders, senders with rotation reset, A/B variants, advanced settings and attachments (quota-checked, blobs undone if the copy fails) and none of the leads, progress, logs, counters, ramp level, guardrail trip or past dates, naming it (copy)/(copy N) inside the 50 byte cap without splitting runes; a claimed campaign tick whose campaign vanished now ends the chain instead of staying active forever; covered by TestLiveCampaignLifecycle* against real SQL, RemapBranchTargets and duplicateName unit tests and a react-query vitest for the list cache, with API reference, endpoint map and campaigns guide updated
2026-08-25 08:54:51 -07:00
handlers.go
feat: restore workspace campaign access and enforce shared analytics permissions (
#543
)
2026-09-16 03:31:01 -07:00
service.go
feat: restore workspace campaign access and enforce shared analytics permissions (
#543
)
2026-09-16 03:31:01 -07:00