Show & Tell: SpecLock now catches 'sweep away', 'wipe', 'purge' as delete synonyms (v5.5.7) #13
sgroy10
started this conversation in
Show and tell
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Show & Tell: SpecLock now catches "sweep away", "wipe", "purge" as delete synonyms (v5.5.7)
Quick Show & Tell because this one was fun to build and users have been asking for it.
The problem
SpecLock's semantic engine originally recognized the obvious delete verbs:
delete,remove,drop,destroy. That caught maybe 80% of violations. The remaining 20% hid behind creative phrasing.Real examples from my audit logs:
None of these tripped the old engine because none of them used the canonical verbs.
The fix in v5.5.7
Expanded the synonym taxonomy:
{ "intent": "delete", "synonyms": [ "delete", "remove", "drop", "destroy", "erase", "sweep away", "wipe", "wipe out", "purge", "clean up", "clean out", "clear out", "get rid of", "do away with", "eliminate", "prune", "strip out", "tear out", "absorb into", "inline away", "refactor out" ] }Each synonym is weighted by contextual confidence. Phrases like "refactor out" score lower on their own but combine with other signals (file deletion in the diff, function removal, etc.) to cross the threshold.
Before / after
Test input (from the verified test case
tests/semantic/delete-synonyms.test.ts):Before v5.5.7:
(The file was deleted. The cron jobs broke. Not great.)
After v5.5.7:
How to try it
Update:
npm install -g speclock@latest # or npx speclock@5.5.7 audit --semanticThen run a semantic audit on a recent diff you suspect might have slipped through:
Report back if you catch anything juicy.
What's next
v5.6 extends this taxonomy to architectural verbs: "migrate off of", "port away from", "extract from". See the v5.6 roadmap discussion for details.
If you've hit a synonym that SpecLock misses, reply to this thread with the exact phrase and I'll add it to the taxonomy. This is how the engine gets smarter — from real-world misses reported by users.
Beta Was this translation helpful? Give feedback.
All reactions