Tickety
TT / TT-10 Initial MVP
TT-16 Done

Score how well a plan fits

domain rules 5 points · Rachel Okonjo

The violations panel says what is wrong. It does not say whether the plan is any good, or whether the last change made it better.

A plan either publishes or it does not, and that is the hard rules. The score is about the soft ones: how well the plan fits the people in it.

Acceptance criteria

  • One score for the whole plan, from the soft rules only. Hard violations decide publishability and do not move the score
  • A complete plan with no soft violations scores full marks. An unallocated plan has no soft violations and scores 0, because opportunities are counted over the guest list rather than over what has been seated
  • Two plans of the same guest list are directly comparable
  • The score is recalculated as the plan changes, and sits in the Plan header rather than with the violations, so it survives a table detail taking that column
  • Every soft rule contributes, and adding a soft rule later changes the score without any edit to the scoring code
  • A plan with no rules registered does not score zero, it has nothing to say

Open, for Rachel

KB-2 lists the soft rules but gives them no weighting. Every rule declares its own and defaults to 1, so they all count equally until told otherwise and changing one is a line in that rule's file. Say if partners adjacent should outweigh generation mix.

Linked pages

Comments

Simon Roberts 5 days ago

Each soft rule declares how many chances the guest list gave it; its sub-score is 1 − missed ÷ opportunities, and the plan score is the weighted mean on 0–100. Weight is declared on each rule and defaults to 1, so changing one rule's weight is a line in that rule's file, not an edit to anything shared. Rounding is plain — no cap — so 100 means the mean rounds to 100, never that the plan is clean.

"A plan with no soft violations scores full marks" is now true only for a complete plan. Opportunities are counted over the guest list, not over how much of the plan is seated. Without that, a plan leaving most pairs unseated scores higher than one seating everyone with a few pairs split — an incomplete plan outscoring a complete one, which breaks the comparability criterion. The cost is that an unallocated plan has no soft violations and scores 0. Deliberate, and worth confirming.

An unseated pair is a chance missed, not a seating violation. Findings and misses are separate numbers: the score counts the pair, the violations panel doesn't list it. Otherwise the panel gains an entry per unplaced guest, duplicating the unseated count in the header.

The score sits in the Plan header, not with the violations, so it stays visible when a table detail takes the third column. Clicking it opens a per-dimension breakdown there — the rule, its fit, and its exact missed count, so the figure can be acted on.