Conversation
WalkthroughThis change introduces multi-gateway mode support to the playout timeline generation system. A Changes
Sequence DiagramsequenceDiagram
actor Caller
participant Generate as Timeline<br/>Generate
participant Rundown as Rundown<br/>Builder
participant Context as Timeline<br/>Timing Context
participant Calc as Timing<br/>Calculator
Caller->>Generate: generatePlayoutTimeline(isMultiGatewayMode)
Generate->>Rundown: buildTimelineObjsForRundown(..., multiGatewayMode)
Rundown->>Context: Create RundownTimelineTimingContext<br/>(multiGatewayMode)
Context-->>Rundown: timingContext with flag
Rundown->>Calc: calculateInfinitePieceEnable<br/>(context with multiGatewayMode)
alt multiGatewayMode
Calc->>Calc: Use planned timing path
else Single Gateway
Calc->>Calc: Use reportedStartedPlayback<br/>as absolute start
end
Calc-->>Rundown: timing result
Rundown-->>Generate: timeline objects
Generate-->>Caller: timeline result
Estimated Code Review Effort🎯 4 (Complex) | ⏱️ ~60 minutes The review requires careful examination of timing logic changes across multiple files, understanding how Poem
🚥 Pre-merge checks | ✅ 1 | ❌ 2❌ Failed checks (1 warning, 1 inconclusive)
✅ Passed checks (1 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing touches
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
|
@coderabbitai review |
✅ Actions performedReview triggered.
|
About the Contributor
This pull request is posted on behalf of the NRK.
Type of Contribution
This is a:
Bug fix
Current Behavior
When using Multi-Gateway mode, a piece of code that is supposed to keep infinites
enableobjects while in "Single Gateway Mode" stable across takes, makes them shift around in time.New Behavior
The code is only enabled when Multi-Gateway mode is not enabled. Tests to ensure this stable behavior are added.
Testing
Affected areas
This PR affects the playout logic in general, timeline generation logic specifically.
Time Frame
This Bug Fix is critical for us, please review and merge it as soon as possible.
Other Information
Status