MosswartOverlord/go-services/inventory-go
Erik 7e7842128e feat(go-services): inventory-go /search/items — query+filters+count (validated)
Ports the search CTE (items_with_slots: combat/req/enh joins + the rating
extractions from item_raw_data.int_values JSONB via GREATEST/COALESCE, coverage
mask, computed_spell_names), the SQL filters, sort mapping, pagination, and the
DISTINCT count query. Returns each row's direct DB columns + computed booleans
(is_equipped/bonded/attuned/rare, condition_percent).

Validated vs the Python service on the production DB: total_count EXACT across
13 filter combinations (armor/jewelry/min_armor/min_damage/text/material/
min_value/is_rare/rating/equipped/character/workmanship), and 50-row alignment
with 0 direct-column mismatches (same SQL sort order, same rows).

Deferred to later slices: deep per-row enrichment (extract_item_properties:
material_name/spells/slot_name/object_class_name/...), and the enum-dependent
filters (has_spell/spell_contains/legendary_cantrips, slot_names, item_set,
weapon_type, underwear).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-24 11:45:34 +02:00
..
Dockerfile feat(go-services): inventory-go Phase A — read-side scaffold + simple endpoints 2026-06-24 11:33:55 +02:00
go.mod feat(go-services): inventory-go Phase A — read-side scaffold + simple endpoints 2026-06-24 11:33:55 +02:00
main.go feat(go-services): inventory-go /search/items — query+filters+count (validated) 2026-06-24 11:45:34 +02:00
search.go feat(go-services): inventory-go /search/items — query+filters+count (validated) 2026-06-24 11:45:34 +02:00
store.go feat(go-services): inventory-go Phase A — read-side scaffold + simple endpoints 2026-06-24 11:33:55 +02:00