• Blog
  • Docs
  • Pricing
  • We’re hiring!
Log inSign up
lightweight

lightweight

todoSweeper

Public
Like
todoSweeper
Home
Code
11
.claude
1
backend
6
frontend
4
shared
3
.vtignore
AGENTS.md
CHANGELOG.md
CLAUDE.md
README.md
deno.json
H
main.http.tsx
Environment variables
15
Branches
2
Pull requests
Remixes
1
History
Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data – all from the browser, and deployed in milliseconds.
Sign up now
Code
/
CHANGELOG.md
Code
/
CHANGELOG.md
Search
2/6/2026
Viewing readonly version of main branch: v424
View latest version
CHANGELOG.md

Changelog

2026-02-06

AI-Extracted Names for Other People (Relation Type Only)

AI now extracts names of people mentioned in todo text (not @mentions) and adds them to the Other People relation when configured as a relation type. For example, "follow up with Sarah and Mike about the budget" will add Sarah and Mike to Other People if they exist in the Contacts database.

Matching rules are stricter than Owner:

  • Exact name match only (case-insensitive)
  • Skipped if ambiguous (multiple exact matches)
  • Skipped if already in Owner or @mentions
  • Task targets are excluded (e.g., "ping Kevin" won't match Kevin since he's the target of a contact action)

2025-02-05

Skip Updates When User Edited Todo Page

When a user (not the integration bot) last edited a todo page in the Todos database, sync now skips updating that page to preserve the user's changes. Logs show "Skipping update for block X: page was edited by user (not bot)".

Whitelist Contextual Matching for Projects Only

Contextual matching (Strategy 2a/2b/2c) now only applies to the Projects relation. All other relations (Owner, otherPeople, etc.) require explicit @mentions. This prevents source page relations like DRI or Additional Members from polluting the Contacts field.

Opt-In Relation Loading

Only relations with explicit TODOS_PROP_xxx mappings are loaded from Notion. Unmapped relations are discovered but not loaded, reducing API calls and preventing false positive matches.

Exclude Owner from Contextual Matching

Owner relation is excluded from contextual matching strategies. Owner resolution uses its dedicated flow: heading match, @mention, or AI extraction.

Simplify Owner Resolution

Removed "contact" as an owner source. Owner now comes from:

  1. Heading match (with AI disambiguation if multiple)
  2. @mention (exact match priority)
  3. AI extraction (validated against owner DB)

Remove Fuzzy Matching

Fuzzy matching code was already removed in a prior session. Relation matching now uses only @mentions (Strategy 1a/1b) and contextual matching (Strategy 2a/2b/2c, Projects only).

FeaturesVersion controlCode intelligenceCLIMCP
Use cases
TeamsAI agentsSlackGTM
DocsShowcaseTemplatesNewestTrendingAPI examplesNPM packages
PricingNewsletterBlogAboutCareers
We’re hiring!
Brandhi@val.townStatus
X (Twitter)
Discord community
GitHub discussions
YouTube channel
Bluesky
Open Source Pledge
Terms of usePrivacy policyAbuse contact
© 2026 Val Town, Inc.