Generate

Back to editor
Media Techrequirement-spec-2026-05-14.pdf

SPYN — Requirement Specification: Memory Lane

Spec ID: SPYN-REQ-2026-014 Version: 1.0.0 (draft) Author: Mikkel Nygaard (drafted with AI assistance from memory-lane-screen.png) Date: 2026-05-13 Status: Draft — awaiting spec-gate review


1. Overview

Memory Lane is a feature that surfaces a user's diary entries from one year ago, with optional AI-generated commentary on how their writing has changed over time. The feature responds to a recurring user-research finding: SPYN's most engaged users return to their own past entries, but the current product makes this hard. Memory Lane makes the year-ago view a first-class surface.

The CEO described this feature in a 90-second Loom on 2026-05-11; this spec is drafted from that source plus the Figma frame at memory-lane-screen.png.

2. Scope & Roles

In scope. A new "Memory Lane" entry point on the Profile screen surfaces all of the user's diary entries from the same calendar week one year prior. An optional AI-generated commentary surfaces alongside, comparing tone, topics, and language patterns between then and now.

Out of scope. Cross-year comparisons (two-year-ago, three-year-ago) — deferred to a later iteration. Sharing Memory Lane externally — deferred pending privacy review.

RACI.

  • Responsible: Ahmed Mahmood Khan (Lead Developer).
  • Accountable: Mikkel Nygaard.
  • Consulted: Head of Legal (AI commentary on personal data), QA Lead, Designer.
  • Informed: CEO, Customer Success.

3. Dependencies

  • Diary entries from 365–372 days prior must be queryable by user ID without full-table scan. Backend index in place; verified.
  • AI commentary requires the existing OpenAI Assistants pipeline; no new sub-processor introduced.
  • Figma component library for the Memory Lane card.

4. Business Logic

  1. Memory Lane is accessible from the Profile screen via a dedicated "Memory Lane" tile.
  2. The tile shows the count of diary entries from the same calendar week one year ago. If zero, the tile shows the empty state from section 5.
  3. Tapping the tile opens the Memory Lane view, listing all qualifying entries in reverse chronological order.
  4. Each entry shows the original date and, on tap, opens the full diary entry in read-only mode.
  5. An "AI commentary" toggle at the top of the Memory Lane view opts the user in to receive an AI-generated comparison of their writing then versus now. The toggle defaults to OFF.
  6. When the AI commentary toggle is ON, the AI commentary appears above the entry list. The commentary is regenerated weekly (the diary entries it references shift forward by one day each day).
  7. The AI commentary carries the "AI" chip per EU AI Act Article 50 and a one-line disclosure: "Generated by Vera from your own diary entries."
  8. Users can dismiss the AI commentary at any time. The commentary is recomputed only on explicit user request after dismissal.

5. UI

See Figma frame memory-lane-v1 (linked). Annotated screens for: Memory Lane tile (Profile), Memory Lane view (entries list), AI commentary card, empty state ("Nothing here yet — you'll see your first Memory Lane entries on your one-year SPYN anniversary"), loading state.

6. Language & Localisation

All Memory Lane copy is in the i18n catalogue under profile.memory_lane.* keys. AI commentary is generated in the user's account language by default; toggle to read in the diary entries' original language available in the commentary overflow menu.

7. Performance

  • Memory Lane tile count: queried with the rest of the Profile screen; ≤ 50ms additional latency at p95.
  • Memory Lane view first paint: ≤ 800ms at p95 on a Pixel 8 with 4G.
  • AI commentary generation: async; tile shows "Vera is reading your year-ago entries" loading copy; ≤ 6s at p95 to completion.

8. Security

Memory Lane reads only the requesting user's own diary entries. No cross-user access. AI commentary is generated against the user's own content; no system-user content is included as context. The OpenAI Assistants thread for AI commentary is created per user, scoped to that user, and cached for 24 hours.

Data classification of AI commentary: Restricted (inherits from source diary content). Storage and deletion follow the existing diary-content flow.

9. Accessibility

  • VoiceOver / TalkBack: Memory Lane tile announces "Memory Lane: 4 entries from one year ago" or empty equivalent.
  • Dynamic type: Memory Lane view supports text scaling up to 200%.
  • Reduce motion: AI commentary card uses fade transitions only when reduce motion is off; static otherwise.
  • Contrast: all states meet WCAG 2.2 AA contrast against the SPYN palette.

10. Open Questions

  • Q1. Should the AI commentary be silently regenerated on schedule, or only on user request? Owner: Mikkel Nygaard. Target: 2026-05-20.
  • Q2. What's the privacy posture if a user requests deletion of an entry that's referenced in their AI commentary? Owner: Head of Legal. Target: 2026-05-22.
  • Q3. Is "Memory Lane" the right name in Danish? Current candidate: "Mindelane." Owner: Designer. Target: 2026-05-22.

Generated 2026-05-13 from developer/requirements-specification and the input file memory-lane-screen.png. Verified content; human review pending.

Confidential — distributed under NDARequirement Specification