Spot-check architectural invariants from docs/ARCHITECTURAL-INVARIANTS.md against actual code. This is READ-ONLY, do not modify files.
Checks
- •ES-002: EventStore interface in repository/eventstore.go has NO Update or Delete methods (append-only)
- •ES-005: Check that domain event types implement the Event interface (have EventType(), AggregateID(), OccurredAt() methods) - spot-check 3 event types
- •ES-007: All event types in DecodeEvent() switch - are there any domain event types NOT covered?
- •DB-001: Do postgres/ and sqlite/ have matching function signatures? Compare exported function names.
- •DM-001: Do domain entities have UUID ID fields set by constructors? Spot-check Person, Family, Source.
- •DM-002: Do domain entities have Validate() methods? Check Person, Family, Source.
- •PR-004: Compare event types in DecodeEvent() with cases in projection.go - any events missing projection handlers?
Output Format
Report each as PASS/WARN/FAIL with specifics.