Context
schema.prisma has ComparisonShare (shareable comparison links with token/expiry) created by property-comparison.service.ts; ComparisonShare is otherwise unexposed.
Problem
The data model and generation logic exist but there is no read/share endpoint: shared links can't be loaded or expire; the model is effectively dead outside of property-comparison creation tests, contradicting the module's purpose to let users share comparisons.
Proposed approach
Add GET /property-comparison/shares/:token returning the two compared properties (public, without owner PII), enforce expiresAt/revokedAt, and track share views; add e2e for valid/expired/revoked tokens.
Acceptance criteria
- Shared links resolve correctly and expire; coverage added.
Context
schema.prismahasComparisonShare(shareable comparison links with token/expiry) created byproperty-comparison.service.ts;ComparisonShareis otherwise unexposed.Problem
The data model and generation logic exist but there is no read/share endpoint: shared links can't be loaded or expire; the model is effectively dead outside of
property-comparisoncreation tests, contradicting the module's purpose to let users share comparisons.Proposed approach
Add
GET /property-comparison/shares/:tokenreturning the two compared properties (public, without owner PII), enforceexpiresAt/revokedAt, and track share views; add e2e for valid/expired/revoked tokens.Acceptance criteria