product:signals
Introduction
product:signals lists the signals your product’s features define, with the feature that emits each one and the features that listen to it. It needs a selected product (SPLENT_APP) and has no options.
splent product:signals
my_product — 2 signal(s)
SIGNAL EMITTED BY LISTENERS
──────────────────────────────────────────────────────────────
note-created splent_feature_notes splent_feature_reports
note-deleting splent_feature_notes (none)
Signals are sorted by name, and (none) marks one no feature listens to. With no signals at all it prints my_product: no signals registered.
Where it runs
The command builds your product’s app, so every feature’s signals.py is imported, and reads the signal registry. The app is the development one unless SPLENT_ENV says otherwise.
It runs in the product’s web container, <product>_web, when that container is up and either you work on another product than the selected one (SPLENT_APP=<name> splent product:signals) or the features need a package the CLI’s image lacks. Otherwise it runs in the CLI’s container.
See also
product:routeslists the HTTP routes.feature:contractvalidates signal contracts between features.