Bug: date field is unresponsive readonly text input — no calendar picker on mobile #11

Closed
opened 2026-03-24 19:59:27 +00:00 by forgejo_admin · 1 comment

Type

Bug

Lineage

plan-wkq → Phase 14 (Billing Tiers & Contracts) — discovered during mobile E2E validation

Repo

forgejo_admin/westside-contracts

What Broke

The signing date field on the contract page is <input type="text" readonly>. On mobile, tapping it does nothing — no keyboard, no calendar, no feedback. Users think it's broken. The field is styled identically to the editable legal name input above it, making the dead tap feel like a bug.

Current code (+page.svelte line 458):

<input class="form-input" type="text" id="signDate" value={dateStr} readonly>

Repro Steps

  1. Open any contract page on a mobile phone
  2. Check "I agree" to reveal the signing section
  3. Tap the Date field
  4. Nothing happens — no picker, no keyboard, no visual feedback

Expected Behavior

The signing date should be clearly displayed as today's date using a native date picker (type="date") that defaults to today. On mobile browsers this shows the native calendar interface, giving the user confidence the date is correct and the field is working. The field should still be readonly/disabled so users cannot backdate.

Environment

  • Cluster/namespace: prod / westside-contracts
  • Service version/commit: 813baf3 (current main)
  • Related alerts: none — UX bug, not runtime error

Acceptance Criteria

  • Date field uses type="date" with today as default value (YYYY-MM-DD format for the value attribute)
  • Field is disabled so user cannot change the date
  • Native mobile calendar picker appears on tap (iOS Safari, Chrome Android)
  • The display format is human-readable on all platforms
  • Success overlay still shows correct signed date
  • No regression in form validation or submit flow
  • project-westside-basketball — project this affects
  • forgejo_admin/westside-contracts #9 — previous date fix (SSR timezone)
  • forgejo_admin/westside-contracts #7 — E2E validation (this blocks sign-off)
### Type Bug ### Lineage `plan-wkq` → Phase 14 (Billing Tiers & Contracts) — discovered during mobile E2E validation ### Repo `forgejo_admin/westside-contracts` ### What Broke The signing date field on the contract page is `<input type="text" readonly>`. On mobile, tapping it does nothing — no keyboard, no calendar, no feedback. Users think it's broken. The field is styled identically to the editable legal name input above it, making the dead tap feel like a bug. Current code (`+page.svelte` line 458): ```html <input class="form-input" type="text" id="signDate" value={dateStr} readonly> ``` ### Repro Steps 1. Open any contract page on a mobile phone 2. Check "I agree" to reveal the signing section 3. Tap the Date field 4. Nothing happens — no picker, no keyboard, no visual feedback ### Expected Behavior The signing date should be clearly displayed as today's date using a native date picker (`type="date"`) that defaults to today. On mobile browsers this shows the native calendar interface, giving the user confidence the date is correct and the field is working. The field should still be readonly/disabled so users cannot backdate. ### Environment - Cluster/namespace: prod / westside-contracts - Service version/commit: `813baf3` (current main) - Related alerts: none — UX bug, not runtime error ### Acceptance Criteria - [ ] Date field uses `type="date"` with today as default value (YYYY-MM-DD format for the value attribute) - [ ] Field is disabled so user cannot change the date - [ ] Native mobile calendar picker appears on tap (iOS Safari, Chrome Android) - [ ] The display format is human-readable on all platforms - [ ] Success overlay still shows correct signed date - [ ] No regression in form validation or submit flow ### Related - `project-westside-basketball` — project this affects - `forgejo_admin/westside-contracts #9` — previous date fix (SSR timezone) - `forgejo_admin/westside-contracts #7` — E2E validation (this blocks sign-off)
Author
Owner

Scope Review: READY

Review note: review-334-2026-03-24
Bug confirmed on main — line 462 has type="text" readonly (ticket says line 458, minor discrepancy). All 6 acceptance criteria are agent-verifiable. No blast radius in sibling repos. Fix branch 11-fix-date-input-mobile already exists with the correct implementation.

## Scope Review: READY Review note: `review-334-2026-03-24` Bug confirmed on main — line 462 has `type="text" readonly` (ticket says line 458, minor discrepancy). All 6 acceptance criteria are agent-verifiable. No blast radius in sibling repos. Fix branch `11-fix-date-input-mobile` already exists with the correct implementation.
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
forgejo_admin/westside-contracts#11
No description provided.