Skip to content

fix: cover letter openings spread across projects, a project can be kept out of them, and the addressee's town is a town - #75

Merged
coderback merged 1 commit into
mainfrom
fix/letter-opening-and-recipient
Nov 2, 2026
Merged

coderback merged 1 commit into
mainfrom
fix/letter-opening-and-recipient

Conversation

@coderback

Copy link
Copy Markdown
Owner

Why

Most letters opened on Windrush. Job-ad words (application, career, global, teams) counted towards relevance and favoured a project about job hunting, and the model opens on whichever project it's told to. The recipient block also took the location's first part as it came, giving lines like "United Kingdom - London" and "Belfast 10 Mays Meadow".

What changed

  • Ranking: everyday and job-ad words no longer count towards a project's relevance. The CV uses the same ranking, so the projects it features may shift too.
  • Hook: the code now names the project for the hook and the two for the evidence.
  • Keeping a project out of openings: new Project.not_in_opening and a profile tick box, "Don't open cover letters with this project". The project can still be evidence. A letter that opens on it anyway gets one revision, and autopilot holds it if it still does.
  • Recipient lines: _letter_town finds the first town in the location, without country, work setting, street address or site. If there's no town, the line is left out.

Results

Across 300 recent UK jobs, Windrush ranked first on 88 before the change and on 22 after; with the box ticked it opens none. The most common opening is now Premier League (79), then ColonoScan (71) and Thespis (41). Windrush stayed out of all 12 real test letters across 6 jobs, though one of those letters opened on a different project from the one named.

Testing

  • Backend: 1128 passed, 8 skipped, 46 browser tests deselected
  • Frontend: type check, lint and build clean
  • Not run: browser tests. The new tick box hasn't been clicked in the app.

Not covered

  • Letters already written aren't rewritten.
  • Only barred projects are checked, so a letter that strays to another project isn't caught.
  • Nearly every letter still opens with "the hardest challenge wasn't X, but Y", because the prompt asks for that.

…ept out of them, and the addressee's town is a town

Windrush opened most letters because job-ad words (application, career, global, teams) matched a project about job
hunting. Those words no longer count towards relevance. The code now names the project for the hook, and a project
marked "Don't open cover letters with this" is never that project: a letter that still opens on it gets one revision
and is held by autopilot if it stays. It can still be evidence.

The recipient block took the location's first part as it came ("United Kingdom - London", "Belfast 10 Mays Meadow").
It now finds the town, or leaves the line out when there is none.
@coderback
coderback merged commit 34cf4c9 into main Nov 2, 2026
3 of 4 checks passed
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.

1 participant