Port FixType contract to current Fix common errors rules - #107
Blackspirits wants to merge 2 commits into
Conversation
Blackspirits
left a comment
There was a problem hiding this comment.
Independent adversarial re-check: the stale SubtitleEdit#14442 stack was ported onto current c77c4b4 without overwriting later rule changes. The three drifted rule files were patched on top of current content; all remaining changed blobs are unchanged from the original contract addition. Full CI #34787730169 passed restore, build and the complete solution suite on the first run; UITests reported 5,151 passed, 9 skipped and 0 failed. Retry was not used. No structural blocker identified; taxonomy semantics remain under review for ambiguous cases such as FixDoubleGreaterThan. Keep draft; no merge performed.
Blackspirits
left a comment
There was a problem hiding this comment.
Final independent re-check: the contract is complete for all current IFixCommonError implementations and preserves the three rule files that drifted upstream after SubtitleEdit#14442. Taxonomy review additionally moved FixDoubleGreaterThan to Dialog because it removes the >> speaker/dialogue marker rather than repairing ordinary punctuation. Final-head CI #34787974854 passed restore, build and the complete solution suite on the first run; UITests reported 5,151 passed, 9 skipped and 0 failed. Retry was not used. No blocker identified. Keep draft; no merge performed.
Purpose
Current-base audit/port of upstream draft stack PR SubtitleEdit#14442 onto Subtitle Edit
c77c4b428649ce7030e6cf218b4d7c384b955232.The original PR is 628 upstream commits behind and no longer mergeable. This port preserves all current rule changes and adds only the taxonomy contract:
FixTypeenum: Time, Formatting, Dialog, Punctuation, Casing, Spacing, Characters, OCR;FixType FixType { get; }onIFixCommonError;FixCommonOcrErrorsdeclare a category.Rebase integrity
Only three rule files changed upstream since SubtitleEdit#14442's base:
FixHyphensRemoveDashSingleLine.csFixMissingPeriodsAtEndOfLine.csFixShortDisplayTimes.csThose three were patched on top of the current versions. All other changed blobs are identical to the original SubtitleEdit#14442 changes because their files did not drift.
Audit notes
The contract is structurally complete for the current 40 implementations. Category assignments are retained from SubtitleEdit#14442 for behavioral comparison; ambiguous taxonomy cases such as
FixDoubleGreaterThancan be adjudicated separately without changing execution behavior.Validation
c77c4b428649ce7030e6cf218b4d7c384b955232cd4ad6454a55651d6b2563fed0babc58b8be9991FixDoubleGreaterThanfromPunctuationtoDialog, matching its behavior as removal of a>>speaker/dialogue markerAI assistance: ChatGPT was used to rebase the stale contract without overwriting current rule fixes and to audit category coverage.