I think I might have stumbled across a general, albeit somewhat degenerate, monoid action. Pseudo-Haskell:
instance (Monoid m, Monoid n) => Act m n where
act mempty x = x -- let's pretend that we can use `mempty` as a pattern
act _ _ = mempty
m's action on n is to set n to mempty unless m itself is empty.
Is this a law-abiding monoid action? Has it been invented before by someone other than me? If so, what is its name?