refactor(tile-preload,ipc): flip datastore-* to strict + delete legacy (Phase 3.6g)
Flipped 19 remaining legacy ipcRenderer.invoke('datastore-*') calls in
tile-preload.cts to the corresponding tile:datastore:* strict channels
(with { token: tileToken, ...args }). Channels flipped:
get-table, set-row, get-row,
add-item, get-item, update-item, delete-item, query-items,
tag-item, untag-item, get-item-tags, get-items-by-tag,
add-item-event, get-item-event, query-item-events,
delete-item-event, delete-item-events, get-latest-item-event,
count-item-events
Item-event methods were also de-objectified: legacy API took raw `data`
objects; strict API uses named params matching tile-ipc.ts signatures.
Deleted all 46 ipcMain.handle('datastore-*') blocks from ipc.ts (the
entire legacy registerDatastoreHandlers body, keeping only the
extract-page-content handler that shared the function). Removed ~670 LOC.
Also pruned ~25 now-dead datastore imports and the tagItemAndPublish
import from ipc.ts.
Validation: `tsc --noEmit` clean; both grep checks return zero.