About Me
This RFC is posted on behalf of BBC, intended to remove old concepts from the code base.
Use Case
There's been multiple attempts of adding "break timing" to Sofie. One of the latest is the concept of anchoring segments to walltime, and have timing calculations understand the next anchored segment and use that as a break.
The frontend selection and calculation algorithm is broken in multiple ways.
- They are not working (1-line fix of populating partInstancesMap)
- They are artificially limited (1-line fix to allow them to exist in the past)
- Diff is broken (using all remaining content and not just the relevant portion)
- segmentEnd is not gonna work as intended with the current implementation (not compensation for the remaining content in the segment)
- There are unresolved edge-cases in the algorithm to select the next anchor
Now, with T-Timers and a new serverside Diff algorithm being introduced, our proposal is to clean up and get rid of the old flawed implementations, to make room for yet an attempt of doing this right - following the new and better models and algorithms.
The old/existing use case is valid, but we want to clean up old attempts to do a modern and solid implementation.
Proposal
- Remove
segmentTiming.expectedStart and segmentTiming.expectedEnd
- Remove the
nextRundownAnchor calculations
- Remove conditional rendering based on breaks defined from anchors
- All relevant code, including CSS classes and tests (reduce footprint)
Leave the BreakSegment.tsx component in place, for inspiration/future use when the next generation of "Break" concept is re-introduced.
Process
The Sofie Team will evaluate this Deprecation RFC following their approval workflow.
About Me
This RFC is posted on behalf of BBC, intended to remove old concepts from the code base.
Use Case
There's been multiple attempts of adding "break timing" to Sofie. One of the latest is the concept of anchoring segments to walltime, and have timing calculations understand the next anchored segment and use that as a break.
The frontend selection and calculation algorithm is broken in multiple ways.
Now, with T-Timers and a new serverside Diff algorithm being introduced, our proposal is to clean up and get rid of the old flawed implementations, to make room for yet an attempt of doing this right - following the new and better models and algorithms.
The old/existing use case is valid, but we want to clean up old attempts to do a modern and solid implementation.
Proposal
segmentTiming.expectedStartandsegmentTiming.expectedEndnextRundownAnchorcalculationsLeave the
BreakSegment.tsxcomponent in place, for inspiration/future use when the next generation of "Break" concept is re-introduced.Process
The Sofie Team will evaluate this Deprecation RFC following their approval workflow.