product:signals
Show all signals defined by features in the active product, with provider and listener attribution.
Table of contents
Usage
splent product:signals
Options
This command has no options. It boots the active product and reads the signal registry populated during feature loading.
Example output
Signals with listeners
splent product:signals
sample_splent_app -- 1 signal(s)
SIGNAL EMITTED BY LISTENERS
──────────────────────────────────────────────────────────────
user-registered splent_feature_auth splent_feature_profile
Signal with no listeners
If a feature defines a signal but no other feature connects to it:
sample_splent_app -- 2 signal(s)
SIGNAL EMITTED BY LISTENERS
──────────────────────────────────────────────────────────────
note-created splent_feature_notes (none)
user-registered splent_feature_auth splent_feature_profile
No signals registered
If no feature in the product defines any signals:
sample_splent_app: no signals registered.
How it works
The command boots the Flask application via get_app(), which triggers feature loading. During loading, each feature’s signals.py is auto-imported, populating the signal registry with define_signal() and connect_signal() calls. The command then reads the registry via get_registry() and formats the output as a table sorted by signal name.
Requirements
- A product must be selected (
splent product:select).
See also
- Signals – how the signal system works
product:routes– inspect registered HTTP routesproduct:config– inspect resolved configurationfeature:contract– validate signal contracts between features