Skip to content

Strip the part from a competition's combined title - #759

Merged
alistairjcbrown merged 1 commit into
mainfrom
claude/adoring-mendel-wu9m6b
Oct 7, 2026
Merged

alistairjcbrown merged 1 commit into
mainfrom
claude/adoring-mendel-wu9m6b

Conversation

@alistairjcbrown

Copy link
Copy Markdown
Member

What

stripSerialBlockSuffix now drops a part number from a competition's title, along with anything after it. For example:

Turn Up Film Festival - Short Film Competition Part 1 + Q&A → Turn Up Film Festival - Short Film Competition

Why

Some competitions are listed one part at a time. Once the parts normalise to the same title, combine groups them into one listing. That listing takes its name from the shortest title in the group, so it names a single part while holding every part's showings. Each part's full title stays on its own showing, so the performance cards still say which part has the Q&A.

Scope

  • What it matches: "Competition" followed by Part N or a Roman numeral, written as Part 1, - Part 2, (Part 3) or : Part IV. The rule is keyed on "Competition" because a competition never has a part in its own name.
  • What it leaves alone:
    • films with a part in their title, such as Dune: Part Two + Q&A
    • a single (Part 1), as in Kaamelott
    • a competition title with no part
  • Not included: making the parts normalise together. That happens in separate normalisation work, and this change only affects grouped listings.

Testing

  • Added 5 cases to common/tests/strip-serial-block-suffix.test.js.
  • jest scripts/combine common/tests passes: 41 suites, 26,749 tests.
  • ESLint and Prettier are clean on the changed files.

🤖 Generated with Claude Code

https://claude.ai/code/session_01EpPrDgQSG76KvZVBzf3x88


Generated by Claude Code

A competition screened over several sittings is billed one part at a
time ("Short Film Competition Part 1 + Q&A"). Once its parts normalise
together, the combined listing took the shortest member's title, naming
one sitting while holding them all. Drop the part and what follows it;
each sitting keeps its own title on its showing.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EpPrDgQSG76KvZVBzf3x88
@alistairjcbrown
alistairjcbrown merged commit b7a9e88 into main Oct 7, 2026
2 checks passed
@alistairjcbrown
alistairjcbrown deleted the claude/adoring-mendel-wu9m6b branch October 7, 2026 23:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants