Conversation
nhopeatall
left a comment
There was a problem hiding this comment.
Summary
LGTM — Clean, well-scoped cleanup that correctly separates lifecycle triggers from agent trigger configs.
The changes are consistent and well-reasoned:
-
Lifecycle trigger source-of-truth migration:
prReadyToMergeandprMergednow read fromproject_integrations.triggersJSONB (via newisLifecycleTriggerEnabledhelper) instead of theagent_trigger_configstable. This is the right call — these are non-agentic lifecycle operations that don't belong in agent trigger configs. -
Agent definition cleanup: Removing
pm:comment-mentionfrom planning agent (correctly lives inrespond-to-planning-comment.yaml) and removing lifecycle triggers from review agent (they were never agent-driven). Both verified by tracing where these events are actually routed. -
Default value fix: Changing
LIFECYCLE_TRIGGERSdefaultValue fromtruetofalsealigns the frontend with the backend's default-disabled behavior inisLifecycleTriggerEnabled. -
UI simplification: Removing slug/repo from Project Identity card and simplifying run links description are straightforward UI cleanup. The
biome-ignoreremoval is justified by the reduced complexity after removing ~30 lines of conditional JSX. -
Test coverage: New
lifecycle-check.test.tscovers all edge cases (enabled, disabled, missing key, null integration, null triggers column, logging behavior). Existing tests properly updated to mock the new helper.
All CI checks pass.
🕵️ claude-code · claude-opus-4-6 · run details
Summary
CASCADE_DASHBOARD_URLenv var referencetruetofalsefor prReadyToMerge and prMergedpm:comment-mentiontrigger from planning agent definition (belongs in respond-to-planning-comment)scm:pr-ready-to-mergeandscm:pr-mergedfrom review agent definition (non-agentic, lifecycle-only)isLifecycleTriggerEnabledhelper reading fromproject_integrations.triggersJSONBTest plan
Closes https://trello.com/c/hEfkpKnH/430-misc-updates
🤖 Generated with Claude Code
🕵️ claude-code · claude-sonnet-4-6 · run details