- Establish server-driven hypermedia architecture with Datastar to eliminate brittle imperative client DOM manipulation - Codify vertical feature slicing (routes, queries, fragments co-located by domain) - Formalize right-sized dual transport: standard text/html for user mutations, targeted SSE for Valkey pub/sub broadcasts - Define zero-trust guardrails: untrusted client signals, 16KB payload bounds, rate limiting, and data-ignore subtree protection - Establish hypermedia error protocol (4xx/5xx return JSX error fragments) and mid-stream SSE resilience - Add active task checklist with granular 1-to-1 items and shared component suggestions - Update AGENTS.md with AI-optimized engineering principles (SRP, bounded files, flat call chains, distinctive naming)
4.6 KiB
4.6 KiB
Active Task Checklist
Sticky Navigation Header
sticky-sub-header-docking: Dock the stickySessions & Eventssub-header directly beneath the main navigation bar so it scrolls smoothly without overlapping or covering top navigation elements.sticky-sub-header-opaque-bg: Ensure the sticky sub-header has an opaque background so underlying cards do not bleed through on scroll.
Single Session Creation (DirectPassDrawer)
single-session-form-hiding: Hide the single session creation form upon minting so only the completed handoff card is displayed.single-session-cancel-button-removal: Remove the Cancel button from the view once a single session has been created.single-session-copy-button-styling: Style the 1-Click Link copy button using the standard outline style matching other copy actions.single-session-submit-button-label: Label the single session drawer submit button as "Create Session".single-session-handoff-ok-button: Label the single session handoff completion button as "OK".
Multi-Claim Event Creation (WorkshopDrawer)
event-submit-button-label: Label the multi-claim event drawer submit button as "Create Event".event-handoff-ok-button: Label the multi-claim event handoff completion button as "OK".
Dropdown Accordion Headers
single-session-accordion-arrow-fix: Eliminate the broken double arrow (> >) from the single session optional settings dropdown header.single-session-accordion-label: Label the single session optional settings dropdown header as "Customize App Permissions & Scopes (Optional)".workshop-accordion-arrow-fix: Eliminate the broken double arrow (> >) from the workshop pass optional settings dropdown header.workshop-accordion-label: Label the workshop pass optional settings dropdown header as "Custom Vanity Slug & PIN Code (Optional)".
Rapid Creation & Tab State
single-session-create-another-button: Add a "Create Another" button on the single session handoff card that clears the form and starts a new session in one click.event-create-another-button: Add a "Create Another" button on the event handoff card that clears the form and starts a new event in one click.handoff-tab-lock-state: Disable switching between Single Session and Multi-Claim Event tabs while viewing a completed handoff card.handoff-tab-unlock-on-reset: Re-enable tab switching when the user clicks "Create Another" or closes the drawer.
Expired Events Management
expired-events-query-split: Separate event passes into active events and expired events based on their expiration timestamp and status.expired-events-collapsible-accordion: Organize expired events into a dedicated collapsible<details>section titled "📁 Expired Events (N)" below active events.expired-events-card-styling: Display expired event passes with distinct muted styling and expired status badges.expired-events-1click-reopen: Provide a one-click "+1h Reopen" button on naturally expired events to add time and reactivate them.
Guest Drawer Telemetry & Sync
guest-drawer-telemetry-backend: Fetch the last activity action, last activity timestamp, and agent flag for each attendee.guest-drawer-last-action-display: Display the attendee's last recorded action and relative time on their guest card.guest-drawer-client-badge: Display a client icon (such as Web or CLI) on each attendee card based on their recorded action.guest-drawer-timer-sync-on-extend: Dynamically update the countdown timer and expiration time in the open guest drawer when an event is extended.
Suggestions & Architectural Notes (Ideas to Evaluate)
- Shared Drawer / Form Component Extraction: The Single Session
(
DirectPassDrawer.tsx) and Multi-Claim Event (WorkshopDrawer.tsx) creation forms share many common UI features (app selection dropdown, lifespan preset pills, optional settings accordion, action bars, and handoff cards). Consider consolidating shared form sections or extracting common sub-components to reduce code duplication and ensure consistent state handling. - Unified Handoff Card Pattern: The post-creation handoff state across both
forms follows the exact same pattern (badge header, copy buttons for
links/CLI/tokens, and dual
[ Create Another ]+[ OK ]footer). A shared component or common helper could streamline handoff rendering and state resets across both modes.