Analysis 2026-09-27: a row published without contentType is stored with NO ContentType at all (AddListItemOpHandler stamps it only when given), so it is untyped for every reader (the delegation guard, the fit check's category filter, the list's typed view). Root cause is the WRITE path: SharePoint stamps the list's default content type on every new item. The list declarations live in SPICE.Web (ISiteNavigator over the manifest), which Foundation tools and app listeners cannot reference, so the fix is a small Foundation interface (a list's declared content types) implemented by the Web navigator and used by AddListItemOpHandler to default ContentType - one seam, ask-first, then the delegation guard needs no fallback. Second gap: a re-assignment to the same seat replaces its row (stable key) - keep a Completed row and append a note. Until fixed: always pass --ct / contentType when filing rows (the SPWAY rows 7d, 8d, 10j were re-filed with it).