Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion QPK_PIN
Original file line number Diff line number Diff line change
@@ -1 +1 @@
b9a7df85cfc848cebcc3aa6e1d77ec34ca7611ab
0063af3b4a974650ea58a7d3f26dd1b94f65d3e8
2 changes: 1 addition & 1 deletion constraints.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# QSL Dependency Constraints — SINGLE SOURCE OF TRUTH
# Auto-updated by update-qpk-pin.yml on every push to QPK main.

quant-platform-kit @ git+https://github.com/QuantStrategyLab/QuantPlatformKit.git@b9a7df85cfc848cebcc3aa6e1d77ec34ca7611ab
quant-platform-kit @ git+https://github.com/QuantStrategyLab/QuantPlatformKit.git@0063af3b4a974650ea58a7d3f26dd1b94f65d3e8

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Do not pin a build that drops blocked Telegram alerts

This pin brings in 0063af3, where the Telegram publisher pre-filters signals to only notification_target, notify_manual_review, or notification_only/shadow_only controls. For strategy-mounted data-quality/freshness failures with canonical_route="blocked" and suggested_action="blocked", should_alert_strategy_plugin_signal() and the runtime contract still treat them as plugin-alert-stream events, but publish_strategy_plugin_telegram_alerts() now drops them before building messages, so those blocked signals no longer reach Telegram after this dependency update.

Useful? React with 👍 / 👎.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Do not bypass execution-control overrides

This pin also imports _is_auto_consumable_signal(), which treats a signal as auto-consumable when either execution_controls.position_control_allowed or payload.consumption_policy.position_control_allowed is true. For strategy adapters that explicitly disable an automation-approved defend/delever action in execution_controls while the raw plugin policy still says it is allowed, the shared policy helper gives the execution control precedence and still builds a plugin alert; the new Telegram filter ORs the two sources and drops that alert before delivery.

Useful? React with 👍 / 👎.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Do not drop actions not carried by strategy runtime

The pinned build also skips every automation-approved defend/delever Telegram signal with position_control_allowed=true, but it does not require execution_controls.strategy_runtime_metadata_allowed=true. The shared alert policy only suppresses these strategy-mounted signals when the strategy runtime is allowed to carry/report them; when that flag is false, should_alert_strategy_plugin_signal() still builds an alert, but Telegram now filters it out and the position-impacting event can be hidden from the plugin-alert channel.

Useful? React with 👍 / 👎.

us-equity-strategies @ git+https://github.com/QuantStrategyLab/UsEquityStrategies.git@64342a1e95a687c29a2be6f0b771e4a7be15b8b8
hk-equity-strategies @ git+https://github.com/QuantStrategyLab/HkEquityStrategies.git@3746fa4b10806feb50a51d1aa449ccf8aee7b1ae
cn-equity-strategies @ git+https://github.com/QuantStrategyLab/CnEquityStrategies.git@ffbdf7303179ba6e7f9d3e28c21202f77e04762c
Expand Down
Loading