v1.1.6
Removes duplicate rows from the Bit Integrations catalog. One platform, one row — a platform that offers both a trigger and an action now appears once, whatever the two catalogs call it.
The same platform under two names
Rows were merged on display name alone, but the trigger catalog and the action catalog are written independently and need not word a platform the same way. AllTriggersName.php carries a descriptive label, SelectAction.jsx carries the module type:
| Trigger name | Action name | Module |
|---|---|---|
| Power Coupons for WooCommerce | PowerCoupons | PowerCoupons |
| ConvertForce Popup Builder | ConvertForce | ConvertForce |
| LearnDash LMS | LearnDash | LearnDash |
| wpForo Forum | WPForo | WPForo |
| Webba Booking Calendar | WebbaBooking | WebbaBooking |
Each of these listed twice — once as a Trigger-only row, once as an Action-only row — with its events split across the two and its tier read from half the picture.
The names disagree, but both entries name the same backend module folder. Rows now collapse on either identity, display name or module slug, so an integration is one row as long as its trigger and action point at the same module — which is what the scaffolding produces.
Slugs only count when the name matched a folder
resolveActionSlug() falls back to a trailing-suffix search when no folder matches the whole name, which is fine for locating a module's operations but far too loose to prove two catalog entries are the same platform: it will reach Mail from Web Hooks and WooCommerce from License Manager For WooCommerce. Resolution now reports whether the match was exact, and only exact matches are treated as identity.
Counts
Five duplicate pairs collapse. Platform integrations 329 → 324; total integrations, trigger and action apps, and every event total are unchanged — the merged rows carry their trigger and action events together and read Both.
Bit Flows is unaffected: it already builds one row per machine root file.