weblocks.asd defines a wop::test-op which is actually the same symbol as asdf::test-op, so the class gets redefined. Unhappily, it also does it wrong, and fails to inherit from selfward-operation. Similarly, doc-op should inherit from non-propagating-operation (or maybe selfward-operation).
doc-op if useful should probably be moved to a separate system with its own asd file, that weblocks.asd :defsystem-depends-on.
Is make-app-op a thing? It appears once, but looks like it doesn't exist.
If you move all the cruft to other libraries, you can just get rid of that wop package.
Slogans rarely convince the unconvinced. However, they do rally the troops
already on your side. — John McCarthy