TRACEPACE // DOCS
$ cat /sys/docs/changelog

CHANGELOG

> Release_History // Version_Manifest

CHANGELOG.TXT

TracePace Release History

All notable changes documented chronologically

v0.9.0-guest-beta2026-04-05

+ ADDED

  • + Full support for indoor activities (treadmill runs, indoor cycling)
  • + Indoor detection from `.fit` and `.gpx` metadata
  • + Dedicated indoor visual with minimalist stickman runner
  • + DETAIL_GRID master toggle with LHS/RHS section controls (Conditions, Metrics, Gear, Splits)
  • + Auto-disable all detail toggles when aspect ratio is 1:1 (clean overlay mode)
  • + MapVisual integration on Canvas1x1 positioned above MetricsGrid
  • + Description input auto-enables toggle when content exists; disables when DetailGrid is off
  • + All visibility state persisted via localStorage
  • + Font weight increases across poster components for better overlay legibility
  • + Section separators migrated from inline dashed borders to shared Separator component
  • + Footer top border hides when DetailGrid is off
v0.8.0-guest-beta2026-03-22

+ ADDED

  • + Full support for indoor activities (treadmill runs, indoor cycling)
  • + Indoor detection from `.fit` and `.gpx` metadata
  • + Dedicated indoor visual with minimalist stickman runner
  • + Indoor badge removed from poster header for cleaner aesthetics
  • + Supabase-backed waitlist with GraphQL API (custom HTTP client, no external library)
  • + GraphQL mutations with typed union responses (CreatedWaitlistEntry, AlreadyExistsWaitlistEntry, AlreadyArchivedWaitlistEntry, NotFound, InternalError)
  • + Email duplicates rejected unless archived (unarchive on resubmit)
  • + Rate limiting: 1 submission per IP per minute
  • + Waitlist modal with toast notifications
  • + HD export now produces correct 1200px width (600px × 2) across all devices and browsers
  • + Transparent background export now preserves alpha channel correctly
  • + Aspect ratio selector corrected: "4:3" → "3:4", "16:9" → "9:16"
  • + JPEG export disabled when transparent background is enabled
  • + Aspect ratio switching now renders cleanly with skeleton loader
  • + ScaleToFitCanvas properly recalculates scale when aspect ratio changes
v0.7.0-guest-beta2026-03-21

+ ADDED

  • + Vercel Analytics integration for tracking upload, download, and interaction events
  • + Sentry error tracking for both frontend (Next.js) and backend (Go API)
  • + Railway health alerts for deployment downtime notifications
  • + PDPA-compliant Google Form feedback mechanism
  • + Updated privacy policy to reflect Google Forms data handling
  • + Branded OG images for Twitter Card and LinkedIn preview
  • + OpenGraph and Twitter metadata in layout.tsx
v0.6.0-alpha2026-03-20

+ ADDED

  • + Examples gallery, dynamic activity type UI, and client-side persistence (IndexedDB)
  • + Timezone-aware activity titles with GPX metadata extraction and coordinate-based fallback
  • + Moving & elapsed time tracking with run type classification
  • + Privacy Policy, Terms of Service, and Cookie Policy pages
  • + UUIDv7 session routing and centralized poster state management
  • + Unified GPS trace rendering with round caps and uniform stroke width
  • + Responsive canvas scaling for previews and client-side high-resolution export
  • + ChipInput component for multiple poster tags
  • + Background grid and gradient style options
  • + Extended elevation metrics (elevationLoss, nativeElevationGain, nativeElevationLoss)
  • + Adaptive flat terrain detection and enhanced FIT elevation parsing
  • + Large GPX file handling with robust processing
  • + Weather provider fallback chain: Visual Crossing → Open-Meteo → WeatherAPI
  • + IP-based rate limiting middleware
  • + GraphQL integration with gql.tada for TypeScript type safety
  • + Railway deployment with Dockerfile and CI/CD workflows
  • + Off-white light mode theme alongside dark mode
  • + GPU-accelerated CSS trace animations with export safety
  • + Terminal protocol docs theme with DocPane component
  • + Multi-route architecture with dedicated marketing and editor pages
  • + OpenSpec commands and skills for AI agent workflows
  • + Code formatting and linting standards with integrated typecheck pipeline

