MosswartOverlord/go-services/inventory-go
Erik c49b81c237 feat(go-services): inventory-go Phase C — ingestion (validated, isolated DB)
Wires the validated item-processor into the ingestion endpoints, writing to an
isolated inventory-go-db (never production):
- schema.go: faithful 7-table replica of inventory-service/database.py.
- ingest.go: /process-inventory (full replace), POST/DELETE single item, with the
  exact delete-then-insert flow, dynamic INSERT builder (quotes reserved "unique"),
  spell union (is_active), and item_raw_data verbatim. enhancements always inserts.
- compose: isolated inventory-go-db (postgres:14, 127.0.0.1:5435) + read-write
  inventory-go-shadow (:8773) that owns it; schema init on boot.

Validated by ingesting a recently-ingested character's items (from production's
original_json) into the shadow DB and diffing vs production: byte-identical —
items 243, combat 243, enhancements 243, ratings 6, requirements 19, spells 52
all match; 0 per-column mismatches across 243 items.

Finding: older production normalized rows can be STALE (predate the code reading
Decal keys 218103832/218103835); Go matches the CURRENT Python code, so validate
ingestion against recently-ingested characters.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-24 12:42:26 +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
ingest.go feat(go-services): inventory-go Phase C — ingestion (validated, isolated DB) 2026-06-24 12:42:26 +02:00
main.go feat(go-services): inventory-go Phase C — ingestion (validated, isolated DB) 2026-06-24 12:42:26 +02:00
process.go feat(go-services): inventory-go Phase C — ingestion (validated, isolated DB) 2026-06-24 12:42:26 +02:00
schema.go feat(go-services): inventory-go Phase C — ingestion (validated, isolated DB) 2026-06-24 12:42:26 +02:00
search.go feat(go-services): inventory-go search — object_class_name (exact, gem context) 2026-06-24 12:11:47 +02:00
store.go feat(go-services): inventory-go Phase A — read-side scaffold + simple endpoints 2026-06-24 11:33:55 +02:00