<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rulesets/.ai/scripts/route_recommend.py, branch main</title>
<subtitle>Claude Code skills, rules, and language bundles
</subtitle>
<id>https://git.cjennings.net/rulesets/atom?h=main</id>
<link rel='self' href='https://git.cjennings.net/rulesets/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/rulesets/'/>
<updated>2026-06-28T17:12:57+00:00</updated>
<entry>
<title>feat(scripts): add wrap-up routing recommendation engine</title>
<updated>2026-06-28T17:12:57+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-06-28T17:12:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/rulesets/commit/?id=6be62aee7437fd8fe8d6eff991869b09529d3924'/>
<id>urn:sha1:6be62aee7437fd8fe8d6eff991869b09529d3924</id>
<content type='text'>
I added route_recommend.py, a pure recommend(item, projects) → (destination, confidence). It has strong, weak, and none tiers, word-boundary literal matching that also handles dot-stripped name aliases, and a deterministic tie-break that downgrades an ambiguous top-tier tie to weak. An empty candidate list yields none. The CLI reuses inbox-send's discover_projects, so the candidate set is the same project universe inbox-send already knows. This covers Phases 1 and 3 of the wrap-up routing spec. The marker and router sub-tasks call it next.
</content>
</entry>
</feed>
