-
Notifications
You must be signed in to change notification settings - Fork 0
feat: external-trigger ceremony scheduling strategy #974
Copy link
Copy link
Closed
Labels
prio:mediumShould do, but not blockingShould do, but not blockingscope:medium1-3 days of work1-3 days of workspec:task-workflowDESIGN_SPEC Section 6 - Task & Workflow EngineDESIGN_SPEC Section 6 - Task & Workflow Enginetype:featureNew feature implementationNew feature implementationv0.5Minor version v0.5Minor version v0.5v0.5.9Patch release v0.5.9Patch release v0.5.9
Description
Summary
Implement the ExternalTriggerStrategy for the pluggable ceremony scheduling system.
Ceremonies fire on external signals: webhooks, CI/CD events, git events, MCP tool invocations. Bridges the synthetic org with real-world development workflows.
Design Reference
See Ceremony Scheduling design page -- "External-Trigger" strategy section.
Key Behaviors
should_fire_ceremony: checks if a matching external event has been received (viacontext.external_events)should_transition_sprint: returns target status on configured external signal (e.g.,deploy_complete)on_sprint_activated: registers external event listeners/subscriptionson_sprint_deactivated: unregisters listenerson_external_event: receives and buffers external signals for evaluation- Default velocity calculator:
PointsPerSprintVelocityCalculator
Strategy Config
strategy_config:
sources:
- type: webhook
endpoint: /hooks/ceremony
- type: git_event
events: [push, tag]Per-ceremony config:
policy_override:
strategy_config:
on_external: pr_mergedImplementation
- New:
src/synthorg/engine/workflow/strategies/external_trigger.py - New:
tests/unit/engine/workflow/strategies/test_external_trigger.py - Implement
CeremonySchedulingStrategyprotocol from feat: sprint ceremony runtime scheduler with task-driven cadence support #961 - Stateful strategy (uses lifecycle hooks for event subscriptions)
Integration Points
- MCP bridge (
src/synthorg/tools/) for MCP tool invocation events - API layer for webhook endpoint registration
CeremonyEvalContext.external_eventstuple
Dependencies
- feat: sprint ceremony runtime scheduler with task-driven cadence support #961 (protocol interfaces + reference implementation)
- feat: event-driven ceremony scheduling strategy #971 (EventDrivenStrategy -- shares event subscription patterns)
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
prio:mediumShould do, but not blockingShould do, but not blockingscope:medium1-3 days of work1-3 days of workspec:task-workflowDESIGN_SPEC Section 6 - Task & Workflow EngineDESIGN_SPEC Section 6 - Task & Workflow Enginetype:featureNew feature implementationNew feature implementationv0.5Minor version v0.5Minor version v0.5v0.5.9Patch release v0.5.9Patch release v0.5.9