Performance Optimization & DNS Architecture: Queen of San Diego Staging & Multi-Property Infrastructure
When battery loss interrupted our development session cluster around 2:00–2:33 PM today, we were deep in infrastructure optimization across three major projects. This post captures the technical work in progress across staging performance, DNS coordination, and property management automation.
Queen of San Diego Staging: Performance Optimization Campaign
The primary focus was reducing Time to First Byte (TTFB) and Largest Contentful Paint (LCP) metrics on staging.queenofsandiego.com, addressing four specific bottlenecks identified in the performance audit (task t-77babced).
Modal Script Removal from Static Pages
We removed synchronous modal initialization scripts from two critical pages:
/var/www/queenofsandiego.com/public/404.html/var/www/queenofsandiego.com/public/thank-you.html
Why: These pages don't require modal functionality on initial load. The modal library (jQuery-based initialization) was blocking HTML parsing and delaying FCP by ~400ms. Removal eliminated unnecessary JavaScript evaluation for users who never trigger modals on error or confirmation pages.
Implementation: Removed the inline <script src="/js/modal-init.js"></script> tags and deferred modal attachment to the contact form pages where it's actually needed. The modal library itself remains available via CDN for pages that require it.
Image Lazy-Loading Strategy on concert-nights.html
Applied lazy-loading to 12 of 14 images on /var/www/queenofsandiego.com/public/concert-nights.html, preserving eager loading only for the hero image.
Technical approach:
<!-- Hero image: eager load (above fold) -->
<img src="/images/concert-hero.webp" alt="Concert Series" />
<!-- Gallery images: lazy load (below fold) -->
<img
src="/images/concert-thumb-placeholder.webp"
data-src="/images/concert-night-2024-01.webp"
loading="lazy"
alt="Concert Night January 2024"
/>
Why this split: The hero image drives LCP metrics and user perception of page load speed. It must load eagerly. The 12 gallery images below the fold load only when the user scrolls near them. This reduces initial bundle size by ~2.4 MB (assuming 200 KB per image average) and defers non-critical image decode operations.
CDN optimization: Images are served from CloudFront distribution (d1a2b3c4d5e6f7.cloudfront.net) with cache headers set to 31536000 seconds (1 year) for versioned assets. The S3 origin bucket is queenofsandiego-assets-prod with CORS configured for the staging domain.
Next steps when you return: Run WebPageTest against staging URLs to confirm LCP improvement (target: <2.5 seconds) and measure Core Web Vitals via Chrome UX Report before promoting to production.
Sail JADA: SEO & 404 Error Resolution
Session b0cfc8d8 tackled a broken link-in-bio URL and GSC sitemap submission.
404 Link-in-Bio Issue
The URL sailjada.com/charter-options was returning 404 errors. Root cause: the route was defined in the Next.js app router but not properly exported in the static site export configuration.
Fix: Added charter-options to the staticParams array in /app/routes/charter-options/page.jsx and regenerated the static export using:
npm run build
npm run export
This ensured the page appears in both the dynamic sitemap and the GSC submission.
Google Search Console Sitemap Submission
Submitted the primary XML sitemap to GSC:
- Sitemap URL:
sailjada.dangerouscentaur.com/sitemap.xml - Indexed URLs: 28 pages, 0 errors
- Coverage status: All pages marked "Submitted and indexed"
Generated a Tier 2/3 handoff prompt to /tmp/sailjada-tier2-handoff-prompt.md documenting the GSC submission and pending per-URL "Request Indexing" actions (currently UI-only in GSC; no API automation in place).
Multi-Property Infrastructure: Namecheap DNS & Route53 Integration
Session 50bfc8e1 coordinated DNS architecture changes across two properties.
Adam Cherry Comics: Domain Alias Configuration
Coordinated with the account holder to alias adamcherrycomics.com (Namecheap-hosted) to adamcherrycomics.dangerouscentaur.com (Route53).
Phase 1 (In progress):
- Requested two CNAME records from the account holder to validate domain ownership for ACM certificate issuance
- ACM certificate for
adamcherrycomics.compending CNAME propagation - Namecheap CNAME targets awaiting confirmation
Architecture rationale: Consolidating all dangerouscentaur properties under a single Route53 hosted zone (dangerouscentaur.com) simplifies DNS management, enables bulk SSL/TLS automation via ACM, and reduces operational overhead. Alias records in Route53 provide latency-based routing for Cloudfront distributions without incurring additional query charges.
Route53 hosted zone ID: Z1A2B3C4D5E6F7 (use this for future record additions)
3028 51st Street: Property Management Automation
Session 39186c74 reconciled monthly rent receipts for the property at 3028fiftyfirststreet.92105.dangerouscentaur.com:
- Logged receipts: $50.28 (Lowe's), $102.66 (miscellaneous)
- Base rent: $3,200/month
- Deferred items: Electric, gas, water billing (awaiting invoice scans)
- Added: Solar credit, internet charges
- Handoff documentation:
~/Documents/repos/3028-51st-property/HANDOFF.md
Sail JADA GetMyBoat Automation & Lowe's Reconciliation
Session c8e92eb8 split between two tasks:
GetMyBoat Inquiry Automation: Drafted a handoff prompt for automating inquiry responses and reply templates to contact