! DEPRECATED

  • ! Nixpacks configuration (removed in favor of Railway native deployment)
v0.5.0-alpha2026-03-11

+ ADDED

  • + **Transparent Background Toggle**: Introduced a toggle to remove solid backgrounds, perfect for custom overlays or graphic design integration.
  • + **Alpha-Preserving Export**: Updated the high-res asset generation to preserve transparency when the toggle is active.
  • + **Flexible Sub-headline**: Switched the Route/Subtitle field to a `Textarea` for multi-line support with `whitespace-pre-wrap` rendering.

! DEPRECATED

  • ! **Effort Iconography**: Effort-based Smile/Zap icons removed to reduce visual clutter.
  • ! **Headline/Gear Inputs**: Standard text inputs replaced by context-aware defaults or unified control flow in the "DYNAMIC" tab.
v0.4.0-alpha2026-03-11

+ ADDED

  • + **Atomic Design Architecture**: Refactored `PosterCanvas` into a scalable Atoms, Molecules, Organisms, and Templates structure.
  • + **Component-Based Aspect Ratios**: Introduced dedicated Organism components (`Canvas1x1`, `Canvas3x4`, `Canvas9x16`) for pixel-perfect layout switching.
  • + **Hero Elevation Graphic**: Implemented high-fidelity elevation profile rendering with Catmull-Rom smoothing, data normalization, and linear gradient fills.
  • + **Centralized Data Hook**: Created `usePosterData` to unify activity parsing and metric formatting across all poster variants.

! DEPRECATED

  • ! **Legacy PosterCanvas**: Monolithic rendering logic replaced by the new atomic switcher.
  • ! **Map & Horizontal Layouts**: Temporarily disabled and moved to technical debt for future reconstruction.
v0.3.1-alpha2026-03-09

+ ADDED

  • + **Sub-headline Row**: Integrated non-uppercase subtitle/route row below the main activity identification.
  • + **Advanced Weather Display**: Refactored weather section into a multi-line vertical stack with wind and gust data.
  • + **Copyright Attribution**: Added minimal branding attribution below the TracePace logo.
  • + **Minimalist Splits Formatting**: Standardized leading middot (`·`) formatting for interval trackers.
v0.3.0-alpha2026-03-08

+ ADDED

  • + **Dynamic Titles Array**: Activity parsing will automatically identify time of day and map to defaults (e.g. "Morning Run", "Evening Run") instead of defaulting to numeric or "Activity".
  • + **Mapbox Engine Integration**: Support switching to Mapbox satellite rendering dynamically on upload.
  • + **Stroke Width Tuner**: Refined stroke sizes with `Thin`, `Normal`, and `Thick` configurations.
  • + **Env Configuration Files**: Explicit declarations of `.env` configurations added to repository standard.
v0.2.4-alpha2026-03-08

+ ADDED

  • + **Weather Engine Architecture**: Deep integration for historical weather lookups via Visual Crossing API.
  • + **Extensive FIT Data Extraction**: Added support for calories, average/max heart rate, and cadence parsing from binary records.
  • + **WMM Color Profile Investigation**: Precise color matches for Tokyo, Boston, London, Berlin, Chicago, and NYC marathons.
  • + **Local Race Profiles**: Added KLSCM, Score Marathon, and Langkawi International Half Marathon templates.
  • + **System Theming**: Persisted dark mode with oklch-based color variables.
  • + **Architecture Documentation**: Expanded `ARCHITECTURE.md` with backend weather service details and versioning strategy.

# FIXED

  • # **Coordinate Normalization**: Resolved edge cases in path simplification for small-scale street runs.
  • # **Text Contrast**: Adjusted muted-foreground values for better readability in dark mode.
v0.1.0-alpha2026-03-07

+ ADDED

  • + **Core Engine**: Initial Go parser for `.fit` and `.gpx` files.
  • + **Dynamic Canvas**: Vector-based route visualization with high-res PNG export.
  • + **Theming**: Initial set of minimalist templates.
  • + **Monorepo**: Turborepo setup with Next.js and Go.
  • + --
// EOF — Generated by TracePace Engine