CODITECT
CODITECT VTR
Visual Test Report
PASSED

Product Context

Understanding what is being tested, why, and how.

Product Overview

The Group Scheduling Application is a lightweight, link-based meeting scheduling tool running entirely on Cloudflare's developer platform. It enables an organizer to define candidate meeting slots and share a single URL with participants who respond without requiring authentication or calendar access.

Zero external dependencies — hosting, compute, database, caching, real-time WebSocket, and CDN all use Cloudflare-native primitives. No Redis, no PostgreSQL, no third-party SaaS.

Stack

Frontend: React 19, Vite 6, Tailwind 4

Backend: Cloudflare Workers (Hono)

Database: D1 (SQLite at edge)

Real-time: Durable Objects

Architecture Documents
DocumentStatusDescription
SDD v2.0ViewSoftware Design Document
TDD v2.0ViewTechnical Design Document
Master System PromptView
ADR-001: Framework SelectionView
ADR-002: Authentication ModelView
ADR-003: Real-Time (Superseded)View
ADR-004: Drizzle ORMView
ADR-005: Data RetentionView
ADR-006/007: D1 + Durable ObjectsView
Customer Story
Persona
Team Coordinator + Team Members
Goal
Find the best meeting time across three respondents with mixed availability
Acceptance Criteria
  • Coordinator can create a poll via API
  • Three respondents can submit availability with AVAILABLE and IF_NEEDED states
  • Results page ranks slots by response count
  • Organizer dashboard accepts PIN and allows closing the poll
  • Closed poll shows correct closed state to participants
Assumptions
  • Cloudflare Workers, D1, KV, R2, and Durable Objects are operational
  • Kimi K2.5 API (api.moonshot.ai) available for LLM analysis
  • Chromium browser, JavaScript enabled, 1440×900 viewport
  • D1 migrated with 0001_initial.sql schema
  • No concurrent test runs on same poll data
Glossary
D1
Cloudflare's edge SQLite database
DO (Durable Object)
Stateful compute — WebSocket connections + PIN rate limiter
KV
Key-Value store for API rate limiting
PBKDF2
100k iteration SHA-256 key derivation for PIN/token hashing
Hono
Lightweight TypeScript web framework for CF Workers
VTR
Visual Test Report — this report format
Slot
A candidate meeting time (date + session label)
IF_NEEDED
Tentative availability, weighted 0.5x in ranking